From eef522b25830fb90d81ce4e88e0e82b24d8656dc Mon Sep 17 00:00:00 2001 From: Sjoerd van der Berg Date: Sun, 17 Nov 2002 11:24:37 +0000 Subject: [PATCH] INT 16 uses iret_sti callback now. Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@523 --- src/ints/bios_keyboard.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/ints/bios_keyboard.cpp b/src/ints/bios_keyboard.cpp index 1d17a9e7..afeaafc7 100644 --- a/src/ints/bios_keyboard.cpp +++ b/src/ints/bios_keyboard.cpp @@ -293,7 +293,7 @@ static Bitu INT16_Handler(void) { //TODO find a more elegant way to do this do { temp=get_key(); - if (temp==0) { flags.intf=true;CALLBACK_Idle();}; + if (temp==0) { CALLBACK_Idle();}; } while (temp==0); reg_ax=temp; break; @@ -302,7 +302,6 @@ static Bitu INT16_Handler(void) { case 0x11: temp=check_key(); if (temp==0) { - flags.intf=true;CALLBACK_Idle(); CALLBACK_SZF(true); } else { CALLBACK_SZF(false); @@ -355,7 +354,7 @@ void BIOS_SetupKeyboard(void) { /* Allocate a callback for int 0x16 and for standard IRQ 1 handler */ call_int16=CALLBACK_Allocate(); call_irq1=CALLBACK_Allocate(); - CALLBACK_Setup(call_int16,&INT16_Handler,CB_IRET); + CALLBACK_Setup(call_int16,&INT16_Handler,CB_IRET_STI); RealSetVec(0x16,CALLBACK_RealPointer(call_int16)); CALLBACK_Setup(call_irq1,&IRQ1_Handler,CB_IRET); RealSetVec(0x9,CALLBACK_RealPointer(call_irq1));