ReactOS  0.4.14-dev-606-g14ebc0b
kbdbios32.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define BIOS_KBD_BUFFER_SIZE   16
 
#define BDA_KBDFLAG_RSHIFT   (1 << 0)
 
#define BDA_KBDFLAG_LSHIFT   (1 << 1)
 
#define BDA_KBDFLAG_CTRL   (1 << 2)
 
#define BDA_KBDFLAG_RCTRL   (1 << 2)
 
#define BDA_KBDFLAG_ALT   (1 << 3)
 
#define BDA_KBDFLAG_RALT   (1 << 3)
 
#define BDA_KBDFLAG_SCROLL_ON   (1 << 4)
 
#define BDA_KBDFLAG_NUMLOCK_ON   (1 << 5)
 
#define BDA_KBDFLAG_CAPSLOCK_ON   (1 << 6)
 
#define BDA_KBDFLAG_INSERT_ON   (1 << 7)
 
#define BDA_KBDFLAG_LCTRL   (1 << 8)
 
#define BDA_KBDFLAG_LALT   (1 << 9)
 
#define BDA_KBDFLAG_SYSRQ   (1 << 10)
 
#define BDA_KBDFLAG_PAUSE   (1 << 11)
 
#define BDA_KBDFLAG_SCROLL   (1 << 12)
 
#define BDA_KBDFLAG_NUMLOCK   (1 << 13)
 
#define BDA_KBDFLAG_CAPSLOCK   (1 << 14)
 
#define BDA_KBDFLAG_INSERT   (1 << 15)
 

Functions

VOID KbdBios32Post (VOID)
 

Macro Definition Documentation

◆ BDA_KBDFLAG_ALT

#define BDA_KBDFLAG_ALT   (1 << 3)

Definition at line 22 of file kbdbios32.h.

◆ BDA_KBDFLAG_CAPSLOCK

#define BDA_KBDFLAG_CAPSLOCK   (1 << 14)

Definition at line 34 of file kbdbios32.h.

◆ BDA_KBDFLAG_CAPSLOCK_ON

#define BDA_KBDFLAG_CAPSLOCK_ON   (1 << 6)

Definition at line 26 of file kbdbios32.h.

◆ BDA_KBDFLAG_CTRL

#define BDA_KBDFLAG_CTRL   (1 << 2)

Definition at line 20 of file kbdbios32.h.

◆ BDA_KBDFLAG_INSERT

#define BDA_KBDFLAG_INSERT   (1 << 15)

Definition at line 35 of file kbdbios32.h.

◆ BDA_KBDFLAG_INSERT_ON

#define BDA_KBDFLAG_INSERT_ON   (1 << 7)

Definition at line 27 of file kbdbios32.h.

◆ BDA_KBDFLAG_LALT

#define BDA_KBDFLAG_LALT   (1 << 9)

Definition at line 29 of file kbdbios32.h.

◆ BDA_KBDFLAG_LCTRL

#define BDA_KBDFLAG_LCTRL   (1 << 8)

Definition at line 28 of file kbdbios32.h.

◆ BDA_KBDFLAG_LSHIFT

#define BDA_KBDFLAG_LSHIFT   (1 << 1)

Definition at line 19 of file kbdbios32.h.

◆ BDA_KBDFLAG_NUMLOCK

#define BDA_KBDFLAG_NUMLOCK   (1 << 13)

Definition at line 33 of file kbdbios32.h.

◆ BDA_KBDFLAG_NUMLOCK_ON

#define BDA_KBDFLAG_NUMLOCK_ON   (1 << 5)

Definition at line 25 of file kbdbios32.h.

◆ BDA_KBDFLAG_PAUSE

#define BDA_KBDFLAG_PAUSE   (1 << 11)

Definition at line 31 of file kbdbios32.h.

◆ BDA_KBDFLAG_RALT

#define BDA_KBDFLAG_RALT   (1 << 3)

Definition at line 23 of file kbdbios32.h.

◆ BDA_KBDFLAG_RCTRL

#define BDA_KBDFLAG_RCTRL   (1 << 2)

Definition at line 21 of file kbdbios32.h.

◆ BDA_KBDFLAG_RSHIFT

#define BDA_KBDFLAG_RSHIFT   (1 << 0)

Definition at line 18 of file kbdbios32.h.

◆ BDA_KBDFLAG_SCROLL

#define BDA_KBDFLAG_SCROLL   (1 << 12)

Definition at line 32 of file kbdbios32.h.

◆ BDA_KBDFLAG_SCROLL_ON

#define BDA_KBDFLAG_SCROLL_ON   (1 << 4)

Definition at line 24 of file kbdbios32.h.

◆ BDA_KBDFLAG_SYSRQ

#define BDA_KBDFLAG_SYSRQ   (1 << 10)

Definition at line 30 of file kbdbios32.h.

◆ BIOS_KBD_BUFFER_SIZE

#define BIOS_KBD_BUFFER_SIZE   16

Definition at line 16 of file kbdbios32.h.

Function Documentation

◆ KbdBios32Post()

VOID KbdBios32Post ( VOID  )

Definition at line 361 of file kbdbios32.c.

362 {
363  /* Initialize the BDA */
367 
368  // FIXME: Fill the keyboard buffer with invalid values for diagnostic purposes...
370  BIOS_KBD_BUFFER_SIZE * sizeof(WORD), 'A');
371 
372  Bda->KeybdShiftFlags = 0;
373  Bda->KeybdStatusFlags = (1 << 4); // 101/102 enhanced keyboard installed
374  Bda->KeybdLedFlags = 0;
375 
376  /*
377  * Register the BIOS 32-bit Interrupts:
378  * - Software vector handler
379  * - HW vector interrupt
380  */
383 }
PBIOS_DATA_AREA Bda
Definition: bios.c:42
WORD KeybdBufferStart
Definition: bios.h:87
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define RegisterBiosInt32(IntNumber, IntHandler)
Definition: bios32p.h:34
WORD KeybdShiftFlags
Definition: bios.h:49
WORD KeybdBufferEnd
Definition: bios.h:88
BYTE KeybdStatusFlags
Definition: bios.h:100
VOID EnableHwIRQ(UCHAR hwirq, EMULATOR_INT32_PROC func)
Definition: bios32.c:798
WORD KeybdBufferHead
Definition: bios.h:51
unsigned short WORD
Definition: ntddk_ex.h:93
WORD KeybdBufferTail
Definition: bios.h:52
#define BIOS_KBD_BUFFER_SIZE
Definition: kbdbios32.h:16
BYTE KeybdLedFlags
Definition: bios.h:101
VOID WINAPI BiosKeyboardService(LPWORD Stack)
Definition: kbdbios32.c:85
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:254
VOID WINAPI BiosKeyboardIrq(LPWORD Stack)
Definition: kbdbios32.c:199
#define BIOS_KBD_INTERRUPT
Definition: kbdbios.h:14
#define RtlFillMemory(Dest, Length, Fill)
Definition: winternl.h:593

Referenced by Bios32Post().