--- /dev/null
+
+<PACKAGE "TTY">
+
+<ENTRY TERM-MOVE? NORMAL-OUT IMAGE-OUT SET-IMAGE-MODE SET-ECHO-MODE CLEAR-SCREEN CLEAR-EOL CLEAR-EOS KILL-CHAR ERASE-CHAR HOME-CURSOR BOTTOM-CURSOR HOR-POS-CURSOR VER-POS-CURSOR MOVE-CURSOR BACK-CURSOR DOWN-CURSOR UP-CURSOR FORWARD-CURSOR SAVE-CURSOR RESTORE-CURSOR INSERT-LINE INSERT-CHAR GET-TYPE PAD TYPE-AHEAD? TYPE-CHAR SET-CURSOR-POSITION>
+
+<USE "TWAY">
+
+"DONE"
+
+<NEW-CHANNEL-TYPE TTY (TWAY DEFAULT) GET-TYPE TTY-GET-TYPE QUERY TTY-QUERY OPEN TTY-OPEN TYPE-AHEAD? TTY-TYPE-AHEAD? READ-BYTE-IMMEDIATE TTY-READ-IMMEDIATE READ-BYTE TTY-READ-BYTE READ-BUFFER TTY-READ-BUFFER FILL-READ-BUFFER TTY-FILL-READ BUFLEN TTY-BUFLEN GET-READ-BUFFER TTY-GET-READ PRINT-DATA TTY-PRINT-DATA TERM-MOVE? TTY-TERM-MOVE? NORMAL-OUT TTY-NORMAL-OUT IMAGE-OUT TTY-IMAGE-OUT SET-IMAGE-MODE TTY-SET-IMAGE SET-ECHO-MODE TTY-SET-ECHO RESET TTY-RESET PAGE-WIDTH TTY-PARM PAGE-HEIGHT TTY-PARM PAGE-X TTY-PARM PAGE-Y TTY-PARM SET-CURSOR-POSITION TTY-SET-CURS CLEAR-SCREEN CLEAR-SCREEN CLEAR-EOL CLEAR-EOL CLEAR-EOS CLEAR-EOS FRESH-LINE FRESH-LINE KILL-CHAR KILL-CHAR ERASE-CHAR ERASE-CHAR HOME-CURSOR HOME-CURSOR BOTTOM-CURSOR BOTTOM-CURSOR HOR-POS-CURSOR HOR-POS-CURSOR VER-POS-CURSOR VER-POS-CURSOR MOVE-CURSOR MOVE-CURSOR BACK-CURSOR BACK-CURSOR DOWN-CURSOR DOWN-CURSOR UP-CURSOR UP-CURSOR FORWARD-CURSOR FORWARD-CURSOR SAVE-CURSOR SAVE-CURSOR RESTORE-CURSOR RESTORE-CURSOR INSERT-LINE INSERT-LINE INSERT-CHAR INSERT-CHAR PAD TTY-PAD TYPE-CHAR TTY-TYPE-CHAR>
+
+"This must be patterned according to the definition of TWAY-CHANNEL, so the
+TWAY code will work when it's wanted."
+
+<SETG TT-RJFN %<OFFSET 1 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-RJFN>
+
+<SETG TT-MODE %<OFFSET 2 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-MODE>
+
+<SETG TT-BSZ %<OFFSET 3 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-BSZ>
+
+<SETG TT-RBUF %<OFFSET 4 TTY-CHANNEL '<OR FALSE STRING>>>
+
+<MANIFEST TT-RBUF>
+
+<SETG TT-RBC %<OFFSET 5 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-RBC>
+
+<SETG TT-WJFN %<OFFSET 6 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-WJFN>
+
+<SETG TT-WBUF %<OFFSET 7 TTY-CHANNEL '<OR FALSE STRING>>>
+
+<MANIFEST TT-WBUF>
+
+<SETG TT-WBC %<OFFSET 8 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-WBC>
+
+<SETG TT-RFSAV %<OFFSET 9 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-RFSAV>
+
+<SETG TT-RFCUR %<OFFSET 10 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-RFCUR>
+
+<SETG TT-QUEUE %<OFFSET 11 TTY-CHANNEL '<OR STRING CHARACTER FALSE>>>
+
+<MANIFEST TT-QUEUE>
+
+<SETG TT-QCT %<OFFSET 12 TTY-CHANNEL FIX>>
+
+<MANIFEST TT-QCT>
+
+<NEWTYPE TTY-CHANNEL VECTOR '<<PRIMTYPE VECTOR> FIX FIX FIX <OR FALSE STRING> FIX FIX <OR FALSE STRING> FIX FIX FIX <OR STRING CHARACTER FALSE> FIX>>
+
+<SETG TYPE-NAMES ["35" "37" "TI" "IMLAC" "DM2500" "HP2645" "NVT" "SYSTEM" "TVT" "VT05" "VT50" "LA30" "LINEPROCESSOR?" "LA36" "VT52" "GLASS" "FOX" "VT100V" "T1061" "H19" "C100" "VT100" "LA38" "LA120" "PTV" "SUPDUP" "HP2640" "AAA" "BBN"]>
+
+#WORD *11256427112*
+<GFCN \1aTTY-GET-TYPE ("VALUE" STRING CHANNEL ANY) CHANNEL4 OPER5>
+ <TEMP DATA6 VEC7:VECTOR TEMP11>
+ <INTGO>
+ <NTHUV CHANNEL4 5 = DATA6 (TYPE TTY-CHANNEL)>
+ <DEAD CHANNEL4>
+ <GVAL 'TYPE-NAMES = VEC7>
+ <NTHUV DATA6 1 = TEMP11 (TYPE FIX)>
+ <DEAD DATA6>
+ <SYSOP 'GTTYP TEMP11 (RETURN 2) = DATA6>
+ <DEAD TEMP11>
+ <LENUV VEC7 = TEMP11 (TYPE FIX)>
+ <GRTR? DATA6 TEMP11 - PHRASE13 (TYPE FIX)>
+ <DEAD TEMP11>
+ <RETURN "UNKNOWN">
+PHRASE13
+ <NTHUV VEC7 DATA6 = TEMP11 (TYPE STRING)>
+ <DEAD VEC7 DATA6>
+ <RETURN TEMP11>
+ <DEAD TEMP11>
+ <END \1aTTY-GET-TYPE>
+#WORD *34260306044*
+ <GFCN \1aTTY-TYPE-AHEAD? ("VALUE" <OR FALSE FIX> CHANNEL ANY) CHANNEL4 OPER5>
+ <TEMP DATA6 QC8:FIX>
+ <INTGO>
+ <NTHUV CHANNEL4 5 = DATA6 (TYPE TTY-CHANNEL)>
+ <DEAD CHANNEL4>
+ <NTHUV DATA6 12 = QC8 (TYPE FIX)>
+ <NTHUV DATA6 1 = DATA6 (TYPE FIX)>
+ <SYSOP 'SIBE DATA6 (RETURN 2) = DATA6>
+ <TYPE? DATA6 <TYPE-CODE FALSE> + PHRASE10>
+ <VEQUAL? DATA6 0 + PHRASE10 (TYPE FIX)>
+ <ADD DATA6 QC8 = DATA6 (TYPE FIX)>
+ <DEAD QC8>
+ <RETURN DATA6>
+ <DEAD DATA6>
+PHRASE10
+ <GRTR? QC8 0 + TAG16 (TYPE FIX)>
+ <RETURN %<>>
+TAG16
+ <RETURN QC8>
+ <DEAD QC8>
+ <END \1aTTY-TYPE-AHEAD?>
+
+#WORD *7573613245*
+<FCN \1aTTY-READ-IMMEDIATE ("VALUE" <OR CHARACTER FALSE> CHANNEL ANY "OPTIONAL" <OR ATOM FALSE>) CHANNEL6 OPER7 NOWAIT?8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH %<>>
+OPT5
+ <TEMP DATA9:TTY-CHANNEL (TEMP16 0) ECHO?11 IMAGE?12 TEMP3:LBIND TEMP25 TEMP39>
+ <INTGO>
+ <NTHUV CHANNEL6 5 = DATA9 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA9 10 = TEMP16 (TYPE FIX)>
+ <AND TEMP16 #WORD *4000* = TEMP16>
+ <VEQUAL? TEMP16 0 - TAG14 (TYPE FIX)>
+ <DEAD TEMP16>
+ <SET ECHO?11 %<> (TYPE FALSE)>
+ <JUMP + TAG15>
+TAG14
+ <SET ECHO?11 'T (TYPE ATOM)>
+TAG15
+ <NTHUV DATA9 10 = TEMP16 (TYPE FIX)>
+ <AND TEMP16 #WORD *300* = TEMP16>
+ <VEQUAL? TEMP16 0 - TAG19 (TYPE FIX)>
+ <DEAD TEMP16>
+ <SET IMAGE?12 'T (TYPE ATOM)>
+ <JUMP + TAG22>
+TAG19
+ <SET IMAGE?12 %<> (TYPE FALSE)>
+TAG22
+ <GETS 'BIND = TEMP3 (TYPE LBIND)>
+ <LOCATION + TAG23 = TEMP16>
+ <CFRAME = TEMP25 (TYPE FRAME)>
+ <BBIND 'UNWIND TEMP16 'FIX TEMP25>
+ <DEAD TEMP16 TEMP25>
+ <LOOP>
+AGAIN30
+ <INTGO>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA9>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+ <FRAME '\1aGET-QUEUE-CHAR>
+ <PUSH DATA9>
+ <CALL '\1aGET-QUEUE-CHAR 1 = TEMP16>
+ <TYPE? TEMP16 <TYPE-CODE FALSE> + PHRASE33>
+ <VEQUAL? IMAGE?12 0 - PHRASE65>
+ <DEAD IMAGE?12>
+ <VEQUAL? ECHO?11 0 + PHRASE65>
+ <DEAD ECHO?11>
+ <NTHUV DATA9 6 = TEMP25 (TYPE FIX)>
+ <DEAD DATA9>
+ <CHTYPE TEMP16 <TYPE-CODE FIX> = TEMP39>
+ <SYSOP 'BOUT TEMP25 TEMP39>
+ <DEAD TEMP25 TEMP39>
+ <JUMP + PHRASE65>
+PHRASE33
+ <TYPE? NOWAIT?8 <TYPE-CODE FALSE> + TAG43>
+ <NTHUV DATA9 1 = TEMP39 (TYPE FIX)>
+ <SYSOP 'SIBE TEMP39 (RETURN 2) = TEMP25>
+ <DEAD TEMP39>
+ <SET TEMP16 TEMP25>
+ <TYPE? TEMP16 <TYPE-CODE FALSE> + PHRASE65>
+ <VEQUAL? TEMP25 0 - TAG43 (TYPE FIX)>
+ <DEAD TEMP25>
+ <SET TEMP16 %<> (TYPE FALSE)>
+ <JUMP + PHRASE65>
+TAG43
+ <VEQUAL? IMAGE?12 0 - PHRASE47>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH CHANNEL6>
+ <PUSH OPER7>
+ <PUSH 'T>
+ <PUSH %<>>
+ <CALL '\1aTTY-SET-IMAGE 4>
+PHRASE47
+ <SETS 'RUNINT -1>
+ <NTHUV DATA9 1 = TEMP25 (TYPE FIX)>
+ <SYSOP 'BIN TEMP25 (RETURN 2) = TEMP16>
+ <DEAD TEMP25>
+ <SETS 'RUNINT 0>
+ <TYPE? TEMP16 <TYPE-CODE FALSE> + PHRASE50>
+ <CHTYPE TEMP16 <TYPE-CODE CHARACTER> = TEMP16>
+ <JUMP + PHRASE55>
+PHRASE50
+ <NTHL TEMP16 1 = TEMP25>
+ <DEAD TEMP16>
+ <EQUAL? TEMP25 196752 - PHRASE54>
+ <DEAD TEMP25>
+ <SET TEMP16 'T (TYPE ATOM)>
+ <JUMP + PHRASE55>
+PHRASE54
+ <SET TEMP16 %<> (TYPE FALSE)>
+PHRASE55
+ <VEQUAL? IMAGE?12 0 - PHRASE60>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH CHANNEL6>
+ <PUSH OPER7>
+ <PUSH %<>>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <VEQUAL? ECHO?11 0 + PHRASE60>
+ <TYPE? TEMP16 <TYPE-CODE CHARACTER> - PHRASE60>
+ <NTHUV DATA9 6 = TEMP25 (TYPE FIX)>
+ <CHTYPE TEMP16 <TYPE-CODE FIX> = TEMP39>
+ <SYSOP 'BOUT TEMP25 TEMP39>
+ <DEAD TEMP25 TEMP39>
+PHRASE60
+ <TYPE? TEMP16 <TYPE-CODE ATOM> + AGAIN30>
+ <TYPE? TEMP16 <TYPE-CODE FIX> - PHRASE65>
+ <SET TEMP16 %<> (TYPE FALSE)>
+PHRASE65
+ <NTHR 'UNWIND 2 = TEMP39 (RECORD-TYPE ATOM) (TYPE LBIND)>
+ <PUTR TEMP39 1 0 (RECORD-TYPE LBIND)>
+ <DEAD TEMP39>
+ <JUMP + TAG24>
+TAG23
+ <VEQUAL? IMAGE?12 0 - UNWCONT>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH CHANNEL6>
+ <PUSH OPER7>
+ <PUSH %<>>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <JUMP + UNWCONT>
+TAG24
+ <UNBIND TEMP3>
+ <DEAD TEMP3>
+ <ADJ -9>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+ <END \1aTTY-READ-IMMEDIATE>
+#WORD *31471745014*
+<GFCN \1aTTY-READ-BYTE ("VALUE" ANY CHANNEL ANY) CHANNEL4 OPER5>
+ <TEMP DATA6:TTY-CHANNEL TEMP10>
+ <INTGO>
+ <NTHUV CHANNEL4 5 = DATA6 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA6 4 = TEMP10>
+ <TYPE? TEMP10 <TYPE-CODE FALSE> + PHRASE8>
+ <DEAD TEMP10>
+ <NTHUV DATA6 5 = TEMP10 (TYPE FIX)>
+ <DEAD DATA6>
+ <VEQUAL? TEMP10 0 - PHRASE8 (TYPE FIX)>
+ <DEAD TEMP10>
+ <RETURN %<>>
+PHRASE8
+ <FRAME '\1aTWAY-READ-BYTE>
+ <PUSH CHANNEL4>
+ <DEAD CHANNEL4>
+ <PUSH OPER5>
+ <DEAD OPER5>
+ <CALL '\1aTWAY-READ-BYTE 2 = TEMP10>
+ <RETURN TEMP10>
+ <DEAD TEMP10>
+ <END \1aTTY-READ-BYTE>
+#WORD *715555023*
+<GFCN \1aTTY-READ-BUFFER ("VALUE" ANY CHANNEL ANY STRING "OPTIONAL" FIX FIX) TTY7 OPER8 BUF9 LEN10 CONT11>
+ <OPT-DISPATCH 3 %<> OPT4 OPT5 OPT6>
+OPT4
+ <PUSH #T$UNBOUND 0>
+OPT5
+ <PUSH 0>
+OPT6
+ <TEMP DATA12 TEMP17>
+ <INTGO>
+ <TYPE? LEN10 <TYPE-CODE UNBOUND> - TAG13>
+ <LENUS BUF9 = LEN10 (TYPE FIX)>
+TAG13
+ <NTHUV TTY7 5 = DATA12 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA12 4 = TEMP17>
+ <TYPE? TEMP17 <TYPE-CODE FALSE> + PHRASE16>
+ <DEAD TEMP17>
+ <FRAME '\1aTWAY-READ-BUFFER>
+ <PUSH TTY7>
+ <DEAD TTY7>
+ <PUSH OPER8>
+ <DEAD OPER8>
+ <PUSH BUF9>
+ <DEAD BUF9>
+ <PUSH LEN10>
+ <DEAD LEN10>
+ <PUSH CONT11>
+ <DEAD CONT11>
+ <CALL '\1aTWAY-READ-BUFFER 5 = TEMP17>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+PHRASE16
+ <NTHUV DATA12 1 = DATA12 (TYPE FIX)>
+ <LENUS BUF9 = TEMP17 (TYPE FIX)>
+ <GRTR? TEMP17 LEN10 - TAG22>
+ <SET TEMP17 LEN10 (TYPE FIX)>
+ <DEAD LEN10>
+TAG22
+ <READ DATA12 BUF9 TEMP17 CONT11 = TEMP17>
+ <DEAD DATA12 BUF9 CONT11>
+ <RETURN TEMP17>
+ <DEAD TEMP17>
+ <END \1aTTY-READ-BUFFER>
+#WORD *27036321341*
+<GFCN \1aTTY-GET-READ ("VALUE" <OR FALSE STRING> CHANNEL ANY "OPTIONAL" STRING) TTY6 OPER7 NEW8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH #T$UNBOUND 0>
+OPT5
+ <TEMP DATA9>
+ <INTGO>
+ <NTHUV TTY6 5 = DATA9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE11>
+ <PUTUV DATA9 4 NEW8>
+ <DEAD DATA9>
+ <RETURN NEW8>
+ <DEAD NEW8>
+PHRASE11
+ <NTHUV DATA9 4 = DATA9>
+ <RETURN DATA9>
+ <DEAD DATA9>
+ <END \1aTTY-GET-READ>
+#WORD *6355667155*
+<GFCN \1aTTY-BUFLEN ("VALUE" FIX CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 NEW8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH #T$UNBOUND 0>
+OPT5
+ <TEMP DATA9>
+ <INTGO>
+ <NTHUV TTY6 5 = DATA9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE11>
+ <PUTUV DATA9 5 NEW8 (TYPE FIX)>
+ <DEAD DATA9>
+ <RETURN NEW8>
+ <DEAD NEW8>
+PHRASE11
+ <NTHUV DATA9 5 = DATA9 (TYPE FIX)>
+ <RETURN DATA9>
+ <DEAD DATA9>
+ <END \1aTTY-BUFLEN>
+#WORD *1615720501*
+<GFCN \1aTTY-FILL-READ ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX <OR STRING FALSE> <OR STRING FALSE> <OR ATOM FALSE>) TTY9 OPER10 CONT11 RBUF12 END13 NOMORE14>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
+OPT4
+ <PUSH 0>
+OPT5
+ <PUSH %<>>
+OPT6
+ <PUSH %<>>
+OPT7
+ <PUSH %<>>
+OPT8
+ <TEMP DATA15:TTY-CHANNEL OB16 BUF17 TEMP25 TS19 PROMPT21 TEMP68 OLD73:STRING NEW74:STRING TEMP96>
+ <INTGO>
+ <NTHUV TTY9 5 = DATA15 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA15 4 = OB16 (TYPE STRING)>
+ <TOPU OB16 = BUF17>
+ <GEN-ASSIGNED? 'READ-PROMPT + TAG27>
+ <SET TEMP25 %<> (TYPE FALSE)>
+ <JUMP + PHRASE24>
+TAG27
+ <GEN-LVAL 'READ-PROMPT = TS19>
+ <TYPE? TS19 <TYPE-CODE STRING> + TAG32>
+ <SET TEMP25 %<> (TYPE FALSE)>
+ <JUMP + PHRASE24>
+TAG32
+ <SET TEMP25 TS19>
+ <DEAD TS19>
+PHRASE24
+ <SET TS19 TEMP25>
+ <DEAD TEMP25>
+ <SET TEMP25 TS19>
+ <TYPE? TEMP25 <TYPE-CODE FALSE> - BOOL35>
+ <SET TEMP25 "" (TYPE STRING)>
+BOOL35
+ <PUSH TEMP25>
+ <DEAD TEMP25>
+ <PUSH !\\0>
+ <SBLOCK <TYPE-CODE STRING> 2 = PROMPT21 (TYPE STRING)>
+ <LENUS PROMPT21 = TEMP25>
+ <IFSYS "TOPS20">
+ <ADD TEMP25 4 = TEMP25>
+ <DIV TEMP25 5 = TEMP25>
+ <ENDIF "TOPS20">
+ <IFSYS "VAX">
+ <ADD TEMP25 3 = TEMP25>
+ <DIV TEMP25 4 = TEMP25>
+ <ENDIF "VAX">
+ <SUB 0 TEMP25 = TEMP25>
+ <TYPE? TS19 <TYPE-CODE FALSE> - PHRASE37>
+ <DEAD TS19>
+ <SET PROMPT21 %<> (TYPE FALSE)>
+PHRASE37
+ <TYPE? END13 <TYPE-CODE FALSE> - PHRASE39>
+ <GEN-ASSIGNED? 'READ-BREAKS + TAG44>
+ <SET TS19 %<> (TYPE FALSE)>
+ <JUMP + TAG49>
+TAG44
+ <GEN-LVAL 'READ-BREAKS = TS19>
+ <TYPE? TS19 <TYPE-CODE STRING> + TAG49>
+ <SET TS19 %<> (TYPE FALSE)>
+TAG49
+ <SET END13 TS19>
+ <DEAD TS19>
+PHRASE39
+ <TYPE? RBUF12 <TYPE-CODE FALSE> + PHRASE52>
+ <SET OB16 RBUF12>
+ <SET BUF17 OB16>
+ <DEAD OB16>
+ <JUMP + COND51>
+PHRASE52
+ <NTHUV DATA15 5 = TS19 (TYPE FIX)>
+ <VEQUAL? TS19 0 - PHRASE53 (TYPE FIX)>
+ <DEAD TS19>
+ <VEQUAL? CONT11 0 + COND51 (TYPE FIX)>
+ <BACKU OB16 CONT11 = OB16>
+ <VEQUAL? OB16 BUF17 + COND51>
+ <SET TS19 OB16 (TYPE STRING)>
+ <DEAD OB16>
+ <SET TEMP68 BUF17 (TYPE STRING)>
+ <LOOP>
+MAP63
+ <INTGO>
+ <EMPUS? TS19 + COND51>
+ <EMPUS? TEMP68 + COND51>
+ <SET OLD73 TS19>
+ <SET NEW74 TEMP68>
+ <NTHUS OLD73 1 = OB16 (TYPE CHARACTER)>
+ <DEAD OLD73>
+ <PUTUS NEW74 1 OB16>
+ <DEAD NEW74 OB16>
+ <RESTUS TS19 1 = TS19 (TYPE STRING)>
+ <RESTUS TEMP68 1 = TEMP68 (TYPE STRING)>
+ <JUMP + MAP63>
+PHRASE53
+ <SET CONT11 0 (TYPE FIX)>
+COND51
+ <VEQUAL? CONT11 0 - PHRASE77 (TYPE FIX)>
+ <TYPE? PROMPT21 <TYPE-CODE FALSE> + PHRASE77>
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY9>
+ <PUSH OPER10>
+ <PUSH PROMPT21>
+ <LENUS PROMPT21 = TEMP68 (TYPE FIX)>
+ <SUB TEMP68 1 = STACK (TYPE FIX)>
+ <DEAD TEMP68>
+ <CALL '\1aTWAY-WRITE-BUFFER 4>
+PHRASE77
+ <RESTUS BUF17 CONT11 = TEMP68 (TYPE STRING)>
+ <LOOP>
+AGAIN85
+ <INTGO>
+ <FRAME '\1aGET-QUEUE-CHAR>
+ <PUSH DATA15>
+ <CALL '\1aGET-QUEUE-CHAR 1 = OB16>
+ <TYPE? OB16 <TYPE-CODE FALSE> + EXIT82>
+ <PUTUS TEMP68 1 OB16>
+ <RESTUS TEMP68 1 = TEMP68 (TYPE STRING)>
+ <ADD CONT11 1 = CONT11 (TYPE FIX)>
+ <FRAME '\1aTWAY-WRITE-BYTE>
+ <PUSH TTY9>
+ <PUSH OPER10>
+ <PUSH OB16>
+ <DEAD OB16>
+ <CALL '\1aTWAY-WRITE-BYTE 3>
+ <JUMP + AGAIN85>
+EXIT82
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA15>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+ <LOOP>
+AGAIN93
+ <INTGO>
+ <NTHUV DATA15 1 = TEMP68 (TYPE FIX)>
+ <LENUS BUF17 = TS19 (TYPE FIX)>
+ <SET OB16 END13>
+ <TYPE? OB16 <TYPE-CODE FALSE> - BOOL94>
+ <SET OB16 0 (TYPE FIX)>
+BOOL94
+ <SET TEMP96 PROMPT21>
+ <TYPE? TEMP96 <TYPE-CODE FALSE> - BOOL95>
+ <SET TEMP96 0 (TYPE FIX)>
+BOOL95
+ <READ TEMP68 BUF17 TS19 CONT11 OB16 TEMP96 = OB16>
+ <DEAD TEMP68 TS19 CONT11 TEMP96>
+ <TYPE? NOMORE14 <TYPE-CODE FALSE> - PHRASE98>
+ <LENUS BUF17 = TEMP68 (TYPE FIX)>
+ <EQUAL? TEMP68 OB16 - PHRASE98>
+ <DEAD TEMP68>
+ <LENUS BUF17 = TEMP68 (TYPE FIX)>
+ <ADD TEMP68 320 = TEMP68 (TYPE FIX)>
+ <UUBLOCK <TYPE-CODE STRING> TEMP68 = TEMP96 (TYPE STRING)>
+ <DEAD TEMP68>
+ <PUTUV DATA15 4 TEMP96>
+ <DEAD TEMP96>
+ <SET TEMP96 BUF17 (TYPE STRING)>
+ <DEAD BUF17>
+ <NTHUV DATA15 4 = TEMP68 (TYPE STRING)>
+ <LOOP>
+MAP101
+ <INTGO>
+ <EMPUS? TEMP96 + MAPAP104>
+ <EMPUS? TEMP68 + MAPAP104>
+ <SET OLD73 TEMP96>
+ <SET NEW74 TEMP68>
+ <NTHUS OLD73 1 = BUF17 (TYPE CHARACTER)>
+ <DEAD OLD73>
+ <PUTUS NEW74 1 BUF17>
+ <DEAD NEW74 BUF17>
+ <RESTUS TEMP96 1 = TEMP96 (TYPE STRING)>
+ <RESTUS TEMP68 1 = TEMP68 (TYPE STRING)>
+ <JUMP + MAP101>
+MAPAP104
+ <NTHUV DATA15 4 = BUF17 (TYPE STRING)>
+ <SET CONT11 OB16>
+ <DEAD OB16>
+ <JUMP + AGAIN93>
+PHRASE98
+ <TYPE? RBUF12 <TYPE-CODE FALSE> - PHRASE113>
+ <DEAD RBUF12>
+ <PUTUV DATA15 4 BUF17>
+ <DEAD BUF17>
+ <PUTUV DATA15 5 OB16>
+ <DEAD DATA15>
+PHRASE113
+ <SUB TEMP25 2 = TEMP25 (TYPE FIX)>
+ <ADJ TEMP25>
+ <DEAD TEMP25>
+ <RETURN OB16>
+ <DEAD OB16>
+ <END \1aTTY-FILL-READ>
+#WORD *16247637164*
+<GFCN \1aTTY-TERM-MOVE? ("VALUE" <OR ATOM !<FALSE>> CHANNEL ANY) TTY4 OPER5>
+ <TEMP DATA6>
+ <INTGO>
+ <NTHUV TTY4 5 = DATA6 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV DATA6 6 = DATA6 (TYPE FIX)>
+ <SYSOP 'RTCHR DATA6 (RETURN 2) = DATA6>
+ <AND DATA6 #WORD *400000000000* = DATA6>
+ <VEQUAL? DATA6 0 - TAG7 (TYPE FIX)>
+ <DEAD DATA6>
+ <RETURN %<>>
+TAG7
+ <RETURN 'T>
+ <END \1aTTY-TERM-MOVE?>
+#WORD *10713635054*
+<GFCN \1aTTY-NORMAL-OUT ("VALUE" <OR CHARACTER FALSE FIX> CHANNEL ANY <OR BYTES STRING CHARACTER> "OPTIONAL" ANY) TTY6 OPER7 CHRS8 LENGTH9>
+ <OPT-DISPATCH 3 %<> OPT4 OPT5>
+OPT4
+ <PUSH %<>>
+OPT5
+ <TEMP DATA10>
+ <INTGO>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH TTY6>
+ <PUSH 'SET-IMAGE-MODE>
+ <PUSH %<>>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <TYPE? CHRS8 <TYPE-CODE STRING> - PHRASE13>
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY6>
+ <DEAD TTY6>
+ <PUSH OPER7>
+ <DEAD OPER7>
+ <PUSH CHRS8>
+ <TYPE? LENGTH9 <TYPE-CODE FALSE> + PHRASE16>
+ <SET DATA10 LENGTH9>
+ <DEAD LENGTH9>
+ <JUMP + COND15>
+PHRASE16
+ <LENUS CHRS8 = DATA10 (TYPE FIX)>
+ <DEAD CHRS8>
+COND15
+ <PUSH DATA10>
+ <DEAD DATA10>
+ <CALL '\1aTWAY-WRITE-BUFFER 4 = DATA10>
+ <RETURN DATA10>
+ <DEAD DATA10>
+PHRASE13
+ <FRAME '\1aTWAY-WRITE-BYTE>
+ <PUSH TTY6>
+ <DEAD TTY6>
+ <PUSH OPER7>
+ <DEAD OPER7>
+ <PUSH CHRS8>
+ <DEAD CHRS8>
+ <CALL '\1aTWAY-WRITE-BYTE 3 = DATA10>
+ <RETURN DATA10>
+ <DEAD DATA10>
+ <END \1aTTY-NORMAL-OUT>
+#WORD *4434136522*
+<GFCN \1aTTY-IMAGE-OUT ("VALUE" FIX CHANNEL ANY <OR FIX CHARACTER STRING BYTES> "OPTIONAL" <OR FIX FALSE> "TUPLE" <TUPLE [REST <OR FIX BYTES STRING CHARACTER>]>) TTY6 OPER7 CHRS8 LENGTH9>
+ <OPT-DISPATCH 3 4 OPT4 OPT5>
+OPT4
+ <PUSH %<>>
+OPT5
+ <MAKTUP MORE10 DATA11 TEMP24:FIX X26 = MORE10>
+ <INTGO>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH TTY6>
+ <PUSH 'SET-IMAGE-MODE>
+ <PUSH 'T>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <FRAME '\1aWRITE-STUFF>
+ <PUSH TTY6>
+ <PUSH OPER7>
+ <PUSH CHRS8>
+ <DEAD CHRS8>
+ <PUSH LENGTH9>
+ <DEAD LENGTH9>
+ <CALL '\1aWRITE-STUFF 4 = DATA11>
+ <SET TEMP24 0 (TYPE FIX)>
+ <CHTYPE MORE10 <TYPE-CODE VECTOR> = MORE10>
+ <LOOP>
+MAP16
+ <INTGO>
+ <EMPUV? MORE10 + MAPAP19>
+ <NTHUV MORE10 1 = X26>
+ <FRAME '\1aWRITE-STUFF>
+ <PUSH TTY6>
+ <PUSH OPER7>
+ <PUSH X26>
+ <DEAD X26>
+ <PUSH %<>>
+ <CALL '\1aWRITE-STUFF 4 = X26>
+ <ADD TEMP24 X26 = TEMP24>
+ <DEAD X26>
+ <RESTUV MORE10 1 = MORE10 (TYPE VECTOR)>
+ <JUMP + MAP16>
+MAPAP19
+ <ADD DATA11 TEMP24 = DATA11 (TYPE FIX)>
+ <DEAD TEMP24>
+ <RETURN DATA11>
+ <DEAD DATA11>
+ <END \1aTTY-IMAGE-OUT>
+<SETG BUFSTR <ISTRING 12>>
+
+#WORD *20122054327*
+<GFCN \1aWRITE-STUFF ("VALUE" <OR FALSE FIX> CHANNEL ANY <OR STRING FIX CHARACTER> <OR FIX FALSE>) TTY4 OPER5 CHRS6 LENGTH7>
+ <TEMP BS8:STRING (NEG?9 %<>) TEMP20>
+ <INTGO>
+ <GVAL 'BUFSTR = BS8>
+ <TYPE? CHRS6 <TYPE-CODE STRING> + TAG12>
+ <TYPE? CHRS6 <TYPE-CODE BYTES> - PHRASE11>
+TAG12
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY4>
+ <DEAD TTY4>
+ <PUSH OPER5>
+ <DEAD OPER5>
+ <PUSH CHRS6>
+ <TYPE? LENGTH7 <TYPE-CODE FALSE> + PHRASE15>
+ <SET NEG?9 LENGTH7>
+ <DEAD LENGTH7>
+ <JUMP + COND14>
+PHRASE15
+ <LENUS CHRS6 = NEG?9 (TYPE FIX)>
+ <DEAD CHRS6>
+COND14
+ <PUSH NEG?9>
+ <DEAD NEG?9>
+ <CALL '\1aTWAY-WRITE-BUFFER 4 = NEG?9>
+ <RETURN NEG?9>
+ <DEAD NEG?9>
+PHRASE11
+ <TYPE? CHRS6 <TYPE-CODE CHARACTER> - PHRASE17>
+ <FRAME '\1aTWAY-WRITE-BYTE>
+ <PUSH TTY4>
+ <DEAD TTY4>
+ <PUSH OPER5>
+ <DEAD OPER5>
+ <PUSH CHRS6>
+ <DEAD CHRS6>
+ <CALL '\1aTWAY-WRITE-BYTE 3>
+ <RETURN 1>
+PHRASE17
+ <LENUS BS8 = TEMP20 (TYPE FIX)>
+ <RESTUS BS8 TEMP20 = BS8 (TYPE STRING)>
+ <DEAD TEMP20>
+ <LESS? CHRS6 0 - PHRASE22 (TYPE FIX)>
+ <SET NEG?9 'T (TYPE ATOM)>
+ <SUB 0 CHRS6 = CHRS6 (TYPE FIX)>
+PHRASE22
+ <SET TEMP20 %<> (TYPE FALSE)>
+ <LOOP>
+AGAIN28
+ <INTGO>
+ <VEQUAL? CHRS6 0 - PHRASE30 (TYPE FIX)>
+ <VEQUAL? TEMP20 0 - PHRASE34>
+ <DEAD TEMP20>
+ <BACKU BS8 1 = BS8>
+ <PUTUS BS8 1 !\0>
+ <JUMP + PHRASE35>
+PHRASE34
+ <VEQUAL? NEG?9 0 + PHRASE35>
+ <DEAD NEG?9>
+ <BACKU BS8 1 = BS8>
+ <PUTUS BS8 1 !\->
+PHRASE35
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY4>
+ <DEAD TTY4>
+ <PUSH OPER5>
+ <DEAD OPER5>
+ <PUSH BS8>
+ <LENUS BS8 = STACK (TYPE FIX)>
+ <CALL '\1aTWAY-WRITE-BUFFER 4>
+ <LENUS BS8 = NEG?9 (TYPE FIX)>
+ <DEAD BS8>
+ <RETURN NEG?9>
+ <DEAD NEG?9>
+PHRASE30
+ <MOD CHRS6 10 = TEMP20 (TYPE FIX)>
+ <DIV CHRS6 10 = CHRS6 (TYPE FIX)>
+ <BACKU BS8 1 = BS8>
+ <ADD TEMP20 48 = TEMP20 (TYPE FIX)>
+ <CHTYPE TEMP20 <TYPE-CODE CHARACTER> = TEMP20>
+ <PUTUS BS8 1 TEMP20>
+ <DEAD TEMP20>
+ <SET TEMP20 'T (TYPE ATOM)>
+ <JUMP + AGAIN28>
+ <END \1aWRITE-STUFF>
+#WORD *3164705316*
+<GFCN \1aTTY-OPEN ("VALUE" <OR FALSE TTY-CHANNEL> ANY ANY "OPTIONAL" ANY ANY ANY ANY ANY) STYPE10 OPR11 NAME12 MODE13 BSZ14 OBUF?15 IBUF?16>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7 OPT8 OPT9>
+OPT4
+ <PUSH %<>>
+OPT5
+ <PUSH "">
+OPT6
+ <PUSH "">
+OPT7
+ <PUSH #T$UNBOUND 0>
+OPT8
+ <PUSH #T$UNBOUND 0>
+OPT9
+ <TEMP TO21 IJFN18 VAL20>
+ <INTGO>
+ <TYPE? IBUF?16 <TYPE-CODE UNBOUND> - COND24>
+ <TYPE? BSZ14 <TYPE-CODE STRING> - PHRASE25>
+ <SET IBUF?16 'T (TYPE ATOM)>
+ <JUMP + COND24>
+PHRASE25
+ <SET IBUF?16 BSZ14>
+ <DEAD BSZ14>
+COND24
+ <TYPE? OBUF?15 <TYPE-CODE UNBOUND> - COND28>
+ <TYPE? MODE13 <TYPE-CODE STRING> - PHRASE29>
+ <SET OBUF?15 %<> (TYPE FALSE)>
+ <JUMP + COND28>
+PHRASE29
+ <SET OBUF?15 MODE13>
+ <DEAD MODE13>
+COND28
+ <TYPE? NAME12 <TYPE-CODE FALSE> - PHRASE31>
+ <SET TO21 65 (TYPE FIX)>
+ <SET IJFN18 64 (TYPE FIX)>
+ <JUMP + PHRASE34>
+PHRASE31
+ <FRAME '\1aGET-JFN>
+ <PUSH NAME12>
+ <DEAD NAME12>
+ <PUSH 106496>
+ <PUSH 7>
+ <PUSH %<>>
+ <CALL '\1aGET-JFN 4 = TO21>
+ <TYPE? TO21 <TYPE-CODE FALSE> + PHRASE32>
+ <SET IJFN18 TO21>
+ <JUMP + PHRASE34>
+PHRASE32
+ <RETURN TO21>
+ <DEAD TO21>
+PHRASE34
+ <SYSOP 'RFMOD TO21 (RETURN 2) = VAL20>
+ <PUSH IJFN18>
+ <DEAD IJFN18>
+ <PUSH -1>
+ <PUSH 7>
+ <SET IJFN18 IBUF?16>
+ <DEAD IBUF?16>
+ <TYPE? IJFN18 <TYPE-CODE FALSE> + PHRASE38>
+ <UUBLOCK <TYPE-CODE STRING> 320 = IJFN18 (TYPE STRING)>
+PHRASE38
+ <PUSH IJFN18>
+ <DEAD IJFN18>
+ <PUSH 0>
+ <PUSH TO21>
+ <DEAD TO21>
+ <SET IJFN18 OBUF?15>
+ <DEAD OBUF?15>
+ <TYPE? IJFN18 <TYPE-CODE FALSE> + PHRASE41>
+ <UUBLOCK <TYPE-CODE STRING> 320 = IJFN18 (TYPE STRING)>
+PHRASE41
+ <PUSH IJFN18>
+ <DEAD IJFN18>
+ <PUSH 0>
+ <PUSH VAL20>
+ <PUSH VAL20>
+ <DEAD VAL20>
+ <PUSH %<>>
+ <PUSH 0>
+ <PUSH %<>>
+ <PUSH %<>>
+ <UBLOCK <TYPE-CODE VECTOR> 14 = IJFN18>
+ <CHTYPE IJFN18 <TYPE-CODE TTY-CHANNEL> = IJFN18>
+ <RETURN IJFN18>
+ <DEAD IJFN18>
+ <END \1aTTY-OPEN>
+#WORD *13704672357*
+<GFCN \1aTTY-SET-ECHO ("VALUE" CHANNEL CHANNEL ANY <OR ATOM FALSE>) TTY4 OPER5 ON?6>
+ <TEMP DATA7 TEMP11>
+ <INTGO>
+ <NTHUV TTY4 5 = DATA7 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA7 10 = TEMP11 (TYPE FIX)>
+ <AND TEMP11 #WORD *4000* = TEMP11>
+ <VEQUAL? TEMP11 0 - TAG9 (TYPE FIX)>
+ <DEAD TEMP11>
+ <SET TEMP11 %<> (TYPE FALSE)>
+ <JUMP + TAG10>
+TAG9
+ <SET TEMP11 'T (TYPE ATOM)>
+TAG10
+ <VEQUAL? TEMP11 ON?6 + PHRASE15>
+ <DEAD TEMP11 ON?6>
+ <NTHUV DATA7 10 = TEMP11 (TYPE FIX)>
+ <XOR TEMP11 #WORD *4000* = TEMP11>
+ <PUTUV DATA7 10 TEMP11 (TYPE FIX)>
+ <DEAD TEMP11>
+ <NTHUV DATA7 1 = TEMP11 (TYPE FIX)>
+ <NTHUV DATA7 10 = DATA7 (TYPE FIX)>
+ <SYSOP 'SFMOD TEMP11 DATA7>
+ <DEAD TEMP11 DATA7>
+PHRASE15
+ <RETURN TTY4>
+ <DEAD TTY4>
+ <END \1aTTY-SET-ECHO>
+#WORD *26564056631*
+<GFCN \1aTTY-SET-IMAGE ("VALUE" CHANNEL CHANNEL ANY <OR ATOM FALSE> "OPTIONAL" ANY) TTY6 OPER7 ON?8 SCREW?9>
+ <OPT-DISPATCH 3 %<> OPT4 OPT5>
+OPT4
+ <PUSH 'T>
+OPT5
+ <TEMP DATA10:TTY-CHANNEL TEMP12 TEMP27:FIX>
+ <INTGO>
+ <NTHUV TTY6 5 = DATA10 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA10 10 = TEMP12 (TYPE FIX)>
+ <AND TEMP12 #WORD *300* = TEMP12>
+ <VEQUAL? TEMP12 0 - TAG13 (TYPE FIX)>
+ <DEAD TEMP12>
+ <SET TEMP12 'T (TYPE ATOM)>
+ <JUMP + TAG16>
+TAG13
+ <SET TEMP12 %<> (TYPE FALSE)>
+TAG16
+ <VEQUAL? TEMP12 ON?8 + PHRASE18>
+ <DEAD TEMP12>
+ <FRAME '\1aTWAY-BUFOUT>
+ <PUSH TTY6>
+ <PUSH 'BUFOUT>
+ <PUSH %<>>
+ <CALL '\1aTWAY-BUFOUT 3>
+ <TYPE? ON?8 <TYPE-CODE FALSE> + PHRASE21>
+ <TYPE? SCREW?9 <TYPE-CODE FALSE> + PHRASE21>
+ <DEAD SCREW?9>
+ <NTHUV DATA10 1 = TEMP12 (TYPE FIX)>
+ <SYSOP 'SFPOS TEMP12 -1>
+ <DEAD TEMP12>
+PHRASE21
+ <TYPE? ON?8 <TYPE-CODE FALSE> + PHRASE24>
+ <DEAD ON?8>
+ <NTHUV DATA10 10 = TEMP12 (TYPE FIX)>
+ <AND TEMP12 #WORD *777777777477* = TEMP12>
+ <JUMP + PHRASE25>
+PHRASE24
+ <NTHUV DATA10 10 = TEMP12 (TYPE FIX)>
+ <NTHUV DATA10 9 = TEMP27 (TYPE FIX)>
+ <AND TEMP27 #WORD *300* = TEMP27>
+ <OR TEMP12 TEMP27 = TEMP12>
+ <DEAD TEMP27>
+PHRASE25
+ <PUTUV DATA10 10 TEMP12 (TYPE FIX)>
+ <DEAD TEMP12>
+ <NTHUV DATA10 1 = TEMP12 (TYPE FIX)>
+ <NTHUV DATA10 10 = TEMP27 (TYPE FIX)>
+ <DEAD DATA10>
+ <SYSOP 'SFMOD TEMP12 TEMP27>
+ <DEAD TEMP12 TEMP27>
+PHRASE18
+ <RETURN TTY6>
+ <DEAD TTY6>
+ <END \1aTTY-SET-IMAGE>
+\\f
+
+#WORD *23204133012*
+<GFCN \1aTTY-RESET ("VALUE" CHANNEL CHANNEL ANY "OPTIONAL" ANY <OR ATOM FALSE>) TTY7 OPER8 NEW?9 FLUSH?10>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6>
+OPT4
+ <PUSH %<>>
+OPT5
+ <PUSH 'T>
+OPT6
+ <TEMP DATA11:TTY-CHANNEL TEMP14 TEMP20>
+ <INTGO>
+ <NTHUV TTY7 5 = DATA11 (TYPE TTY-CHANNEL)>
+ <TYPE? NEW?9 <TYPE-CODE FALSE> + PHRASE13>
+ <DEAD NEW?9>
+ <NTHUV DATA11 1 = TEMP14 (TYPE FIX)>
+ <SYSOP 'RFMOD TEMP14 (RETURN 2) = TEMP14>
+ <PUTUV DATA11 10 TEMP14>
+ <DEAD TEMP14>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH TTY7>
+ <PUSH OPER8>
+ <PUSH %<>>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <FRAME '\1aTTY-SET-ECHO>
+ <PUSH TTY7>
+ <PUSH OPER8>
+ <DEAD OPER8>
+ <PUSH 'T>
+ <CALL '\1aTTY-SET-ECHO 3>
+ <NTHUV DATA11 10 = TEMP14 (TYPE FIX)>
+ <PUTUV DATA11 9 TEMP14 (TYPE FIX)>
+ <DEAD TEMP14>
+ <JUMP + PHRASE22>
+PHRASE13
+ <NTHUV DATA11 10 = TEMP14 (TYPE FIX)>
+ <NTHUV DATA11 9 = TEMP20 (TYPE FIX)>
+ <VEQUAL? TEMP14 TEMP20 + PHRASE19 (TYPE FIX)>
+ <DEAD TEMP14 TEMP20>
+ <NTHUV DATA11 1 = TEMP20 (TYPE FIX)>
+ <NTHUV DATA11 9 = TEMP14 (TYPE FIX)>
+ <SYSOP 'SFMOD TEMP20 TEMP14>
+ <DEAD TEMP20 TEMP14>
+ <NTHUV DATA11 9 = TEMP20 (TYPE FIX)>
+ <PUTUV DATA11 10 TEMP20 (TYPE FIX)>
+ <DEAD TEMP20>
+PHRASE19
+ <TYPE? FLUSH?10 <TYPE-CODE FALSE> + PHRASE22>
+ <DEAD FLUSH?10>
+ <NTHUV DATA11 1 = TEMP20 (TYPE FIX)>
+ <SYSOP 'CFIBF TEMP20>
+ <DEAD TEMP20>
+PHRASE22
+ <NTHUV DATA11 4 = TEMP20>
+ <TYPE? TEMP20 <TYPE-CODE FALSE> + PHRASE24>
+ <DEAD TEMP20>
+ <PUTUV DATA11 5 0 (TYPE FIX)>
+ <NTHUV DATA11 4 = TEMP20 (TYPE STRING)>
+ <TOPU TEMP20 = TEMP20>
+ <PUTUV DATA11 4 TEMP20>
+ <DEAD TEMP20>
+PHRASE24
+ <NTHUV DATA11 7 = TEMP20>
+ <TYPE? TEMP20 <TYPE-CODE FALSE> + PHRASE26>
+ <DEAD TEMP20>
+ <PUTUV DATA11 8 0 (TYPE FIX)>
+ <NTHUV DATA11 7 = TEMP20 (TYPE STRING)>
+ <TOPU TEMP20 = TEMP20>
+ <PUTUV DATA11 7 TEMP20>
+ <DEAD TEMP20>
+PHRASE26
+ <PUTUV DATA11 12 0 (TYPE FIX)>
+ <DEAD DATA11>
+ <RETURN TTY7>
+ <DEAD TTY7>
+ <END \1aTTY-RESET>
+#WORD *34147104564*
+<GFCN \1aTTY-QUERY ("VALUE" <OR ATOM FALSE> CHANNEL ANY FIX) CHANNEL4 OPER5 BIT6>
+ <TEMP DATA7>
+ <INTGO>
+ <NTHUV CHANNEL4 5 = DATA7 (TYPE TTY-CHANNEL)>
+ <DEAD CHANNEL4>
+ <VEQUAL? BIT6 2 + TAG11 (TYPE FIX)>
+ <DEAD BIT6>
+ <RETURN %<>>
+TAG11
+ <NTHUV DATA7 4 = DATA7>
+ <TYPE? DATA7 <TYPE-CODE FALSE> + PHRASE13>
+ <SET DATA7 'T (TYPE ATOM)>
+PHRASE13
+ <RETURN DATA7>
+ <DEAD DATA7>
+ <END \1aTTY-QUERY>
+\\f
+
+#WORD *31254076332*
+<GFCN \1aTTY-SET-CURS ("VALUE" ATOM CHANNEL ANY FIX FIX) TTY4 OPER5 X6 Y7>
+ <TEMP DATA8 SU11 TEMP16:FIX>
+ <INTGO>
+ <NTHUV TTY4 5 = DATA8 (TYPE TTY-CHANNEL)>
+ <NTHUV TTY4 6 = SU11>
+ <DEAD TTY4>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <PUTUV SU11 4 Y7 (TYPE FIX)>
+ <PUTUV SU11 2 X6 (TYPE FIX)>
+ <DEAD SU11>
+PHRASE14
+ <NTHUV DATA8 1 = DATA8 (TYPE FIX)>
+ <IFSYS "VAX">
+ <PUTBITS X6 16 16 Y7 = TEMP16>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <PUTBITS X6 18 18 Y7 = TEMP16>
+ <DEAD X6 Y7>
+ <ENDIF "TOPS20">
+ <SYSOP 'SFPOS DATA8 TEMP16>
+ <DEAD DATA8 TEMP16>
+ <RETURN 'T>
+ <END \1aTTY-SET-CURS>
+#WORD *33677634553*
+<GFCN \1aTTY-PARM ("VALUE" ANY CHANNEL ATOM "OPTIONAL" FIX) TTY6 OPER7 NEW8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH #T$UNBOUND 0>
+OPT5
+ <TEMP DATA9 TEMP14 RN27:FIX TEMP29:FIX TEMP46:FIX>
+ <INTGO>
+ <NTHUV TTY6 5 = DATA9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <VEQUAL? OPER7 'PAGE-WIDTH - PHRASE11>
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE13>
+ <NTHUV DATA9 1 = TEMP14 (TYPE FIX)>
+ <DEAD DATA9>
+ <SYSOP 'MTOPR TEMP14 25 NEW8 (RETURN 3) = TEMP14>
+ <DEAD NEW8>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE13
+ <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
+ <SYSOP 'MTOPR DATA9 24 (RETURN 3) = TEMP14>
+ <DEAD DATA9>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE11
+ <VEQUAL? OPER7 'PAGE-HEIGHT - PHRASE17>
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE19>
+ <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
+ <SYSOP 'MTOPR DATA9 27 NEW8 (RETURN 3) = TEMP14>
+ <DEAD DATA9 NEW8>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE19
+ <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
+ <SYSOP 'MTOPR DATA9 26 (RETURN 3) = TEMP14>
+ <DEAD DATA9>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE17
+ <VEQUAL? OPER7 'PAGE-X - PHRASE21>
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE23>
+ <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
+ <SYSOP 'RFPOS DATA9 (RETURN 2) = TEMP14>
+ <SET RN27 NEW8>
+ <DEAD NEW8>
+ <IFSYS "VAX">
+ <PUTBITS TEMP14 16 0 RN27 = TEMP29>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <PUTBITS TEMP14 18 0 RN27 = TEMP29>
+ <DEAD TEMP14 RN27>
+ <ENDIF "TOPS20">
+ <SYSOP 'SFPOS DATA9 TEMP29 (RETURN 2) = TEMP14>
+ <DEAD DATA9 TEMP29>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE23
+ <IFSYS "VAX">
+ <NTHUV DATA9 1 = TEMP14 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP14 (RETURN 2) = TEMP14>
+ <AND TEMP14 #WORD *177777* = TEMP14>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <NTHUV DATA9 1 = TEMP14 (TYPE FIX)>
+ <DEAD DATA9>
+ <SYSOP 'RFPOS TEMP14 (RETURN 2) = TEMP14>
+ <AND TEMP14 #WORD *777777* = TEMP14>
+ <ENDIF "TOPS20">
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE21
+ <VEQUAL? OPER7 'PAGE-Y + TAG38>
+ <DEAD OPER7>
+ <RETURN %<>>
+TAG38
+ <TYPE? NEW8 <TYPE-CODE UNBOUND> + PHRASE40>
+ <NTHUV DATA9 1 = DATA9 (TYPE FIX)>
+ <SYSOP 'RFPOS DATA9 (RETURN 2) = TEMP14>
+ <SET RN27 NEW8>
+ <DEAD NEW8>
+ <IFSYS "VAX">
+ <PUTBITS TEMP14 16 16 RN27 = TEMP46>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <PUTBITS TEMP14 18 18 RN27 = TEMP46>
+ <DEAD TEMP14 RN27>
+ <ENDIF "TOPS20">
+ <SYSOP 'SFPOS DATA9 TEMP46 (RETURN 2) = TEMP14>
+ <DEAD DATA9 TEMP46>
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+PHRASE40
+ <IFSYS "VAX">
+ <NTHUV DATA9 1 = TEMP14 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP14 (RETURN 2) = TEMP14>
+ <GETBITS TEMP14 16 16 = TEMP14>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <NTHUV DATA9 1 = TEMP14 (TYPE FIX)>
+ <DEAD DATA9>
+ <SYSOP 'RFPOS TEMP14 (RETURN 2) = TEMP14>
+ <GETBITS TEMP14 18 18 = TEMP14>
+ <ENDIF "TOPS20">
+ <RETURN TEMP14>
+ <DEAD TEMP14>
+ <END \1aTTY-PARM>
+\\f
+
+#WORD *2247222022*
+<GFCN \1aINSERT-LINE ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX <OR FIX FALSE> <OR FIX FALSE>) TTY8 OPER9 N10 TOP11 BOT12>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7>
+OPT4
+ <PUSH 1>
+OPT5
+ <PUSH %<>>
+OPT6
+ <PUSH %<>>
+OPT7
+ <TEMP DATA13 TEMP18 TEMP49:FIX>
+ <INTGO>
+ <NTHUV TTY8 5 = DATA13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY8>
+ <VEQUAL? N10 0 - PHRASE15 (TYPE FIX)>
+ <RETURN 'T>
+PHRASE15
+ <TYPE? TOP11 <TYPE-CODE FALSE> - PHRASE19>
+ <TYPE? BOT12 <TYPE-CODE FALSE> - PHRASE19>
+ <NTHUV DATA13 7 = TEMP18>
+ <TYPE? TEMP18 <TYPE-CODE FALSE> + PHRASE25>
+ <DEAD TEMP18>
+ <NTHUV DATA13 8 = TEMP18 (TYPE FIX)>
+ <VEQUAL? TEMP18 0 + PHRASE25 (TYPE FIX)>
+ <DEAD TEMP18>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA13>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE25
+ <NTHUV DATA13 6 = TEMP18 (TYPE FIX)>
+ <DEAD DATA13>
+ <SYSOP 'VTSOP TEMP18 17179869202 N10 = TEMP18>
+ <DEAD N10>
+ <RETURN TEMP18>
+ <DEAD TEMP18>
+PHRASE19
+ <TYPE? TOP11 <TYPE-CODE FALSE> - EXIT34>
+ <IFSYS "VAX">
+ <NTHUV DATA13 1 = TEMP18 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP18 (RETURN 2) = TEMP18>
+ <GETBITS TEMP18 16 16 = TOP11>
+ <DEAD TEMP18>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <NTHUV DATA13 1 = TEMP18 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP18 (RETURN 2) = TEMP18>
+ <GETBITS TEMP18 18 18 = TOP11>
+ <DEAD TEMP18>
+ <ENDIF "TOPS20">
+EXIT34
+ <TYPE? BOT12 <TYPE-CODE FALSE> - PHRASE38>
+ <NTHUV DATA13 1 = TEMP18 (TYPE FIX)>
+ <SYSOP 'MTOPR TEMP18 26 (RETURN 3) = TEMP18>
+ <SUB TEMP18 1 = BOT12 (TYPE FIX)>
+ <DEAD TEMP18>
+PHRASE38
+ <NTHUV DATA13 7 = TEMP18>
+ <TYPE? TEMP18 <TYPE-CODE FALSE> + PHRASE42>
+ <DEAD TEMP18>
+ <NTHUV DATA13 8 = TEMP18 (TYPE FIX)>
+ <VEQUAL? TEMP18 0 + PHRASE42 (TYPE FIX)>
+ <DEAD TEMP18>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA13>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE42
+ <NTHUV DATA13 6 = TEMP18 (TYPE FIX)>
+ <DEAD DATA13>
+ <LSH TOP11 18 = DATA13 (TYPE FIX)>
+ <DEAD TOP11>
+ <AND BOT12 #WORD *777777* = TEMP49>
+ <DEAD BOT12>
+ <OR DATA13 TEMP49 = DATA13>
+ <DEAD TEMP49>
+ <SYSOP 'VTSOP TEMP18 25769803794 N10 DATA13 = TEMP18>
+ <DEAD N10 DATA13>
+ <RETURN TEMP18>
+ <DEAD TEMP18>
+ <END \1aINSERT-LINE>
+#WORD *33673411765*
+<GFCN \1aINSERT-CHAR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX <OR FIX FALSE> <OR FIX FALSE>) TTY8 OPER9 N10 LEFT11 RIGHT12>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5 OPT6 OPT7>
+OPT4
+ <PUSH 1>
+OPT5
+ <PUSH %<>>
+OPT6
+ <PUSH %<>>
+OPT7
+ <TEMP DATA13 TEMP24>
+ <INTGO>
+ <NTHUV TTY8 5 = DATA13>
+ <DEAD TTY8>
+ <TYPE? LEFT11 <TYPE-CODE FALSE> - PHRASE15>
+ <TYPE? RIGHT12 <TYPE-CODE FALSE> - PHRASE15>
+ <NTHUV DATA13 7 = TEMP24>
+ <TYPE? TEMP24 <TYPE-CODE FALSE> + PHRASE22>
+ <DEAD TEMP24>
+ <NTHUV DATA13 8 = TEMP24 (TYPE FIX)>
+ <VEQUAL? TEMP24 0 + PHRASE22 (TYPE FIX)>
+ <DEAD TEMP24>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA13>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE22
+ <NTHUV DATA13 6 = TEMP24 (TYPE FIX)>
+ <DEAD DATA13>
+ <SYSOP 'VTSOP TEMP24 17179869203 N10 = DATA13>
+ <DEAD TEMP24 N10>
+ <RETURN DATA13>
+ <DEAD DATA13>
+PHRASE15
+ <TYPE? LEFT11 <TYPE-CODE FALSE> - EXIT31>
+ <IFSYS "VAX">
+ <NTHUV DATA13 1 = TEMP24 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP24 (RETURN 2) = TEMP24>
+ <AND TEMP24 #WORD *177777* = LEFT11>
+ <DEAD TEMP24>
+ <ENDIF "VAX">
+ <IFSYS "TOPS20">
+ <NTHUV DATA13 1 = TEMP24 (TYPE FIX)>
+ <SYSOP 'RFPOS TEMP24 (RETURN 2) = TEMP24>
+ <AND TEMP24 #WORD *777777* = LEFT11>
+ <DEAD TEMP24>
+ <ENDIF "TOPS20">
+EXIT31
+ <TYPE? RIGHT12 <TYPE-CODE FALSE> - PHRASE35>
+ <NTHUV DATA13 1 = TEMP24 (TYPE FIX)>
+ <SYSOP 'MTOPR TEMP24 24 (RETURN 3) = TEMP24>
+ <SUB TEMP24 1 = RIGHT12 (TYPE FIX)>
+ <DEAD TEMP24>
+PHRASE35
+ <NTHUV DATA13 7 = TEMP24>
+ <TYPE? TEMP24 <TYPE-CODE FALSE> + PHRASE39>
+ <DEAD TEMP24>
+ <NTHUV DATA13 8 = TEMP24 (TYPE FIX)>
+ <VEQUAL? TEMP24 0 + PHRASE39 (TYPE FIX)>
+ <DEAD TEMP24>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH DATA13>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE39
+ <NTHUV DATA13 6 = TEMP24 (TYPE FIX)>
+ <DEAD DATA13>
+ <AND RIGHT12 #WORD *777777000000* = DATA13>
+ <DEAD RIGHT12>
+ <OR DATA13 LEFT11 = DATA13>
+ <DEAD LEFT11>
+ <SYSOP 'VTSOP TEMP24 25769803795 N10 DATA13 = DATA13>
+ <DEAD TEMP24 N10>
+ <RETURN DATA13>
+ <DEAD DATA13>
+ <END \1aINSERT-CHAR>
+\\f
+
+#WORD *11274531177*
+<GFCN \1aCLEAR-SCREEN ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP SU9>
+ <INTGO>
+ <NTHUV TTY4 6 = SU9>
+ <TYPE? SU9 <TYPE-CODE MUD-CHAN> - PHRASE12>
+ <PUTUV SU9 4 0 (TYPE FIX)>
+ <PUTUV SU9 2 0 (TYPE FIX)>
+ <DEAD SU9>
+PHRASE12
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 7 = SU9>
+ <TYPE? SU9 <TYPE-CODE FALSE> + PHRASE18>
+ <DEAD SU9>
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 8 = SU9 (TYPE FIX)>
+ <VEQUAL? SU9 0 + PHRASE18 (TYPE FIX)>
+ <DEAD SU9>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE18
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV SU9 6 = SU9 (TYPE FIX)>
+ <SYSOP 'VTSOP SU9 13 = SU9>
+ <RETURN SU9>
+ <DEAD SU9>
+ <END \1aCLEAR-SCREEN>
+#WORD *21014113566*
+<GFCN \1aCLEAR-EOL ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE11>
+ <DEAD TEMP13>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 8 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 0 + PHRASE11 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE11
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV TEMP13 6 = TEMP13 (TYPE FIX)>
+ <SYSOP 'VTSOP TEMP13 15 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aCLEAR-EOL>
+#WORD *21014113306*
+<GFCN \1aCLEAR-EOS ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE11>
+ <DEAD TEMP13>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 8 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 0 + PHRASE11 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE11
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV TEMP13 6 = TEMP13 (TYPE FIX)>
+ <SYSOP 'VTSOP TEMP13 14 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aCLEAR-EOS>
+#WORD *10147325646*
+<GFCN \1aFRESH-LINE ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU11>
+ <INTGO>
+ <NTHUV TTY6 6 = SU11>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <PUTUV SU11 2 0 (TYPE FIX)>
+ <DEAD SU11>
+PHRASE14
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU11 6 = SU11 (TYPE FIX)>
+ <SYSOP 'VTSOP SU11 17179869194 N8 = SU11>
+ <DEAD N8>
+ <RETURN SU11>
+ <DEAD SU11>
+ <END \1aFRESH-LINE>
+#WORD *21264113046*
+<GFCN \1aKILL-CHAR ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE11>
+ <DEAD TEMP13>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 8 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 0 + PHRASE11 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE11
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV TEMP13 6 = TEMP13 (TYPE FIX)>
+ <SYSOP 'VTSOP TEMP13 16 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aKILL-CHAR>
+#WORD *12640147511*
+<GFCN \1aERASE-CHAR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU9 TEMP16>
+ <INTGO>
+ <NTHUV TTY6 6 = SU9>
+ <TYPE? SU9 <TYPE-CODE MUD-CHAN> - PHRASE15>
+ <NTHUV SU9 2 = TEMP16 (TYPE FIX)>
+ <SUB TEMP16 N8 = TEMP16 (TYPE FIX)>
+ <PUTUV SU9 2 TEMP16 (TYPE FIX)>
+ <DEAD SU9 TEMP16>
+PHRASE15
+ <NTHUV TTY6 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 7 = SU9>
+ <TYPE? SU9 <TYPE-CODE FALSE> + PHRASE21>
+ <DEAD SU9>
+ <NTHUV TTY6 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 8 = SU9 (TYPE FIX)>
+ <VEQUAL? SU9 0 + PHRASE21 (TYPE FIX)>
+ <DEAD SU9>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE21
+ <NTHUV TTY6 5 = SU9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU9 6 = SU9 (TYPE FIX)>
+ <SYSOP 'VTSOP SU9 17179869201 N8 = TEMP16>
+ <DEAD SU9 N8>
+ <RETURN TEMP16>
+ <DEAD TEMP16>
+ <END \1aERASE-CHAR>
+\\f
+
+"SUBTITLE Cursor movement of various sorts"
+
+#WORD *36225716445*
+<GFCN \1aHOME-CURSOR ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP SU8>
+ <INTGO>
+ <NTHUV TTY4 6 = SU8>
+ <TYPE? SU8 <TYPE-CODE MUD-CHAN> - PHRASE11>
+ <PUTUV SU8 4 0 (TYPE FIX)>
+ <PUTUV SU8 2 0 (TYPE FIX)>
+ <DEAD SU8>
+PHRASE11
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <NTHUV SU8 7 = SU8>
+ <TYPE? SU8 <TYPE-CODE FALSE> + PHRASE17>
+ <DEAD SU8>
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <NTHUV SU8 8 = SU8 (TYPE FIX)>
+ <VEQUAL? SU8 0 + PHRASE17 (TYPE FIX)>
+ <DEAD SU8>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE17
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV SU8 6 = SU8 (TYPE FIX)>
+ <SYSOP 'VTSOP SU8 8 = SU8>
+ <RETURN SU8>
+ <DEAD SU8>
+ <END \1aHOME-CURSOR>
+#WORD *11170313764*
+<GFCN \1aBOTTOM-CURSOR ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP SU8>
+ <INTGO>
+ <NTHUV TTY4 6 = SU8>
+ <TYPE? SU8 <TYPE-CODE MUD-CHAN> - PHRASE11>
+ <PUTUV SU8 2 0 (TYPE FIX)>
+ <DEAD SU8>
+PHRASE11
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <NTHUV SU8 7 = SU8>
+ <TYPE? SU8 <TYPE-CODE FALSE> + PHRASE17>
+ <DEAD SU8>
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <NTHUV SU8 8 = SU8 (TYPE FIX)>
+ <VEQUAL? SU8 0 + PHRASE17 (TYPE FIX)>
+ <DEAD SU8>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE17
+ <NTHUV TTY4 5 = SU8 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV SU8 6 = SU8 (TYPE FIX)>
+ <SYSOP 'VTSOP SU8 9 = SU8>
+ <RETURN SU8>
+ <DEAD SU8>
+ <END \1aBOTTOM-CURSOR>
+#WORD *17565616014*
+<GFCN \1aHOR-POS-CURSOR ("VALUE" ANY CHANNEL ANY ANY) TTY4 OPER5 X6>
+ <TEMP SU9>
+ <INTGO>
+ <NTHUV TTY4 6 = SU9>
+ <TYPE? SU9 <TYPE-CODE MUD-CHAN> - PHRASE12>
+ <PUTUV SU9 2 X6>
+ <DEAD SU9>
+PHRASE12
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 7 = SU9>
+ <TYPE? SU9 <TYPE-CODE FALSE> + PHRASE18>
+ <DEAD SU9>
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 8 = SU9 (TYPE FIX)>
+ <VEQUAL? SU9 0 + PHRASE18 (TYPE FIX)>
+ <DEAD SU9>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE18
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV SU9 6 = SU9 (TYPE FIX)>
+ <SYSOP 'VTSOP SU9 17179869189 X6 = SU9>
+ <DEAD X6>
+ <RETURN SU9>
+ <DEAD SU9>
+ <END \1aHOR-POS-CURSOR>
+#WORD *32660202735*
+<GFCN \1aVER-POS-CURSOR ("VALUE" ANY CHANNEL ANY ANY) TTY4 OPER5 Y6>
+ <TEMP SU9>
+ <INTGO>
+ <NTHUV TTY4 6 = SU9>
+ <TYPE? SU9 <TYPE-CODE MUD-CHAN> - PHRASE12>
+ <PUTUV SU9 4 Y6>
+ <DEAD SU9>
+PHRASE12
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 7 = SU9>
+ <TYPE? SU9 <TYPE-CODE FALSE> + PHRASE18>
+ <DEAD SU9>
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <NTHUV SU9 8 = SU9 (TYPE FIX)>
+ <VEQUAL? SU9 0 + PHRASE18 (TYPE FIX)>
+ <DEAD SU9>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE18
+ <NTHUV TTY4 5 = SU9 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV SU9 6 = SU9 (TYPE FIX)>
+ <SYSOP 'VTSOP SU9 17179869190 Y6 = SU9>
+ <DEAD Y6>
+ <RETURN SU9>
+ <DEAD SU9>
+ <END \1aVER-POS-CURSOR>
+#WORD *16213765566*
+<GFCN \1aMOVE-CURSOR ("VALUE" ANY CHANNEL ANY ANY ANY) TTY4 OPER5 X6 Y7>
+ <TEMP CD8 SU11 TEMP27:FIX>
+ <INTGO>
+ <NTHUV TTY4 5 = CD8 (TYPE TTY-CHANNEL)>
+ <NTHUV TTY4 6 = SU11>
+ <DEAD TTY4>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <PUTUV SU11 4 Y7>
+ <PUTUV SU11 2 X6>
+ <DEAD SU11>
+PHRASE14
+ <NTHUV CD8 6 = SU11 (TYPE FIX)>
+ <SYSOP 'SFPOS SU11 -1>
+ <DEAD SU11>
+ <NTHUV CD8 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV CD8 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <PUSH CD8>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV CD8 6 = SU11 (TYPE FIX)>
+ <DEAD CD8>
+ <LSH Y7 18 = CD8 (TYPE FIX)>
+ <DEAD Y7>
+ <AND X6 #WORD *777777* = TEMP27>
+ <DEAD X6>
+ <OR CD8 TEMP27 = CD8>
+ <DEAD TEMP27>
+ <SYSOP 'VTSOP SU11 17179869191 CD8 = SU11>
+ <DEAD CD8>
+ <RETURN SU11>
+ <DEAD SU11>
+ <END \1aMOVE-CURSOR>
+#WORD *31663022755*
+<GFCN \1aBACK-CURSOR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU11 TEMP15>
+ <INTGO>
+ <NTHUV TTY6 6 = SU11>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <NTHUV SU11 2 = TEMP15 (TYPE FIX)>
+ <SUB TEMP15 N8 = TEMP15 (TYPE FIX)>
+ <PUTUV SU11 2 TEMP15 (TYPE FIX)>
+ <DEAD SU11 TEMP15>
+PHRASE14
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU11 6 = SU11 (TYPE FIX)>
+ <SYSOP 'VTSOP SU11 17179869186 N8 = TEMP15>
+ <DEAD SU11 N8>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+ <END \1aBACK-CURSOR>
+#WORD *12050574065*
+<GFCN \1aDOWN-CURSOR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU11 TEMP15>
+ <INTGO>
+ <NTHUV TTY6 6 = SU11>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <NTHUV SU11 4 = TEMP15 (TYPE FIX)>
+ <ADD TEMP15 N8 = TEMP15 (TYPE FIX)>
+ <PUTUV SU11 4 TEMP15 (TYPE FIX)>
+ <DEAD SU11 TEMP15>
+PHRASE14
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU11 6 = SU11 (TYPE FIX)>
+ <SYSOP 'VTSOP SU11 17179869188 N8 = TEMP15>
+ <DEAD SU11 N8>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+ <END \1aDOWN-CURSOR>
+#WORD *7016423674*
+<GFCN \1aUP-CURSOR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU11 TEMP15>
+ <INTGO>
+ <NTHUV TTY6 6 = SU11>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <NTHUV SU11 4 = TEMP15 (TYPE FIX)>
+ <SUB TEMP15 N8 = TEMP15 (TYPE FIX)>
+ <PUTUV SU11 4 TEMP15 (TYPE FIX)>
+ <DEAD SU11 TEMP15>
+PHRASE14
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU11 6 = SU11 (TYPE FIX)>
+ <SYSOP 'VTSOP SU11 17179869187 N8 = TEMP15>
+ <DEAD SU11 N8>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+ <END \1aUP-CURSOR>
+#WORD *10415105544*
+<GFCN \1aFORWARD-CURSOR ("VALUE" ANY CHANNEL ANY "OPTIONAL" FIX) TTY6 OPER7 N8>
+ <OPT-DISPATCH 2 %<> OPT4 OPT5>
+OPT4
+ <PUSH 1>
+OPT5
+ <TEMP SU11 TEMP15>
+ <INTGO>
+ <NTHUV TTY6 6 = SU11>
+ <TYPE? SU11 <TYPE-CODE MUD-CHAN> - PHRASE14>
+ <NTHUV SU11 2 = TEMP15 (TYPE FIX)>
+ <ADD TEMP15 N8 = TEMP15 (TYPE FIX)>
+ <PUTUV SU11 2 TEMP15 (TYPE FIX)>
+ <DEAD SU11 TEMP15>
+PHRASE14
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 7 = SU11>
+ <TYPE? SU11 <TYPE-CODE FALSE> + PHRASE20>
+ <DEAD SU11>
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <NTHUV SU11 8 = SU11 (TYPE FIX)>
+ <VEQUAL? SU11 0 + PHRASE20 (TYPE FIX)>
+ <DEAD SU11>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY6 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE20
+ <NTHUV TTY6 5 = SU11 (TYPE TTY-CHANNEL)>
+ <DEAD TTY6>
+ <NTHUV SU11 6 = SU11 (TYPE FIX)>
+ <SYSOP 'VTSOP SU11 17179869185 N8 = TEMP15>
+ <DEAD SU11 N8>
+ <RETURN TEMP15>
+ <DEAD TEMP15>
+ <END \1aFORWARD-CURSOR>
+\\f
+
+#WORD *21054111326*
+<GFCN \1aSAVE-CURSOR ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE11>
+ <DEAD TEMP13>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 8 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 0 + PHRASE11 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE11
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV TEMP13 6 = TEMP13 (TYPE FIX)>
+ <SYSOP 'VTSOP TEMP13 11 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aSAVE-CURSOR>
+#WORD *21014111306*
+<GFCN \1aRESTORE-CURSOR ("VALUE" ANY CHANNEL ANY) TTY4 OPER5>
+ <TEMP TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE11>
+ <DEAD TEMP13>
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <NTHUV TEMP13 8 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 0 + PHRASE11 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aDUMP-WRITE-BUFFER>
+ <NTHUV TTY4 5 = STACK>
+ <CALL '\1aDUMP-WRITE-BUFFER 1>
+PHRASE11
+ <NTHUV TTY4 5 = TEMP13 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <NTHUV TEMP13 6 = TEMP13 (TYPE FIX)>
+ <SYSOP 'VTSOP TEMP13 12 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aRESTORE-CURSOR>
+#WORD *6333473470*
+<GFCN \1aTTY-PAD ("VALUE" ATOM CHANNEL ANY FIX) TTY4 OPER5 AMT6>
+ <TEMP DATA7 TB19>
+ <INTGO>
+ <NTHUV TTY4 5 = DATA7 (TYPE TTY-CHANNEL)>
+ <NTHUV DATA7 6 = DATA7 (TYPE FIX)>
+ <SYSOP 'MTOPR DATA7 23 (RETURN 3) = DATA7>
+ <TYPE? DATA7 <TYPE-CODE FALSE> + BOOL11>
+ <VEQUAL? DATA7 -1 - PHRASE10 (TYPE FIX)>
+BOOL11
+ <SET DATA7 9600 (TYPE FIX)>
+PHRASE10
+ <AND DATA7 #WORD *777777* = DATA7>
+ <MUL DATA7 AMT6 = DATA7 (TYPE FIX)>
+ <DEAD AMT6>
+ <FLOAT DATA7 = DATA7 (TYPE FLOAT)>
+ <DIVF DATA7 7000.0 = DATA7 (TYPE FLOAT)>
+ <FIX DATA7 = AMT6 (TYPE FIX)>
+ <DEAD DATA7>
+ <FRAME '\1aTTY-SET-IMAGE>
+ <PUSH TTY4>
+ <PUSH 'PAD>
+ <PUSH 'T>
+ <CALL '\1aTTY-SET-IMAGE 3>
+ <GVAL 'BUFSTR = DATA7>
+ <SET TB19 DATA7>
+ <LOOP>
+AGAIN20
+ <INTGO>
+ <VEQUAL? AMT6 0 - PHRASE22 (TYPE FIX)>
+ <VEQUAL? TB19 DATA7 + PHRASE26>
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY4>
+ <DEAD TTY4>
+ <PUSH OPER5>
+ <DEAD OPER5>
+ <PUSH TB19>
+ <LENUS TB19 = TB19 (TYPE FIX)>
+ <LENUS DATA7 = DATA7 (TYPE FIX)>
+ <SUB TB19 DATA7 = STACK (TYPE FIX)>
+ <DEAD TB19 DATA7>
+ <CALL '\1aTWAY-WRITE-BUFFER 4>
+PHRASE26
+ <RETURN 'T>
+PHRASE22
+ <EMPUS? DATA7 - PHRASE31 (TYPE STRING)>
+ <FRAME '\1aTWAY-WRITE-BUFFER>
+ <PUSH TTY4>
+ <PUSH OPER5>
+ <PUSH TB19>
+ <CALL '\1aTWAY-WRITE-BUFFER 3>
+ <SET DATA7 TB19>
+PHRASE31
+ <PUTUS DATA7 1 !\\0>
+ <RESTUS DATA7 1 = DATA7 (TYPE STRING)>
+ <SUB AMT6 1 = AMT6 (TYPE FIX)>
+ <JUMP + AGAIN20>
+ <END \1aTTY-PAD>
+#WORD *14072610502*
+<GFCN \1aTTY-TYPE-CHAR ("VALUE" CHARACTER CHANNEL ANY CHARACTER) CHANNEL4 OPER5 CHAR6>
+ <TEMP DATA7:TTY-CHANNEL Q8 QC9:FIX TEMP15>
+ <INTGO>
+ <NTHUV CHANNEL4 5 = DATA7 (TYPE TTY-CHANNEL)>
+ <DEAD CHANNEL4>
+ <NTHUV DATA7 11 = Q8>
+ <NTHUV DATA7 12 = QC9 (TYPE FIX)>
+ <TYPE? Q8 <TYPE-CODE FALSE> - PHRASE11>
+ <PUTUV DATA7 11 CHAR6>
+ <PUTUV DATA7 12 1 (TYPE FIX)>
+ <DEAD DATA7>
+ <RETURN CHAR6>
+ <DEAD CHAR6>
+PHRASE11
+ <TYPE? Q8 <TYPE-CODE CHARACTER> - PHRASE12>
+ <PUSH Q8>
+ <DEAD Q8>
+ <PUSH CHAR6>
+ <PUSH " ">
+ <UBLOCK <TYPE-CODE STRING> 3 = Q8 (TYPE STRING)>
+ <PUTUV DATA7 11 Q8>
+ <DEAD Q8>
+ <PUTUV DATA7 12 2 (TYPE FIX)>
+ <DEAD DATA7>
+ <RETURN CHAR6>
+ <DEAD CHAR6>
+PHRASE12
+ <LENUS Q8 = TEMP15 (TYPE FIX)>
+ <VEQUAL? QC9 TEMP15 - PHRASE14 (TYPE FIX)>
+ <DEAD TEMP15>
+ <PUSH Q8>
+ <DEAD Q8>
+ <PUSH CHAR6>
+ <PUSH " ">
+ <UBLOCK <TYPE-CODE STRING> 3 = TEMP15 (TYPE STRING)>
+ <PUTUV DATA7 11 TEMP15>
+ <DEAD TEMP15>
+ <ADD QC9 1 = TEMP15 (TYPE FIX)>
+ <DEAD QC9>
+ <PUTUV DATA7 12 TEMP15 (TYPE FIX)>
+ <DEAD DATA7 TEMP15>
+ <RETURN CHAR6>
+ <DEAD CHAR6>
+PHRASE14
+ <ADD QC9 1 = QC9 (TYPE FIX)>
+ <PUTUS Q8 QC9 CHAR6>
+ <DEAD Q8>
+ <PUTUV DATA7 12 QC9 (TYPE FIX)>
+ <DEAD DATA7 QC9>
+ <RETURN CHAR6>
+ <DEAD CHAR6>
+ <END \1aTTY-TYPE-CHAR>
+#WORD *5030413504*
+<GFCN \1aGET-QUEUE-CHAR ("VALUE" ANY TTY-CHANNEL) DATA4>
+ <TEMP CT6 TEMP9>
+ <INTGO>
+ <NTHUV DATA4 12 = CT6 (TYPE FIX)>
+ <GRTR? CT6 0 + TAG10 (TYPE FIX)>
+ <RETURN %<>>
+TAG10
+ <SUB CT6 1 = CT6 (TYPE FIX)>
+ <PUTUV DATA4 12 CT6 (TYPE FIX)>
+ <NTHUV DATA4 11 = TEMP9>
+ <TYPE? TEMP9 <TYPE-CODE CHARACTER> - PHRASE14>
+ <PUTUV DATA4 11 %<>>
+ <DEAD DATA4>
+ <JUMP + COND16>
+PHRASE14
+ <NTH1 TEMP9 = TEMP9>
+ <VEQUAL? CT6 0 - PHRASE17 (TYPE FIX)>
+ <DEAD CT6>
+ <NTHUV DATA4 11 = CT6>
+ <TOPU CT6 = CT6>
+ <PUTUV DATA4 11 CT6>
+ <DEAD DATA4 CT6>
+ <JUMP + COND16>
+PHRASE17
+ <NTHUV DATA4 11 = CT6>
+ <REST1 CT6 = CT6>
+ <PUTUV DATA4 11 CT6>
+ <DEAD DATA4 CT6>
+COND16
+ <RETURN TEMP9>
+ <DEAD TEMP9>
+ <END \1aGET-QUEUE-CHAR>
+\\f
+
+#WORD *2072607277*
+<GFCN \1aTTY-PRINT-DATA ("VALUE" CHARACTER CHANNEL ANY ANY) TTY4 OPER5 OUTCHAN6>
+ <TEMP DATA7:TTY-CHANNEL TEMP13>
+ <INTGO>
+ <NTHUV TTY4 5 = DATA7 (TYPE TTY-CHANNEL)>
+ <DEAD TTY4>
+ <FRAME '\1aPRINC>
+ <PUSH "#TTY-CHANNEL [">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRINC>
+ <PUSH "JFN:">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <NTHUV DATA7 1 = TEMP13 (TYPE FIX)>
+ <VEQUAL? TEMP13 64 - PHRASE12 (TYPE FIX)>
+ <DEAD TEMP13>
+ <FRAME '\1aPRINC>
+ <PUSH "PRIMARY">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <JUMP + PHRASE15>
+PHRASE12
+ <FRAME '\1aPRIN1>
+ <NTHUV DATA7 1 = STACK (TYPE FIX)>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+PHRASE15
+ <NTHUV DATA7 4 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE18>
+ <FRAME '\1aPRINC>
+ <PUSH " RBUF:">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <FRAME '\1aLENGTH>
+ <TOPU TEMP13 = STACK>
+ <CALL '\1aLENGTH 1 = STACK>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+ <FRAME '\1aPRINC>
+ <PUSH !\/>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <LENUS TEMP13 = STACK (TYPE FIX)>
+ <DEAD TEMP13>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+ <FRAME '\1aPRINC>
+ <PUSH !\/>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <NTHUV DATA7 5 = STACK (TYPE FIX)>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+PHRASE18
+ <NTHUV DATA7 7 = TEMP13>
+ <TYPE? TEMP13 <TYPE-CODE FALSE> + PHRASE27>
+ <FRAME '\1aPRINC>
+ <PUSH " WBUF:">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <FRAME '\1aLENGTH>
+ <TOPU TEMP13 = STACK>
+ <CALL '\1aLENGTH 1 = STACK>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+ <FRAME '\1aPRINC>
+ <PUSH !\/>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <LENUS TEMP13 = STACK (TYPE FIX)>
+ <DEAD TEMP13>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+ <FRAME '\1aPRINC>
+ <PUSH !\/>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <NTHUV DATA7 8 = STACK (TYPE FIX)>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+PHRASE27
+ <FRAME '\1aPRINC>
+ <PUSH " RFCUR:">
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRINC 2>
+ <FRAME '\1aPRIN1>
+ <NTHUV DATA7 10 = STACK (TYPE FIX)>
+ <DEAD DATA7>
+ <PUSH OUTCHAN6>
+ <CALL '\1aPRIN1 2>
+ <FRAME '\1aPRINC>
+ <PUSH !\]>
+ <PUSH OUTCHAN6>
+ <DEAD OUTCHAN6>
+ <CALL '\1aPRINC 2 = TEMP13>
+ <RETURN TEMP13>
+ <DEAD TEMP13>
+ <END \1aTTY-PRINT-DATA>
+<ENDPACKAGE>