DEFINITION MODULE KBdriver; (********************************************************) (* *) (* Device driver for the keyboard. *) (* *) (* Author: P. Moylan *) (* Last edited: 19 August 1991 *) (* *) (* Status: OK *) (* *) (********************************************************) FROM SYSTEM IMPORT (* type *) BYTE; CONST (* Codes to specify the keyboard indicator lights. *) ScrollLockLED = 1; NumLockLED = 2; CapsLockLED = 4; PROCEDURE GetScanCode () : BYTE; (* Gets one scan code from the keyboard. *) PROCEDURE CheckScanCode () : BYTE; (* Like GetScanCode, but returns 0 immediately if no scan code is *) (* available - i.e. does not wait for a keyboard press. *) PROCEDURE PutLEDs (LEDcode: BYTE); (* Sets the keyboard lock indicator lights, as specified by *) (* LEDcode. Unlike the following two procedures, which can affect *) (* one LED without disturbing the others, this procedure alters all *) (* three LEDs as a group. *) PROCEDURE ClearLED (LEDcode: BYTE); (* Clears one or more of the keyboard lock indicator lights. *) PROCEDURE ToggleLED (LEDcode: BYTE); (* Toggles one or more of the keyboard lock indicator lights. *) END KBdriver.