100 JMP ECOMMON /CONTINUE THERE 110 120 EWRITE, JMS I (MOV4) /MOVE IN 130 WRIBLB-1 /THE WRITE 140 FUNBLB-1 /BLURB 150 JMS I (MOV4) /MOVE IN 160 FRMBLB-1 /THE "FROM" 170 FTBLB-1 /BLURB 180 ECOMMON,TAD EFUN /GET THE FUNCTION WORD 190 AND [7] /JUST UNIT BITS 200 TAD ["0+BOLD] /MAKE IT ASCII 210 DCA I (UNTBLB) /STORE IN MESSAGE 220 TAD EFUN /GET FUNCTION WORD AGAIN 230 RTR;RAR /MOVE OVER 240 AND [7] /ISOLATE FIELD BITS 250 TAD ["0+BOLD] /MAKE IT ASCII 260 DCA I (FLDBLB) /STORE IN MESSAGE 270 TAD EBLOCK /GET BLOCK NUMBER 280 JMS I (OCTMOVE) /PRINT IT 290 BLKBLB-1 /IN MESSAGE 300 TAD EADDR /GET TRANSFER ADDRESS 310 JMS I (OCTMOVE) /PRINT IT 320 ADDBLB-1 /IN MESSAGE 330 TAD ESTATUS /GET ERROR STATUS 340 JMS I (OCTMOVE) /PRINT IT 350 STATBLB-1 /IN MESSAGE 360 JMP I BLBFILL /RETURN 370 EJECT 380 BLBMOVE,.-. /BLURB MOVE ROUTINE 390 DCA EFUN /SAVE BLURB ADDRESS 400 IOF /PREVENT PROBLEMS! 410 JMS I [SETFLD] /SETUP OUR FIELD 420 TAD I BLBMOVE /GET MOVE LENGTH 430 DCA EADDR /SAVE IT 440 ISZ BLBMOVE /BUMP PAST ARGUMENT 450 TAD EADDR /GET THE LENGTH 460 CLL RAL /*2 470 TAD (ERRBLB-1-1) /POINT TO BEGINNING OF BLURB REGION 480 DCA CXR1 /STASH THE POINTER 490 DCA CXR2 /CLEAR FLAG 500 JMS I (BLBCHAR) /OUTPUT INITIAL 510 BLMVLUP,TAD I EFUN /GET A PAIR 520 BSW /LEFT ONE FIRST 530 JMS I (BLBCHAR) /PUT IT IN MESSAGE 540 TAD I EFUN /GET PAIR AGAIN 550 JMS I (BLBCHAR) /PUT IT IN MESSAGE 560 ISZ EFUN /BUMP TO NEXT PAIR 570 ISZ EADDR /DONE ALL PAIRS YET? 580 JMP BLMVLUP /NO, KEEP GOING 590 JMP I BLBMOVE /YES, RETURN 600 610 BLBDISP,.-. /BLURB DISPLAY AND REPLY ROUTINE 620 CLA /CLEAN UP 630 TAD INCHAR /GET FORMER INPUT CHARACTER 640 DCA EADDR /SAVE IT 650 JMS I [SETFLD] /SETUP OUR FIELD 660 TAD (EOS) /GET CHARACTER 670 DCA I (BLBSTP) /SHORTEN BLURB FOR NOW 680 TAD (BLURB) /POINT AT BLURB 690 DPLAIOT /LOAD ADDRESS 700 RIF /GET OUR FIELD 710 IAC /ADD INTERRUPT ENABLE BIT 720 DPGOIOT /START IT UP 730 JMS INCON /GET A CHARACTER 740 JMP .-1 /WAIT FOR IT 750 AND [177] /JUST SEVEN-BIT 760 DCA EFUN /SAVE IT 770 NL7775 /-3 780 TAD EFUN /COMPARE TO LATEST 790 SMA SZA /SKIP IF <^C> OR LESS 800 JMP NOTUPC /JUMP IF <^D> OR GREATER 810 SMA CLA /SKIP IF LESS THAN <^C> 820 JMP GOTUPC /JUMP IF <^C> 830 TAD EADDR /GET PREVIOUS CHARACTER 840 DCA INCHAR /RESTORE IT 850 GOTUPC, DPSMIOT /STOP THE DISPLAY 860 CIF CDF 00 /GOING TO FIELD 0 870 JMP I [SBOOT] /GOODBYE! 880 EJECT 890 NOTUPC, CLA /CLEAN UP 900 TAD EADDR /GET PREVIOUS CHARACTER 910 DCA INCHAR /RESTORE IT 920 TAD (" +BOLD) /GET A 930 DCA I (BLBSTP) /RESTORE EXTENDED BLURB 940 ISZ IOERSW /INDICATE RECOVERY IN PROGRESS 950 CDF 00 /SOME I/O ROUTINES MIGHT WANT THIS 960 JMP I BLBDISPLAY /RETURN 970 980 EADDR, .-. /ADDRESS TEMPORARY 990 EFUN, .-. /FUNCTION TEMPORARY 1000 1010 PAGE 1020 EJECT 1030 NOPUNCH /FOOL THE ASSEMBLER 1040 1050 IFNZRO 2200-. 1060 1070 VTBUFFE=. /VT-8/E DISPLAY BUFFER 1080 1090 ZBLOCK 2600-. /END OF REGION AVAILABLE FOR CHECKSUM CALCULATION 1100 1110 ZBLOCK VTBUFFER+2400-. /GET TO END OF VT-8/E BUFFER 1120 1130 VTBFEND=. /END OF VT-8/E BUFFER HERE 1140 1150 ENPUNCH /UN-FOOL THE ASSEMBLER 1160 1170 *. /RESET OUTPUT ORIGIN 1180 EJECT