3 <GFCN
\1aT$HANG ("VALUE" ANY "OPTIONAL" ANY) PRED6>
4 <OPT-DISPATCH 0 %<> OPT4 OPT5>
15 <CALL '
\1aT$EVAL 1 = VAL10>
16 <TYPE? VAL10 <TYPE-CODE FALSE> + PHRASE13>
26 <GFCN
\1aT$JNAME ("VALUE" STRING "OPTIONAL" STRING) NEW6>
27 <OPT-DISPATCH 0 %<> OPT4 OPT5>
31 <TEMP TS8 WD7:FIX TEMP20 TEMP21>
33 <USBLOCK <TYPE-CODE STRING> 6 = TS8 (TYPE STRING)>
34 <TYPE? NEW6 <TYPE-CODE UNBOUND> - PHRASE11>
35 <SYSOP 'GETNM (RETURN 1) = WD7>
39 <VEQUAL? WD7 0 + EXIT12 (TYPE FIX)>
40 <ROT WD7 6 = WD7 (TYPE FIX)>
41 <AND WD7 #WORD *77* = TEMP20>
42 <ADD TEMP20 32 = TEMP20 (TYPE FIX)>
43 <CHTYPE TEMP20 <TYPE-CODE CHARACTER> = TEMP20>
44 <AND WD7 #WORD *777777777700* = WD7>
47 <RESTUS TS8 1 = TS8 (TYPE STRING)>
51 <LENUS TS8 = TS8 (TYPE FIX)>
52 <SUB 6 TS8 = TEMP21 (TYPE FIX)>
54 <UUBLOCK <TYPE-CODE STRING> TEMP21 = TS8 (TYPE STRING)>
55 <MOVE-STRING TEMP20 TS8 TEMP21 (NO-OVERLAP T)>
59 <SET WD7 0 (TYPE FIX)>
60 <SET TS8 0 (TYPE FIX)>
61 <SET TEMP21 NEW6 (TYPE STRING)>
65 <EMPUS? TEMP21 + MAPAP28>
66 <NTHUS TEMP21 1 = TEMP20>
67 <LSH WD7 6 = WD7 (TYPE FIX)>
68 <SUB TEMP20 32 = TEMP20 (TYPE FIX)>
69 <AND TEMP20 #WORD *77* = TEMP20>
72 <ADD TS8 1 = TS8 (TYPE FIX)>
73 <LESS? TS8 6 - MAPAP28 (TYPE FIX)>
74 <RESTUS TEMP21 1 = TEMP21 (TYPE STRING)>
92 <GFCN
\1aT$SLEEP ("VALUE" ANY <OR FIX FLOAT> "OPTIONAL" ANY) TM6 PRED7>
93 <OPT-DISPATCH 1 %<> OPT4 OPT5>
97 <TEMP RTM8:FIX TEMP11 STIME15:FIX>
99 <TYPE? TM6 <TYPE-CODE FLOAT> - PHRASE10>
100 <MULF TM6 1000.0 = TEMP11 (TYPE FLOAT)>
102 <FIX TEMP11 = RTM8 (TYPE FIX)>
106 <MUL TM6 1000 = RTM8 (TYPE FIX)>
114 <CALL '
\1aT$EVAL 1 = TEMP11>
115 <TYPE? TEMP11 <TYPE-CODE FALSE> + PHRASE18>
119 <SYSOP 'TIME-JSYS (RETURN 1) = STIME15>
121 <SYSOP 'DISMS RTM8 = TEMP11>
123 <SYSOP 'TIME-JSYS (RETURN 1) = TEMP11>
124 <SUB TEMP11 STIME15 = TEMP11 (TYPE FIX)>
126 <SUB RTM8 TEMP11 = RTM8 (TYPE FIX)>
128 <GRTR? RTM8 0 + AGAIN16 (TYPE FIX)>
132 <GFCN
\1aX$INIT-ENV ("VALUE" ATOM)>
135 <NTHR 'T$HOME-STRUC 1 = TEMP7 (RECORD-TYPE ATOM) (BRANCH-FALSE + TAG6)>
136 <TYPE? TEMP7 <TYPE-CODE FALSE> + TAG6>
137 <NTHR TEMP7 1 = TEMP7 (RECORD-TYPE GBIND)>
138 <TYPE? TEMP7 <TYPE-CODE UNBOUND> - PHRASE5>
141 <SETG 'T$HOME-STRUC "MIM">
146 <GFCN
\1aT$SYS-ERR ("VALUE" FALSE STRING <FALSE FIX> "OPTIONAL" <OR ATOM FALSE>) NAME6 ERR7 NAME?8>
147 <OPT-DISPATCH 2 %<> OPT4 OPT5>
153 <FRAME '
\1aI$STD-ERROR>
160 <CALL '
\1aI$STD-ERROR 3 = TEMP10>
165 <GFCN
\1aT$TRANSLATE-ERROR ("VALUE" STRING <FALSE FIX>) ERR4>
166 <TEMP NS7 TEMP12 TEMP8>
168 <GVAL 'I$NAMSTR = NS7>
170 <NTHL ERR4 1 = TEMP12 (TYPE FIX)>
171 <PUTBITS TEMP12 16 16 131072 = TEMP8>
174 <NTHL ERR4 1 = TEMP12 (TYPE FIX)>
176 <PUTBITS TEMP12 18 18 131072 = TEMP8>
179 <LENUS NS7 = TEMP12 (TYPE FIX)>
180 <SUB 0 TEMP12 = TEMP12 (TYPE FIX)>
181 <PUTBITS 0 16 16 TEMP12 = TEMP12>
184 <LENUS NS7 = TEMP12 (TYPE FIX)>
185 <SUB 0 TEMP12 = TEMP12 (TYPE FIX)>
186 <PUTBITS 0 18 18 TEMP12 = TEMP12>
188 <SYSOP 'ERSTR NS7 TEMP8 TEMP12 = TEMP12>
190 <UUBLOCK <TYPE-CODE STRING> TEMP12 = TEMP8 (TYPE STRING)>
191 <MOVE-STRING NS7 TEMP8 TEMP12 (NO-OVERLAP %<>)>
195 <END
\1aT$TRANSLATE-ERROR>
197 <GFCN
\1aI$STD-ERROR ("VALUE" FALSE STRING <FALSE FIX> "OPTIONAL" ANY) NAME6 ERR7 NAME?8>
198 <OPT-DISPATCH 2 %<> OPT4 OPT5>
202 <TEMP NS9 ES11:STRING NM118 NM220 DEV22 SNM24>
204 <USBLOCK <TYPE-CODE STRING> 500 = NS9 (TYPE STRING)>
205 <FRAME '
\1aT$TRANSLATE-ERROR>
207 <CALL '
\1aT$TRANSLATE-ERROR 1 = ES11>
208 <TYPE? NAME?8 <TYPE-CODE FALSE> + PHRASE29>
212 <CALL '
\1aX$VALUE? 1 = NM118>
215 <CALL '
\1aX$VALUE? 1 = NM220>
218 <CALL '
\1aX$VALUE? 1 = DEV22>
221 <CALL '
\1aX$VALUE? 1 = SNM24>
222 <SYSOP 'GTJFN-L NAME6 8388608 34359607295 DEV22 SNM24 NM118 NM220 0 0 0 = NM118>
223 <DEAD DEV22 SNM24 NM220>
224 <TYPE? NM118 <TYPE-CODE FALSE> + PHRASE29>
225 <SYSOP 'JFNS NS9 NM118 0 0 = NM220>
228 <UUBLOCK <TYPE-CODE STRING> NM220 = NAME6 (TYPE STRING)>
229 <MOVE-STRING NS9 NAME6 NM220 (NO-OVERLAP T)>
232 <CONS NAME6 ERR7 = NS9>
234 <CONS ES11 NS9 = NS9>
236 <CHTYPE NS9 <TYPE-CODE FALSE> = NS9>
247 <GFCN
\1aT$GET-JFN ("VALUE" <OR FALSE FIX> STRING FIX FIX <OR ATOM FALSE>) NAME4 MODE5 BSZ6 NEW?7>
250 <TYPE? NEW?7 <TYPE-CODE FALSE> + PHRASE11>
252 <SYSOP 'GTJFN-S-S -34359476224 NAME4 = JFN8>
256 <SYSOP 'GTJFN-S-S 8590196736 NAME4 = JFN8>
260 <TYPE? TEMP15 <TYPE-CODE FALSE> + PHRASE19>
261 <LSH BSZ6 30 = TEMP15 (TYPE FIX)>
263 <OR TEMP15 MODE5 = TEMP15>
265 <SYSOP 'OPENF JFN8 TEMP15 = TEMP15>
266 <TYPE? TEMP15 <TYPE-CODE FALSE> + PHRASE17>
277 <GFCN
\1aT$GET-BYTE-COUNT ("VALUE" FIX FIX FIX) JFN4 BSZ5>
278 <TEMP OBC6:FIX OBS7 TEMP18:FIX>
280 <SYSOP 'SIZEF JFN4 (RETURN 2) = OBC6>
281 <SYSOP 'GTFDB JFN4 262153 5 (RETURN 5) = OBS7>
283 <AND OBS7 #WORD *7700000000* = OBS7>
284 <LSH OBS7 -24 = OBS7 (TYPE FIX)>
285 <VEQUAL? OBS7 0 - PHRASE11 (TYPE FIX)>
286 <SET OBS7 36 (TYPE FIX)>
288 <VEQUAL? OBS7 BSZ5 - PHRASE15 (TYPE FIX)>
292 <DIV 36 OBS7 = OBS7 (TYPE FIX)>
293 <SUB OBS7 1 = TEMP18 (TYPE FIX)>
294 <ADD OBC6 TEMP18 = OBC6 (TYPE FIX)>
296 <DIV OBC6 OBS7 = OBC6 (TYPE FIX)>
298 <DIV 36 BSZ5 = TEMP18 (TYPE FIX)>
300 <MUL OBC6 TEMP18 = OBS7 (TYPE FIX)>
304 <END
\1aT$GET-BYTE-COUNT>
306 <GFCN
\1aT$CLOSE-OPEN ("VALUE" ANY FIX FIX FIX) JFN4 MODE5 BSZ6>
309 <OR JFN4 #WORD *400000000000* = TEMP9>
310 <SYSOP 'CLOSF TEMP9 = TEMP9>
311 <TYPE? TEMP9 <TYPE-CODE FALSE> + BOOL7>
312 <LSH BSZ6 30 = TEMP9 (TYPE FIX)>
314 <OR TEMP9 MODE5 = TEMP9>
316 <SYSOP 'OPENF JFN4 TEMP9 = TEMP9>
321 <END
\1aT$CLOSE-OPEN>
323 <GFCN
\1aT$GET-DEVICE-TYPE ("VALUE" <OR FALSE FIX> FIX) JFN4>
326 <SYSOP 'DVCHR JFN4 (RETURN 2) = VAL5>
329 <TYPE? TEMP8 <TYPE-CODE FALSE> + PHRASE7>
330 <LSH VAL5 -18 = VAL5 (TYPE FIX)>
331 <AND VAL5 #WORD *777* = TEMP8>
336 <END
\1aT$GET-DEVICE-TYPE>
338 <GFCN
\1aX$IO-INIT ("VALUE" <OR ATOM FALSE>)>
341 <SETG 'T$MUDDLE-SYSTEM "T">
345 <UBLOCK <TYPE-CODE STRING> 2 = TEMP5 (TYPE STRING)>
346 <SETG 'CRLF-STRING TEMP5>
348 <SETG 'CRLF-LENGTH 2>
349 <UUBLOCK <TYPE-CODE STRING> 10 = TEMP5>
351 <LOOP (TEMP6 VALUE LENGTH)>
353 <EMPUS? TEMP6 + ISTRE8>
355 <RESTUS TEMP6 1 = TEMP6>
360 <UUBLOCK <TYPE-CODE STRING> 7 = TEMP5>
362 <LOOP (TEMP6 VALUE LENGTH)>
364 <EMPUS? TEMP6 + ISTRE10>
366 <RESTUS TEMP6 1 = TEMP6>
369 <SETG 'SPACESTR TEMP5>
371 <SETG 'I$RDBLEN 1280>
387 <UBLOCK <TYPE-CODE VECTOR> 3 = STACK>
392 <UBLOCK <TYPE-CODE VECTOR> 3 = STACK>
397 <UBLOCK <TYPE-CODE VECTOR> 3 = STACK>
402 <UBLOCK <TYPE-CODE VECTOR> 3 = STACK>
403 <UBLOCK <TYPE-CODE VECTOR> 18 = TEMP5>
404 <SETG 'T$DEVVEC TEMP5>
406 <FRAME '
\1aT$ISTRING>
408 <CALL '
\1aT$ISTRING 1 = TEMP5>
409 <SETG 'I$NAMSTR TEMP5>
411 <SETG 'I$CHANNEL-TYPES ()>
412 <FRAME '
\1aT$NEW-CHANNEL-TYPE>
426 <PUSH 'X$DEF-SHORT-NAME>
430 <PUSH 'X$DEF-HACK-DATE>
432 <PUSH 'X$DEF-HACK-DATE>
434 <PUSH 'X$DEF-GET-MODE>
435 <PUSH 'T$GET-BYTE-SIZE>
436 <PUSH 'X$DEF-GET-BYTE-SIZE>
437 <CALL '
\1aT$NEW-CHANNEL-TYPE 24>
438 <FRAME '
\1aT$NEW-CHANNEL-TYPE>
441 <PUSH 'T$FILE-HANDLE>
442 <PUSH 'X$DISK-FILE-HANDLE>
452 <PUSH 'X$DISK-READ-BYTE>
454 <PUSH 'X$DISK-WRITE-BYTE>
455 <PUSH 'T$READ-BUFFER>
456 <PUSH 'X$DISK-READ-BUFFER>
457 <PUSH 'T$WRITE-BUFFER>
458 <PUSH 'X$DISK-WRITE-BUFFER>
460 <PUSH 'X$DISK-ACCESS>
462 <PUSH 'X$DISK-BUFOUT>
463 <PUSH 'T$FILE-LENGTH>
464 <PUSH 'X$DISK-FILE-LENGTH>
466 <PUSH 'X$DISK-PRINT-DATA>
467 <CALL '
\1aT$NEW-CHANNEL-TYPE 28>
468 <FRAME '
\1aT$NEW-CHANNEL-TYPE>
471 <PUSH 'T$WRITE-BUFFER>
472 <PUSH 'X$UP-WRITE-BUF>
474 <PUSH 'X$UP-WRITE-BYTE>
476 <PUSH 'X$UP-READ-BYTE>
477 <CALL '
\1aT$NEW-CHANNEL-TYPE 8 = TEMP5>
483 <GFCN
\1aX$IO-LOAD ("VALUE" ANY FIX) BOOTYP4>
493 <UBLOCK <TYPE-CODE VECTOR> 6 = TEMP7>
494 <CHTYPE TEMP7 <TYPE-CODE CHANNEL> = STACK>
496 <CALL '
\1aX$RESET 1 = TEMP7>
497 <SETG 'M$$FLATCHAN TEMP7>
506 <UBLOCK <TYPE-CODE VECTOR> 6 = TEMP7>
507 <CHTYPE TEMP7 <TYPE-CODE CHANNEL> = STACK>
509 <CALL '
\1aX$RESET 1 = TEMP7>
510 <SETG 'M$$INTCHAN TEMP7>
512 <LESS? BOOTYP4 0 + PHRASE11 (TYPE FIX)>
513 <FRAME '
\1aT$FILE-EXISTS?>
514 <PUSH "<MIM.20>CHANNEL-OPERATION.MBIN">
515 <CALL '
\1aT$FILE-EXISTS? 1 = TEMP7>
516 <TYPE? TEMP7 <TYPE-CODE FALSE> + PHRASE11>
519 <PUSH "<MIM.20>CHANNEL-OPERATION.MBIN">
524 <PUSH "<MIM.20>CHANNEL-OPERATION.MSUBR">
527 <LESS? BOOTYP4 0 + PHRASE19 (TYPE FIX)>
528 <FRAME '
\1aT$FILE-EXISTS?>
529 <PUSH "<MIM.20>TWAY.MBIN">
530 <CALL '
\1aT$FILE-EXISTS? 1 = TEMP7>
531 <TYPE? TEMP7 <TYPE-CODE FALSE> + PHRASE19>
534 <PUSH "<MIM.20>TWAY.MBIN">
539 <PUSH "<MIM.20>TWAY.MSUBR">
542 <LESS? BOOTYP4 0 + PHRASE27 (TYPE FIX)>
544 <FRAME '
\1aT$FILE-EXISTS?>
545 <PUSH "<MIM.20>TTY.MBIN">
546 <CALL '
\1aT$FILE-EXISTS? 1 = TEMP7>
547 <TYPE? TEMP7 <TYPE-CODE FALSE> + PHRASE27>
550 <PUSH "<MIM.20>TTY.MBIN">
551 <CALL '
\1aT$FLOAD 1 = TEMP7>
556 <PUSH "<MIM.20>TTY.MSUBR">
557 <CALL '
\1aT$FLOAD 1 = TEMP7>
562 <GFCN
\1aT$RENAME ("VALUE" <OR FALSE STRING> STRING STRING) OLD4 NEW5>
563 <TEMP NM16 NM27 DEV8 SNM9 (FOLD10 %<>) (FNEW11 %<>) NS14 VAL12>
567 <CALL '
\1aX$VALUE? 1 = NM16>
570 <CALL '
\1aX$VALUE? 1 = NM27>
573 <CALL '
\1aX$VALUE? 1 = DEV8>
576 <CALL '
\1aX$VALUE? 1 = SNM9>
577 <USBLOCK <TYPE-CODE STRING> 500 = NS14 (TYPE STRING)>
578 <FRAME '
\1aI$DO-OPEN>
585 <CALL '
\1aI$DO-OPEN 6 = FOLD10>
587 <TYPE? VAL12 <TYPE-CODE FALSE> + BOOL21>
588 <FRAME '
\1aI$DO-OPEN>
600 <CALL '
\1aI$DO-OPEN 6 = FNEW11>
603 <TYPE? VAL12 <TYPE-CODE FALSE> + PHRASE25>
604 <SYSOP 'RNAMF FOLD10 FNEW11 = VAL12>
605 <TYPE? VAL12 <TYPE-CODE FALSE> + PHRASE25>
606 <SYSOP 'JFNS NS14 FNEW11 0 0 = NM16>
607 <SYSOP 'RLJFN FNEW11>
608 <UUBLOCK <TYPE-CODE STRING> NM16 = NEW5 (TYPE STRING)>
609 <MOVE-STRING NS14 NEW5 NM16 (NO-OVERLAP T)>
614 <TYPE? VAL12 <TYPE-CODE FALSE> - PHRASE27>
615 <TYPE? FOLD10 <TYPE-CODE FALSE> + PHRASE29>
616 <SYSOP 'RLJFN FOLD10>
619 <TYPE? FNEW11 <TYPE-CODE FALSE> + PHRASE31>
620 <SYSOP 'RLJFN FNEW11>
623 <FRAME '
\1aI$STD-ERROR>
628 <CALL '
\1aI$STD-ERROR 2 = VAL12>
640 <GFCN
\1aT$DELFILE ("VALUE" <OR FALSE STRING> STRING "OPTIONAL" <OR STRING FIX> <OR STRING FIX> <OR STRING FIX> <OR STRING FIX>) NM9 NM110 NM211 DEV12 SNM13>
641 <OPT-DISPATCH 1 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
653 <TYPE? NM110 <TYPE-CODE UNBOUND> - TAG16>
656 <CALL '
\1aX$VALUE? 1 = NM110>
658 <TYPE? NM211 <TYPE-CODE UNBOUND> - TAG19>
661 <CALL '
\1aX$VALUE? 1 = NM211>
663 <TYPE? DEV12 <TYPE-CODE UNBOUND> - TAG22>
666 <CALL '
\1aX$VALUE? 1 = DEV12>
668 <TYPE? SNM13 <TYPE-CODE UNBOUND> - TAG25>
671 <CALL '
\1aX$VALUE? 1 = SNM13>
673 <FRAME '
\1aI$DO-OPEN>
684 <CALL '
\1aI$DO-OPEN 6 = FID14>
686 <TYPE? VAL15 <TYPE-CODE FALSE> + PHRASE29>
687 <SYSOP 'DELF FID14 = VAL15>
689 <TYPE? VAL15 <TYPE-CODE FALSE> - PHRASE32>
690 <TYPE? FID14 <TYPE-CODE FALSE> + PHRASE34>
694 <FRAME '
\1aI$STD-ERROR>
699 <CALL '
\1aI$STD-ERROR 2 = FID14>
707 <GFCN
\1aT$FILE-EXISTS? ("VALUE" <OR ATOM FALSE> STRING "OPTIONAL" <OR STRING FIX> <OR STRING FIX> <OR STRING FIX> <OR STRING FIX>) NAME9 NM110 NM211 DEV12 SNM13>
708 <OPT-DISPATCH 1 %<> OPT4 OPT5 OPT6 OPT7 OPT8>
720 <TYPE? NM110 <TYPE-CODE UNBOUND> - TAG15>
723 <CALL '
\1aX$VALUE? 1 = NM110>
725 <TYPE? NM211 <TYPE-CODE UNBOUND> - TAG18>
728 <CALL '
\1aX$VALUE? 1 = NM211>
730 <TYPE? DEV12 <TYPE-CODE UNBOUND> - TAG21>
733 <CALL '
\1aX$VALUE? 1 = DEV12>
735 <TYPE? SNM13 <TYPE-CODE UNBOUND> - TAG24>
738 <CALL '
\1aX$VALUE? 1 = SNM13>
740 <FRAME '
\1aI$DO-OPEN>
751 <CALL '
\1aI$DO-OPEN 6 = FID14>
752 <TYPE? FID14 <TYPE-CODE FALSE> + PHRASE28>
757 <FRAME '
\1aI$STD-ERROR>
762 <CALL '
\1aI$STD-ERROR 2 = FID14>
765 <END
\1aT$FILE-EXISTS?>
767 <GFCN
\1aI$DO-OPEN ("VALUE" ANY FIX STRING <OR STRING FIX> <OR STRING FIX> <OR STRING FIX> <OR STRING FIX>) MODE4 NAME5 DEV6 SNM7 NM18 NM29>
770 <SYSOP 'GTJFN-L NAME5 MODE4 34359607295 DEV6 SNM7 NM18 NM29 0 0 0 = TEMP10>
771 <DEAD NAME5 MODE4 DEV6 SNM7 NM18 NM29>
776 <GFCN
\1aT$GEN-OPEN ("VALUE" ANY STRING "OPTIONAL" STRING STRING <OR ATOM FALSE VECTOR>) NAME8 MODE9 BSZ10 DEVNAM11>
777 <OPT-DISPATCH 1 %<> OPT4 OPT5 OPT6 OPT7>
785 <TEMP (NEW?12 %<>) DEV16 SNM17 NM118 NM219 NS20 TEMP31 TEMP32 TEMP33 TEMP34 TEMP35>
789 <CALL '
\1aX$VALUE? 1 = DEV16>
792 <CALL '
\1aX$VALUE? 1 = SNM17>
795 <CALL '
\1aX$VALUE? 1 = NM118>
798 <CALL '
\1aX$VALUE? 1 = NM219>
799 <USBLOCK <TYPE-CODE STRING> 500 = NS20 (TYPE STRING)>
800 <IFCAN "STRING-EQUAL?">
801 <STRING-EQUAL? MODE9 "CREATE" - PHRASE30>
802 <ENDIF "STRING-EQUAL?">
803 <IFCANNOT "STRING-EQUAL?">
805 <SET TEMP32 "CREATE" (TYPE STRING)>
806 <LENUS TEMP31 = TEMP33 (TYPE FIX)>
807 <VEQUAL? TEMP33 6 - PHRASE30>
808 <LOOP (TEMP31 VALUE LENGTH) (TEMP32 VALUE LENGTH) (TEMP33 VALUE)>
810 <NTHUS TEMP31 1 = TEMP34>
811 <NTHUS TEMP32 1 = TEMP35>
812 <VEQUAL? TEMP34 TEMP35 - PHRASE30>
814 <RESTUS TEMP31 1 = TEMP31 (TYPE STRING)>
815 <RESTUS TEMP32 1 = TEMP32 (TYPE STRING)>
816 <SUB TEMP33 1 = TEMP33 (TYPE FIX)>
817 <GRTR? TEMP33 0 + TAG36 (TYPE FIX)>
818 <ENDIF "STRING-EQUAL?">
819 <SET NEW?12 'T (TYPE ATOM)>
821 <FRAME '
\1aI$DO-OPEN>
822 <VEQUAL? NEW?12 0 + PHRASE41>
824 <SET TEMP32 -0 (TYPE FIX)>
827 <SET TEMP32 8589934592 (TYPE FIX)>
840 <CALL '
\1aI$DO-OPEN 6 = NEW?12>
841 <TYPE? NEW?12 <TYPE-CODE FALSE> + PHRASE38>
842 <SYSOP 'JFNS NS20 NEW?12 0 0 = NM118>
843 <UUBLOCK <TYPE-CODE STRING> NM118 = DEV16 (TYPE STRING)>
844 <MOVE-STRING NS20 DEV16 NM118 (NO-OVERLAP T)>
846 <TYPE? DEVNAM11 <TYPE-CODE FALSE> - COND46>
847 <FRAME '
\1aT$GET-DEVICE-TYPE>
849 <CALL '
\1aT$GET-DEVICE-TYPE 1 = NM118>
850 <GVAL 'T$DEVVEC = SNM17>
851 <EMPUV? SNM17 + PHRASE47>
852 <LOOP (NM118 VALUE) (SNM17 LENGTH VALUE)>
854 <NTHUV SNM17 1 = TEMP32>
855 <TYPE? TEMP32 <TYPE-CODE FIX> - TAG51>
856 <VEQUAL? TEMP32 NM118 + TAG49>
859 <RESTUV SNM17 1 = SNM17 (TYPE VECTOR)>
860 <EMPUV? SNM17 - TAG50>
863 <NTHUV SNM17 2 = DEVNAM11>
867 <SET DEVNAM11 'T$TWAY (TYPE ATOM)>
869 <SYSOP 'RLJFN NEW?12>
871 <TYPE? DEVNAM11 <TYPE-CODE ATOM> - PHRASE55>
872 <FRAME '
\1aT$CHANNEL-OPEN>
881 <CALL '
\1aT$CHANNEL-OPEN 4 = TEMP31>
884 <FRAME '
\1aT$CHANNEL-OPEN>
885 <NTHUV DEVNAM11 1 = STACK>
892 <SET TEMP31 4 (TYPE FIX)>
893 <RESTUV DEVNAM11 1 = TEMP32 (TYPE VECTOR)>
895 <LOOP (TEMP32 VALUE LENGTH) (TEMP31 VALUE)>
898 <EMPUV? TEMP32 + TAG58>
899 <NTHUV TEMP32 1 = STACK>
900 <RESTUV TEMP32 1 = TEMP32 (TYPE VECTOR)>
901 <ADD TEMP31 1 = TEMP31 (TYPE FIX)>
904 <CALL '
\1aT$CHANNEL-OPEN TEMP31 = TEMP31>
906 <TYPE? TEMP31 <TYPE-CODE FALSE> - COND37>
907 <FRAME '
\1aI$STD-ERROR>
912 <CALL '
\1aI$STD-ERROR 2 = TEMP31>
915 <FRAME '
\1aI$STD-ERROR>
920 <CALL '
\1aI$STD-ERROR 2 = TEMP31>
932 <GFCN
\1aX$VALUE? ("VALUE" <OR FIX STRING> ATOM) ATM4>
935 <GEN-ASSIGNED? ATM4 - PHRASE7>
936 <GEN-LVAL ATM4 = TEMP8>
940 <NTHR ATM4 1 = TEMP8 (RECORD-TYPE ATOM) (BRANCH-FALSE + TAG14)>
941 <TYPE? TEMP8 <TYPE-CODE FALSE> + TAG14>
942 <NTHR TEMP8 1 = TEMP8 (RECORD-TYPE GBIND)>
943 <TYPE? TEMP8 <TYPE-CODE UNBOUND> - TAG13>
946 <SET TEMP8 %<> (TYPE FALSE)>
952 <TYPE? TEMP8 <TYPE-CODE FALSE> + BOOL18>
953 <TYPE? TEMP8 <TYPE-CODE FIX> + BOOL18>
954 <EMPUS? TEMP8 - PHRASE17 (TYPE STRING)>
962 <GFCN
\1aT$UNAME ("VALUE" STRING)>
963 <TEMP ST5:STRING UNUM4:FIX>
965 <GVAL 'I$NAMSTR = ST5>
966 <SYSOP 'GJINF (RETURN 1) = UNUM4>
967 <SYSOP 'DIRST ST5 UNUM4>
969 <FRAME '
\1aI$GET-STRING>
970 <GVAL 'I$NAMSTR = STACK>
971 <CALL '
\1aI$GET-STRING 1 = ST5>
976 <GFCN
\1aT$GET-CONNECTED-DIR ("VALUE" ANY)>
977 <TEMP ST5:STRING GCD9 TEMP15>
979 <GVAL 'I$NAMSTR = ST5>
980 <SYSOP 'GJINF (RETURN 2) = GCD9>
981 <SYSOP 'DIRST ST5 GCD9>
983 <FRAME '
\1aI$GET-STRING>
984 <GVAL 'I$NAMSTR = STACK>
985 <CALL '
\1aI$GET-STRING 1 = ST5>
987 <EMPUS? GCD9 + TAG11>
988 <LOOP (GCD9 LENGTH VALUE)>
990 <NTHUS GCD9 1 = TEMP15>
991 <VEQUAL? TEMP15 !\: + TAG12>
993 <RESTUS GCD9 1 = GCD9 (TYPE STRING)>
994 <EMPUS? GCD9 - TAG13>
996 <SET GCD9 %<> (TYPE FALSE)>
998 <LENUS ST5 = TEMP15 (TYPE FIX)>
999 <PUTUS ST5 TEMP15 !\
\0>
1001 <FRAME '
\1aI$GET-STRING>
1002 <RESTUS GCD9 2 = STACK (TYPE STRING)>
1003 <CALL '
\1aI$GET-STRING 1 = TEMP15>
1006 <FRAME '
\1aI$GET-STRING>
1009 <CALL '
\1aI$GET-STRING 1 = ST5>
1015 <END
\1aT$GET-CONNECTED-DIR>
1017 <GFCN
\1aI$GET-STRING ("VALUE" STRING STRING) ST4>
1021 <EMPUS? NST5 + PHRASE8>
1022 <LOOP (NST5 LENGTH VALUE)>
1024 <NTHUS NST5 1 = TEMP13>
1025 <VEQUAL? TEMP13 !\
\0 + TAG10>
1027 <RESTUS NST5 1 = NST5 (TYPE STRING)>
1028 <EMPUS? NST5 - TAG11>
1031 <LENUS ST4 = TEMP13 (TYPE FIX)>
1032 <LENUS NST5 = NST5 (TYPE FIX)>
1033 <SUB TEMP13 NST5 = TEMP13 (TYPE FIX)>
1035 <UUBLOCK <TYPE-CODE STRING> TEMP13 = NST5 (TYPE STRING)>
1036 <MOVE-STRING ST4 NST5 TEMP13 (NO-OVERLAP T)>
1043 <UBLOCK <TYPE-CODE STRING> 1 = NST5 (TYPE STRING)>
1046 <END
\1aI$GET-STRING>