100 TAD [-" !200] /COMPARE TO 110 SZA CLA /SKIP IF IT MATCHES 120 JMP BLBCHOK /JUMP IF NOT 130 TAD CXR2 /GET FLAG 140 SNA CLA /SKIP IF NON- SEEN 150 TAD [12-40-BOLD-200] /ELSE MAKE IT 160 SKP /DON'T CHANGE FLAG 170 BLBCHOK,ISZ CXR2 /BUMP FLAG 180 TAD OCTMOVE /GET THE CHARACTER 190 TAD [BOLD+200] /MAKE IT BOLD 200 DCA I CXR1 /STORE IN MESSAGE 210 JMP I BLBCHAR /RETURN 220 EJECT 230 / MAIN ERROR MESSAGE. 240 250 BLURB, "J&37 / 260 "J&37 / 270 " +BOLD /ERROR GOES HERE 280 " +BOLD /ERROR GOES HERE 290 " +BOLD /ERROR GOES HERE 300 " +BOLD /ERROR GOES HERE 310 " +BOLD /ERROR GOES HERE 320 " +BOLD /ERROR GOES HERE 330 " +BOLD /ERROR GOES HERE 340 " +BOLD /ERROR GOES HERE 350 " +BOLD /ERROR GOES HERE 360 " +BOLD /ERROR GOES HERE 370 " +BOLD /ERROR GOES HERE 380 " +BOLD /ERROR GOES HERE 390 " +BOLD /ERROR GOES HERE 400 " +BOLD /ERROR GOES HERE 410 " +BOLD /ERROR GOES HERE 420 " +BOLD /ERROR GOES HERE 430 " +BOLD /ERROR GOES HERE 440 " +BOLD /ERROR GOES HERE 450 ERRBLB, " +BOLD /ERROR BLURB STARTS HERE 460 "E+BLINK 470 "R+BLINK 480 "R+BLINK 490 "O+BLINK 500 "R+BLINK 510 " +BOLD 520 "W+NORMAL 530 "H+NORMAL 540 "I+NORMAL 550 "L+NORMAL 560 "E+NORMAL 570 " +BOLD 580 FUNBLB, ZBLOCK 4 /WILL BE "READ" OR "WRIT" 590 "I+NORMAL 600 "N+NORMAL 610 "G+NORMAL 620 " +BOLD 630 "S+BOLD 640 "Y+BOLD 650 "S+BOLD 660 UNTBLB, .-. /UNIT DIGIT WILL GO HERE 670 ":+NORMAL 680 BLKBLB, ZBLOCK 4 /BLOCK NUMBER WILL GO HERE 690 " +BOLD 700 FTBLB, ZBLOCK 4 /"FROM" OR "INTO" WILL GO HERE 710 " +BOLD 720 FLDBLB, .-. /FIELD DIGIT WILL GO HERE 730 ADDBLB, ZBLOCK 4 /TRANSFER ADDRESS DIGITS WILL GO HERE 740 EJECT 750 "J&37 / 760 "J&37 / 770 "S+BOLD 780 "T+NORMAL 790 "A+NORMAL 800 "T+NORMAL 810 "U+NORMAL 820 "S+NORMAL 830 ":+NORMAL 840 " +BOLD 850 STATBLB,ZBLOCK 4 /STATUS DIGITS WILL GO HERE 860 BLBSTP, EOS /WILL BE TO EXPAND MESSAGE 870 " +BOLD 880 " +BOLD 890 " +BOLD 900 " +BOLD 910 "*+CURSOR 920 "R+BLINK 930 "E+BLINK 940 "T+BLINK 950 "R+BLINK 960 "Y+BLINK 970 "I+BLINK 980 "N+BLINK 990 "G+BLINK 1000 "*+CURSOR 1010 EOS 1020 EJECT 1030 / LPT: SUPPORT ROUTINES. 1040 1050 LPOUT, .-. /LPT: OUTPUT ROUTINE 1060 DCA BUFCHK /SAVE PASSED VALUE 1070 TAD BUFCHK /GET IT BACK 1080 TAD (-177) /ADD ON UPPER LIMIT 1090 CLL /CLEAR LINK FOR TEST 1100 TAD (37) /ADD ON RANGE 1110 SZL CLA /SKIP IF OUT OF RANGE 1120 TAD LCMODE /ELSE ADD ON FOLD VALUE 1130 TAD BUFCHK /GET ORIGINAL EITHER WAY 1140 DCA BUFCHK /STORE BACK 1150 TAD LSTATUS /GET CURRENT STATUS 1160 SMA CLA /SKIP IF IN <^S>/<^Q> WAIT 1170 JMP LOUTRY /JUMP IF NOT 1180 JMS LINPUT /TRY TO CHANGE STATUS 1190 SPA SNA CLA /SKIP IF <^Q> RECEIVED 1200 JMP I LPOUT /ELSE TAKE FAILURE RETURN 1210 LOUTRY,.-. /WILL BE CIF CDF OUR FIELD 1220 TAD LPTFLAG /GET OUTPUT FLAG 1230 LSFIOT /FLAG UP NOW? 1240 SKP /SKIP IF NOT 1250 NL7777 /ELSE SET FLAG VALUE 1260 SNA /SKIP IF EITHER FLAG IS OR WAS SET 1270 JMP LPSTRD /JUMP IF NEITHER 1280 AND BUFCHK /GET THE CHARACTER 1290 LLSIOT /OUTPUT IT NOW 1300 CLA /CLEAN UP 1310 DCA LPTFLAG /CLEAR EVENT FLAG 1320 ISZ LPOUT /BUMP TO SKIP RETURN 1330 LPSTRD, JMS LINPUT /GET NEW INPUT STATUS 1340 DCA LSTATUS /STORE IT 1350 JMP I LPOUT /RETURN 1360 1370 BUFCHK, .-. /BUFFER STATUS ROUTINE 1380 NL0001 /SETUP INCREMENT 1390 TAD FILLPTR /GET FILL POINTER+1 1400 CIA /INVERT FOR TESTING 1410 TAD EMPTPTR /COMPARE TO EMPTYING POINTER 1420 AND (BUFSIZE-1) /JUST RELATIVE BITS 1430 SNA /SKIP IF BUFFER IS NOT FULL 1440 JMP I BUFCHK /TAKE FIRST RETURN 1450 ISZ BUFCHK /BUMP TO SKIP RETURN