10 22FL ... SEG IPBSTART,,,,G269 17 22_= [ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD. 1982 11 23DW #LIS K0IPBSTART>K0IPB>K0ALLGEO 7 23NN ...#OPT G269 = 0 6 23YG ...#SKI G269&1 16 248# ...# WITH UGUG EDIT M269 (REMOTE LISTFILE DEBATCHERS) 4 24D6 # 13 24XQ SEGENTRY K2IPBSTART,SK2IPBSTART 21 25CB # K2IPBSTART IS ENTERED FROM SETIDF IF AN IDF FILE HAS JUST BEEN SET UP. 21 25X2 # IT INITIALISES THE IPB AND OBTAINS A CONFIGURATION REPORT, WHICH IT 21 26BL # PASSES DOWN TO THE IDF ROUTINES, FOR EVERY IPB THAT IS NOT WRONGED. 4 26W= # 13 27*W SEGENTRY K3IPBSTART,SK3IPBSTART 21 27TG # K3IPBSTART IS ENTERED FROM SETIDF IF AN IDF ALREADY EXISTED BEFORE EMS 21 28*6 # THE ACTION TAKEN IS THE SAME AS FOR K2IPBSTART, EXCEPT THAT THE LOCAL 21 28SQ # OPERATOR IS GIVEN THE OPTION OF HAVING A CONFIGURATION REPORT OR USING 21 29#B # THE INFORMATION ALREADY IN THE IDF. IN THE FORMER CASE THE IPB IS LEFT 19 29S2 # MOPPED OFF, OTHERWISE, IF THE DEVICE IS MOPPED ON IN THE IDF, 19 2=?L # A SCANNING ACTIVITY IS CREATED AND LEFT WAITING FOR THE END OF 21 2=R= # EARLY MORNING START. THE PROCEDURE IS REPEATED FOR EACH AVAILABLE IPB. 4 2?=W # 13 2?QG SEGENTRY K4IPBSTART,SK4IPBSTART 19 2#=6 # K4IPBSTART IS CODE USED BY THE INPUT ACTIVITY DURING START UP. 13 2#PQ # (I.E. DURING E.M.S. AND MOPPING ON). 4 2*9B # 13 2*P2 SEGENTRY K5IPBSTART,SK5IPBSTART 4 2B8L # 9 2BN= PAIR2 PAIR IPBSCAN,1 9 2C7W PAIR3 PAIR IPBIN,1 10 2CMG PAIR4 PAIR IPBSTART,5 10 2D76 PAIR5 PAIR IPBSTARB,7 10 2DLQ PAIR6 PAIR IPBSTARB,11 4 2F6B # 7 2FL2 #UNS CCERROR 4 2G5L ( 4 2GK= [ 10 2H4W PAIR8 PAIR IPBJOURN,2 4 2HJG [ 8 2J46 SCCA SBX 5 FX1 8 2JHQ CCERROR 6,7 8 2K3B ADX 5 FX1 7 2KH2 EXIT 5 0 8 2L2L SCCE CALL 5 SCCA 11 2LG= MHUNTW 3,AMXOR,INBF 8 2L_W ADN 3 A1 8 2MFG BRN REDOK 4 2M_6 REJO 10 2NDQ LDN 6 CCREJECTOT 9 2NYB LDX 7 CPRW1(2) 8 2PD2 CALL 5 SCCA 8 2PXL BRN ZINOP 4 2QC= ) 9 2QWW SEGINIT #400:0 9 2RBG #020:0 10 2RW6 SEGENTRY K50IPBSTART 10 2S*Q #HAL INPUSIZE+3,INPUSIZE+3 4 2STB # 7 2T*2 #UNS JPGLTER 20 2TSL SEGGT #02150000 [SUP. SEG. FOR GLOBAL TERMINATOR 9 2W#= SEGCONFIG #01140000 4 2WRW # 9 2X?G SEGCLOSE #01110000 4 2XR6 # 21 2Y=Q V7900SSSBLK [CONTENTS OF THE VIRTUAL 7900 SYSTEM SUPERVISORY SEGMENTS 11 2YQB [AMXOR/IOUT BLOCK 14 2_=2 0 [IMOPTY 13 2_PL #40000000 [IBSW 16 329= #03000000 ['INITIALISE' SS 20 32NW #HAL AVBUFFSIZE,AVBUFFSIZE[(INPUT AND OUTPUT BUFFER SIZES) 16 338G 4HGEO3 [(PROGRAM NAME) 12 33N6 #DEF VSSSBLKLEN = 0? - V7900SSSBLK 20 347Q VGTBLOCK [CONTAINS GLOBAL TERM FOR V7900 15 34MB 0 [IMOPTY 15 3572 #40000000 [IBSW 18 35LL #02150000 [SET GLOBAL TERM 11 366= #DEF VSSSGTERM = 0? - VGTBLOCK 7 36KW 0 10 375G #DEF VGTLEN = 0? - VGTBLOCK 4 37K6 # 9 384Q TYPEI #430:2 9 38JB TYPEO #430:#15 4 3942 # 8 39HL SATEM +100 8 3=3= TEN +10 18 3=GW XMASK #74777776 [MASK OUT BITS 4,5 & 23 6 3=N4 ...#SKI G269&1 9 3=T= ...ZZZZ 4HZZZZ 4 3?2G # 9 3?G6 ZJIPBERR +JIPBERR 9 3?_Q ZJINOP +HUINOP 9 3#FB ZJMOP3 +JMOP3 6 3#_2 #UNS CRAMP 19 3*DL ZJMOP4 +JMOP4 [UNIT %A : MOP ON ABANDONED 9 3*Y= ZJCONFIG +JCONFIG 9 3BCW ZJUPFAIL +JUPFAIL 6 3BXG #UNS CRAMP 19 3CC6 ZJUPOK +JUPOK [UNIT %A : UPDATE SUCCESSFUL 7 3CWQ #UNS CCERROR 9 3DBB XIN 4HIN 4 3DW2 # 4 3F*L [ 20 3FT= [ SUBROUTINE TO SAVE SPACE BY PUTTING GETACT MACRO IN SUBROUTINE 4 3G#W [ 5 3GSG XGETACT 8 3H#6 SBX 7 FX1 11 3HRQ GETACT AMSCAN,IPBTYPE,1 8 3J?B ADX 7 FX1 7 3JR2 EXIT 7 0 4 3K=L [ 10 3KQ= [ SUBROUTINE TO SAVE SPAVE 17 3L9W [ BY PUTTING SET UP OF AMXOR IOUT INTO A SUBROUTINE 4 3LPG [ 5 3M96 XSETIOUT 8 3MNQ SBX 7 FX1 12 3N8B SETUPCORE 6,2,AMXOR,IOUT,1 8 3NN2 ADX 7 FX1 7 3P7L EXIT 7 0 4 3PM= [ 11 3Q6W [ SUBROUTINE TO SAVE SPACE 13 3QLG [ PUTTING IDFTPSCN INTO A SUBROUTINE 4 3R66 [ 5 3RKQ XIDFSCN 8 3S5B SBX 7 FX1 10 3SK2 IDFTPSCN XBI,XIDFA 7 3T4L SETALLOC 7 3TJ= ADN 7 1 5 3W3W XIDFA 8 3WHG ADX 7 FX1 7 3X36 EXIT 7 0 4 3XGQ # 20 3Y2B # SUBROUTINE TO TEST IF AN IPB IS A VIRTUAL 7900 AND IF TRUE TO 20 3YG2 # SET UP AN AMXOR/IOUT BLOCK CONTAINING THE SYSTEM SUPERVISORY 21 3Y_L # SEGMENTS 'INITIALISE' AND 'SET GLOBAL TERMINATOR' AND TO SET UP 15 3_F= # AN INPUT BUFFER FOR THE INPUT ACTIVITY . 20 3_YW # THE SYSTEM SUPERVISORIES AMXOR/IOUT BLOCK WILL EVENTUALLY BE 14 42DG # OUTPUT BY THE AMOP/IPBOUT ACTIVITY . 16 42Y6 # ON ENTRY AND EXIT X3 -> THE IPB INPUT ACTIVITY 17 43CQ # EXITS+1 IF IPB IS NOT A VIRTUAL 7900, ELSE EXITS+0 15 43XB # HAVING COORDINATED WITH X6 & X7 UNDEFINED 7 44C2 # LINK IN X5 4 44WL # 6 45B= SVIOUTINBF 11 45TW JV7900 CPPTR(3),SVSUPBLK 21 46*G EXIT 5 1 [IPB IS NOT A VIRTUAL 7900 : EXIT +1 5 46T6 SVSUPBLK 8 47#Q SBX 5 FX1 10 47SB LDN 6 VSSSBLKLEN 9 48#2 CALL 7 XSETIOUT 11 48RL LDN 6 V7900SSSBLK(1) 8 49?= LDN 7 A1(2) 10 49QW MOVE 6 VSSSBLKLEN 9 4==G LDN 6 VGTLEN 9 4=Q6 CALL 7 XSETIOUT 10 4?9Q LDN 6 VGTBLOCK(1) 8 4?PB LDN 7 A1(2) 9 4#92 MOVE 6 VGTLEN 21 4#NL LDX 6 GTERM [MOVE IN THE GLOBAL TERMINATOR CHARS 11 4*8= STO 6 A1+VSSSGTERM(2) 20 4*MW LDN 6 AVBUFFSIZE [SET UP INPUT BUFFER AND CHAIN 18 4B7G SETUPCORE 6,2,AMXOR,INBF,1 [AFTER THE INPUT ACTIVITY 8 4BM6 CHAIN 2,3 14 4C6Q ADX 5 FX1 [EXIT +0 7 4CLB EXIT 5 0 4 4D62 # 4 4DKL # 4 4F5= [ 14 4FJW [ SUBROUTINE TO READ IN AND WRITE OUT 4 4G4G [ 17 4GJ6 PERIN MHUNTW 3,AMXOR,INBF [ENTRY FOR INPUT PERI 10 4H3Q SEGENTRY K52IPBSTART 19 4HHB LDN 5 INPUSIZE+3 [LENGTH OF INPUT TRANSFER. 7 4J32 LOCK 3 8 4JGL ADN 3 A1 8 4K2= #SKI K6IPB>100-100 8 4KFW JSBUSY ,PGE 10 4K_G DSCA ,STO,3,CTSA 10 4LF6 DSCA ,STO,5,COUNT 10 4LYQ DSCA ,DLA,7,MODE 19 4MDB LDN 5 0 [SET INPUT SWITCH FOR WAIT1 15 4MY2 PERAG GSPERI ,2 [ISSUE READ 8 4NCL BRN PERY1 4 4NX= # 18 4PBW PEROT LOCK 3 [ENTRY FOR OUTPUT PERI 8 4PWG ADN 3 A1 8 4QB6 #SKI K6IPB>100-100 4 4QTQ ( 9 4R*B JUNBUSY ,PFREE 9 4RT2 PGE GEOERR 1,CABUSY 4 4S#L ) 10 4SS= PFREE DCA ,STO,3,CTSA 10 4T?W DCA ,STO,5,COUNT 10 4TRG DCA ,DLA,4,MODE 20 4W?6 JANON CPPTR(2),XIT61 [J. IF ANONYMOUS AS IF INOP 15 4WQQ PEROG GPERI ,2 [ISSUE WRITE. 15 4X=B PERY1 LDXC 0 CPRW1(2) [REPLY WORD. 18 4XQ2 BCC WAIT2 [J. IF ALREADY FINISHED. 7 4Y9L SLC 0 6 7 4YP= ANDN 0 3 21 4_8W BZE 0 WAIT1 [J. IF DIRECT RESPONSE ^ACCEPTED^. 7 4_NG ANDN 0 1 19 5286 BNZ 0 XIT61 [J. IF REJECTED - INOPERABLE. 17 52MQ EXIT 6 0 [REJECTED - OPERABLE. 21 537B WAIT1 BZE 5 WAIT2 [AMOP/IPBIN IS IN FIXED CHAPTER AREA 7 53M2 LOCK 2 8 546L WAIT2 SBX 6 FX1 21 54L= WAIT3 COOR1 [WAIT FOR NOTIFICATION OF END OF PERI 9 555W LDXC 0 CPRW1(2) 8 55KG BCS WAIT3 7 5656 SLC 0 5 7 56JQ ADX 6 1 17 574B BPZ 0 XIT61 [J. IF INOPERABLE. 8 57J2 ANDN 0 #13 17 583L BZE 0 XIT63 [J. IF TRANFER O.K. 7 58H= SRC 0 2 9 592W BNG 0 XIT61 7 59GG SRC 0 2 8 5=26 BNG 0 XIT62 7 5=FQ EXIT 6 0 7 5=_B XIT61 EXIT 6 1 7 5?F2 XIT62 EXIT 6 2 5 5?H4 ...XIT63 7 5?K6 ... STOZ 0 5 5?M8 ...XIT63C 8 5?P= ... LDX 5 1(3) 15 5?R# ... BXE 5 XMSK1(1),XIT63A [FOUND NULL 5 5?TB ...XIT63B 15 5?XD ... EXIT 6 3 [FOUND DATA 5 5?_G ...XIT63A 19 5#3J ... ADN 3 1 [LOOK AT NEXT WORD OF DATA 7 5#5L ... SBN 0 2 21 5#7N ... BZE 0 XIT63B [FOUND 3 NULLS,NEXT WD MUST BE DATA 18 5#9Q ... ADN 0 3 [RESTORE COUNT OF NULLS 9 5#?S ... BRN XIT63C 7 5#*W ...XMSK1 #01570000 4 5#D= # 8 5#XW ROUT1 SMO FX2 9 5*CG LDX 3 IPBRING 20 5*X6 SBN 3 IPBRING [GET ADDRESS OF OTHER ACTIVITY. 9 5BBQ STOZ ACC5(3) 17 5BWB SBX 5 1 [DEDATUMISE OWN LINK. 21 5CB2 ROUT2 ADS 0 ACC5(3) [STEP (OR SET) LINK IN OTHER ACTIVITY 8 5CTL SBN 2 A1 17 5D*= UNLOCK 2 [UNLOCK THE BUFFER 7 5DSW ROUT3 LDX 2 3 18 5F#G FPUT [ENLIST OTHER ACTIVITY. 17 5FS6 COOR1 [WAIT TO BE WOKEN. 6 5G?Q SK4IPBSTART 16 5GRB ADX 5 1 [EXIT TO LINK. 7 5H?2 EXIT 5 0 4 5HQL # 18 5J== # READ RUBBISH OR ^READY^ FOLLOWING INITIALISE COMMAND. 4 5JPW # 18 5K9G READY LDN 7 #12 [END READ MODE FOR READY. 8 5KP6 BRN RENM 18 5L8Q READR LDN 7 2 [READ MODE FOR RUBBISH 15 5LNB RENM CALL 6 PERIN [DO THE READ. 20 5M82 BRN TINOP [TREAT AS INOPERABLE IF REJECTED 16 5MML BRN TINOP [OR INOPERABLE 18 5N7= BRN TIMEO [TIMED OUT : TRY TWICE 8 5NLW ANDN 7 #10 17 5P6G BZE 7 REDOK [J. IF READ RUBBISH 20 5PL6 LDCT 6 #014 [J. IF MESSAGE IS ^READY^ TO WAKE 18 5Q5Q ERX 6 1(3) [UP THE E.M.S. ACTIVITY 19 5QKB BNZ 6 READY [NOT ^READY^ : REPEAT READ 7 5R52 REDOK LDX 2 3 8 5RJL SMO FX2 9 5S4= LDX 3 IPBRING 18 5SHW LDN 0 1 [STEP LINK TO EXIT +1. 9 5T3G SBN 3 IPBRING 17 5TH6 BRN ROUT2 [WAKE E.M.S. ACTIVITY 18 5W2Q TIMEO ERX 7 GSIGN [TIMED OUT : TRY TWICE 15 5WGB BNG 7 PERAG [TRY AGAIN 20 5X22 BRN TINOP [T.O. TWICE : TREAT AS INOPERABLE 7 5XFL #UNS JPGLTER 4 5X_= ( 14 5YDW # READ REPLY TO GLOBAL TERMINATOR SETTIMG 7 5YYG RGTAK LDN 0 4 20 5_D6 ORS 0 IPBSW(2) [SET GLOBAL TERMINATOR APPLICABLE 13 5_XQ LDN 7 #12 [MODE 13 62CB CALL 6 PERIN [READ 17 62X2 BRN REJOP [REJECTED OPERABLE 15 63BL BRN TINOP [INOPERABLE 18 63W= BRN PERAG [TIMED OUT - TRY AGAIN 8 64*W LDN 7 #141 9 64TG BRN XCHREP 4 65*6 ) 4 65SQ # 19 66#B # READ CONFIGURATION REPORT FOLLOWING CONFIGURATION REQUEST. 4 66S2 # 7 67?L RCONF LDN 7 2 15 67R= CALL 6 PERIN [DO THE READ. 17 68=W BRN REJOP [REJECTED - OPERABLE. 15 68QG BRN TINOP [INOPERABLE. 18 69=6 BRN PERAG [TIMED OUT : TRY AGAIN 8 69PQ LDN 7 #154 5 6=9B XCHREP 8 6=P2 LDX 6 1(3) 8 6?8L SRL 6 12 7 6?N= ERX 6 7 8 6#7W SBN 7 #154 8 6#MG BZE 6 XCHB 9 6*76 ERN 6 #245$#141 8 6*LQ BNZ 6 SOSSS 8 6B6B LDX 0 2(3) 8 6BL2 SRL 0 12 8 6C5L SBN 0 #2114 8 6CK= BZE 7 XCHA 7 6D4W SBN 0 1 4 6DJG XCHA 8 6F46 BNZ 0 SOSSS 8 6FHQ BZE 7 REDOK 7 6G3B LDN 0 4 9 6GH2 ERS 0 IPBSW(2) 9 6H2L BRN REDOK 4 6HG= XCHB 8 6H_W BZE 7 XCONF 8 6JFG BRN REDOK 5 6J_6 SOSSS 10 6KDQ LDN 6 CCSSSWRONG 8 6KYB LDX 7 1(3) 8 6LD2 BRN SCCE 5 6LXL XCONF 8 6MC= LDX 7 2(3) 6 6MWW #UNS CRAMP 4 6NBG ( 7 6NW6 SBN 7 1 19 6P*Q BZE 7 REDOK [NULL CONFIGURATION REPORT 18 6PTB ADN 7 1 [RESET LENGTH OF REPORT 4 6Q*2 ) 21 6QSL STOZ AWORK4(2) [CURRENT POSITION IN OUTPUT BLOCK. 8 773= LDN 4 2(3) 21 77GW SETUPCORE 7,1,IDF,IREPORT [SET UP BLOCK TO HOLD COMPLETE REPORT 19 782G NGX 3 CPRW1(2) [FIND LENGTH OF THIS MESSAGE. 10 78G6 SEGENTRY K51IPBSTART 10 78_Q ADN 3 INPUSIZE+1 8 79FB LDN 5 A1(1) 21 79_2 ANDN 3 #7777 [MASK OUT OPERABLE BIT IN CHARACTER 0 21 7=DL ADX 5 AWORK4(2) [CURRENT POSITION IN OUTPUT BLOCK. 18 7=Y= ADS 3 AWORK4(2) [UPDATE OUTPUT POINTER. 8 7?CW #SKI K6IPB>99$99 4 7?XG ( 21 7#C6 BXGE 7 AWORK4(2),OKSIZ [J. IF MESSAGE < LENGTH ANNOUNCED. 7 7#WQ #UNS CCERROR 4 7*BB #SKI 10 7*W2 GEOERR 1,BIGREPRT 7 7B*L #UNS CCERROR 4 7BT= ( 10 7C#W LDN 6 CCBIGREPORT 15 7CSG BRN SCCE [REPORT ERROR 4 7D#6 ) 5 7DRQ OKSIZ 4 7F?B ) 9 7FR2 MOVLONG 4,5,3 11 7FS4 ... BXU 7 AWORK4(2),NOKSIZ 7 7FT6 ...#UNS CCERROR 4 7FW8 ...( 10 7FX= ... MHUNTW 2,IDF,IREPORT 8 7FY# ... LDX 7 A1(2) 7 7F_B ... ADN 7 4 11 7G2D ... SETUPCORE 7,1,AMXOR,AJOURN 8 7G3G ... SMO FX1 8 7G4J ... LDX 0 XIN 8 7G5L ... STO 0 A1(1) 8 7G6N ... LDX 0 FTIME 9 7G7Q ... STO 0 A1+1(1) 9 7G8S ... LDX 0 FTIME+1 9 7G9W ... STO 0 A1+2(1) 8 7G=Y ... SMO FX2 8 7G#2 ... LDX 2 CPPTR 8 7G*4 ... LGEOG 2,6 9 7GB6 ... STO 6 A1+3(1) 10 7GC8 ... MHUNTW 2,IDF,IREPORT 7 7GD= ... SBN 7 4 8 7GF# ... LDN 4 A1(2) 9 7GGB ... LDN 5 A1+4(1) 8 7GHD ... MOVLONG 4,5,7 7 7GJG ... CHAINJRN 10 7GKJ ... MHUNTW 1,IDF,IREPORT 4 7GLL ...) 8 7GMN ... BRN REPRT 5 7GNQ ...NOKSIZ 7 7GQ= LDN 7 2 15 7H9W CALL 6 PERIN [READ MORE. 17 7HPG BRN REJOP [REJECTED - OPERABLE. 15 7J96 BRN SINOP [INOPERABLE. 18 7JNQ BRN PERAG [TIMED OUT : TRY AGAIN 21 7K8B LDCT 0 #40 [J. IF NOT CONTINUATION OF REPORT. 8 7KN2 ANDX 0 0(3) 8 7L7L BZE 0 NCONT 18 7LM= LDN 4 1(3) [SET POINTER FOR MOVE. 20 7M6W NGX 3 CPRW1(2) [FIND THE LENGTH OF THIS MESSAGE. 19 7MLG MHUNTW 1,IDF,IREPORT [RELOCATE THE OUTPUT BLOCK. 18 7N66 LDX 7 ALOGLEN(1) [DECLARED REPORT LENGTH 10 7NKQ BUX 3 K51IPBSTART 7 7P5B #UNS CCERROR 4 7PK2 #SKI 20 7Q4L REJOP GEOERR 1,REJECTED [TRANSFER REJECTED - OPERABLE. 7 7QJ= #UNS CCERROR 4 7R3W ( 10 7RHG REJOP LDN 6 CCREJECTIN 9 7S36 LDX 7 CPRW1(2) 8 7SGQ BRN SCCE 4 7T2B ) 7 7TG2 #UNS CCERROR 4 7T_L #SKI 21 7WF= NCONT GEOERR 1,CONFIG'N [CONFIGURATION REPORT < LENGTH GIVEN. 7 7WYW #UNS CCERROR 4 7XDG ( 10 7XY6 NCONT LDN 6 CCNOCONTCR 8 7YCQ LDX 7 0(3) 8 7YXB BRN SCCE 4 7_C2 ) 4 7_WL # 4 82B= # 20 82TW REPRT LDX 3 IPBRING(2) [RELOCATE THE ^WRITING^ ACTIVITY. 9 83*G SBN 3 IPBRING 21 83T6 CHAIN 1,3 [THE E.M.S. ACTIVITY & WAKE IT UP. 10 84#Q MHUNTW 2,AMXOR,INBF 8 84SB ADN 2 A1 18 85#2 LDN 0 2 [STEP LINK TO EXIT AT +2. 8 85RL BRN ROUT2 4 86?= # 7 86QW #UNS CCERROR 4 87=G #SKI 21 87Q6 SINOP MFREEW IDF,IREPORT [FREE THE PARTLY FILLED REPORT BLOCK. 7 889Q #UNS CCERROR 4 88PB ( 10 8992 SINOP VFREEW IDF,IREPORT 4 89NL ) 8 8=8= TINOP SBN 3 A1 16 8=MW FREECORE 3 [AMXOR/INBF BLOCK 19 8?7G LDX 2 IPBRING(2) [FIND THE ^WRITING^ ACTIVITY. 9 8?M6 SBN 2 IPBRING 16 8#6Q FPUT [SET IT GOING. 16 8#LB DERINGD IPBRING(2) [CLEAR THE RING. 18 8*62 EMPTY IPBRING(2) [RESET OUR RING ELEMENTS. 5 8*KL ZUNNO 21 8B5= NGS 1 CHAINADD(2) [MARK TO TELL BLANKET WE'RE ASLEEP. 17 8BJW DISENGPER [DISENGAGE THE IPB. 18 8C4G COOR1 [WAIT FOR RE-ENGAGEMENT. 4 8CJ6 # 6 8D3Q SK5IPBSTART 8 8DHB JANON ,ZUNNO 9 8F32 LDX 0 IPBSW(2) 14 8FGL ANDX 0 BIT10 [BIT 10 18 8G2= BZE 0 ZUOK [IDF CONTAONS UNIT INFO 17 8GFW DOWN IDFCHK,4 [INSERT INFO INTO IDF 4 8G_G ZUOK 21 8HF6 CALL 7 XGETACT [GET SCANNING ACTIVITY TO DO RESTART 9 8HYQ LDX 3 BPTR(2) 19 8JDB LDX 4 CPPTR(2) [ADDRESS OF IPB DEVICE LIST. 18 8JY2 LINKSET 3,PAIR5(1) [SET LINK TO K7IPBSTARB 9 8KCL STO 4 CPPTR(3) 20 8KX= STO 2 ACC3(3) [SAVE ADDRESS OF INPUT ACTIVITY. 20 8LBW BRN ROUT3 [J. TO SET IT ALL GOING AGAIN. 4 8LWG # 19 8MB6 # ########################################################### 4 8MTQ # 20 8N*B # CODE ABOVE IS OBEYED IN AMOP/IPBIN ; BELOW IN EMS ACTIVITY. 4 8NT2 # 19 8P#L # ########################################################### 4 8PS= # 21 8Q?W # SUBROUTINE TO ISSUE ^INITIALISE^ COMMAND AND CHECK THE REPLY (IF ANY). 4 8QRG # 8 8R?6 START SBX 4 FX1 10 8RQQ SEGENTRY K53IPBSTART 20 8S=B LDN 5 INPUSIZE+3 [SET UP INPUT BUFFER AND CHAIN 18 8SQ2 SETUPCORE 5,1,AMXOR,INBF,1 [AFTER THE INPUT ACTIVITY 15 8T9L STO 4 AWORK3(2) [SAVE LINK. 8 8TP= CHAIN 1,3 21 8W8W ENRINGD IPBRING(2),IPBRING(3)[RING IN THE IPBIN ACTIVITY(->X3) 10 8WNG TINIT MHUNTW 3,AMXOR,IOUT 19 8X86 LDN 4 #15 [END WRITE CANCEL READ MODE 15 8XMQ LDN 5 3 [WORD COUNT 20 8Y7B CALL 6 PEROT [OUTPUT THE ^INITIALISE^ MESSAGE 20 8YM2 BRN RUBSH [J. TO READ RUBBISH IF REJECTED. 15 8_6L BRN ZINOP [INOPERABLE 17 8_L= BRN PEROG [REPEAT IF TIMED OUT 19 925W JANON ,ZINOP [OPERABLE BUT ANON UNIT NO SO 7 92KG LDX 2 3 19 9356 LDN 0 READY [SET LINK TO READ ^READY^. 21 93JQ CALL 5 ROUT1 [WAKE UP INPUT ACTIVITY & AWAIT REPLY 21 944B BRN VINOP [J. IF IT WENT INOPERABLE DURING READ 7 94J2 #UNS JPGLTER 4 953L ( 10 95H= MHUNTW 3,AMXOR,IOUT 19 962W LDX 5 SEGGT(1) [GLOBAL TERMINATOR SETTING 9 96GG STO 5 A1+1(3) 8 9726 LDX 5 GTERM 9 97FQ STO 5 A1+2(3) 14 97_B LDN 5 3 [COUNT 13 98F2 LDN 4 #15 [MODE 15 98YL CALL 6 PEROT [SEND EEGMENT 7 99D= #UNS CCERROR 4 99XW #SKI 17 9=CG BRN REJOP [REJECTED OPERABLE 7 9=X6 #UNS CCERROR 4 9?BQ ( 16 9?WB BRN REJO [REJECTED OPERABLE 4 9#B2 ) 15 9#TL BRN ZINOP [INOPERABLE 14 9**= BRN PEROG [TIMED 7 9*SW LDX 2 3 18 9B#G LDN 0 RGTAK [LINK FOR INPUT ACTIVITY 17 9BS6 CALL 5 ROUT1 [SWITCH ACTIVITIES 15 9C?Q BRN VINOP [INOPERABLE 4 9CRB ) 20 9D?2 SMO AWORK3(2) [OTHERWISE EXIT TO THE LINK + 1. 7 9DQL EXIT 1 1 4 9F== # 20 9FPW RUBSH LDX 2 3 [LET IPBIN READ IN RUBBISH BEFORE 18 9G9G LDN 0 READR [DOING INITIALISE AGAIN. 21 9GP6 CALL 5 ROUT1 [WAIT FOR READ: RETURN IS TO ^TINIT^. 16 9H8Q BRN VINOP [INOP DURING READ 20 9HNB BRN TINIT [READ OK : TRY ^INITIALISE^ AGAIN 4 9J82 # 19 9JML # SUBROUTINE TO INFORM CONSOLE MESSAGE ; IPB GEOG NO IN X6 ; 13 9K7= # MESSAGE ADDRESS IN X4 ; CALL ON X5 4 9KLW # 15 9L6G OGE LGEOG CPPTR(3),6 [GET GEOG NO. 8 9LL6 OMES SBX 5 FX1 8 9M5Q GEOPACK 6,6,6 10 9MKB OUTPACK 6,1,GEOPER 8 9N52 INFORMX ,4,1 8 9NJL ADX 5 FX1 7 9P4= EXIT 5 0 4 9PHW # 17 9Q3G # SUBROUTINE TO ISSUE ^CLOSE DOWN^ COMMAND TO THE DCP. 4 9QH6 # 7 9R2Q SHUT SBX 6 1 15 9RGB STO 6 AWORK3(2) [SAVE LINK. 8 9S22 BRN OFF 4 9SFL # 4 9S_= # 21 9TDW # SUBROUTINE TO ISSUE ^CONFIGURATION REQUEST^, USING THE REPLY TO UPDATE 21 9TYG # THE IDF, AND THEN CLOSE THE DCP. V IS SET ON EXIT IF REPORT OBTAINED. 4 9WD6 # 7 9WXQ UPDAT SBX 6 1 15 9XCB STO 6 AWORK3(2) [SAVE LINK. 10 9XX2 MHUNTW 3,AMXOR,IOUT 21 9YBL LDX 5 SEGCONFIG(1) [SET UP THE CONFIGURATION REQUEST. 9 9YW= STO 5 A1+1(3) 15 9_*W LDN 5 2 [WORD COUNT. 14 9_TG LDN 4 #15 [MODE. 18 =2*6 CALL 6 PEROT [AND PERI IT TO THE IPB. 7 =2SQ #UNS CCERROR 4 =3#B #SKI 17 =3S2 BRN REJOP [REJECTED - OPERABLE. 7 =4?L #UNS CCERROR 4 =4R= ( 8 =5=W BRN REJO 4 =5QG ) 17 =6=6 BRN ZINOP [J. IF INOPERABLE. 15 =6PQ BRN PEROG [TIMED OUT 7 =79B LDX 2 3 20 =7P2 LDN 0 RCONF [SET LINK TO READ CONFIG. REPORT. 21 =88L CALL 5 ROUT1 [WAKE UP INPUT ACTIVITY & AWAIT REPLY 21 =8N= BRN VINOP [J. IF IT WENT INOPERABLE DURING READ 21 =97W BRN OFF [J. IF CONFIG. REPORT NOT FORTHCOMING 20 =9MG LDX 0 GSIGN [SET B0 IN LINK (SETS V ON EXIT). 9 ==76 ORS 0 AWORK3(2) 19 ==LQ IDFTPUPD XBI [PASS THE REPORT TO THE IDF 4 =?6B # 7 =?L2 #UNS CRAMP<1$1 19 =#5L OFF MHUNTW 3,AMXOR,IOUT [RELOCATE THE OUTPUT BUFFER. 6 =#K= #UNS CRAMP 4 =*4W ( 21 =*JG OFF LDX 0 AWORK4(2) [TEST FOR CLOSE DOWN SUPPRESSION FLAG 21 =B46 STOC 0 AWORK4(2) [LEAVING IT UNSET(NO INOPERABILITY) 20 =BHQ BCS NBACK [WAS SET : SKIP CLOSE DOWN & EXIT 19 =C3B MHUNTW 3,AMXOR,IOUT [RELOCATE THE OUTPUT BUFFER 4 =CH2 ) 20 =D2L LDX 5 SEGCLOSE(1) [SET UP THE CLOSE DOWN MESSAGE. 9 =DG= STO 5 A1+1(3) 13 =D_W LDN 4 #15 [MODE 15 =FFG LDN 5 2 [WORD COUNT 20 =F_6 CALL 6 PEROT [OUTPUT THE CLOSE DOWN MESSAGE. 7 =GDQ #UNS CCERROR 4 =GYB #SKI 17 =HD2 BRN REJOP [REJECTED - OPERABLE. 7 =HXL #UNS CCERROR 4 =JC= ( 8 =JWW BRN REJO 4 =KBG ) 17 =KW6 BRN ZINOP [J. IF INOPERABLE. 15 =L*Q BRN PEROG [TIMED OUT 18 =LTB CALL 6 UINOP [CLEAR DOWN THE IPBIN. 19 =M*2 STOZ CHAINADD(3) [UNSET ^WAKE ME UP^ MARKER. 7 =MSL #UNS CRAMP<1$1 9 =N#= ADX 1 AWORK3(2) 6 =NRW #UNS CRAMP 9 =P?G NBACK ADX 1 AWORK3(2) 7 =PR6 EXIT 1 0 4 =Q=Q # 8 =QQB UINOP SBN 3 A1 16 =R=2 UNLOCK 3 [OUTPUT BUFFER. 10 =RPL LDX 3 IPBRING(2) 9 =S9= SBN 3 IPBRING 20 =SNW LINKSET 3,PAIR4(1) [SET LINK IN IPBIN TO K5IPBSTART 18 =T8G HUNT2 1,AMXOR,INBF,3 [FREE THE INPUT BUFFER. 7 =TN6 FREECORE 1 16 =W7Q DERINGD IPBRING(2) [CLEAR THE RING. 18 =WMB EMPTY IPBRING(2) [RESET OUR RING ELEMENTS. 20 =X72 NGS 1 CHAINADD(3) [MARK IPBIN ASLEEP FOR BLANKET. 17 =XLL DISENGPER [DISENGAGE THE IPB. 7 =Y6= EXIT 6 0 4 =YKW # 16 =_5G ZINOP CALL 6 UINOP [RESET THE IPBIN. 6 =_K6 #UNS CRAMP 4 ?24Q ( 21 ?2JB VINOP LDCT 0 #400 [IF ^SUPPRESS CLOSE DOWN^ FLAG SET, 20 ?342 ANDX 0 AWORK4(2) [I.E. K9 ENTRY,UNSET ^WAKE ME UP^ 16 ?3HL ORS 0 CHAINADD(3) [MARKER IF SET 10 ?43= ERS 0 CHAINADD(3) 21 ?4GW LDX 4 ZJINOP(1) [REPORT UNIT HAS BECOME INOPERABLE 7 ?52G #UNS CCERROR 4 ?5G6 ( 7 ?5_Q LDN 0 1 9 ?6FB ANDX 0 IPBSW(3) 8 ?6_2 BNZ 0 NSY 20 ?7DL [ J IF ALREADY OUTPUT INOP MESSAGE 10 ?7Y= JANON CPPTR(3),NSY 9 ?8CW [J. UNIT IS ANONYMOUS 4 ?8XG ) 7 ?9C6 #UNS CRAMP<1$1 4 ?9WQ ( 8 ?=BB VINOP SMO FX1 16 ?=W2 LDX 4 ZJINOP [UNIT INOPERABLE 4 ??*L ) 8 ??T= CALL 5 OGE 19 ?##W LDN 0 1 [SET ^INOP MESS SENT^ FLAG 9 ?#SG ORS 0 IPBSW(3) 7 ?*#6 #UNS CCERROR 4 ?*RQ NSY 9 ?B?B ADX 1 AWORK3(2) 7 ?BR2 EXIT 1 0 4 ?C=L # 4 ?CQ= # 20 ?D9W # SUBROUTINE TO SET UP AN AMXOR/ADEVS BLOCK OF THE REQUIRED LENGTH 15 ?DPG # AND CHAIN IT AFTER THE AMOP/IPBIN ACTIVITY. 4 ?F96 # 16 ?FNQ NDEVS SBX 4 1 [RELATIVISE LINK. 11 ?G8B MHUNTW 1,IDF,IDENTIFIERS 10 ?GN2 LDX 5 ALOGLEN(1) 6 ?GNF ...#SKI G269&1 4 ?GNY ...( 17 ?GPC ... SBN 5 1 [ NO. OF IDENTIFIERS 16 ?GPW ... LDN 7 0 [ COUNT OF *LP'S 7 ?GQ* ...XCT1 SMO 5 8 ?GQS ... LDEX 0 A1(1) 15 ?GR? ... SBN 0 3 [ *LP IDENT. 8 ?GRQ ... BNZ 0 XCT2 7 ?GS9 ... ADN 7 2 8 ?GSN ...XCT2 BCT 5 XCT1 18 ?GT7 ...# NOW SET UP NEW BLOCK TYPE IUSER/BATCHC WITH A TWO-WORD 19 ?GTL ...# ... ENTRY FOR EACH REMOTE LP: IDENTIFIER,DEBATCHER WORD 11 ?GW5 ... SETUPCORE 7,2,IUSER,BATCHC 9 ?GWJ ... LDX 6 ZZZZ(1) 11 ?GX3 ... MHUNTW 1,IDF,IDENTIFIERS 10 ?GXG ... LDX 5 ALOGLEN(1) 7 ?GX_ ... SBN 5 1 7 ?GYD ...XSAT1 SMO 5 8 ?GYX ... LDEX 0 A1(1) 7 ?G_B ... SBN 0 3 8 ?G_T ... BNZ 0 XSAT2 7 ?H2# ... LDX 0 5 16 ?H2R ... ADX 0 A1(1) [ IDENTIFIER NO. 8 ?H3= ... STO 0 A1(2) 16 ?H3P ... STO 6 A1+1(2) [ INITIALIZE ZZZZ 7 ?H48 ... ADN 2 2 8 ?H4M ...XSAT2 BCT 5 XSAT1 18 ?H56 ... SBX 2 7 [ RESET TO START OF BLOCK 16 ?H5K ... LDX 5 ALOGLEN(1) [ REINSTATE X5 17 ?H64 ... CHAIN 2,3 [ ONTO IPBIN ACTIVITY 4 ?H6H ...) 7 ?H7L LDX 6 5 21 ?HM= SLL 5 2 [SET UP THE IDENTIFIER ROUTING BLOCK. 12 ?J6W SETXCORE 5,1,AMXOR,ADEVS,,6,4 19 ?JLG LDCT 5 #40 [SET THE ^TO BE SCANNED^ BIT. 16 ?K66 ADX 5 BIT9 [SET ^CLOSED^ BIT 7 ?KKQ LDX 2 1 20 ?L5B NGN 7 A1 [INITIALISE THE ROUTING BLOCK. 10 ?LK2 RESET STOZ A1+BPTR(2) 10 ?M4L STO 7 A1+BSTART(2) 11 ?MJ= STO 5 A1+FOURTHWD(2) 7 ?N3W ADN 2 4 7 ?NHG SBN 7 4 8 ?P36 BCT 6 RESET 11 ?PGQ MHUNTW 2,IDF,IDENTIFIERS 8 ?Q2B LDX 0 A1(2) 20 ?QG2 STO 0 A1+FOURTHWD(1) [STORE LOWEST IDENTIFIER NO.-1 20 ?Q_L CHAIN 1,3 [CHAIN AFTER THE INPUT ACTIVITY. 7 ?RF= SMO 4 16 ?RYW EXIT 1 0 [EXIT TO LINK. 4 ?SDG # 4 ?SY6 # 6 ?TCQ SK2IPBSTART 21 ?TXB LDN 5 0 [SET SWITCH - CONFIG. REPORT REQUIRED 8 ?WC2 BRN SWICH 4 ?WWL # 4 ?XB= # 6 ?XTW SK3IPBSTART 21 ?Y*G LDN 5 1 [SET SWITCH - ASK OPERATOR ABOUT CONF 5 ?YT6 SWICH 7 ?_#Q #UNS CCERROR 4 ?_SB ( 11 #2#2 HUNT2OPT 3,AMOP,AJOURN,2 9 #2RL BPZ 3 XJOURN 10 #3?= GETACT AMOP,AJOURN,1 9 #3QW LDX 3 BPTR(2) 9 #4=G STOZ IPBSW(3) 10 #4Q6 LINKSET 3,PAIR8(1) 5 #59Q XJOURN 4 #5PB ) 10 #692 STOZ AWORK4(2) 7 #6NL LDN 6 3 17 #78= CALL 7 XSETIOUT [SET UP OUTPUT BUFFER 7 #7MW LDX 7 5 10 #87G LDN 3 IPBADDR-IPBL 8 #8M6 SMO FX2 9 #96Q STO 3 AWORK1 8 #9LB BRN NEXT1 19 #=62 NEXT0 MHUNTW 2,AMXOR,IOUT [RELOCATE THE OUTPUT BUFFER. 19 #=KL NEXT1 LDX 1 FX1 [SET UP ^INITIALISE^ MESSAGE 10 #?5= LDN 4 SEGINIT(1) 8 #?JW LDN 5 A1(2) 7 ##4G MOVE 4 3 8 ##J6 LDX 2 FX2 9 #*3Q NEXT2 SMO AWORK1(2) 18 #*HB LDX 3 IPBL [GET NEXT IPB ACTIVITY. 16 #B32 BZE 3 OUT [J. OUT IF NONE. 18 #BGL STO 3 AWORK1(2) [REMEMBER FOR NEXT PASS. 11 #C2= JWRONG CPPTR(3),NEXT2 18 #CFW JV7900 CPPTR(3),NEXT2 [IGNORE VIRTUAL 7900'S 21 #C_G [AS THE IDF ALREADY KNOWS THEIR CONF. 18 #DF6 JSWOUT CPPTR(3),NEXT2 [J. UNIT IS SWITCHED OUT 20 #DYQ LDX 0 CPPTR(3) [SET UP THE DEVICE LIST POINTER 17 #FDB STO 0 CPPTR(2) [IN THE EMS ACTIVITY. 17 #FY2 CALL 4 START [INITIALISE THE DCP. 8 #GCL BRN TNOPL 9 #GX= LDX 0 IPBSW(3) 8 #HBW ANDX 0 BIT10 16 #HWG BNZ 0 XOPUN [J. NOT IN IDF 20 #JB6 BZE 7 WASK2 [J. IF CONFIG. REPORT MANDATORY. 8 #JTQ REPQN SMO FX1 21 #K*B LDX 4 ZJCONFIG [IS A CONFIGURATION REPORT REQUIRED 8 #KT2 CALL 5 OGE 7 #L#L #SKI EMSJNL<1$1 4 #LS= ( 8 #M?W FON #50 18 #MRG COOR3 #53 [WAIT FOR END OF TRANSFER 4 #N?6 ) 6 #NQQ CONIN 20 #P=B HUNTW 2,CONBUFF,EMSIN [IS THERE A REPLY MESSAGE BLOCK. 18 #PQ2 LDX 1 2 [SAVE ADDRESS OF BLOCK. 16 #Q9L LDX 0 A1(2) [CHARACTER COUNT. 17 #QP= NXTCH LDCH 5 A1+1(2) [GET NEXT CHARACTER 8 #R8W SBN 5 #20 19 #RNG BNZ 5 TESTN [J. IF NOT SPACE CHARACTER 16 #S86 BCHX 2 / [STEP POINTER. 18 #SMQ BCT 0 NXTCH [J. IF MORE CHARACTERS. 18 #T7B FREECORE 1 [FREE THE MESSAGE BLOCK. 21 #TM2 BRN REPQN [REPEAT QUERY IF MESSAGE ALL SPACES. 18 #W6L TESTN FREECORE 1 [FREE THE MESSAGE BLOCK. 9 #WL= SBN 5 #56-#20 16 #X5W BZE 5 NOUPD [J. IF REPLY ^N^ 9 #XKG SBN 5 #71-#56 20 #Y56 BNZ 5 REPQN [J. TO REPEAT IF REPLY NOT ^Y^ 20 #YJQ YMOPOFF XBI,WASK2 [MOP UNIT OFF ; MESSAGE IF WAS ON 7 #_4B OUTBLOCN 4 19 #_J2 LDN 4 0 [VALUE OF 'OFF' SUBMESSAGE 10 *23L OUTPACK 4,1,SWITCH 17 *2H= LDX 4 ZJMOP3(1) [MOP OFF COMPLETED 8 *32W CALL 5 OGE 20 *3GG WASK2 CALL 6 UPDAT [GET THE CONFIGURATION REPORT. 8 *426 LDX 1 FX1 7 *4FQ LDN 0 0 19 *4_B ADSC 0 CHAINADD(3) [IN CASE INOP DURING UPDAT 19 *5F2 BVSR NEXT0 [J. IF EVERYTHING WENT OK. 16 *5YL LDX 4 ZJUPFAIL(1) [UPDATE FAILED 8 *6D= CALL 5 OGE 8 *6XW BRN NEXT0 4 *7CG [ 20 *7X6 [ AN IPB UNIT WITH BIT 10 SET HAS BECOME OPERABLE SO INFORMATION 16 *8BQ [ ABOUT THE UNIT MUST BE INSERTED INTO THE IDF 4 *8WB [ 5 *9B2 XOPUN 9 *9TL DOWN IDFCHK,4 4 *=*= # 5 *=SW TNOPL 9 *?#G LDX 0 IPBSW(3) 8 *?S6 ANDX 0 BIT10 21 *#?Q BNZ 0 NEXT2 [BIT 10 IN IPBSW INDICATES UNIT NOT 20 *#RB [DEFINED IN THE IDF BECAUSE ANON 9 **?2 CALL 7 XIDFSCN 8 **QL BRN TOFF 8 *B== LDX 5 CACT 9 *BPW LDX 3 FPTR(2) 7 *C9G SBN 5 1 9 *CP6 SFRE TXL 5 ATYPE(3) 8 *D8Q BCS NEXT2 9 *DNB LDCH 0 ATYPE(3) 9 *F82 SBN 0 IDF/64 9 *FML LDX 3 FPTR(3) 8 *G7= BNZ 0 SFRE 17 *GLW FREECORE BPTR(3) [SURPLUS IDF BLOCK 8 *H6G BRN SFRE 7 *HL6 TOFF LDN 0 0 21 *J5Q ADSC 0 CHAINADD(3) [MOPPED OFF : IGNORE ENGAGE BUTTONS 8 *JKB BRN NEXT2 4 *K52 # 17 *KJL NOMOP CALL 6 SHUT [CLOSE DOWN THE DCP. 8 *L4= LDX 1 FX1 17 *LHW BRN NEXT0 [J. FOR NEXT UNIT. 4 *M3G # 5 *MH6 NOUPD 9 *N2Q CALL 7 XIDFSCN 8 *NGB BRN NOMOP 17 *P22 CALL 7 XGETACT [GET SCANNING ACTIVITY 9 *PFL LDX 7 CPPTR(2) 9 *P_= LDX 2 BPTR(2) 18 *QDW LINKSET 2,PAIR2(1) [SET LINK TO K1IPBSCAN 19 *QYG STO 7 CPPTR(2) [ADDRESS OF IPB DEVICE LIST. 19 *RD6 LINKSET 3,PAIR3(1) [SET IPBIN'S LINK TO K1IPBIN 18 *RXQ STO 3 ACC3(2) [SAVE ADDRESS OF IPBIN. 21 *SCB FWAIT #54 [SET WAITING FOR THE END OF E.M.S. 21 *SX2 LDX 2 3 [SET IPBIN WAITING FOR THE END OF EMS 8 *TBL FWAIT #54 19 *TW= CALL 4 NDEVS [SET UP THE ROUTING BLOCK. 6 *W*W #SKI ICT 21 *WTG FON ADEVLIN [START ACTIVITIES WAITING FOR ADEVS 19 *X*6 LDX 1 2 [PASS THE IDF INFO. BLOCKS TO 18 *XSQ NXTS LDX 1 FPTR(1) [THE SCANNING ACTIVITY. 9 *Y#B LDCH 0 ATYPE(1) 9 *YS2 SBN 0 IDF/64 19 *_?L BNZ 0 NIDF [J. IF NOT IDF TYPE BLOCK. 20 *_R= LDX 2 1 [OTHERWISE REMEMBER THE ADDRESS. 11 B2=W NIDF SBN 0 GENERAL-IDF/64 18 B2QG BNG 0 NXTS [J. IF NOT ACTIVITY TYPE. 20 B3=6 CHAIN FX2,2 [RECHAIN THE CURRENT ACTIVITY. 21 B3PQ DERINGD IPBRING(2) [DISCONNECT AMOP FROM EMS ACTIVITY 16 B49B BRN NEXT0 [J. FOR NEXT UNIT 4 B4P2 # 4 B58L # 18 B5N= OUT MFREEW AMXOR,IOUT [FREE THE OUTPUT BUFFER. 21 B67W STOZ CPPTR(2) [CLEAR OUT THE DEVICE LIST POINTER. 16 B6MG UP [RETURN TO SETUP. 17 B776 XBI GEOERR 1,BREAKIN! [CANT HAVE BREAK-IN 11 B7LQ MENDAREA 50,K99IPBSTART 4 B86B #END 6 ____ ...441614210005