! key.tes - display key code ! @^A% key.tec - display key code uses hex.tec Qregister K is used % :@EI%hex% ! load H.str and D.str from hex.tec ! @^UK` ! load into K.str ! :^TUK ! get a character with scan codes into K! @^A% Flags:% ! type out message ! QK/65536MH ! K>>16 hex typeout ! @^A% (% ! "Flags: hh (" ! QH"E ! if code=0 ! @^A%none% ! display "none" ! | ! elseif code<>0 ! QH&1024"N ! if E1 ! @^A%E1% ! type "E1" ! -1024%H"E @O!k! ' ! iif ((H.num-=1024)==0) goto k ! @^A%+% ! iif not tack on "+" ! ' ! endif E1 was set ! QH&512"N ! if E0 ! @^A%E0% ! type "E0" ! -512%H"E @O!k! ' ! iif ((H.num-=512)==0) goto k ! @^A%+% ! iif not tack on "+" ! ' ! endif E0 was set ! QH&256"N ! if ScrollLock set ! @^A%ScrollLock% ! say so ! -256%H"E @O!k! ' ! iif ((H.num-=256)==0) goto k ! @^A%+% ! iif not tack on "+" ! ' ! endif ScrollLock was set ! QH&128"N ! if NumLock set ! @^A%NumLock% ! say so ! -128%H"E @O!k! ' ! iif ((H.num-=128)==0) goto k ! @^A%+% ! iif not tack on "+" ! ' ! endif NumLock was set ! QH&64"N ! if CapsLock set ! @^A%CapsLock% ! say so ! -64%H"E @O!k! ' ! iif ((H.num-=64)==0) goto k ! @^A%+% ! iif not tack on "+" ! ' ! endif ! QH&32"N ! if LeftAlt... ! @^A%LeftAlt% -32%H"E @O!k! ' @^A%+% ' QH&16"N ! if RightAlt... ! @^A%RightAlt% -16%H"E @O!k! ' @^A%+% ' QH&8"N ! if LeftCtrl... ! @^A%LeftCtrl% -8%H"E @O!k! ' @^A%+% ' QH&4"N ! if RightCtrl... ! @^A%RightCtrl% -4%H"E @O!k! ' @^A%+% ' QH&2"N ! if LeftShift... ! @^A%LeftShift% -2%H"E @O!k! ' @^A%+% ' QH"N ! if RightShift... ! @^A%RightShift% ' ! endif ! ' ! endif ! !k! @^A%) Scan Code:% QK/256MH ! K>>8 is scan code ! @^A% Ascii Code:% QKMH ! low byte is ASCII code ! @^A% % ` ! end load of K.str !