[NTVDM]
[reactos.git] / reactos / subsystems / ntvdm / bios / bios32 / bios32p.h
1 /*
2 * COPYRIGHT: GPL - See COPYING in the top level directory
3 * PROJECT: ReactOS Virtual DOS Machine
4 * FILE: bios32.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 "ntvdm.h"
15 #include "../bios.h"
16
17 /**/ #include "int32.h" /**/
18
19 /* DEFINES ********************************************************************/
20
21 #define BIOS_PIC_MASTER_INT 0x08
22 #define BIOS_PIC_SLAVE_INT 0x70
23
24 #define BIOS_EQUIPMENT_INTERRUPT 0x11
25 #define BIOS_MEMORY_SIZE 0x12
26 #define BIOS_MISC_INTERRUPT 0x15
27 #define BIOS_ROM_BASIC 0x18
28 #define BIOS_BOOTSTRAP_LOADER 0x19
29 #define BIOS_TIME_INTERRUPT 0x1A
30 #define BIOS_SYS_TIMER_INTERRUPT 0x1C
31
32 /* FUNCTIONS ******************************************************************/
33
34 extern CALLBACK16 BiosContext;
35 #define RegisterBiosInt32(IntNumber, IntHandler) \
36 do { \
37 RegisterInt32(BiosContext.TrampolineFarPtr + \
38 BiosContext.TrampolineSize + \
39 (IntNumber) * Int16To32StubSize, \
40 (IntNumber), (IntHandler), NULL); \
41 } while(0);
42
43 VOID EnableHwIRQ(UCHAR hwirq, EMULATOR_INT32_PROC func);
44 VOID PicIRQComplete(LPWORD Stack);
45
46 #endif // _BIOS32P_H_
47
48 /* EOF */