KeyboardScan.TIP
Last Edited by: Spreitzer, December 1, 1985 1:41:45 pm PST
OPTIONS Fast;
[DEF,SHIFT,(LeftShift Down | RightShift Down)]
[DEF,ScanDown,(Spare3 Down)]
[DEF,WhileScan,(WHILE Spare3 Down)]
[DEF,DecodeBS,(SELECT ENABLE FROM
  BS
Down => ScanBackward, ~1;
  ENDCASE
=> ScanForward, ~1)]
[DEF,Irregular,(~1 Down [WhileScan] => SELECT ENABLE FROM
 [SHIFT] => [DecodeBS,ScanUpper(,) ScanTo~3];
ENDCASE => [DecodeBS,ScanLower(,) ScanTo~2])]
[DEF,Regular,([Irregular,~1,~2,~2])]
SELECT TRIGGER FROM -- top level trigger select
Character Scanning
[Regular,ESC,033];
[Irregular,One,061,041];
[Irregular,Two,062,100];
[Irregular,Three,063,043];
[Irregular,Four,064,044];
[Irregular,Five,065,045];
[Irregular,Six,066,176];
[Irregular,Seven,067,046];
[Irregular,Eight,070,052];
[Irregular,Nine,071,050];
[Irregular,Zero,060,051];
[Irregular,Dash,055,140];
[Irregular,Equal,075,053];
[Irregular,BackSlash,134,174];
[Regular,LF,012];
[Regular,DEL,177];
[Regular,TAB,011];
[Regular,Q,121];
[Regular,W,127];
[Regular,E,105];
[Regular,R,122];
[Regular,T,124];
[Regular,Y,131];
[Regular,U,125];
[Regular,I,111];
[Regular,O,117];
[Regular,P,120];
[Irregular,LeftBracket,133,173];
[Irregular,RightBracket,135,175];
[Irregular,Arrow,137,136];
[Regular,A,101];
[Regular,S,123];
[Regular,D,104];
[Regular,F,106];
[Regular,G,107];
[Regular,H,110];
[Regular,J,112];
[Regular,K,113];
[Regular,L,114];
[Irregular,SemiColon,073,072];
[Irregular,Quote,047,042];
[Regular,Return,015];
[Regular,Z,132];
[Regular,X,130];
[Regular,C,103];
[Regular,V,126];
[Regular,B,102];
[Regular,N,116];
[Regular,M,115];
[Irregular,Comma,054,074];
[Irregular,Period,056,076];
[Irregular,Slash,057,077];
[Regular,Space,040];
Free up keys
[ScanDown] => KbdNull;
BS Down [WhileScan] => KbdNull;
ENDCASE...