1 /*
2  * COPYRIGHT:       GPL - See COPYING in the top level directory
3  * PROJECT:         ReactOS Virtual DOS Machine
4  * FILE:            subsystems/mvdm/ntvdm/bios/bios32/bios32p.h
5  * PURPOSE:         VDM 32-bit BIOS
6  * PROGRAMMERS:     Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
7  */
8 
9 #ifndef _BIOS32P_H_
10 #define _BIOS32P_H_
11 
12 /* INCLUDES *******************************************************************/
13 
14 #include <bios/bios.h>
15 
16 /**/ #include "int32.h" /**/
17 
18 /* DEFINES ********************************************************************/
19 
20 #define BIOS_PIC_MASTER_INT 0x08
21 #define BIOS_PIC_SLAVE_INT  0x70
22 
23 #define BIOS_EQUIPMENT_INTERRUPT    0x11
24 #define BIOS_MEMORY_SIZE            0x12
25 #define BIOS_MISC_INTERRUPT         0x15
26 #define BIOS_ROM_BASIC              0x18
27 #define BIOS_BOOTSTRAP_LOADER       0x19
28 #define BIOS_TIME_INTERRUPT         0x1A
29 #define BIOS_SYS_TIMER_INTERRUPT    0x1C
30 
31 /* FUNCTIONS ******************************************************************/
32 
33 extern CALLBACK16 BiosContext;
34 #define RegisterBiosInt32(IntNumber, IntHandler)    \
35 do { \
36     RegisterInt32(BiosContext.TrampolineFarPtr +    \
37                   BiosContext.TrampolineSize   +    \
38                   (IntNumber) * Int16To32StubSize,  \
39                   (IntNumber), (IntHandler), NULL); \
40 } while(0);
41 
42 VOID EnableHwIRQ(UCHAR hwirq, EMULATOR_INT32_PROC func);
43 VOID PicIRQComplete(BYTE IntNum);
44 
45 #endif // _BIOS32P_H_
46 
47 /* EOF */
48