Interrups | Categories | Contents |
AH = 12h BH = 04h BL = object 00h handle is DWORD on top of stackmailbox:
Wait for and get next messagekeyboard:
Wait for and get pointer to next input bufferpointer:
Wait for and get next message 02h get next message from mailbox (task's handle on top of stack) 03h get next message from current task's mailbox 04h get the next input from keyboard (handle on top of stack) 05h get the next input from task's default keyboard 06h wait for input from any object in OBJECTQ (handle on stack) 07h wait for input from any object in task's default OBJECTQ
Return:
STACK: (if objectq) DWORD handle of object with input (otherwise) DWORD number of bytes DWORD address of pointer message (see #00437)
Notes: For a keyboard in keystroke mode, the input buffer is a single byte containing the character code as returned by the BIOS; the BIOS scan code is available via the STATUS call if the character is zero. For a keyboard in field mode, the input buffer format is determined by the field table header for the window the keyboard is attached to. Keyboard input buffers and mailbox message buffers may be invalidated by the next READ, ERASE, CLOSE, or FREE message to the same object
See Also: AH=12h/BH=05h"OBJECT" - AH=12h/BH=84h
Format of DESQview pointer message: Offset Size Description (Table 00437) 00h WORD row 02h WORD column 04h BYTE status (see #00438) 05h BYTE field number or zero (APILEVEL >= 2.00 only)
Bitfields for DESQview pointer status: Bit(s) Description (Table 00438) 7-2 number of clicks-1 if multiple-click mode active 7 set when press/release mode active and button pressed 6 set when press/release mode active and button released 1-0 button pressed (00=none,01=button1,10=button2)
See Also: #00437
Category: DESQview/TopView and Quarterdeck Programs - Int 15h - T
Interrups | Categories | Contents |