100 DPCL= VTCODE^10+6006 /SKIP ON, CLEAR RETRACE FLAG 110 DPGO= VTCODE^10+6001 /START VT-8/E 120 DPLA= VTCODE^10+6000 /LOAD BUFFER ADDRESS 130 DPMS= VTCODE^10+6005 /READ SENSE SWITCH 140 DPSM= VTCODE^10+6002 /STOP DISPLAY 150 EFUN3I= 0136 /RETURN LOCATION 160 EOS= 3000 / CHARACTER 170 ERROR2= JMS I 0166 /ERROR HANDLER 180 ERR2= 2726 /ERROR ADDRESS 190 EVAL= 1613 /EVALUATE ROUTINE 200 FLAC= 0044 /FLOATING AC 210 FNTABF= 0374 /FUNCTION ADDRESS TABLE 220 FNTABL= 2165 /FUNCTION NAME TABLE 230 GETC= JMS I 0145 /GET A CHARACTER 240 GRFLD= 0010 /GRAPHICS IN FIELD 1 250 EJECT 260 IBAR= 0212 /BACK ARROW HANDLER 270 INFIX= 2401 /DATA CONTROL LIST 280 INLIST= 0570 /INPUT CONTROL CHARACTERS 290 JMPIC= JMP I . /CURRENT PAGE INDIRECT JUMP 300 KINT= 2625 /KEYBOARD INTERRUPT HANDLER 310 L13= 0005 /CONSTANT 0013 320 L177= 0106 /CONSTANT 0177 330 L7600= 0104 /CONSTANT 7600 340 INDEV= 0064 /INPUT POINTER 350 INTEGER=0053 /FIX ROUTINE POINTER 360 ISZC= ISZ . /CURRENT PAGE ISZ 370 NL0004= CLA CLL IAC RTL /LOAD AC WITH 0004 380 NL2000= CLA CLL CML RTR /LOAD AC WITH 2000 390 NL4000= CLA CLL CML RAR /LOAD AC WITH 4000 400 NL7777= CLA CMA /LOAD AC WITH 7777 410 NSTART= 3600 /NEW CODE STARTS HERE 420 OUTDEV= 0063 /OUTPUT POINTER 430 POPA= TAD I 13 /POP AC OFF STACK 440 POPJ= JMP I 0141 /POP JUMP 450 PROC= 0611 /PROCESS LOCATION 460 PUSHA= JMS I 0142 /PUSH AC 470 PUSHJ= JMS I 0140 /PUSH JUMP 480 RECOVX= 2761 /<^C> RECOVERY ROUTINE 490 RETURN= JMP I EFUN3I /RETURN INSTRUCTION 500 SORTC= JMS I 0150 /SORT AC OR CHAR 510 SORTCN= 0054 /SORTC INDEX 520 SPLAT= 3051 /WHERE 'S ECHO CHARACTER IS 530 SPNOR= JMS I 0160 /IGNORE SPACES 540 SWY9= 7606 /SWITCHES /Y-/9 550 SYSIO= 7640 /I/O ENTRY POINT 560 TADC= TAD . /CURRENT PAGE TAD 570 TASK= 1204 /ASK ROUTINE 580 TERMS= 1770 /TERMINATOR LIST 590 XI33= 2666 /INPUT ROUTINE 600 XOUTL= 2676 /OUTPUT ROUTINE 610 EJECT 620 *FNTABF+3 /WHERE DISPLAY ADDRESS IS 630 640 XDISP /NEW FDIS ADDRESS 650 660 *FNTABF+15 /WHERE TO PUT NEW FUNCTIONS 670 680 XIN /FIN ADDRESS 690 XOUT /FOUT ADDRESS 700 710 *INLIST+1 /IN INPUT SEARCH LIST 720 730 IBAR-2 /MAKE PRINT A "*" 740 750 *COMLST+16 /OVER OLD "*" COMMAND 760 770 "O /OPTION COMMAND 780 790 *1142 /OVER OLD FDIS FUNCTION 800 810 / FDIS(X,Y,T) FUNCTION. 820 830 XDISP, JMS I INTEGER /GET THE ARGUMENT 840 PUSHA /SAVE IT 850 JMP I PXDIS2 /CONTINUE THERE 860 EJECT 870 / FIN() FUNCTION. 880 890 XIN, JMS I INDEV /GET A CHARACTER 900 AND L177 /JUST SEVEN-BIT 910 DCA FLAC+1 /SAVE IN FLOATING AC 920 DCA FLAC+2 /MAKE INTO INTEGER 930 TAD L13 /SETUP 940 DCA FLAC /SHIFT FACTOR 950 RETURN /BACK TO FOCAL 960 970 / FOUT(ASCII) FUNCTION. 980 990 XOUT, JMS I INTEGER /GET THE ARGUMENT 1000 JMS I OUTDEV /OUTPUT IT 1010 XRET, RETURN /RETURN TO FOCAL 1020 1030 PXDIS2, XDISP2 /**** RELOCATE **** 1040 1050 *COMGO+16 /OVER OLD HIGH-SPEED READER ENTRY 1060 1070 OCOMX, OCOM&177 /**** RELOCATE **** 1080 1090 *FNTABL+15 /WHERE TO PUT NEW FUNCTION NAMES 1100 1110 "I^2+"N /HASHED INPUT FUNCTION 1120 "O^2+"U^2+"T /HASHED OUTPUT FUNCTION 1130 1140 *INFIX /OVER ENTRY 1150 1160 TASK+12 /MAKE IT ECHO THE PROMPT CHARACTER (IF ANY) 1170 1180 *KINT /OVER KEYBOARD INTERRUPT HANDLER 1190 1200 XLIST OFF 1210 IFNZRO VTIN < 1220 XLIST ON 1230 DKSF /USE VT-8/E KEYBOARD BY DEFAULT 1240 1250 *KINT+2 /LIKEWISE 1260 1270 DKRB /SAME 1280 XLIST OFF > 1290 IFZERO VTIN < 1300 XLIST ON 1310 KSF /USE TTY: KEYBOARD BY DEFAULT 1320 1330 *KINT+2 /LIKEWISE 1340 1350 KRB /SAME