On Fri, 22 Jun 2001, Marcus Meissner wrote:
Not really, I do see int9 delivered to monkey1.exe and monkey1.exe in turn doing inb(0x60) and the +io debugging giving back the correct scancode (0x1c on press and 0x9c on release).
After reading the scancode, however, it determintes that it was not a cursor key, so it passes it on to the DOS int9 handler for default processing there. Then it expects the keypress to appear in the BIOS keyboard buffer.
(You might have seen that if you also ran --debugmsg +int)
I think we managed to get monkey island to start by fixing that keyboard code. However, because of that annoying wineserver assertion failure, no DOS apps like this run with my code anymore, so I can't check. Unless you want to fix the wineserver assertion at server/console.c line 194, so CONSOLE_make_complex can run in one thread while another winedos thread keeps waiting for input?
Hmm, but it looks like I may already have rewritten the interrupt separation for int9 enough, maybe I could submit that patch independently of the new DOS event loop (if you don't need the high performance the new event handling sustains)?