diff --git a/include/miscemu.h b/include/miscemu.h index c91bb59066a..bc406c65b72 100644 --- a/include/miscemu.h +++ b/include/miscemu.h @@ -167,6 +167,9 @@ extern void WINAPI INT_Int26Handler(CONTEXT86*); /* msdos/int29.c */ extern void WINAPI INT_Int29Handler(CONTEXT86*); +/* msdos/int2a.c */ +extern void WINAPI INT_Int2aHandler(CONTEXT86*); + /* msdos/int2f.c */ extern void WINAPI INT_Int2fHandler(CONTEXT86*); diff --git a/msdos/int10.c b/msdos/int10.c index ef2ec83f563..9d3aebb5621 100644 --- a/msdos/int10.c +++ b/msdos/int10.c @@ -292,6 +292,12 @@ void WINAPI INT_Int10Handler( CONTEXT86 *context ) case 0x09: /* SET PALETTE ENTRIES */ FIXME("VESA Set palette entries - not implemented\n"); break; + case 0xef: /* get video mode for hercules-compatables */ + /* There's no reason to really support this */ + /* is there?....................(A.C.) */ + TRACE("Just report the video not hercules compatable\n"); + DX_reg(context) = 0xffff; + break; case 0xff: /* Turn VESA ON/OFF */ /* i dont know what to do */ break; @@ -731,6 +737,12 @@ else { *(DWORD *)(p+0x0a) = 0xfffffffd; /* capabilities flags :-) */ } break; + case 0xef: /* get video mode for hercules-compatables */ + /* There's no reason to really support this */ + /* is there?....................(A.C.) */ + TRACE("Just report the video not hercules compatable\n"); + DX_reg(context) = 0xffff; + break; default: FIXME("Unknown - 0x%x\n", AH_reg(context)); INT_BARF( context, 0x10 ); diff --git a/msdos/interrupts.c b/msdos/interrupts.c index abfe861614d..734bbed2e13 100644 --- a/msdos/interrupts.c +++ b/msdos/interrupts.c @@ -142,6 +142,9 @@ int INT_RealModeInterrupt( BYTE intnum, CONTEXT86 *context ) case 0x29: INT_Int29Handler(context); break; + case 0x2a: + INT_Int2aHandler(context); + break; case 0x2f: INT_Int2fHandler(context); break;