[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Int 09 - IRQ1 - Keyboard Data Ready [H]
Desc: this interrupt is generated when data is received from the keyboard.
This is normally a scan code (from either a keypress *or* a key
release), but may also be an ACK or NAK of a command on AT-class
keyboards.
Notes: this IRQ may be masked by setting bit 1 on I/O port 21h
if the BIOS supports an enhanced (101/102-key) keyboard, it calls
INT 15/AH=4Fh after reading the scan code from the keyboard and
before further processing; all further processing uses the scan
code returned from INT 15/AH=4Fh
the default interrupt handler is at F000h:E987h in 100%-compatible
BIOSes
the interrupt handler performs the following actions for certain
special keystrokes:
Ctrl-Break clear keyboard buffer, place word 0000h in buffer,
invoke INT 1B, and set flag at 0040h:0071h
SysRq invoke INT 15/AH=85h
Ctrl-Numlock place system in a tight wait loop until next INT 09
Ctrl-Alt-Del jump to BIOS startup code (either F000h:FFF0h or the
destination of the jump at that address)
Shift-PrtSc invoke INT 05
DRDOS hooks this interrupt to control the cursor shape (underscore/
half block) for overwrite/insert mode
DR Multiuser DOS hooks this interrupt for cursor shape control and to
control whether Ctrl-Alt-Del reboots the current session or the
entire system
See Also: INT 05,INT 0B"HP 95LX",INT 15/AH=4Fh,INT 15/AH=85h,INT 16,INT 1B
See Also: INT 2F/AX=A901h,INT 51"DESQview",INT 59"DoubleDOS",INT 79"GO32"
Values for scan code:
01h Esc 31h N
02h 1 ! 32h M
03h 2 @ 33h , < 63h F16
04h 3 # 34h . > 64h F17
05h 4 $ 35h / ? 65h F18
06h 5 % 36h Right Shift 66h F19
07h 6 37h Grey* 67h F20
08h 7 & 38h Alt 68h F21
09h 8 * 39h SpaceBar 69h F22
0Ah 9 ( 3Ah CapsLock 6Ah F23
0Bh 0 ) 3Bh F1 6Bh F24
0Ch - _ 3Ch F2 6Ch --
0Dh = + 3Dh F3 6Dh EraseEOF
0Eh Backspace 3Eh F4
0Fh Tab 3Fh F5 6Fh Copy/Play
10h Q 40h F6
11h W 41h F7
12h E 42h F8 72h CrSel
13h R 43h F9
14h T 44h F10 74h ExSel
15h Y 45h NumLock 75h --
16h U 46h ScrollLock 76h Clear
17h I 47h Home
18h O 48h UpArrow
19h P 49h PgUp
1Ah [ { 4Ah Grey-
1Bh ] } 4Bh LeftArrow
1Ch Enter 4Ch Keypad 5
1Dh Ctrl 4Dh RightArrow
1Eh A 4Eh Grey+
1Fh S 4Fh End
20h D 50h DownArrow E0h prefix code
21h F 51h PgDn E1h prefix code
22h G 52h Ins FAh ACK
23h H 53h Del FEh RESEND
24h J 54h SysRq FFh kbd error/buffer full
25h K
26h L 56h left \| (102-key)
27h ; : 57h F11
28h ' " 58h F12
29h ` ~
2Ah Left Shift 5Ah PA1
2Bh \ | 5Bh F13
2Ch Z 5Ch F14
2Dh X 5Dh F15
2Eh C
2Fh V
30h B
Note: scan codes 56h-E1h are only available on the extended (101/102-key)
keyboard and Host Connected (122-key) keyboard; scan codes 5Ah-76h
are only available on the 122-key keyboard
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson