INT 15 - TopViewTopView, DESQview, TaskView, OmniView, other compatibles - SEND MESSAGE - "SETESC" - SET ESCAPE ROUTINE ADDRESS
AH = 12h
BH = 14h
BL = message modifier
00h handle is DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. on top of stack
01h define user stream
04h intercept keystrokes from KEYBOARD to window (handle on stack)
05h intercept keystrokes from task's default KEYBOARD to a window
STACK: (if window) DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. user stream number (14h-1Fh)
DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. address of FAR user stream handler
(if keyboard) DWORDDoubleword; four bytes. Commonly used to hold a 32-bit segment:offset or selector:offset address. address of FAR filter function (see #00452)
Return: STACK popped
(Table 00452)
Values keyboard filter function is called with when keyboard is in field mode:
AL = character
AH = 00h or extended ASCII code if AL = 00h
BL = field number
CH = cursor column
CL = cursor row
DL = field type modifier (sixth item in field table entry)
DH = seventh item in field table entry
ES:SI = window's handle
DS:DI -> field table entry for field containing the cursor
Return: AH = action to take
00h use keystroke
01h ignore keystroke
FFh beep and ignore keystroke
Note: the filter function is not allowed to make INT 15, DOS, or BIOS(Basic Input/Output System) A set of standardized calls giving low-level access to the hardware. The BIOS is the lowest software layer above the actual hardware and serves to insulate programs (and operating systems) which use it from the details of accessing the hardware directly. calls