(George Source)
Macros used: ACROSS, CHNUMCOD, ENDCOM, FREECORE, GEOERR, HUNTW, LGEOG, LTYPE, MENDAREA, MHUNT, MHUNTW, OUTNUM, PARALYSE, PARSORT, PHOTO, SEGENTRY, SETUPCORE, SPARABEG, SPARANXT, SPARAPAS, TESTMOVE, TESTREP, TESTREP2, ZERRORX, ZERRORY
22FL #SEG HARDWARA8 [G CONSTANTINIDES 22^= #OPT K0HARDWARA=0 23DW #LIS K0HARDWARA>K0ALLGEO>K0GREATGEO>K0COMMAND>K0IDF 23YG 8HHARDWARA 24D6 # ENTRY POINTS 24XQ SEGENTRY K1HARDWARA,Z1HARDWARA 25CB MENDAREA 30,K99HARDWARA 25X2 TABLE 0 26BL #7420 26W= #7430 27*W #7400 27TG #7410 28*6 #7440 28SQ #7450 29#B #7460 29S2 #7470 2=?L #7540 2=R= #7550 2?=W #7560 2?QG #7570 2?WC ...#SKI JSKI17 2#2# ...TERT 20HMOP TER SEN NUL SPL 2#69 ...#SKI JSKI17<1$1 2#=6 TERT 16HMOP TER SEN NUL 2#PQ TOPH #77770000 2*9B TYTAB #5460 2*P2 #4362 2B8L #6467 2BN= #6462 2C7W #6460 2CMG # 2D76 # SUBROUTINE TO GET NEXT DEVICE MNEMONIC , CONVERT IT TO TYPE NO. & 2DLQ # STORE IT IN IDF/CONDATA BLOCK ; ENSURE THAT CONSOLE IS DEFINED FOR 2F6B # INPUT AND OUTPUT , IF AT ALL ; CALL ON X7 2FL2 # 2G5L NDEV SBX 7 FX1 2GK= SPARAPAS 2H4W LDN 5 0 [NULL TYPE NO. 2HJG MHUNT 3,CPB,CUNI 2J46 LDX 4 ANUM(3) 2JHQ BNG 4 STOTY [MISSING:NO MORE INTERFACES 2K3B BZE 4 STOTY [NULL DEVICE 2KH2 SBN 4 2 2L2L BNZ 4 PFER [MNEMONIC NOT 2 LETTERS 2LG= LDX 4 APARA(3) 2L^W SRL 4 12 2MFG LDN 0 6 2M^6 TRYAG ADN 5 1 2NDQ TXU 5 0 2NYB BCC PFER [MNEMONIC NOT RECOGNISED 2PD2 SMO 5 2PXL TXU 4 TYTAB-1(1) [COMPARE WITH STANDARD MNEMONICS 2QC= BCS TRYAG 2QWW STOTY FREECORE 3 2RBG MHUNTW 3,IDF,CONDATA 2RW6 BNG 4 NOMIN 2S*Q SMO 6 [INTERFACE NUMBER 2STB STO 5 A1+3(3) [STORE PERIPHERAL TYPE NO. 2T*2 ADN 6 1 2TSL BZE 5 NOTC 2W#= LDN 4 3 2WRW TXU 5 4 2X?G BCS NOTC [NOT CONSOLE 2XR6 NGX 4 AWORK4(2) 2Y=Q BNG 4 NOTF [J.IF ODD NO INTERFACES SO FAR 2YQB STO 6 AWORK4(2) [STORE INTERFACE NO 2^=2 BRN NOTC 2^PL NOTF ADX 4 6 329= ANDN 4 1 32NW BZE 4 PCON [J LO ERROR NOT INPUT AND OWTPWT 338G NGS 6 AWORK4(2) [MARK BOTH INPUT & OUTPUT 33N6 NOTC 347Q ADX 7 FX1 34MB EXIT 7 0 3572 # 35LL # GET PARAMETER BEGINNING WITH U,L,I OR T , CALL ON X7 366= # 36KW NOTL LDN 4 1 375G SBX 7 FX1 37K6 SPARABEG 1,4 384Q MHUNT 3,CPB,CUNI 38JB ADX 7 FX1 3942 EXIT 7 0 39HL # 3=3= # GET PARAMETER FROM CPB/CUNI BLOCK & CONVERT TO BINARY , CALL ON X7 3=GW # 3?2G PABEG NGX 0 ANUM(3) [ENTRY AFTER SPARABEG : X3 SET UP 3?G6 BPZ 0 MISS [PARAMETER NULL OR MISSING 3?^Q SBX 7 FX1 3#FB PHOTO 4 3#^2 CHNUMCOD ,3 3*DL TESTREP CHNUMERR,URET [ENDCOM IF INVALID FORMAT 3*Y= LDX 6 ACOMMUNE1(2) [PICK UP CONVERTED PARAMETER 3BCW TESTMOVE 4,NOMO 3BXG MHUNT 3,CPB,CUNI [RELOCATE AFTER COORDINATION 3CC6 NOMO 3CWQ FREECORE 3 3DBB ADX 7 FX1 3DW2 EXIT 7 0 3F*L URET ENDCOM 3FT= # 3G#W # 3GSG # 3H#6 # HARDWARE COMMAND IS E.G. HW U29.L2(4),TER(IAA,T4,D(CR,LP,TW,TW,,) 3HRQ # SET UP IDF/CONDATA BLOCK CONTAINING GEOG NO. & TERM TYPE/LINE NO. 3J?B # FOR EACH LINE ; 7020 TERMINALS ALSO HAVE IDENTIFIER/POLLING ADD. 3JR2 # & PERIPHERAL DESCRIPTION IN ORDER OF INTERFACES 3K=L # 3KQ= XBR GEOERR 1,BREAKIN 3L9W Z1HARDWARA 3LPG PARSORT XBR,NOCLUS 3M96 HUNTW 3,CPAR,JSCE 3MNQ BNG 3 URET [J IF ERROR DETECTED BY PARSORT 3N8B LDX 5 JSCEB(3) 3NN2 LDX 1 JSCEP(3) 3P7L ANDX 1 BITS22LS [DEVICE LIST PTR 3PM= LGEOG 1,6 [GEOG NO 3Q6W STO 6 AWORK4(2) 3QLG LTYPE 1,4 [DEVICE TYPE 3R66 SBN 4 10 3RKQ BZE 4 XUX [J IF UPX 3S5B BCT 4 NOTX [J IF NOT MPX 3SK2 BPZ 5 MISS [NO LINE NO 3T4L LDX 4 5 3TJ= SRL 4 9 3W3W LDCH 4 4 [LINE NO 3WHG BRN X1 3X36 XUX LDN 4 0 3XGQ X1 STO 4 AWORK3(2) [LINE NO 3Y2B LDN 0 1 3YG2 STO 0 AWORK2(2) [NO OF LINES 3Y^L BPZ 5 TYPE [ONLY ONE LINE 3^F= LDX 0 JSCEK(3) 3^YW BNG 0 TYPE 42DG BZE 0 TYPE [ASSUME 1 LINE 42Y6 ADX 4 0 [LAST LINE NO+1 43CQ SBN 4 65 43XB BNG 4 XLOK [OK-LESS THAN 64 44C2 LDN 0 #100 44WL SBX 0 AWORK3(2) 45B= XLOK 45TW STO 0 AWORK2(2) [NO OF LINES 46*G TYPE LDN 6 0 [ANALYSIS LEVEL 46T6 SPARANXT ,6 472# ...#UNS ANSTOOMANY 477G ... TESTREP2 TOOMANY,PTMANY 47#Q MHUNT 3,CPB,CUNI 47SB NGX 0 ANUM(3) 48#2 BPZ 0 MISS 48RL LDX 0 APARA(3) ['NULL','MOP','TER' OR 'SEN' 49?= LDN 4 0 [TERMINAL TYPE NUMBER 49QW TXU 0 TERT+3(1) 4==G BCC STYPE 4=Q6 LDN 4 3 4?9Q TXU 0 TERT+2(1) 4?PB BCC STYPE 4#92 LDN 4 1 4#NL TXU 0 TERT(1) 4*8= BCC STYPE 4*MW TXU 0 TERT+1(1) 4*XN ...#SKI JSKI17<1$1 4B7G BCS PFER 4B94 ...#SKI JSKI17 4B=L ...( 4B#8 ... BCC NSPL 4B*Q ... TXU 0 TERT+4(1) 4BC# ... BCS PFER 4BDW ... LDX 4 GSIGN 4BGD ... ORS 4 AWORK4(2) 4BJ2 ...NSPL 4BKJ ...) 4BM6 # 4C6Q LDN 4 2 4CLB LDN 6 7 [8 WORDS PER 7020 RECORD 4D62 STYPE ADN 6 1 [1 WORD PER MOP OR SENTINEL RECORD 4DKL MPY 6 AWORK2(2) [NUMBER OF LINES 4F5= FREECORE 3 [TERMINAL TYPE BLOCK 4FJW ADN 7 2 [FOR FIRST AND LAST WORDS 4G4G SETUPCORE 7,3,IDF,CONDATA [SET UP INFO BLOCK 4GJ6 LDX 6 AWORK3(2) 4H3Q STO 6 A1+1(3) 4HHB DCH 4 A1+1(3) 4J32 LDX 6 AWORK4(2) 4JGL STO 6 A1(3) [GEOGRAPHIC UNIT NO. 4K2= SBN 4 2 4KFW LDN 1 1 [LENGTH OF MOP OR SENT RECORD 4KM4 ...#SKI JSKI17 4KS= ... STOC 6 AWORK4(2) 4K^G BNZ 4 REP [NOT 7020 4LF6 # 4LYQ # ANALYSE 7020 PARAMETERS : IDENTIFIER , PHYSICAL TERMINAL NUMBER , 4MDB # DEVICE ON EACH INTERFACE GIVEN IN ORDER OF INTERFACES 4MY2 # 4NCL LDN 6 2 [ANALYSE SECOND PARAMETER 4NX= PARALYSE #34,1,6 [X1 CONTAINS 1 : ANALYSIS LEVEL 4P4D ...#UNS ANSTOOMANY 4P9L ... TESTREP2 TOOMANY,PTMANY 4PBW LDCT 5 #510 ['I' FOR IDENTIFIER 4PWG CALL 7 NOTL 4QB6 NGX 0 ANUM(3) 4QTQ BPZ 0 MISS [IDENTIFIER MISSING 4R*B ADN 0 2 4RT2 BNZ 0 PFER [NOT TWO CHARACTERS 4S#L LDX 6 APARA(3) 4SS= ANDX 6 TOPH(1) [ONLY TOP HALF 4T?W LDCT 0 #770 [NOW CHECK IDENTIFIER VALID 4TRG ANDX 0 6 4W?6 SLC 0 6 [MOVE FIRST CHAR OF IDENT.INTO B18-23 4WQQ SBN 0 #41 4X=B BNG 0 NTER2 [ERROR NON-ALPHA FIRST LETTER 4XQ2 SBN 0 #32 4Y9L BPZ 0 NTER2 [ERROR NON-ALPHA FIRST LETTER 4YP= STO 6 AWORK4(2) [PRESERVE IDENTIFIER 4^8W FREECORE 3 4^NG LDCT 5 #640 ['T' FOR PHYS. TERM. NO. 5286 CALL 7 NOTL 52MQ CALL 7 PABEG [GET PHYSICAL TERMINAL NUMBER 537B BZE 6 NTER1 [ZERO TERM.NO! 53M2 SMO 6 546L LDX 5 TABLE(1) [POLLING ADDRESS 54L= SBN 6 13 555W BNG 6 T112 [J IF T1-T12 55KG SBN 6 4 5656 BNG 6 NTER [T13-T16 -ERROR 56JQ SBN 6 12 574B BPZ 6 NTER3 [329+ -ERROR 57J2 ADN 6 13 583L SMO 6 58H= LDX 5 TABLE(1) 592W ADN 5 1 [POLLING ADDRESS 59=N ... LDN 7 0 59GG T112 5=26 ADX 5 AWORK4(2) 5=FQ MHUNTW 3,IDF,CONDATA 5=H^ ... BNZ 7 XSIOK 5=L8 ... LDX 4 A1(3) 5=NC ... BPZ 4 XSIOK 5=QL ... ADN 6 16 5=ST ... BRN NTER1 5=X4 ...XSIOK 5=^B STO 5 A1+2(3) 5?F2 STOZ A1+3(3) [ZEROISE 6 WORDS 5?YL ADN 3 A1+3 [WHICH WILL CONTAIN 5#D= LDN 4 1(3) [PERIPHERAL TYPE 5#XW MOVE 3 5 [NUMBERS FOR 7020 5*CG LDN 4 3 [PARAMETER POSITION 5*X6 SPARANXT ,,4 [SPLIT E.G. D(CR,LP,TW,TW,TR,TP) 5B4# ...#UNS ANSTOOMANY 5B9G ... TESTREP2 TOOMANY,PTMANY 5BBQ MHUNT 3,CPB,CUNI 5BWB NGX 0 ANUM(3) 5CB2 BPZ 0 MISS 5CTL LDCH 0 APARA(3) [FIRST CHARACTER SHOULD BE 'D' 5D*= ERN 0 #44 5DSW BNZ 0 PFER 5F#G FREECORE 3 5FS6 LDN 4 2 [PARAMETER POSITION 5G?Q PARALYSE #34,,4 5GDY ...#UNS ANSTOOMANY 5GL6 ... TESTREP2 TOOMANY,PTMANY 5GRB # 5H?2 # VERIFY THAT INTERFACES 1 & 3 HAVE 7022=CR OR 7023=OUTPUT CONSOLE , 5HQL # THAT 2 & 4 HAVE 7021=LP OR 7023=INPUT CONSOLE , THAT 5 HAS 7024=TR 5J== # AND THAT 6 HAS 7025=TP ; X6=INTERFACE NO. , X5=DEVICE TYPE NO. 5JPW # 5K9G LDN 6 0 5KP6 STOZ AWORK4(2) 5L8Q TWICE CALL 7 NDEV [DEVICE TYPE MAY BE 0,2 OR 3 5LNB BZE 5 N1 5M82 ANDN 5 2 5MML BZE 5 RONG [NOT 2 OR 3 5N7= N1 CALL 7 NDEV [DEVICE TYPE MAY BE 0,1 OR 3 5NLW SBN 5 2 5P6G BZE 5 RONG [TYPE 2 5PL6 SBN 5 2 5Q5Q BPZ 5 RONG [TYPE 4 OR 5 5QKB LDN 4 2 5R52 TXU 4 6 [X6 CONTAINS INTERFACE NUMBER 5RJL BCC TWICE [REPEAT SECTION FOR INTERFACES 3 & 4 5S4= CALL 7 NDEV 5SHW BZE 5 N2 5T3G SBN 5 4 5TH6 BNZ 5 RONG [X5 SHOULD BE 4 5W2Q N2 CALL 7 NDEV 5WGB BZE 5 NOMIN 5X22 SBN 5 5 5XFL BNZ 5 RONG [X5 SHOULD BE 5 5X^= NOMIN LDX 0 AWORK4(2) 5YDW BPZ 0 PCON [NO CONSOLE FOR BOTH I/P & O/P 5YYG # 5^D6 LDN 1 8 [LENGTH OF 7020 RECORD 5^XQ REP ADN 3 A1+1 62CB LDX 4 3 62X2 LDX 6 AWORK2(2) [NUMBER OF LINES 63BL SBN 6 1 63W= BZE 6 TERM [QUALIFIER WAS 1 64*W LDN 5 1 [TO UPDATE LINE NO 64TG VAG ADX 4 1 65*6 MOVE 3 0(1) [CREATE NEXT LINE DESCRIPTION 65SQ ADX 3 1 66#B ADS 5 0(3) [UPDATE LINE NUMBER 66S2 BCT 6 VAG 67?L TERM ADX 3 1 67R= NGS 3 0(3) 68=W ACROSS HARDIDF,1 68QG # 69=6 # VARIOUS COMMAND ERRORS 69PQ # 6=9B ONUM SBX 3 FX1 [ROUTINE TO "OUTNUM & THEN COMERRX 6=P2 OUTNUM 6,0 6?8L ADX 3 FX1 6?N= EXIT 3 0 6#7W # 6#MG # 6*76 ZERRORY 6*LQ MISS ZERRORX JPARMIS [PARAMETER MISSING 6B6B NTER3 ADN 6 29 6BL2 BRN NTER1 6C5L NTER ADN 6 17 6CK= NTER1 CALL 3 ONUM 6D4W ZERRORX JLARGETERM [INVALID TERMINAL NUMBER 6DJG NTER2 ZERRORX ITERMIN [INVALID TERMINAL IDENTIFIER 6F46 NOTX LDX 6 AWORK4(2) [PICK UP GEOG NO 6FHQ CALL 3 ONUM 6G3B ZERRORX JNOTMULT 6GH2 PCON ZERRORX JCOS [REMOTE CONSOLE NOT INPUT AND OUTPUT 6H2L PFER ZERRORX APFERR [PARAMETER FORMAT ERROR 6HG= RONG CALL 3 ONUM 6H^W ZERRORX JDEVILL [ILLEGAL DEVICE ON INTERFACE N 6J5R ...#UNS ANSTOOMANY 6J9N ...PTMANY 6J*K ... ZERRORX JMAXPAR 6JFG # 6J^6 #END ^^^^ ...43425460000700000000