Real mode interrupt handler now handles interrupt 21 function 0C.

This commit is contained in:
Jukka Heinonen 2002-05-05 20:22:06 +00:00 committed by Alexandre Julliard
parent 140e7222e0
commit 8a1ac6edf4
1 changed files with 16 additions and 0 deletions

View File

@ -76,6 +76,22 @@ void WINAPI DOSVM_Int21Handler( CONTEXT86 *context )
{ {
RESET_CFLAG(context); /* Not sure if this is a good idea */ RESET_CFLAG(context); /* Not sure if this is a good idea */
if(AH_reg(context) == 0x0c) /* FLUSH BUFFER AND READ STANDARD INPUT */
{
BYTE al = AL_reg(context); /* Input function to execute after flush. */
/* FIXME: buffers are not flushed */
/*
* If AL is not one of 0x01, 0x06, 0x07, 0x08, or 0x0a,
* the buffer is flushed but no input is attempted.
*/
if(al != 0x01 && al != 0x06 && al != 0x07 && al != 0x08 && al != 0x0a)
return;
AH_reg(context) = al;
}
switch(AH_reg(context)) switch(AH_reg(context))
{ {
case 0x00: /* TERMINATE PROGRAM */ case 0x00: /* TERMINATE PROGRAM */