[NTVDM]
[reactos.git] / subsystems / ntvdm / bios.h
1 /*
2 * COPYRIGHT: GPL - See COPYING in the top level directory
3 * PROJECT: ReactOS Virtual DOS Machine
4 * FILE: bios.h
5 * PURPOSE: VDM BIOS (header file)
6 * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
7 */
8
9 #ifndef _BIOS_H_
10 #define _BIOS_H_
11
12 /* INCLUDES *******************************************************************/
13
14 #include "ntvdm.h"
15
16 /* DEFINES ********************************************************************/
17
18 #define CONSOLE_VIDEO_MEM_START 0xB8000
19 #define CONSOLE_VIDEO_MEM_END 0xBFFFF
20 #define ROM_AREA_START 0xC0000
21 #define ROM_AREA_END 0xFFFFF
22 #define BIOS_PIC_MASTER_INT 0x08
23 #define BIOS_PIC_SLAVE_INT 0x70
24 #define BIOS_SEGMENT 0xF000
25 #define VIDEO_BIOS_INTERRUPT 0x10
26 #define VIDEO_KBD_INTERRUPT 0x16
27 #define CONSOLE_FONT_HEIGHT 8
28 #define BIOS_KBD_BUFFER_SIZE 256
29
30 /* FUNCTIONS ******************************************************************/
31
32 BOOLEAN BiosInitialize();
33 VOID BiosUpdateConsole(ULONG StartAddress, ULONG EndAddress);
34 VOID BiosUpdateVideoMemory(ULONG StartAddress, ULONG EndAddress);
35 WORD BiosPeekCharacter();
36 WORD BiosGetCharacter();
37 VOID BiosVideoService();
38 VOID BiosKeyboardService();
39 VOID BiosHandleIrq(BYTE IrqNumber);
40
41 #endif