INT 16,12 - Extended Get Keyboard Status (AT+)
AH = 12h
on return:
AH = BIOS keyboard flags (BIOS Data Area location 40:18)
│7│6│5│4│3│2│1│0│ AH
│ │ │ │ │ │ │ └──── left CTRL key depressed
│ │ │ │ │ │ └───── left ALT key depressed
│ │ │ │ │ └────── right CTRL key pressed
│ │ │ │ └─────── right ALT key depressed
│ │ │ └──────── scroll-lock depressed
│ │ └───────── num-lock key depressed
│ └────────── caps-lock key depressed
└─────────── system request key depressed
AL = BIOS keyboard flags (BIOS Data Area location 40:17)
│7│6│5│4│3│2│1│0│ AL
│ │ │ │ │ │ │ └──── right shift key depressed
│ │ │ │ │ │ └───── left shift key depressed
│ │ │ │ │ └────── CTRL key depressed
│ │ │ │ └─────── ALT key depressed
│ │ │ └──────── scroll-lock is active
│ │ └───────── num-lock is active
│ └────────── caps-lock is active
└─────────── insert is active
- available on AT and PS/2 machines with extended keyboard support
- similar to INT 16,2
- see KB FLAGS