stardot / MatrixBrandy

Matrix Brandy BASIC VI for Linux, Windows, MacOSX
http://brandy.matrixnetwork.co.uk/
44 stars 8 forks source link

Great chunks of legacy code replaced in keyboard.c #61

Closed jgharston closed 5 years ago

jgharston commented 5 years ago

07-Sep-2019 JGH: Last bits of emulate_get() now migrated into kbd_get0(). Loads of redundant code removed. Escape processing moving into here. *FX229 tested: DJGPP, MinGW, WinSDL, CentOS/SDL * FX220 starting to work, pollesc() and SIGINT check physical key, needs to check character. Need to carefully examine rest of code for hardwired Escape checks and devolve them to kbd_escpoll or kbd_esctest. Issues: Went down a deep winding rabbit hole digging through the ANSI keyboard code with nothing working - until I realised that none of the standard builds use the ANSI keyboard code any more now that Unix/Linux default to using SDL. Simply patching in ANSI key handing doesn't work as the SDL system interfers with it, so I will have to do a more thorough overview to work out how to get an ANSI build. Will probably defer until I've finished rewriting the rest of the keyboard code.

soruk42 commented 5 years ago

There, merged. Also, added a fix-up in keyboard.h to remove an implicit declaration warning, on master.

soruk42 commented 5 years ago

I'm going to back out the change to PAGE being actual memory location, and re-do it on the add_64int branch - on a build without 64-bit ints it's not working at all.