(George Source)
Macros used: BXGE, BXL, BXU, CHECKA, CHECKB, CHECKEXT, CLEAR, FADDRESS, FOUTMOVE, FREECORE, ILLEGALX, LINK, MACCS, MENDAREA, MHUNTW, OLPFIN1, PMODES, RINGTWO, SEGENTRY, SETNCORE, TICKLE, TOPCA1, TRACE, UNPLUG, UP
2278 ...#SKI G3 22#B ...( 22FL #SEG CONMXB [JOHN BAILEY. 22S3 ...#OPT K0CONMXB=0 236D ...#LIS K0CONMXB>K0CONMX>K0MULTIPLX>K0ALLGEO 23DW 8HCONMXB80 23YG # 24D6 # THIS SEGMENT IS ENTERED FROM CONMXC60 AND SERVICES PERI 24XQ # INSTRUCTIONS ISSUED BY AN OBJECT PROGRAM TO LINE ZERO OR NON 25CB # ATTACHED LINES OF A CONCEPTUAL MPX OR UPX AS PERIS TO INOPERABLE 25X2 # LINES 26BL # 26W= # 27*W SEGENTRY K1CONMXB,X1CONMXB 27TG # 28*6 # 28SQ RMASK #60077777 29#B RECCON +CONRECLEN 29S2 PJYNOCA +JYNOCA [CONTROL AREA OUT OF RESERVATIONS 2=?L PJYRESVIOL +JYRESVIOL [RESERVATION VIOLATION 2=R= PJYCOUNT +JYCOUNT [COUNT OUT RANGE 2?=W PJYMODE +JYMODE [MODE IN ERROR 2?QG PAIR1 LINK CONMXC,1 [ENTRY POINT FOR ILLEGAL ROUTINES 2#=6 # 2#PQ SUFR STO 0 ACOMMUNE9(2) 2*9B LDX 2 APETADDR(2) 2*P2 FADDRESS 2,1,HLOCK2 2B8L LDX 2 FX2 2BN= LDX 0 ACOMMUNE9(2) 2C7W EXIT 0 0 2CMG # 2D76 # SUBROUTINE NAFLC FINDS THE CORRESPONDING FLAGCOUNT IN OLPA,PUTS IT 2DLQ # IN X4 AND IN X3 IS PUT THE CHARACTER/WORD MODIFIER 2F6B # 2FL2 # 2G5L NAFLC LDX 3 AWORK3(2) [CONCEPTUAL LINE NO. 2GK= SRC 3 2 2H4W SMO 2 2HJG LDCH 4 FLAGCT(3) 2J46 EXIT 0 0 2JHQ # 2K3B # 2KH2 # SUBROUTINE NFLWR CREATES THE PATTERN FOR SETTING/UNSETTING THE 2L2L # FLAG IN FLAG AREA IN X4 AND THE WORD MODIFIER IN X3 2LG= # 2L^W NFLWR LDX 3 AWORK3(2) [LINE NO. 2MFG BNZ 3 REGO 2M^6 LDCT 4 #200 2NDQ LDX 5 CMAXLINE(2) [UPX OR MPX 2NYB BZE 5 (0) [UPX - NON ATTACHED 2PD2 LDX 4 GSIGN 2PXL EXIT 0 0 2QC= REGO SRC 3 4 2QWW LDCH 5 3 2RBG ANDX 3 HALFTOP 2RW6 SLC 3 4 2S*Q LDCT 4 #400 2STB SRL 4 0(3) [CREATE THE PATTERN 2T*2 LDX 3 5 [LOAD THE WORD MODIFIER 2TSL EXIT 0 0 2W#= # 2WRW # 2X?G # 2XR6 # SUBROUTINE SETS FLAGS.THE NUMBER OF FLAGS,BY WHICH IS THE FLAGCOUNT 2Y=Q # TO BE INCREASED,IS EXPECTED IN X5 2YQB SUB3 STO 0 AWORK1(2) 2^=2 CALL 0 NAFLC 2^PL ADX 4 5 329= SMO 2 32NW DCH 4 FLAGCT(3) 338G SBX 4 5 33N6 BZE 4 MFNOS 347Q ZORKA LDX 0 AWORK1(2) 34MB EXIT 0 0 3572 MFNOS CALL 0 NFLWR 35LL LDX 1 CFLAG(2) 366= ADX 1 3 36KW CALL 0 SUFR 375G ORS 4 0(1) 37K6 LDX 4 CMEMBER(2) [PROGRAM MEMBER NUMBER 384Q TICKLE JOBNO(2),4 38JB BRN ZORKA 3942 # 39HL # THIS SUBROUTINE CHECKS WHETHER 22AM OR 15 AM 3=3= RMODE LDX 7 APETADDR(2) 3=GW LDX 2 EVENT1(2) 3?2G PMODES 2,7 3?G6 ANDN 2 #10 3?^Q BNZ 2 REXMO 3#FB LDX 1 FX1 3#^2 ANDX 5 RMASK(1) 3*DL REXMO LDX 2 FX2 3*Y= EXIT 0 0 3BCW # 3BXG # SUBROUTINE CHECKS RESV RESV.VIOLATION AND CALCULATES 3CC6 # GE0,ADDRESS OF REPLY WORD FO- NULL LINES AND LINE ZERO ROUTINE 3CWQ SUB5 CHECKB 5,,RESV3,APETADDR(2),,RGER1 3DBB EXIT 4 0 3DW2 SUB6 ADX 1 APETADDR(2) 3F*L FADDRESS 1,5 3FT= EXIT 4 0 3G#W # 3GSG SUB7 LDX 4 6 3H#6 ANDN 4 2 3HRQ BZE 4 RDOP 3J?B CALL 0 NAFLC 3JR2 BZE 4 RDOP 3K=L LDN 4 0 3KQ= SMO 2 3L9W DCH 4 FLAGCT(3) 3LPG CALL 0 NFLWR 3M96 LDX 1 CFLAG(2) 3MNQ ADX 1 3 [CLEAR THE BIT IN FLAGWORD 3N8B CALL 0 SUFR 3NN2 ERS 4 0(1) 3P7L RDOP EXIT 7 0 3PM= # THIS SUBROUTINE MOVES NUMBER OF WORDS DEFINED IN X7 FROM AREA DEFINED 3Q6W # IN X4(RELATIVE TO OBJECT PROG.) TO AREA DEFINED IN X5 (IN GEORGE) 3QLG SUB9 STO 0 ACOMMUNE9(2) 3R66 SMO APETADDR(2) 3RKQ LDN 1 HLOCK1 3S5B FOUTMOVE 1,4,5,7 3SK2 LDX 0 ACOMMUNE9(2) 3T4L EXIT 0 0 3TJ= # THIS SUBROUTINE SETS THE AMXOR/CONAR BLOCK AND RINGS IT WITH THE 3W3W # CORRESPONDING ENTRANT IN THE AMXOR/CONLCB BLOCK 3WHG # 3X36 SUB11 SBX 7 FX1 3XGQ SETNCORE 9,3,AMXOR,CONAR,,1 3Y2B ADN 3 A1 3YG2 STO 3 AWORK4(2) 3Y^L LDX 0 CMAXLINE(2) [IS IT UPX OR MPX 3^F= BNZ 0 RM [MPX 3^YW STOZ 2 42DG BRN RX [UPX 42Y6 RM LDX 2 EVENT3(2) [CONC.LINE NO 43CQ SRL 2 6 43XB RX MHUNTW 3,AMXOR,CONLCB 44C2 LDX 1 FX1 44WL MPA 2 RECCON(1) [CALCULATE THE ENTRANT ADDRESS 45B= LDX 2 FX2 45TW LDX 1 AWORK4(2) [ADDRESS OF AMXOR/CONAR 46*G RINGTWO 0(1),A1(3) 46T6 ADX 7 FX1 47#Q EXIT 7 0 47SB # 48#2 SREWO SLC 6 1 [SET EITHER B4 AND B5,OR B4 ONLY 48RL RSEW BNG 6 RMAJ 49?= LDCT 4 #30 49QW EXIT 0 0 4==G RMAJ LDCT 4 #20 4=Q6 EXIT 0 0 4?9Q # 4?PB OUTAC LDX 2 FX2 4#92 MACCS ,APETADDR(2),3 4#NL LDCT 0 #400 4*8= STO 0 9(3) 4*MW BRN MOLFI 4B7G OUTRE LDX 2 FX2 4BM6 MACCS ,APETADDR(2),3 4C6Q STOZ 9(3) 4CLB MOLFI 4D62 #SKI K6CONMX>99-99 4DKL TRACE 9(3),WOKEN UP 4F5= LDX 1 FX1 4FJW OLPFIN1 PAIR1(1) 4G4G # 4GJ6 # 4H3Q RESV2 LDX 1 FX1 4HHB LDX 5 PJYNOCA(1) 4J32 BRN MCURD 4JGL RESV3 LDX 1 FX1 4K2= LDX 5 PJYRESVIOL(1) 4KFW BRN MCURD 4K^G MCOWR LDX 1 FX1 4LF6 LDX 5 PJYCOUNT(1) 4LYQ BRN MCURD 4MDB MODIL LDX 5 PJYMODE(1) 4MY2 MCURD LDX 2 FX2 4NCL MACCS ,APETADDR(2),3 4NX= STOZ 9(3) 4PBW TOPCA1 PAIR1(1) 4PWG UNPLUG 4QB6 ILLEGALX 5 4QTQ # 4R*B # [ENTRY FOR ALL SUBSEQUENT PERIS. 4RT2 # 4S#L # IN EVENT 2 IN OLPA IS THE ADDRESS OF CA RELATIVE TO OP DATUM 4SS= # IN EVENT 3 IN OLPA IS THE LINE NO. 4T?W # IN APETADDR IN OLPA IS THE ADDRESS OF PCA 4TRG # 4W?6 # IN AWORK1 IS PERI MODE 4WQQ # IN AWORK2 IS THE DISTANCE OF THE ENTRANT FROM THE BEGINNING OF 4X=B # THE CONLCB BLOCK 4XQ2 # IN EVENT3 IS CONCEPTUAL LINE NO 4Y9L # 4YP= # 4^8W # 4^NG # 5286 X1CONMXB 52MQ # 537B MHUNTW 3,AMXOR,CONLCB [DEFINE GEO.ADDR.OF THE ENTRANT 53M2 ADS 3 AWORK2(2) [IN CONLCB 546L #SKI K6CONMX>99-99 54L= ( 555W TRACE EVENT3(2),COLINO 55KG TRACE AWORK1(2),MODE 5656 TRACE AWORK2(2),ENADR 56JQ ) 574B # 57J2 # TYPE/MODE WORD IS CHECKED-IF MODE #2000 ONLY -B20 SET 583L # -IF MODE #2000 WITH OTHER MODES -B21 SET 58H= # -IF MODE #2000 TOGETHER WITH #10 MODE - 592W # ERROR IN MODE DISPLAYED AND PERI REJECTED 59GG # 5=26 VUBLI LDX 5 AWORK1(2) [MODE WORD 5=FQ LDX 4 5 [CHECK IF BITS 14,15,16,17 SET 5=^B ANDN 4 #1700 5?F2 BNZ 4 MODIL 5?YL LDN 4 #2000 5#D= BXU 5 4,NEDVO [IF MODE #2000 ONLY SET BIT 20 5#XW ORN 6 #10 5*CG BRN NODUT 5*X6 NEDVO ANDX 4 5 5BBQ BZE 4 NEKAM [J IF NOT MODE #2000 AT ALL 5BWB ANDN 5 #10 5CB2 BNZ 5 MODIL [IF MODE #10 PRESENT,GO ILLEGAL 5CTL ORN 6 4 [IN OTHER CASE SET B21 5D*= NODUT CALL 0 NAFLC [FLAGCOUNT INTO X4 5DSW BZE 4 MODIL [MODIFIER INTO X3 5F#G SBN 4 1 5FS6 SMO 2 [UNSET IN FLAGCOUNT ONE FLAG 5G?Q DCH 4 FLAGCT(3) 5GRB BZE 4 TYNA 5H?2 LDX 4 CMEMBER(2) 5HQL TICKLE JOBNO(2),4 5J== BRN TONCA 5JPW TYNA [FLAG PATTERN INTO X4, MODIFIER INTO 5K9G CALL 0 NFLWR [X3 5KP6 LDX 1 CFLAG(2) [RELATIVE ADDRESS OF F.A AND REL.ADDR 5L8Q ADX 1 3 [OF THE CORRESPONDING WORD IN IT 5LNB CALL 0 SUFR 5M82 ERS 4 0(1) [SET THE FLAG 5MML TONCA LDX 4 6 [IF MODE #2000 ONLY ACCEPTED 5N7= ANDN 4 #10 [AND WAKE THE PROGRAM 5NLW BZE 4 NEKAM 5P6G LDX 5 EVENT2(2) [RELATIVE ADDRESS OF CA 5PL6 ADN 5 1 [DEFINE REL.ADDRESS OF CA2 5Q5Q LDN 1 HLOCK1 5QKB CALL 4 SUB6 [CONVERT TO GEO ADDR 5R52 SMO 5 5RJL LDX 5 0 5S4= CALL 0 RMODE [CHECK MODE 5SHW CALL 4 SUB5 [CHECK WHETHER R.W.WITHIN RESERVATION 5T3G BRN OUTAC 5TH6 # 5W2Q # THIS SUBROUTINE ANALYSES MODES LE OR EQ #63 5WGB # 5X22 # 5XFL # 5X^= NEKAM LDX 3 AWORK2(2) [ADDRESS OF CONLCB INTO X3 5YDW LDX 4 AWORK1(2) [MODE 5YYG ANDN 4 7 5^D6 SBN 4 3 5^XQ BZE 4 RCHE 62CB SBN 4 3 62X2 BNZ 4 ROKO [IF DOUBLE TRANSFER CHECK 63BL RCHE LDN 5 7 [WHETHER THE WHOLE(7 WORDS) IN 63W= CHECKEXT EVENT2(2),5,RESV2,APETADDR(2),RGER1,HLOCK1 64*W ORN 6 1 [RESERVATIONS AND SET B23 IN X6 64TG ROKO LDX 4 AWORK1(2) 65*6 ANDN 4 #77 [MASK LAST SIX BITS 65SQ LDN 5 #30 [IF MODE LE #30 J 66#B BXL 4 5,MODNI 66S2 # 67?L LDN 5 #40 [IF MODE GE OR EQ #40 J 67R= BXGE 4 5,MODVY 68=W BRN MODIL [IN ANY OTHER CASE ERROR IN MODE 68QG # 69=6 # 69PQ # 6=9B MODVY SRC 4 5 [IF B19 SET J MOD60 6=P2 BNG 4 MOD60 6?8L # 6?N= SLC 4 1 6#7W BNG 4 MOD50 [IF B20 SET J MOD50 6#MG # 6*76 SLC 4 4 6*LQ ERN 4 #42 [MODE #42 ? 6B6B BNZ 4 MOD43 6BL2 BRN M2VPO 6C5L [ 6CK= MOD43 ERN 4 1 [MODE #43? 6D4W BNZ 4 MODIL [IF NOT GO ILLEGAL 6DJG [ 6F46 ORN 6 1 [SET B23 IN X6 -DOUBLE TRANSFER 6FHQ BRN MFPIS 6G3B MOD60 SLC 4 5 6GH2 ERN 4 #62 [MODE #62? 6H2L BNZ 4 MOD66 6HG= BRN MVP22 6H^W [ 6JFG MOD66 ERN 4 4 [MODE #66? 6J^6 BNZ 4 MODIL 6KDQ ORN 6 1 [SET B23 IN X6 -DOUBLE TRANSFR 6KYB [ 6LD2 BRN M2VPO 6LXL [ 6MC= MOD50 SLC 4 4 6MWW ERN 4 #53 [MODE #53? 6NBG BNZ 4 MODIL 6NW6 ORN 6 3 [SET B23 IN X6-DOUBLE TRANSFER AND 6P*Q [B22 IN X6 MODE#10 6PTB BRN MFPIS 6Q*2 MODNI SRC 4 5 [B19 SET,MOD #20 ? 6QSL BPZ 4 MOMAL 6R#= SLC 4 2 [B21 SET ? 6RRW BNG 4 MOD26 6S?G SLC 4 3 6SR6 ERN 4 #22 [MODE #22 ? 6T=Q BNZ 4 MOD23 6TQB BRN MVP22 6W=2 [ 6WPL MOD23 ERN 4 3 [IF NOT MODE #21 MODE ILLEGAL 6X9= BNZ 4 MODIL 6XNW BRN MFPIS 6Y8G [ 6YN6 MOD26 SLC 4 3 6^7Q ERN 4 #26 [IF MODE #26 SET BIT 23 IN X6-DOUBLE 6^MB BNZ 4 MODIL [TRANSFER,OTHERVISE MODE ILLEGAL 7272 [ 72LL ORN 6 1 736= BRN M2VPO 73KW MOMAL SLC 4 1 [IF BIT 20 IN X4 NOT SET J MODJE 745G BPZ 4 MODJE 74K6 [ 754Q SLC 4 4 75JB ERN 4 #11 [MODE #11 ? 7642 BNZ 4 MOD13 76HL ORN 6 2 [SET B22 IN X6 -MODE #10 773= BRN MFPIS 77GW [ 782G MOD13 ERN 4 2 [IF ALSO NOT MODE #13,MODE ILLEGAL 78G6 BNZ 4 MODIL 78^Q ORN 6 3 [SET B23 IN X6-DOUBLE TRANSFER AND 79FB BRN MFPIS 79^2 [ 7=DL MODJE SLC 4 1 [IF B21 NOT SET J M123 7=Y= BPZ 4 M123 7?CW [ 7?XG SLC 4 3 [MODE#4 ? 7#C6 ERN 4 4 7#WQ BNZ 4 MODIL 7*BB BRN MFOUR 7*W2 [ 7B*L M123 SLC 4 3 [MODE #3 7BT= SBN 4 2 7C#W BNG 4 MFPIS 7CSG BZE 4 M2VPO 7D#6 [ 7DRQ MOD3 ORN 6 1 [SET B23 IN X6 DOUBLE TRANSFER 7F?B BRN MFPIS 7FR2 MOD1 BRN MFPIS 7G=L # 7GQ= # 7H9W # 7HPG # 7J96 # 7JNQ # THIS ROUTINE SERVICES FOR LINE ZERO AND NULL LINES MODES #22,#62 7K8B # 7KN2 MVP22 SLC 6 1 [IF NON ATTACHED LINE J ELSE LINE 7L7L BNG 6 SNUL2 [ZERO.CHECK 7LM= LDX 4 ADDMOP(3) [THEN WHETHER IN ADDMOP ADDRESS OF 7M6W BZE 4 OUTRE [THE 1ST REPLY WORD OR ZERO 7MLG LDX 4 ADDMOP+1(3) 7N66 BNZ 4 OUTRE 7NKQ STOZ 5 [PUT ADDRESS OF 1ST REPLY WORD INTO 7P5B ADN 3 1 [ADDMOP+1 7PK2 BRN ZIVOC 7Q4L # 7QJ= SNUL2 SRL 6 1 [UNLESS PERI HAS BEEN SENT TO THIS 7R3W LDX 1 BPTR(3) [LINE REJECT ELSE J 7RHG BZE 1 OUTRE 7S36 LDX 4 2(1) [TYPE/MODE WORD FROM AMXOR/CONAR 7SGQ ANDN 4 #77 [MASK LAST CHARACTER 7T2B SBN 4 2 [IS IT MODE #2 7TG2 BNZ 4 RABRA [IF NOT J ELSE CHANGE THE MODE IN THE 7T^L RKUN LDX 5 AWORK1(2) [THE CA EITHER TO #66 IF THE NEXT 7WF= ANDN 5 #40 [PERI MODE IS #62 OR TO #26 MODE IF 7WYW BZE 5 RTELE [THE NEXT PERI MODE IS #22 7XDG LDN 4 #64 7XY6 RHUSA ADS 4 2(1) 7YCQ BRN ROSEL 7YXB RTELE LDN 4 #24 7^C2 BRN RHUSA 7^WL RABRA SBN 4 #40 [IF THE MODE IS NOT #42 REJECT,ELSE 82B= BNZ 4 OUTRE [CHANGE THE MODE IN CA IN ANY CASE 82TW BRN RTELE [TO #66 83*G ROSEL LDX 4 EVENT2(2) [ADDRESS OF OP CA 83T6 ADN 4 1 [ADDRESS OF CA2 84#Q LDN 7 3 [NO OF WORDS TO BE TRANSFERRED TO 84SB LDN 5 6(1) [AREA IN AMXOR/CONAR FROM OP CA 85#2 ADN 1 3 [MODIFIER 85RL STO 1 AWORK4(2) 86?= CALL 0 SUB9 [MOVE DEFINED AREA 86QW STOZ 6 87=G BRN RJEON 87Q6 # 889Q # THIS ROUTINE SERVICES FOR LINE ZERO AND NULL LINES MODES #2,#42 88PB # #26 #66 8992 # 89NL M2VPO SLC 6 1 8=8= BNG 6 RNUL1 [IF NON ATTACHED LINE J ELSE 8=MW LDX 4 ADDMOP(3) [FOR LINE ZERO THE CONTENT OF ADDMOP 8?7G BNZ 4 OUTRE 8?M6 STOZ 5 8#6Q ZIVOC ADX 5 EVENT2(2) [RELATIVE ADDRESS OF 3A 8#LB ADN 5 1 [DEFINE REL'ADDR'OF CA2 OR CA5 8*62 LDN 1 HLOCK1 8*KL CALL 4 SUB6 [GEO ADDR.OF CA2 OR CA5 8B5= SMO 5 8BJW LDX 5 0 [REL'ADDR'OF 1ST/2ND REPLY WORD 8C4G CALL 0 RMODE [CHECK MODE 8CJ6 CALL 4 SUB5 [CHECK RESV'VIOL 8D3Q STO 5 ADDMOP(3) [STORE REL ADDR'OF CA2 OR CA5 INT0 8DHB LDN 1 HLOCK3 [ADDMOP OR ACTUAL IN CONLCB 8F32 CALL 4 SUB6 [CONVERT TO GEO.ADDR. 8FGL LDX 1 5 8G2= NGS 3 0(1) [SET 1ST OR 2ND REPLY WORD NEG 8GFW ANDN 6 2 [CHECK WHETHER DOUBLE TRANSFER 8G^G BZE 6 OUTAC 8HF6 #SKI G4 8HYQ CLEAR APETADDR(2),0,HLOCK3 8JDB LDN 5 3 8JY2 ADN 3 1 8KCL STOZ 6 8KX= BRN ZIVOC 8LBW # 8LWG RNUL1 SRC 6 1 8MB6 LDX 4 BPTR(3) [NULL LINE - PERI SENT TO 8MTQ BNZ 4 OUTRE [IT - IF YES REJECT THE PERI 8N*B CALL 7 SUB11 [SUBROUTINE SETS AMXOR/CONAR AND 8NT2 [RINGS IT TO CONLCB ENTRANT 8P#L LDX 4 EVENT2(2) [ADDRESS OF THE OP CA 8PS= LDN 5 2(1) [CA IN AMXOR/CONAR 8Q?W LDX 7 6 [CHECK WHETHER SINGLE OR DOUBLE 8QRG ANDN 7 1 [TRANSFER 8R?6 BZE 7 SITRA 8RQQ LDN 7 3 8S=B SITRA ADN 7 4 [MOVE THE CA FROM OP INTO AMXOR/CONAR 8SQ2 CALL 0 SUB9 [BLOCK 8T9L RJEON SMO AWORK4(2) [ADDRESS OF THE 1ST REPLY WORD FROM 8TP= LDX 5 3 [THE AMXOR/CONAR BLOCK 8W8W CALL 0 RMODE [CHECK MODE 8WNG CALL 4 SUB5 [CHECK RESV.VIOLATION 8X86 LDN 1 HLOCK3 8XMQ CALL 4 SUB6 [CALCULATE GEO.ADDR OF 1ST/2ND R.W. 8Y7B STO 5 AWORK3(2) 8YM2 SMO AWORK4(2) 8^6L LDX 4 4 [CHECK NO OF CHARS TO BE TRANSFERRED 8^L= BZE 4 MCOWR [ERROR IF ZERO 925W LDX 5 4 [IF LESS OR EQ TO MAX OK 92KG ... SBX 5 BIT11 9356 BPZ 5 MCOWR 93JQ SMO AWORK4(2) 944B LDX 5 5 [CHECK THE BUFFER ADDRESS MODE 94J2 CALL 0 RMODE 953L #SKI G3 95H= ( 962W LDX 7 5 [CALCULATE THE BUFFER SIZE IN WORDS 96GG SLC 7 2 9726 ADN 4 3 [CHECK WHETHER THE 1ST/2ND WORD 97FQ ANDN 7 3 [WHITHIN RESERVATION 97^B ADX 4 7 98F2 SRL 4 2 98YL CHECKA 5,4,RESV3,APETADDR(2),,RGER1 99D= ) 99XW SMO AWORK3(2) 9=CG NGS 3 0 9=X6 ANDN 6 1 9?BQ BZE 6 OUTAC [IF DOUBLE TRANSFER DO THE SAME 9?WB LDN 4 3 9#B2 ADS 4 AWORK4(2) 9#TL STOZ 6 9**= #SKI G4 9*SW CLEAR APETADDR(2),0,HLOCK3 9B#G BRN RJEON 9BS6 # 9C?Q [THIS ROUTINE SERVICES ALL WRITING MODES 9CRB MFPIS LDX 4 ADDMOP(3) [EITHER THE ADDRESS OF THE 1ST REPLY 9D?2 BNZ 4 OUTRE [WORD OR ZERO 9DQL LDX 4 BPTR(3) [HAS BEEN SENT ALREADY A PERI TO THIS 9F== BNZ 4 OUTRE [LINE? IF YES REJECT ELSE 9FPW ADN 3 1 9G9G STO 3 AWORK4(2) [POINTER TO ADDMOP+1 9GP6 CALL 7 SUB7 [CALL SUB7 WHICH CHECKS THE PRESENCE 9H8Q [OF MODE #10 9HNB LDX 5 EVENT2(2) 9J82 ADN 5 1 9JCS ...MIN3 [RETURN HERE TO SET 2ND REP WD INOP F 9JML LDN 1 HLOCK1 9K7= CALL 4 SUB6 9KLW SMO 5 9L6G LDX 5 0 9LL6 CALL 0 RMODE 9M5Q CALL 4 SUB5 9MKB LDN 1 HLOCK3 9N52 CALL 4 SUB6 9NJL LDX 1 5 9P4= CALL 0 SREWO [1ST REPLY WORD 9PHW STO 4 0(1) 9Q3G LDN 5 1 [NO OF FLAGS 9QH6 CALL 0 SUB3 [CALL THE FLAGSETTING ROUTINE 9R2Q LDX 4 6 [CHECK WHETHER DOUBLE TRANSFER 9RGB ANDN 4 2 9S22 BZE 4 OUTAC 9SFL LDN 1 4 [CHECK ADDRESS MODE OF 2ND REP.WORD, 9S^= ... BNG 6 ZIN3 [IF NULL LINE J ELSE LINE ZERO AND 9TDW LDN 5 3 9TYG STOZ 6 9WD6 LDX 2 FX2 9WXQ LDX 3 AWORK4(2) 9XCB BRN ZIVOC 9XF5 ...ZIN3 [2ND REP WD INOP FOR MODE3 INOP TO LET 9XGS ...#SKI G4 [MOST OF THIS SEG WOULDNT WORK IN G4 9XJH ... CLEAR APETADDR(2),0,HLOCK3,APETTADR(2) 9XL= ... LDX 5 EVENT2(2) 9XM^ ... ADN 5 4 [POINT TO 2ND REP 9XPN ... ERN 6 2 [UNSET DOUBLE TRANS 9XRC ... SRC 6 1 [WAS SLC'ED IN SREWO 9XT6 ... BRN MIN3 [GO TO DEAL WITH OTHER REP WD 9XX2 RLILI CALL 7 SUB11 [SUBROUTINE SETS AMXOR/CONAR BLOCK 9YBL [AND RINGS IT TO CONLCB ENTRANT 9YW= LDN 0 2 9^*W STO 0 2(1) 9^TG LDX 4 EVENT2(2) =2*6 ADN 4 4 [CONTROL AREA OF READ PART MODE#3 PER =2SQ LDN 7 3 =3#B LDN 5 3(1) =3S2 CALL 0 SUB9 =4?L STOZ 6 =4R= BRN RJEON =5=W # =5QG # THIS ROUTINE SERVICES FOR LINE ZERO AND NULL LINES MODE#4 =6=6 # =6PQ MFOUR SLC 6 1 [JUMP IF NULL LINE OTHERWISE =79B BNG 6 TNUL1 =7P2 LDX 5 ADDMOP(3) [ADDRESS OF THE FIRST REPLY WORD =88L BZE 5 OUTAC [OR ZERO =8N= CALL 4 SUB5 [CHECK RESERVATION VIOLATION =97W LDN 1 HLOCK3 =9MG CALL 4 SUB6 [CONVERT RW1 ADDR.INTO GEO ADDR ==76 LDX 1 5 ==LQ CALL 0 RSEW [SET BIT 4 AND B5 IN THE =?6B STO 4 0(1) [1ST REPLY WORD IN OP =?L2 STOZ ADDMOP(3) [ZEROIZE ADDMOP IN CONLCB =#5L LDX 5 ADDMOP+1(3) [ADDRESS OF THE 2ND REPLY WORD =#K= BNZ 5 RDVTR [OR ZERO =*4W LDN 5 1 [NO OF FLAGS =*JG BRN RJETR =B46 RDVTR =BHQ CALL 4 SUB5 [CHECK RESV.VIOL.OF THE 2ND R.W. =C3B LDN 1 HLOCK4 =CH2 CALL 4 SUB6 =D2L LDX 1 5 [SET B4 AND B5 IN THE =DG= CALL 0 RSEW [2ND REPLY WORD =D^W STO 4 0(1) =FFG STOZ ADDMOP+1(3) [ZEROIZE ADDMOP+1 =F^6 LDN 5 2 [NO OF FLAGS =GDQ RJETR CALL 0 SUB3 [CALL THE FLAGSETTING ROUTINE =GYB BRN OUTAC =HD2 # =HXL TNUL1 LDX 1 BPTR(3) [IS THERE AMXOR/CONAR BLOCK =JC= BZE 1 OUTAC [IF NOT DO NOTHING OTHERWISE =JWW STOZ 1(1) =KBG STO 1 AWORK1(2) =KW6 STOZ BPTR(3) [UNRING CONLCB ENTRANT =L*Q RJILM LDX 5 3(1) =LTB CALL 0 RMODE [CHECK MODE AND RES.VIOLATION IN =M*2 CALL 4 SUB5 [THE 1ST REPLY MODE =MSL LDN 1 HLOCK3 =N#= CALL 4 SUB6 =NRW LDX 1 5 [SET B4 IN THE 1ST REPLY NORD NOT =P?G CALL 0 RMAJ =PR6 STO 4 0(1) =Q=Q SMO AWORK1(2) =QQB LDX 6 2 =R=2 ANDN 6 #70 =RPL BZE 6 RLIPA =S9= SMO AWORK1(2) =SNW LDX 5 6 =T8G CALL 0 RMODE [CHECK MODE AND RES VIOLATION OF =TN6 CALL 4 SUB5 [THE 2ND REPLY WORD =W7Q LDN 1 HLOCK4 =WMB CALL 4 SUB6 [SET B4 IN THE 2ND REPLY WORD NOT =X72 LDX 1 5 [IMPLEMENTED,INOPERABLE =XLL CALL 0 RMAJ =Y6= STO 4 0(1) =YKW LDN 5 2 [NO OF FLAGS TO BE SET =^5G BRN ROLSE =^K6 RLIPA LDN 5 1 [NO OF FLAGS TO BE SET ?24Q ROLSE LDX 1 AWORK1(2) [FREE AMXOR/CONAR ?2JB SBN 1 A1 ?342 FREECORE 1 ?3HL BRN RJETR ?43= # ?4GW MENDAREA 20,K100CONMXB ?52G #END ?5G6 ...) ^^^^ ...42505671000600000000