KeyStreams.mesa_Oct77.pdf | | keysTREAMS.mESA 24-0CT-77 18:30:50 Page 1
-- KeyStreams.Mesa Edited by Johnsson on September 22, 1977 8:23 AM
DIRECTORY
Keyboard: FROM "keyboard",
KeyOefs: FROM "keydefs",
Mopcodes: FROM "mopcodes",
StreamOefs: FROM "streamdefs",
Sys temOefs: FROM "systemdefs",
InlineOefs: FROM "inlinedefs",
ControlOefs: FROM "controldefs",
ProcessDefs: FROM "processdefs";
DEFINITIONS FROM ProcessOefs, InlineOefs, KeyOefs, StreamOefs;
KeyStreams: PROGRAM IMPORTS Keyboard, ProcessOefs. StreamDefs. SystemDefs
EXPORTS KeyDefs. StreamOefs SHARES ProcessDefs. StreamDefs =
BEGIN
-- The Stream part:
KS: PUBLIC Keyboard StreamObject ~ StreamObject [
ClearInputBuffer. Keyboard.ReadChar. PutBackChar,
WriteChar, Keyboard.InputBufferEmpty, DestroyKey.
Keyboard[a,a. ,]];
GetDefaultKey: PUBLIC PROCEDURE RETURNS [KeyboardHandle)
BEGIN
RETURN[@KS);
END;
GetCurrentKey: PUBLIC PROCEDURE RETURNS [KeyboardHandle]
BEGIN
RETURN[Key |