Report correct IRQ bases to DPMI applications.

Make int31 print more tracing information.
This commit is contained in:
Jukka Heinonen 2003-05-02 20:12:10 +00:00 committed by Alexandre Julliard
parent f93d452d78
commit 40bebee7ce
1 changed files with 14 additions and 1 deletions

View File

@ -1062,22 +1062,27 @@ void WINAPI DOSVM_Int31Handler( CONTEXT86 *context )
break; break;
case 0x0300: /* Simulate real mode interrupt */ case 0x0300: /* Simulate real mode interrupt */
TRACE( "Simulate real mode interrupt.\n" );
DOSVM_CallRMInt( context ); DOSVM_CallRMInt( context );
break; break;
case 0x0301: /* Call real mode procedure with far return */ case 0x0301: /* Call real mode procedure with far return */
TRACE( "Call real mode procedure with far return.\n" );
DOSVM_CallRMProc( context, FALSE ); DOSVM_CallRMProc( context, FALSE );
break; break;
case 0x0302: /* Call real mode procedure with interrupt return */ case 0x0302: /* Call real mode procedure with interrupt return */
TRACE( "Call real mode procedure with interrupt return.\n" );
DOSVM_CallRMProc( context, TRUE ); DOSVM_CallRMProc( context, TRUE );
break; break;
case 0x0303: /* Allocate Real Mode Callback Address */ case 0x0303: /* Allocate Real Mode Callback Address */
TRACE( "Allocate real mode callback address.\n" );
DOSVM_AllocRMCB( context ); DOSVM_AllocRMCB( context );
break; break;
case 0x0304: /* Free Real Mode Callback Address */ case 0x0304: /* Free Real Mode Callback Address */
TRACE( "Free real mode callback address.\n" );
DOSVM_FreeRMCB( context ); DOSVM_FreeRMCB( context );
break; break;
@ -1120,7 +1125,7 @@ void WINAPI DOSVM_Int31Handler( CONTEXT86 *context )
SET_AX( context, 0x005a ); /* DPMI version 0.90 */ SET_AX( context, 0x005a ); /* DPMI version 0.90 */
SET_BX( context, 0x0005 ); /* Flags: 32-bit, virtual memory */ SET_BX( context, 0x0005 ); /* Flags: 32-bit, virtual memory */
SET_CL( context, si.wProcessorLevel ); SET_CL( context, si.wProcessorLevel );
SET_DX( context, 0x0102 ); /* Master/slave interrupt controller base */ SET_DX( context, 0x0870 ); /* Master/slave interrupt controller base */
} }
break; break;
@ -1225,6 +1230,14 @@ void WINAPI DOSVM_Int31Handler( CONTEXT86 *context )
SET_CX( context, LOWORD(getpagesize()) ); SET_CX( context, LOWORD(getpagesize()) );
break; break;
case 0x0700: /* Mark pages as paging candidates */
TRACE( "mark pages as paging candidates - ignored (no paging)\n" );
break;
case 0x0701: /* Discard pages */
TRACE( "discard pages - ignored (no paging)\n" );
break;
case 0x0702: /* Mark page as demand-paging candidate */ case 0x0702: /* Mark page as demand-paging candidate */
TRACE( "mark page as demand-paging candidate - ignored (no paging)\n" ); TRACE( "mark page as demand-paging candidate - ignored (no paging)\n" );
break; break;