Int 2D

lup.gif ldown.gif Interrups Categories Contents

rbline.gif

AMIS v3.5+ - GET HOTKEYS

AL = 05h
AH = multiplex number for program

Return:
AL = status 00h not implemented FFh supported DX:BX -> hotkey list (see #02572)

Notes: This function is not valid unless a program is installed on the specified multiplex number; use INT 2D/AL=00h to check. Programs which provide hotkeys are required to provide this function to be fully compliant with this specification

See Also: INT 2D/AL=00h - INT 2D/AL=01h - INT 2D/AL=02h - INT 2D/AL=03h - INT 2D/AL=04h

See Also: INT 2D/AL=06h

Format of AMIS hotkey list: Offset Size Description (Table 02572) 00h BYTE type of hotkey checking (see #02573) 01h BYTE number of hotkeys (may be zero if TSR can disable hotkeys) 02h 6N BYTEs array of hotkey definitions (one per hotkey, first should be primary hotkey) Offset Size Description 00h BYTE hotkey scan code (00h/80h if shift states only) hotkey triggers on release if bit 7 set 01h WORD required shift states (see #02574) 03h WORD disallowed shift states (see #02574) 05h BYTE hotkey flags (see #02575)

Notes: Except for bit 7, the shift states correspond exactly to the return values from INT 16/AH=12h. A set bit in the required states word indicates that the corresponding shift state must be active when the hotkey's scan code is received for the hotkey to be recognized; a clear bit means that the corresponding state may be ignored. A set bit in the disallowed shift states word indicates that the corresponding shift state must be inactive.. For the disallowed-states word, if one of the "either" bits is set, then both the corresponding left bit and right bit must be set. Examples:

Ctrl-Alt-Del monitoring:
53h 000Ch 0003h 06h

Alt-key tap (DESQview):
B8h 0000h 0007h 08h

Shf-Shf-N (NOTE.COM):
31h 0003h 000Ch 00h

Index:
Hotkeys;AMIS

See Also: #00006

Bitfields for type of AMIS hotkey checking: Bit(s) Description (Table 02573) 0 checks before chaining INT 09 1 checks after chaining INT 09 2 checks before chaining INT 15/AH=4Fh 3 checks after chaining INT 15/AH=4Fh 4 checks on INT 16/AH=00h,01h,02h 5 checks on INT 16/AH=10h,11h,12h 6 checks on INT 16/AH=20h,21h,22h 7 reserved (0)

See Also: #02572

Bitfields for AMIS shift states: Bit(s) Description (Table 02574) 0 right shift pressed 1 left shift pressed 2 either control key pressed 3 either Alt key pressed 4 ScrollLock active 5 NumLock active 6 CapsLock active 7 either shift key pressed 8 left control key pressed 9 left Alt key pressed 10 right control key pressed 11 right Alt key pressed 12 ScrollLock pressed 13 NumLock pressed 14 CapsLock pressed 15 SysReq key pressed

Notes: If bit 2 is set, either control key may be pressed for the hotkey; if bits 8 and 10 are both set, then both control keys must be pressed. Similarly for bits 3 and 9/11, as well as 7 and 0/1.. The SysReq key is often labeled SysRq

See Also: #02572 - #02575

Bitfields for AMIS hotkey flags: Bit(s) Description (Table 02575) 0 hotkey chained before processing 1 hotkey chained after processing 2 others should pass through this hotkey so that it can be monitored 3 hotkey will not activate if other keys pressed/released before hotkey press is completed 4 this key is remapped into some other key 5 this key is conditionally chained (sometimes passed on, sometimes swallowed) 6-7 reserved (0)

See Also: #02572 - #02574

Category: TSR Libraries - Int 2Dh - A

rbline.gif

lup.gif ldown.gif Interrups Categories Contents