8 23YG #OPT K0PMCHAINS=0 11 24D6 #LIS K0PMCHAINS>K0POST>K0ALLGEO 4 24XQ # 15 25CB ...#SEG PMCHAINS84 [M.C.D. MANN 4 25X2 # 15 25Y8 ...# THIS SEGMENT LISTS THE FOLLOWING CHAINS:- 12 25_B ...# FREE STORE 12 262J ...# FROZEN FREE 11 263Q ...# CHAPTER 15 264* ...# FREE PROGRAM BLOCK CHAIN 11 264Y ...# JOB QUEUE 13 2666 ...# TEMPORARY HLSQ 11 267# ...# HLS QUEUE 12 268G ...# MISCILLANEOUS 10 269N ...# FILE 11 26=W ...# HALFOPEN 11 26#4 ...# OFF-LINE 10 26*= ...# INDEX 13 26BD ...# CONSOLE OUTPUT 13 26CL ...# CARTRIDGE CONTROL 11 26DS ...# LISTFILE 12 26G2 ...# ACTIVITY LIST 15 26H8 ...# 7600 SYSTEM RING ) 15 26JB ...# 7600 SEND CHAIN ) 18 26KJ ...# 7600 RECIEVE CHAIN ) IPL ONLY 12 26LQ ...# GHOST LIST 12 26MY ...# PROGRAM RING 12 26P6 ...# WAITING LIST 15 26Q# ...# PAGE USAGE ) 19 26RG ...# PURE PROCEDURE ) GEORGE 4 ONLY 4 26SN ...# 4 26W= # 10 27*W 8HPMCHAINS 4 27TG # 9 28*6 # ENTRY POINT TABLE 4 28SQ # 11 29#B ... SEGENTRY K1PMCHAINS,XK1PMCHAINS 11 29S2 ... SEGENTRY K2PMCHAINS,XK2PMCHAINS 5 2?=W #SKI G4 11 2?QG ... SEGENTRY K3PMCHAINS,XK3PMCHAINS 4 2*P2 # 17 2B8L FIXTRA JPMCBLOX [USED BY PMBLOX MACRO 5 2BN= ZPMCBLOX 17 2CMG #GAP JPMNOFTYPES+2 [ FOR #MEN VIA PMBLOX 4 2D76 # 20 2DLQ # OPTIONALLY SET UNIVERSALS DETERMINING THE NO. OF WORDS TO BE 19 2F6B # PRINTED FROM EACH BLOCK IN THE CHAINS LISTED BY PMCHAINS 4 2FL2 # 7 2G5L #OPT JFREE=0 7 2GK= #OPT JCHAP=2 9 2H4W #OPT JOBQ=EXTJOBPROG 7 2HJG #OPT JHLSQ=64 7 2J46 #OPT JMIS=1024 7 2JHQ #OPT JFILE=64 7 2K3B #OPT JINDEX=512 8 2KH2 #OPT JCONSOUT=64 7 2L2L #OPT JCART=64 7 2LG= #OPT JHALF=64 7 2L_W #OPT JBOLC=600 8 2MFG #OPT JUSAGE=1024 8 2M_6 #OPT JBHTEMP=AHLS 7 2NDQ #OPT JPURE=64 6 2NYB #OPT JLF=40 6 2PD2 #OPT JFFC=0 9 2PXL #OPT JIPLJ=IPLDRILEN 7 2QC= #OPT JIPLS=512 7 2QWW #OPT JIPLR=512 7 2R44 ...#OPT JJRNL=510 7 2R6M ...#OPT JOBJCH=0 7 2R?T ...#OPT JFPBCH=A1D 7 2R#P ...#OPT JFTEM=0 7 2R*K ...#OPT JFAST=0 4 2RBG # 20 2RW6 # STORED WORDS TO HOLD VALUES DEFINED IN ABOVE TABLE(ALLOWS FOR 19 2S*Q # ALTERATIONS TO COMPILED VALUES BY MENDS AT RESTORE TIME) 4 2STB # 9 2T*2 FIXTRA JMCHAINS 7 2TSL [ USED BY PMMEND 9 2W#= ZJFREE +JFREE 9 2WRW ZJCHAP +JCHAP 8 2X?G ZJOBQ +JOBQ 9 2XR6 ZJHLSQ +JHLSQ 8 2Y=Q ZJMIS +JMIS 9 2YQB ZJFILE +JFILE 9 2_=2 ZJINDEX +JINDEX 9 2_PL ZJCONSOUT +JCONSOUT 9 329= ZJCART +JCART 9 32NW ZJHALF +JHALF 9 338G ZJBOLC +JBOLC 9 33N6 ZJUSAGE +JUSAGE 9 347Q ZBHTEMP +JBHTEMP 9 34MB ZJPURE +JPURE 8 3572 ZJLF +JLF 8 35LL ZJFFC +JFFC 9 366= ZJIPLJ +JIPLJ 9 36KW ZJIPLS +JIPLS 9 375G ZJIPLR +JIPLR 9 37=N ...ZJJRNL +JJRNL 9 37CW ...ZJOBJCH +JOBJCH 9 37HB ...ZJFPBCH +JFPBCH 9 37HY ...ZJFTEM +JFTEM 9 37JG ...ZJFAST +JFAST 4 37K6 # 12 384Q NAMEA 17HBACKWARD CHAINING 19 38JB XIND +0 [SET=0 WHEN FORWARD CHAINING 19 3942 [ =1 WHEN BACKWARD CHAINING 20 39HL [ =2 WHEN'BACKWARD CHAINING' 19 3=3= [ HEADING TO BE PRINTED 18 3=GW [ =-1 WHEN END OF CHAIN 21 3?2G XBLCOUNT +0 [COUNT OF BLOCKS IN ROW TO BE PRINTED 16 3?G6 [IN ROUTINE PRINT 20 3?_Q XBACKPR +0 [TO HOLD START ADDR. OF PREVIOUS 21 3#FB [BLOCK IN CHAIN.USED BY SEARCH ROUT. 8 3#_2 XA1 +A1 8 3*DL X512 +512 8 3*Y= X45 +45 21 3BCW XBASE +0 [TO HOLD BASE OF CHAIN/RING - USED BY 15 3BXG [START ROUT. 21 3CC6 XTYPES +0 [1 IF TYPES ETC. TO BE PRINTED - SET 21 3CWQ [UP IN START ROUT. USED BY PRINT ROUT 21 3DBB XDIST +0 [NO. OF WORDS FROM RING ELEMENT TO 16 3DW2 [START OF BLOCK 21 3F*L XLEN +0 [NO. OF WORDS TO BE PRINTED FROM EACH 21 3FT= [BLOCK IN CHAIN OR IND. THAT SELECTED 16 3G#W [PRINT REQUIRED 9 3GSG XATYPE +ATYPE 8 3H#6 SIX +6 18 3HRQ MASK #17777777 [TO MASK OUT CHAR. BITS 8 3J?B SEVENS #7777 9 3JR2 WORD #40000000 8 3K=L ONE +1 13 3LPG MNEMON +0 [ ROW TYPE 15 3M96 ROWCNT +0 [ ROW COUNT 17 3P7L UNE +0 [ BLOCK COUNT STORAGE 5 3PM= TWO +0 5 3PX4 ...XFOUR +0 5 3Q6W STYPE +0 5 3QLG TYPE +0 8 3RKQ THREE +3 20 3S5B PRINTING +0 [USE BY PRINT ROUTINE TO INDICATE 18 3SK2 [STILL PRINTING BLOCKS 12 3T4L NOTLISTED 16H0NOT LISTED 0000 21 3TJ= PRINTYPES +0 [SET 1 IF IDENT TABLES TO BE SET UP 19 3W3W [BUT TYPES NOT TO BE PRINTED 10 3WHG ...PMCHAINEND +ZPMCHAINS+1 20 3XGQ TABNEXT +0 [TO HOLD 6TH ENTRY IN TAB ABLE 20 3Y2B SELIND +0 [IF POS. HOLDS ADDR. OF SELECTIVE 15 3YG2 [PRINT TABLE 8 3Y_L ...ZLPMT +0 20 43CQ ZLINKA +0 [TO HOLD LINK ADDRS. OF ROUTINES 12 43XB ZLINKC +0 [ 12 44C2 ZLINKD +0 [ 18 44WL SPECIAL +0 [SET=1 CHAP. CHAIN PRINT 4 45B= # 15 45TW # DUMMY IDENT. TABLE FOR CHAPTER CHAIN PRINT 4 46*G # 8 46T6 XCHAP +0,+1 8 47#Q +0,+1 9 47SB UPARROW 4H____ 4 48#2 # 14 48RL # TABLE OF JUMPS TO CONVERSION ROUTINES 4 49?= # 8 49QW RTNS BRN ROCT 8 4==G BRN RCHA 8 4=Q6 BRN RDECS 8 4?9Q BRN RDECP 9 4?PB BRN RDECDEC 4 4#92 # 18 4#NL # TABLE OF REDTAPE MNEMONICS AND PRINT FORMAT INDICATORS 4 4*8= # 17 4*MW # NOW AT END OF SEGMENT BECAUSE OF PMLIST EXPANSION 4 4B7G # 4 4BM6 # 13 4C6Q # TABLE OF START ADDRESSES OF BLOCKS 4 4CLB # 4 4D62 TAB 5 4DKL #REP 6 5 4F5= +0 4 4FJW # 18 4G4G # TABLE GIVING LENGTHS TO BE PRINTED FROM BLOCKS IN TAB 4 4GJ6 # 4 4H3Q TABL 5 4HHB #REP 6 5 4J32 +0 4 4JGL # 20 4K2= # TABLE GIVING POSITION OF NEXT WORD TO PRINT FROM BLOCKS IN TAB 4 4KFW # 4 4K_G TABC 5 4LF6 #REP 6 5 4LYQ +0 4 4MDB # 21 4MY2 # TABLE CONTAINING IDENTITY BLOCK TABLE POINTERS FOR EACH BLK IN TAB 4 4NCL # 4 4NX= TABI 5 4PBW #REP 6 5 4PWG +0 4 4R*B # 18 4RT2 # ROUTINE TO COPY ROW TYPE MNEMONIC FROM ENTRY 17 4S#L # POINTS TABKE, AND INITIALISE ROW COUNTER 4 4SS= # 4 4T?W MNEM 8 4TRG LDX 3 0(2) 9 4W?6 ... STO 3 MNEMON(1) 10 4WQQ ... STOZ ROWCNT(1) 8 4X=B EXIT 2 1 4 4XQ2 # 4 4YP= # 4 4_8W # 19 4_NG # ROUTINE TO GET ADDRESS OF NEXT BLOCK IN CHAIN WHEN FORWARD 7 5286 # CHAINING 13 52MQ # ENTRY X2=ADDRESS OF CURRENT BLOCK 17 537B # EXIT 0 & IF FORWARD AND BACKWARD POINTERS CORRECT 13 53M2 # X2,X3=ADDRESS OF NEXT BLOCK 8 546L # X0=LINK 14 54L= # EXIT 0 0 IF BREAK IN CHAIN DETECTED 13 555W # X3=ADDRESS OF NEXT BLOCK 16 55KG # (SEARCHA:ENTRY POINT FOR FIRST BLOCK ON CHAIN 4 5656 # 5 56JQ SEARCH 17 574B LDX 3 BPTR(2) [J IF BPTR IN CURRENT 16 57J2 ... TXU 3 XBACKPR(1) [BLOCK INCORRECT 8 583L BCS S1 5 58H= SEARCHA 19 592W ... STO 2 XBACKPR(1) [STORE ADD. OF CURRENT BLOCK 18 59GG LDX 3 FPTR(2) [GET ADD. OF NEXT BLOCK 15 5=26 S3 PMCORES 3,S1 [J IF INVALID 9 5=7# ... LDX 2 XLEN(1) 15 5=#G ... BNG 2 S2 [TEST IF LIST 17 5=FQ ... TXL 3 ENDFIX [J IF ADDR. INVALID 8 5=_B BCC S2 9 5?F2 ... TXU 3 XBASE(1) 16 5?YL BCS S1 [BECAUSE TO SMALL 7 5#D= S2 LDX 2 3 7 5#XW EXIT 0 1 16 5*CG S1 EXIT 0 0 [BREAK IN CHAIN 4 5*X6 # 20 5BBQ # ROUTINE TO GET ADDRESS OF NEXT BLOCK IN CHAIN, WHEN BACKWARD 7 5BWB # CHAINING 10 5CB2 # ENTRY & EXIT AS SEARCH 16 5CTL # (SEARCHC:ENTRY POINT FOR FIRST BLOCK ON CHAIN 4 5D*= # 5 5DSW SEARCHB 17 5F#G LDX 3 FPTR(2) [J IF FPTR IN CURRENT 16 5FS6 ... TXU 3 XBACKPR(1) [BLOCK INCORRECT 8 5G?Q BCS S1 5 5GRB SEARCHC 19 5H?2 ... STO 2 XBACKPR(1) [STORE ADD. OF CURRENT BLOCK 18 5HQL LDX 3 BPTR(2) [GET ADD. OF NEXT BLOCK 8 5J== BRN S3 4 5JPW # 13 5K9G # ROUTINE TO PRINT A ROW OF BLOCKS 14 5KP6 # ENTRY XBLCOUNT=NO. OF BLOCKS IN ROW 16 5L8Q # TAB TABLE=HOLDS START ADDR OF BLOCKS 21 5LNB # TABR TABLE=POINTER TO SELECTION PRINT TABLES IF REQUIRED 10 5M82 # X0=LINK 11 5MML # EXIT ALL ACCS UNDEFINED 12 5N7= # TABR TABLE ZEROISED 4 5NLW # 5 5P6G PRINT 16 5PL6 ... CALL 7 (JPRINT1) [THROW A LINE 4 5Q5Q # 18 5QKB # ENTRY POINT TO PRINT ROUT. IF LINE THROW TO BE OMITTED 4 5R52 # 5 5RJL PRINTA 4 5S4= # 17 5SHW # SET UP NO. OF WORDS IN EACH BLOCK TO BE PRINTED 4 5T3G # 18 5TH6 ... LDX 2 FXPM1 [ BLOCK COUNT + MODIFIER 18 5W2Q ...PR1 LDX 3 TAB(2) [GET ADDR. OF NEXT BLOCK 9 5WGB LDX 6 ASIZE(3) 9 5X22 ... ANDX 6 MASK(1) 18 5XFL ... TXL 6 XA1(1) [TEST AND J IF ASIZE > A1 8 5X_= BCC PR4 20 5YDW LDN 6 A1 [SET TO PRINT AT LEAST A1 WORDS 4 5YYG PR4 14 5_D6 ... LDX 7 XLEN(1) [TEST AND 18 65SQ BZE 7 PR3 [ J IF XLEN EQUALS ZERO 20 66#B BPZ 7 RP1 [ JUMP IF NOT A SELECTIVE PRINT 20 66S2 LDN 7 512 [ IF SELECTIVE PRINT SET TO LIST 8 67?L BRN PR3 4 67R= RP1 18 68=W ... STO 2 UNE(1) [ PRESERVE BLOCK COUNT 8 68QG ... LDX 2 FXPM1 21 69=6 LDCH 7 ATYPE(3) [ PICK UP TOP CH, = TYPE OF THIS BLOQ 9 69PQ ... STO 7 TYPE(1) 16 6=9B RP2 [ LOOP RE ENTRY 20 6=P2 ... LDX 7 ZPMCBLOX(2) [ PICK UP COMPLETE WORD FROM LIST 21 6?8L BNZ 7 RP5 [ IF ZERO NO ( MORE ) TYPES TO CHECK 21 6?N= ... LDX 7 XLEN(1) [ RESET TO STANDARD DEFAULT V 17 6#7W ... LDX 2 UNE(1) [ RESTORE BLOCK COUNT 21 6#MG BRN PR3 [ AND JUMP BACK INTO NORMAL ROUTINE 4 6*76 RP5 19 6*LQ ... LDCH 7 ZPMCBLOX(2) [ PICK UP A TYPE FROM LIST 21 6B6B ... SBX 7 TYPE(1) [ COMPARE LISTED TYPE WITH THISBLOX 17 6BL2 BZE 7 RP3 [ JUMP IF TYPES MATCH 18 6C5L ... BUX 2 RP2 [ ELSE LOOK FOR ANOTHER 21 6CK= RP3 [ FIND OUT IF A SUB TYPE HAS BEEN SPD 8 6CRY ... SMO FXPM1 20 6D2L ... LDX 7 ZPMCBLOX+1+JPMNOFTYPES [ LOAD LAST WORD OF GAP AREA 8 6D9# ... SMO FXPM1 8 6DD2 ... STO 2 TWO 8 6DLN ... SBX 2 FXPM1 19 6DTB ... SLL 7 0(2) [ MOVE APT BIT INTO TEST SPOT 21 6F46 BNG 7 RP4 [ JUMP IF NO NEED TO CHECK SUBTYPE 17 6G3B LDCT 2 #200 [ = STOZ 2, BCHX 2 / 7 6GH2 SMO 3 21 6H2L LDCH 7 ATYPE(2) [ PICK UP 2ND CHARACTER, = SUBTYPE 9 6HG= ... STO 7 STYPE(1) 9 6H_W ... SMO TWO(1) 10 6JFG LDCH 7 ZPMCBLOX(2) 16 6J_6 ... LDX 2 TWO(1) [ RESTORE TWO 17 6KDQ ... SBX 7 STYPE(1) [ COMPARE SUBTYPES 17 6KYB BZE 7 RP4 [ JUMP IF THEY MATCH 20 6LD2 ... BUX 2 RP2 [ ELSE LOOK FOR NEXT MAIN TYPE 4 6LXL RP4 10 6MC= ... LDX 7 ZPMCBLOX(2) 8 6NBG ANDN 7 #7777 17 6NW6 ... LDX 2 UNE(1) [ RESTORE BLOCK COUNT 4 6P*Q PR3 8 6PTB ... ADN 7 A1 21 6QSL TXL 7 6 [SET TO PRINT CONTENTS OF XLEN+A1< 17 6R#= BCS PR6 [CONTENTS OF ASIZE>A1 7 6RRW LDX 7 6 4 6S?G ...PR6 19 6SR6 ... STO 7 TABL(2) [STORE NO. OF WORDS TO PRINT 9 6T=Q ... ADX 7 TAB(2) 18 6TQB TXL 7 CORES [IF END ADDRESS OF BLOCK 20 6W=2 BCS PR5 [WILL CAUSE ILLEGAL ADDR. RESET 20 6WKP ... LDX 7 CORES [LENGTH TO MAXIMUM NO. OF WORDS 14 6W_D ... SBX 7 TAB(2) [POSSIBLE 9 6X*7 ... STO 7 TABL(2) 7 6XNW ...PR5 ADN 2 1 7 6Y4K ... LDX 3 2 8 6YD# ... SBX 3 FXPM1 16 6YS3 ... TXU 3 XBLCOUNT(1) [J IF STILL MORE 16 6_7Q BCS PR1 [BLOCKS TO PRINT 4 6_MB # 19 7272 # ENTRY POINT TO PRINT ROUT. IF TABL TABLES ALREADY SET UP 4 72LL # 5 736= PRINTB 4 73KW # 10 745G # CODING TO PRINT BLOCKS 4 74K6 # 21 754Q # IF CHAPTER CHAIN PRINT SET UP DUMMY IDENT TABLE ENTRIES IN TABI 4 75JB # 15 7642 ... STO 0 ZLINKC(1) [STORE LINK 10 76HL ... LDX 0 SPECIAL(1) 19 773= BZE 0 PP3 [J IF NOT CHAPTER CHAIN PRINT 9 77GW ... LDN 7 XCHAP(1) 7 78G6 PR2 ADN 1 1 21 78_Q STO 7 TABI-1(1) [STORE ADDR. OF DUMMY IDENT. TABLE 7 7982 ... LDX 5 1 8 79B= ... SBX 5 FXPM1 8 79JG ... SMO FXPM1 18 79QQ ... TXU 5 XBLCOUNT [AS TABI TABLE ENTRIES 8 79_2 BCS PR2 4 7=DL # 10 7=Y= # CODING TO PRINT BLOCKS 4 7?CW # 17 7?XG ...PP3 LDX 1 FXPM1 [ MODIFIER+BLOCKCOUNT 15 7#C6 PP2 LDX 5 TABC(1) [WORD POINTER 18 7#WQ TXL 5 TABL(1) [NO. OF WORDS TO PRINT 20 7*BB BCS PP [J IF BLOCK STILL BEING PRINTED 19 7*W2 ...PP5 CALL 7 (JUP) [UPDATE PRINT BUFFER MOD. 8 7B*L +20 8 7BT= BRN PP11 19 7C#W ...PP CALL 7 (JUP) [UPDATE PRINT BUFFER MOD. 8 7CSG +2 7 7D#6 LDN 7 1 8 7DHY ... SMO FXPM1 18 7DRQ STO 7 PRINTING ['STILL PRINTING' IND. 16 7F?B BNZ 5 PP4 [J IF NOT FPTR 4 7FR2 # 17 7G=L # CODING TO PRINT ACTUAL ADDR. OF FORWARD POINTER 4 7GQ= # 17 7H9W LDX 2 TAB(1) [GET ADDR. OF BLOCK 9 7HPG LDX 5 TAB(1) 17 7J96 ... CALL 7 (JDECN) [CONVERT TO DECIMAL 18 7JNQ LDN 3 3 [CONVERSION ROUT. IND. 4 7K8B # 17 7KN2 # TO CONVERT CONTENTS OF A WORD IN SPECIFIED FORMAT 4 7L7L # 18 7LM= PP1 LDX 5 0(2) [GET CONTENTS OF ADDR. 7 7M6W SMO 3 21 7MLG CALL 7 RTNS [J TO APPROPRIATE CONVERSION ROUTINE 4 7N66 # 13 7NKQ # TO UPDATE COUNTS,PRINT A LINE ETC. 4 7P5B # 7 7PK2 PP11 LDN 7 1 17 7Q4L ADS 7 TABC(1) [UPDATE WORD COUNT 17 7QJ= PP17 ADN 1 1 [UPDATE BLOCK COUNT 7 7QQG ... LDX 5 1 8 7QYQ ... SBX 5 FXPM1 8 7R72 ... SMO FXPM1 9 7R*= ... TXU 5 XBLCOUNT 18 7RHG BCS PP2 [J IF STILL BLOCKS IN ROW 8 7RR# ... SMO FXPM1 9 7S36 LDX 2 SELIND 20 7SGQ BNZ 2 SEL [J IF SELECTIVE PRINT REQUIRED 16 7SWF ...PP18 CALL 7 (JPRINT1) [PRINT A LINE 8 7T=8 ...PP20 SMO FXPM1 9 7TKX ... LDX 7 PRINTING 8 7T_L BNZ 7 PP12 4 7WF= # 10 7WYW # END OF PRINT OF ROW 4 7XDG # 8 7XT2 ... LDX 1 FXPM1 9 7Y9G ... STOZ TABL(1) 9 7YL2 ... LDN 6 TABL(1) 9 7_2G ... LDN 7 TABL+1(1) 8 7_C2 MOVE 6 17 9 7_QP ... STOZ SELIND(1) 9 826D ... LDX 0 ZLINKC(1) 7 82G7 ... EXIT 0 0 4 82TW # 13 83*G # CHECK IF TYPES ETC. TO BE PRINTED 4 83T6 # 8 847H ...PP12 SMO FXPM1 9 84FY ... STOZ PRINTING 9 84SB LDN 7 ATYPE+1 9 85#2 TXU 7 TABC-1(1) 19 85RL BCS PP3 [J IF LAST WORD NOT = ATYPE 8 863D ... SMO FXPM1 9 86?= LDX 7 XTYPES 18 86QW BZE 7 PP3 [J IF TYPES NOT REQUIRED 7 87=G BRN T 4 87Q6 # 10 889Q # IF NOT PRINTING FPTR 4 88PB # 8 893R ...PP4 SMO FXPM1 8 89B8 ... TXL 5 XA1 18 89NL BCC PP13 [J IF NOT RED TAPE WORD 4 8=8= # 15 8=MW # TO SET UP TO PRINT IN REDTAPE WORD FORMAT 4 8?7G # 9 8?M6 ADX 5 TABC(1) 19 8#6Q ADN 5 REDTAPE [X5=POINTER TO REDTAPE TABLE 8 8#BJ ... ADX 5 FXPM1 4 8#LB # 14 8*62 # TO ANALYSE NEXT WORD IN IDENT. TABLE 4 8*KL # 7 8B5= PP7 SMO 5 18 8BJW LDX 7 0 [GET MNEMONIC FROM TABLE 16 8C4G BZE 7 PP15 [J IF NO MNEMONIC 8 8C## ... SMO FXPM1 9 8CJ6 TXU 7 UPARROW 19 8D3Q BCC PP8 [J IF END OF TABLE REACHED 7 8DHB LDCH 6 7 8 8F32 SRL 7 18 8 8FGL SBN 7 #72 18 8G2= BNZ 7 PP14 [J IF NOT RECURSIVE TABLE 4 8GFW # 20 8G_G # TO BACKSPACE IDENT. TABLE POINTER WHEN END OF RECURSIVE TABLE 4 8HF6 # 7 8HYQ PP10 SBN 5 2 7 8JDB SMO 5 17 8JY2 STOZ 0 [CLEAR MNEMONIC ENTRY 7 8KCL SBN 6 2 20 8KX= BNZ 6 PP10 [J IF NOT AT START OF RECURSION 7 8LBW ADN 5 2 19 8LWG STO 5 TABI(1) [RESET IDENT. TABLE POINTER 4 8MB6 # 21 8MTQ # TO PRINT REOATIVE ADR. BEFORE PRINT CONTENTS IN SPECIFIED FORMAT 4 8N*B # 9 8NT2 PP15 LDX 5 TABC(1) 8 8P4S ... SMO FXPM1 20 8P#L LDX 7 SPECIAL [J IF NOT PRINTING CHAPTER VHAIN 8 8PS= BZE 7 PP19 16 8Q?W ADX 5 TAB(1) [GET ACTUAL ADDR. 19 8QRG ...PP19 CALL 7 (JDECN) [CONVERT ADDR. TO DECIMAL 9 8R?6 LDX 5 TABI(1) 19 8RQQ SBN 5 1 [GET POINTER TO PRINT FORMAT 8 8S=B BRN PP16 4 8SQ2 # 21 8T9L # TO PRINT ADDR. AND CONTENTS TO FORMAT SPECIFIED IN AN IDENT /OR 8 8TP= # REDTAPE) TABLE 4 8W8W # 8 8WNG ...PP14 CALL 7 (JUP) 8 8X86 +2 20 8XMQ MVCH 5 5 [MOVE IDENT MNEMONICS INTO BUFFER 8 8Y7B STO 6 JPMOD 7 8YM2 PP16 SMO 5 7 8_6L LDCH 3 0 9 8_L= PP9 LDX 2 TAB(1) 20 925W ADX 2 TABC(1) [X2=ADDR. OF WORD TO BE CONVERTED 8 92KG BRN PP1 4 9356 # 10 93JQ # IF NOT A RED TAPE WORD 4 944B # 9 94J2 PP13 LDX 5 TABI(1) 17 953L BZE 5 PP6 [J IF NO IDENT. LIST 7 95H= LDN 7 2 19 962W ADS 7 TABI(1) [UPDATE IDENT. TABLE POINTER 8 96GG BRN PP7 4 9726 # 14 97FQ # IF NO SPECIFIED PRINT FORMAT FOR WORD 4 97_B # 18 98F2 PP8 STOZ TABI(1) [STOZ WHEN BRN FROM PP7 21 98YL PP6 LDX 5 TABC(1) [GET ADDR. RELATIVE TO START OF BLOCK 19 99D= ... CALL 7 (JDECN) [CONVERT ADDR. TO DEC(N) 19 99XW STOZ 3 [CONVERT CONTENTS TO OCTAL 8 9=CG BRN PP9 4 9=X6 # 18 9?BQ # CODING TO CONVERT CONTENTS OF ADDR. IN VARIOUS FORMATS 4 9?WB # 6 9#B2 # OCTAL 4 9#TL # 8 9**= ...ROCT LDX 3 JOCT 8 9*SW ...RN CALL 7 (JUP) 8 9B#G +2 8 9BS6 CALL 7 (3) 8 9C?Q BRN PP11 4 9CRB # 7 9D?2 # CHARACTERS 4 9DQL # 8 9F== ...RCHA CALL 7 (JUP) 8 9FPW +7 9 9G9G ... CALL 7 (JCHA) 8 9GP6 BRN PP11 4 9H8Q # 8 9HNB # DECIMAL(+N) 4 9J82 # 8 9JML ...RDECS CALL 7 (JUP) 8 9K7= +3 9 9KLW ... CALL 7 (JDECS) 8 9L6G BRN PP11 4 9LL6 # 8 9M5Q # DECIMAL(N.N) 4 9MKB # 8 9N52 ...RDECP LDX 3 JDECP 8 9NJL BRN RN 4 9P4= # 8 9PHW # DECIMAL(N/N) 4 9Q3G # 5 9QH6 RDECDEC 8 9R2Q ... CALL 7 (JUP) 8 9RGB +4 9 9S22 ... CALL 7 (JDECDEC) 8 9SFL BRN PP11 4 9S_= # 19 9TDW # IF GIVING SELECTIVE PRINT TO DECIDE WHETHER TO PRINT LINE 4 9TYG # 4 9WD6 SEL 8 9WMY ... SMO FXPM1 16 9WXQ LDX 5 TABC [WORD READY TO 15 9XCB SBN 5 1 [BE PRINTED 20 9XX2 LDX 4 0(2) [WORD IN SELECTIVE PRINT TABLE 21 9YBL BPZ 2 SEL1 [J IF CURRENT ENTY IN TOP HALF OG WD 8 9YW= SLL 4 12 8 9_64 ... SMO FXPM1 8 9_*W ANDX 2 MASK 16 9_TG ADN 2 1 [UPDATE POINTER 8 =2*6 BRN SEL2 8 =2MH ...SEL1 SMO FXPM1 8 =2_Y ... ADX 2 WORD 20 =3#B SEL2 SRL 4 12 [VALUE OF NEXT WORD TO BE PRINTED 8 =3J8 ... SMO FXPM1 9 =3S2 TXU 4 XATYPE 17 =4?L BCS SEL3 [J IF NOT ATYPE WORD 8 =4HD ... SMO FXPM1 19 =4R= STOZ PRINTYPES [SET TO OUTPUT TYPE MNEMONICS 7 =5=W SEL3 TXU 4 5 21 =5QG BCS SEL4 [J IF CURRENT LINE NOT TO BE PRINTED 8 =62# ... SMO FXPM1 20 =6=6 STO 2 SELIND [UPDATE SELECTIVE TABLE POINTR 8 =6PQ BRN PP18 18 =747 ...SEL4 CALL 7 (JPRINTX) [SUPPRESS CURRENT LINE 8 =7BJ ... SMO FXPM1 9 =7P2 TXU 4 SEVENS 18 =88L BCS PP20 [J IF NOT END OF TABLE 8 =8DD ... SMO FXPM1 18 =8N= STOZ PRINTING [TERMINATE PRINT OF ROW 8 =97W BRN PP18 4 =9MG # 4 ==76 # 21 ==LQ # CODING TO GET AND INSERT TYPE AND SUBTYPE MNEMONICS IN LISTING AND 13 =?6B # SET UP TABLES OF BLOCK IDENTIFIERS 4 =?L2 # 4 =#5L T 4 =#K= # 13 =*4W # READ DOWN TYPE AND SUBTYPE TABLES 4 =*JG # 8 =*Y9 ... LDX 1 FXPM1 12 =B?Y ... PMOVE PMTYPES,PMCHAINEND(1) 8 =BMM ... LDX 1 FXPM1 4 =C3B # 21 =CH2 # MOVE TYPE MNEMONICS INTO PRINT BUFFER & SET UP POINTER TO SUBTYPE 4 =D2L # 8 =DG= ...T1 CALL 7 (JUP) 8 =D_W +6 9 =FFG LDX 3 TAB(1) 16 =F_6 LDCH 2 ATYPE(3) [GET BLOCK TYPE 8 =G8Y ... SMO FXPM1 8 =GDQ MPY 2 THREE 8 =GNJ ... SMO FXPM1 18 =GYB ADX 3 PMCHAINEND [ADDR. OF TYPE MNEMONIC 8 =HD2 LDX 4 JPMOD 21 =HXL MVCH 3 8 [MOVE TYPE MNEMONIC INTO PR. BUFFER 8 =JC= LDX 7 0(3) 18 =JWW STO 7 TABI(1) [STORE SUBTYPE REFERENCE 8 =KBG ... CALL 7 (JUP) 8 =KW6 +14 7 =L*Q ADN 1 1 7 =LJ2 ... LDX 7 1 8 =LQ= ... SBX 7 FXPM1 8 =LYG ... SMO FXPM1 18 =M6Q ... TXU 7 XBLCOUNT [J IF MORE BLOCKS IN ROW 8 =M*2 BCS T1 8 =MJS ... SMO FXPM1 19 =MSL LDX 7 PRINTYPES [J IF NOT REQUIRED TO PRINT 16 =N#= BNZ 7 T8 [TYPE MNEMONICS 16 =NRW ... CALL 7 (JPRINT1) [PRINT A LINE 8 =P?G BRN T12 4 =PR6 # 18 =Q=Q # TO GET SUBTYPE MNEMONIC & B/S ADDR. OF IDENT TABLES 4 =QQB # 17 =R7B ...T8 CALL 7 (JPRINTX) [CLEAR PRINT BUFFER 8 =RJB ...T12 LDX 1 FXPM1 21 =R_B ... PMSUBSREAD PMCHAINEND(1) [READ DOWN SUBTYPE MNEMONIC TABLE 8 =SBB ... LDX 1 FXPM1 8 =SRB ... CALL 7 (JUP) 8 =T8G +2 9 =TN6 T6 LDX 2 TAB(1) 7 =W7Q BCHX 2 / 17 =WMB LDCH 7 ATYPE(2) [GET SUBTYPE OF BLOCK 9 =X72 LDXC 4 TABI(1) 20 =XLL BCS T3 [J IF NO SUBTYPE BUT IDENT. TABLE 15 =Y6= BZE 4 T3 [J IF NEITHER 7 =YKW STOZ 3 18 =_5G SRC 34 12 [X4=LENGTH OF S/F ENTRIES 19 =_K6 SRL 3 12 [X3=ADDR. RELATIVE TO PMTYPES 8 =_SY ... SMO FXPM1 18 ?263 ... ADX 3 PMCHAINEND [POINTS TO SUBTYPE TABLE 8 ?2C7 ... SMO FXPM1 8 ?2PJ ... SBX 3 ZLPMT 19 ?342 T5 LDCH 6 0(3) [GET SUBTYPE FROM TABLE ENTRY 7 ?3HL TXU 6 7 17 ?43= BCC T4 [J IF REQUIRED ENTRY 7 ?4GW ... ADN 3 3 17 ?52G ... SBN 4 3 [SEARCH DOWN TABLE 8 ?5G6 BNZ 4 T5 4 ?5JP ...# 14 ?5M# ...# TO MOVE 'NOT LISTED' INTO THE BUFFER 4 ?5PX ...# 8 ?5SH ...T7 SMO FXPM1 17 ?66Y ... LDN 3 NOTLISTED [IF ENTRY NOT FOUND 21 ?6H_ ... BCHX 3 / [X3 POINTS TO THE 1ST CHAR OF 'NOT L 8 ?6_2 ... CALL 7 (JUP) 20 ?7DL ... +4 [4 SPACES BEFORE TYPE OR SUBTYPE 8 ?7Y= LDX 4 JPMOD 19 ?8CW ... MVCH 3 11 [MOVE NOT LISTED INTO BUFFER 8 ?8XG LDX 4 0(3) 8 ?9C6 ... CALL 7 (JUP) 21 ?9WQ ... +16 [NO.OF CHAR.POS. TO UPDATE BUFFER 8 ?=BB BRN T2 4 ?=CJ ...# 15 ?=DQ ...# TO MOVE SUBTYPE MNEMONIC INTO THE BUFFER 4 ?=FY ...# 21 ?=H6 ...T4 BCHX 3 / [X3 POINTS TO THE 1ST CHAR OF SUBTYP 8 ?=J# ... CALL 7 (JUP) 8 ?=KG ... +4 8 ?=LN ... LDX 4 JPMOD 21 ?=MW ... MVCH 3 7 [MOVE SUBTYPE MNEMONIC INTO BUFFER 8 ?=P4 ... LDX 4 0(3) 8 ?=Q= ... CALL 7 (JUP) 8 ?=RD ... +16 8 ?=SL ... BRN T2 19 ?=W2 T3 BNZ 7 T7 [J IF SUBTYPE VALUE NOT #00 20 ??*L ... CALL 7 (JUP) [UPDATE PRINT BUFFER MOD. IF NO 14 ??T= +20 [SUBTYPE 19 ?##W T2 STO 4 TABI(1) [STORE IDENT. TABLE REFERENCE 7 ?#SG ADN 1 1 7 ?*2Q ... LDX 7 1 8 ?*92 ... SBX 7 FXPM1 8 ?*C= ... SMO FXPM1 9 ?*KG ... TXU 7 XBLCOUNT 18 ?*RQ BCS T6 [J IF STILL BLOCKS IN ROW 8 ?B3J ... SMO FXPM1 19 ?B?B LDX 7 PRINTYPES [J IF NOT REQUIRED TO PRINT 16 ?BR2 BNZ 7 T9 [TYPE MNEMONICS 16 ?C=L ... CALL 7 (JPRINT1) [PRINT A LINE 4 ?CQ= # 13 ?D9W # CODING TO READ DOWN IDENT. TABLES 4 ?DPG # 18 ?F96 ...T9 LDX 1 FXPM1 [ MODIFIER+BLOCKCOUNT 17 ?FNQ ... LDX 4 PMCHAINEND(1) [START ADDR. IN CORE 17 ?G8B T11 LDX 6 TABI(1) [B/S ADDR. OF TABLE 16 ?GN2 BZE 6 T10 [J IF NO TABLE 14 ?H7L LDN 0 JREP2+1 [LENGTH 8 ?H=Q ... SMO FXPM1 8 ?H*W ... STO 1 UNE 8 ?HF2 ... SMO FXPM1 8 ?HJ6 ... STO 4 XFOUR 10 ?HM= ... PMBSADD GEO,0,0,4,6 8 ?HQB ... SMO FXPM1 8 ?HTG ... LDX 4 XFOUR 8 ?HYL ... SMO FXPM1 8 ?J3Q ... LDX 1 UNE 20 ?JHB ... STO 4 TABI(1) [IDENT. TABLE ADDRESS IN CORE 19 ?K32 ... ADN 4 JREP2+1 [CORE ADDRESS OF NEXT TRANSFER 7 ?KKQ T10 ADN 1 1 7 ?KS2 ... LDX 7 1 8 ?L2= ... SBX 7 FXPM1 8 ?L8G ... SMO FXPM1 9 ?LBQ ... TXU 7 XBLCOUNT 18 ?LK2 BCS T11 [J IF STILL BLOCKS IN ROW 8 ?M4L ... SMO FXPM1 9 ?MJ= LDX 7 PRINTYPES 18 ?N3W BZE 7 PP3 [J IF TYPES RTC. PRINTED 20 ?NB? ... CALL 7 (JPRINTX) [OTHERWISE CLEAR PRINT BUFFER & 8 ?NNN ... SMO FXPM1 16 ?P36 STOZ PRINTYPES [RESET INDICATOR 8 ?PGQ BRN PP3 4 ?Q2B # 19 ?QG2 # ROUTINE TO SEARCH SPECIFIED CHAIN/RING AND PRINT BLOCKS AS 7 ?Q_L # REQUIRED 12 ?RF= # ENTRY VIA PMCHAINP MACRO 9 ?RYW # X2=LINK 12 ?SDG # EXIT ALL ACCS UNDEFINED 4 ?SY6 # 5 ?TCQ START 4 ?TXB # 9 ?WC2 # ZEROISE INDICATORS 4 ?WWL # 10 ?X=* ... STOZ XBLCOUNT(1) 9 ?XL4 ... STOZ XTYPES(1) 9 ?X_R ... STOZ XIND(1) 4 ?Y*G # 15 ?YT6 # GET %A,%C,AND%F OF PMCHAINP MACRO PARAMS 4 ?_#Q # 8 ?_Q6 ... LDX 3 0(2) 18 #27G ... DSA 3 XBASE(1) [BASE ADDR. OF CHAIN/RING 20 #2JW ... SRL 34 16 [X3 = NO. OF CHARS. IN HEADING 7 #32= ... LDX 0 3 8 #3CL ... SRL 4 20 9 #3T2 ... TXU 4 ONE(1) 8 #4=G BCS ST2 18 #4Q6 ... STO 4 XTYPES(1) [TYPES TO BE PRINTED IND. 7 #59Q ... SBN 4 1 18 #5PB ...ST2 STO 4 SPECIAL(1) [CHAPTER CHAIN PRINT IND. 4 #692 # 14 #6NL # SET UP AND PRINT CHAIN/RING HEADING 4 #78= # 8 #7MW LDN 2 1(2) 8 #87G LDX 3 JPMOD 7 #8M6 BCHX 3 / 7 #96Q SMO 0 20 #9LB MVCH 2 0 [MOVE HEADING INTO PRINT BUFFER 16 #=62 ... CALL 7 (JPRINT2) [PRINT HEADING 9 #=KL ... CALL 7 (JPRINT1) 4 #?5= # 14 #?JW # GET %D AND %E OF PMCHAINP MACRO PARAMS 4 ##4G # 7 ##J6 SLC 2 2 20 #*3Q ADN 2 3 [POINT X2 AT NEXT WORD IN MACRO 15 #*HB SRC 2 2 [EXPANSION 19 #B32 LDX 3 0(2) [NO. OF WORDS FROM START OF 18 #BGL ... DSA 3 XDIST(1) [BLOCK TO RING ELEMENT 8 #C2= BNG 3 ST1 8 #CFW SRL 3 12 8 #CTK ... SMO FXPM1 20 #D9# ... LDX 3 0(3) [LENGTH TO BE PRINTED FROM EACH 19 #DK3 ...ST1 STO 3 XLEN(1) [BLOCK OR SELECTED PRINT IND. 8 #DYQ LDN 6 1(2) 15 #FDB ... STO 6 ZLINKD(1) [STORE LINK 4 #FY2 # 16 #GCL # GET START ADDR. OF FIRST BLOCK TO BE PRINTED 4 #GX= # 17 #HBW ... LDX 2 XBASE(1) [BASE OF CHAIN/RING 16 #HWG LDX 2 0(2) [CONTENTS OF BASE 10 #JB6 ... STOZ XBLCOUNT(1) 15 #JTQ TXL 2 CORES [J IF ILLEGAL 8 #K*B BCC RB 9 #KT2 ... TXL 2 X45(1) 8 #L#L BCS RB 18 #LS= ... LDX 3 XBASE(1) [STORE BACKWARD POINTER 19 #M?W ... STO 3 XBACKPR(1) [WHEN SEARCH ROUTINES ENTERED 8 #MRG BRN R2 4 #N?6 # 20 #NQQ # GET START ADDRS OF BLOCKS TO BE PRINTED AND STORE IN TAB TABLE 4 #P=B # 9 #PQ2 ...R LDN 3 SEARCH(1) 9 #Q9L ... LDX 7 XIND(1) 18 #QP= BZE 7 R1 [J IF FORWARD CHAINING 10 #R8W ... LDN 3 SEARCHB(1) 18 #RNG R1 CALL 0 (3) [GET ADDR. OF NEXT BLOCK 17 #S86 BRN RB [J IF BREAK IN CHAIN 4 #SMQ R2 9 #T7B ... TXU 2 XBASE(1) 19 #TM2 BCC REND [J IF END OF CHAIN REACHED 9 #W6L ... LDX 7 XLEN(1) 19 #WL= BNG 7 R3 [J IF SELECTED PRINT REQUIRED 9 #X5W ... LDX 3 XDIST(1) 9 #XKG ... TXU 3 SEVENS(1) 21 #Y56 BCS R10 [IF NO. OF WORDS TO START OF BLOCK IN 18 #YJQ LDX 3 2(2) [3RD WORD OF RING ELEMENT 17 #_4B R10 SBX 2 3 [START ADDR. OF BLOCK 8 #_J2 TXL 2 CORES 17 *23L BCC RB [J IF ILLEGAL ADDR. 10 *2B3 ...R3 SMO XBLCOUNT(1) 19 *2ND ... STO 2 TAB(1) [STORE START ADDR. OF BLOCK 8 *32W BNG 7 R14 9 *3GG ... LDX 3 XDIST(1) 9 *426 ... TXU 3 SEVENS(1) 8 *4FQ BCC R14 7 *4_B ADX 2 3 7 *5?6 ...R14 LDN 3 1 10 *5JW ... ADS 3 XBLCOUNT(1) 7 *5WL ... LDN 3 6 10 *68B ... SBX 3 XBLCOUNT(1) 18 *6G6 ... BNZ 3 R [ J IF <6 BLOCKS SET UP 18 *6RW ... STO 2 TABNEXT(1) [KEEP ADDR. OF LAST BLOCK 8 *75L ... BRN R98 4 *7CG # 8 *7X6 # PRINT BLOCKS 4 *8BQ # 10 *8WB ...R9 LDX 3 XBLCOUNT(1) 18 *9B2 ... BZE 3 R4 [ J IF NOTHING TO PRINT 17 *9TL ...R98 LDX 3 MNEMON(1) [ PRINT ROW HEADING ? 8 *=*= ... BZE 3 R99 20 *=SW ... CALL 7 (JUP) [ UPDATE PRINT BUFFER POINTER 8 *#?Q +3 17 *#RB ... LDX 5 ROWCNT(1) [ UPDATE ROW COUNT 8 **?2 ADN 5 1 10 **QL ... STO 5 ROWCNT(1) 21 *B== ... CALL 7 (JDECN) [ CONVERT ROW NO. AND PUT IN BUFFER 16 *BPW ... CALL 7 (JUP) [ INSET HEADINGS 8 *C9G -8 20 *CP6 ... LDN 6 MNEMON(1) [ PUT CHAIN MNEMONIC INTO BUFFER 8 *D8Q ... LDX 7 JPMOD 8 *DNB ... MVCH 6 4 17 *F82 ... CALL 7 (JPRINT1) [ PRINT ROW HEADING 9 *FML ...R99 LDX 7 XLEN(1) 19 *GLW BNG 7 R5 [J IF SELECTED PRINT REQUIRED 15 *H6G CALL 0 PRINT [PRINT BLOCKS 8 *HL6 BRN R4 4 *J5Q # 13 *JKB # TO GIVE SELECTED PRINT OF BLOCKS 4 *K52 # 7 *KJL ...R5 LDN 2 0 7 *L4= LDN 7 1 7 *LDQ ...R6 ADN 2 1 8 *LT= ... SMO FXPM1 15 *M9Q ... STO 7 TABL-1(2) [SET TO PRINT 17 *ML= ... TXU 2 XBLCOUNT(1) [JUST ONE WORD,I.E. 17 *N2Q BCS R6 [RING ELEMENT ADDR. 9 *NGB CALL 0 PRINTB 7 *P22 ... LDN 2 0 9 *PFL ... LDX 6 ZLINKD(1) 21 *P_= ... STO 6 SELIND(1) [START ADDR OF SELECTIVE PRINT TABLE 7 *QDW ...R8 ADN 2 1 20 *QYG ... LDX 3 XDIST(1) [NO. OF WORDS TO START OF BLOCK 9 *RD6 ... TXU 3 SEVENS(1) 8 *RXQ BCS R11 8 *S=7 ... SMO FXPM1 21 *SJJ ... LDX 3 TAB-1(2) [IF NO. OF WORDS TO START OF BLOCK IN 18 *SX2 LDX 3 2(3) [3RD WORD OF RING ELEMENT 8 *T=P ...R11 SMO FXPM1 18 *TLD ... SBS 3 TAB-1(2) [SET TAB TABLE POINTING 17 *W27 ... TXU 2 XBLCOUNT(1) [AT START OF BLOCKS 8 *W*W BCS R8 20 *WTG ... STO 2 PRINTYPES(1) [IND. DON'T PRINT TYPE MNEMONICS 21 *X*6 [UNLESS SPECIFIED IN SELECT. TABLE 20 *XSQ CALL 0 PRINTA [GIVE SELECTED PRINT OF BLOCKS 4 *Y#B # 8 *YS2 # END OF CHAIN 4 *_?L # 9 *_R= ...R4 LDXC 7 XIND(1) 18 B2=W BCC R12 [J IF NOT END OF CHAIN 9 B2QG ... LDX 7 XLEN(1) 19 B3=6 ... LDX 2 ZLINKD(1) [ START ADD OF SELECT. TABLE 19 B3PQ ... BPZ 7 (2) [ EXIT IF NON-SELECTIVE PRINT 21 B49B R13 LDX 6 0(2) [GET NEXT WORD OF SELECTIVE PRINT TAB 17 B4P2 ADN 2 1 [UPDATE TABLE POINTER 15 B58L SRL 67 12 [DIVIDE TWO 16 B5N= SRL 7 12 [TABLE ENTRIES 9 B67W ... TXU 6 SEVENS(1) 17 B6MG BCC (2) [EXIT IF END OF TABLE 9 B776 ... TXU 7 SEVENS(1) 17 B7LQ BCC (2) [EXIT IF END OG TABLE 8 B86B BRN R13 4 B8L2 # 11 B95L # PREPARE TO PRINT NEXT ROW 4 B9K= # 18 B=4W R12 BZE 7 R7 [J IF FORWARD 3HAINING 7 B=JG SBN 7 1 20 B?46 BZE 7 R7 [J IF 'BACKWARD CHAINING' HEADING 14 B?HQ [PRINTED 9 B#3B ... STO 7 XIND(1) 9 B#H2 ... LDN 6 NAMEA(1) 8 B*2L LDX 7 JOZ 7 B*G= ADN 7 1 15 B*_W MVCH 6 17 [SET UP AND 19 BBFG ... CALL 7 (JPRINT2) [PRINT 'BACKWARD CHAINING' 9 BB_6 ... CALL 7 (JPRINT1) 10 BCDQ ... STOZ XBLCOUNT(1) 10 BCYB ... LDN 3 SEARCHC(1) 21 BDD2 ... LDX 2 XBASE(1) [START SEARCHING FROM BACK OF CHAIN 8 BDXL BRN R1 19 BFC= ...R7 LDX 2 TABNEXT(1) [ADDR. OF LAST BLOCK PRINTED 18 BFWW ... STOZ XBLCOUNT(1) [BLOCK COUNT 7 BGBG BRN R 4 BGW6 # 9 BH*Q # IF BREAK IN CHAIN 4 BHTB # 9 BJ*2 ...RB LDX 7 XIND(1) 20 BJSL ... BNZ 7 REND [J IF A BREAK HAS ALREADY OCCURED 19 BK#= LDN 7 2 [SET TO BACKWARD CHAIN AND 21 BKRW ...RB1 STO 7 XIND(1) [ALSO PRINT 'BACKWARD CHAINING' HEAD. 8 BL?G BRN R9 4 BLR6 # 11 BM=Q # TO SET END OF CHAIN IND. 4 BMQB # 8 BN=2 REND LDCT 7 256 8 BNPL BRN RB1 4 BNR8 ...# 15 BNSQ ...# ROUTINE TO INITIALISE PMCHAINEND AND ZLPMT 4 BNW# ...# 8 BNXW ...XINIT LDX 1 FXPM1 10 BN_D ... ADS 1 PMCHAINEND(1) 10 BP32 ... PMDLGET PMTYPES,,2 9 BP4J ... STO 2 ZLPMT(1) 7 BP66 ... EXIT 0 0 4 BP7N ...# 4 BP9= # 17 BPNW # ENTRY POINT TO PRINT FOLLOWING CHAINS,RING ETC. 4 BQ8G # 6 BQN6 XK1PMCHAINS 4 BR7Q # 8 BRCJ ... CALL 0 XINIT 18 BRMB PMCHAINP 16,FREE STORE CHAIN,BFREE,FPTR,ZJFREE,,FREE 10 BRPK ... SEGENTRY K90PMCHAINS 9 BRRS ... BRN X91PMCH 17 BRW3 ... PMCHAINP 15,TEMP FREE CHAIN,0,FPTR,ZJFTEM,,FTEM 17 BRY= ... PMCHAINP 16,FAST SMALL CHAIN,0,FPTR,ZJFAST,,FAST 5 BS2F ...X91PMCH 10 BS4N ... SEGENTRY K91PMCHAINS 6 BS72 #SKI CAMK7 18 BSLL PMCHAINP 17,FROZEN FREE CHAIN,BCAFREZ,FPTR,ZJFFC,,FROZ 17 BT6= PMCHAINP 13,CHAPTER CHAIN,BCHAP,FPTR,ZJCHAP,2,CHAP 9 BTKW ... BRN (JPMSEG) 4 BW5G # 17 BWK6 # ENTRY POINT TO PRINT FOLLOWING CHAINS,RING ETC. 4 BX4Q # 6 BXJB XK2PMCHAINS 4 BY42 # 8 BY?S ... CALL 0 XINIT 5 BY*5 ...#SKI G3 4 BYBB ...( 21 BYDY ... PMCHAINP 24,FREE PROGRAM BLOCK CHAIN,BOBJUNUSE,FPTR,ZJFPBCH,1,FPBC 4 BYG9 ...) 17 BYHL PMCHAINP 13,THE JOB QUEUE,BJOBQ,FPTR,ZJOBQ,1,JOBQ 18 B_3= PMCHAINP 14,TEMPORARY HLSQ,BHTEMP,FPTR,ZBHTEMP,,TEMP 7 B_8D ...#UNS FSHTEST 19 B_*L ... PMCHAINP 20,THE SECOND JOB QUEUE,BJOBQB,FPTR,ZJOBQ,1,JBQB 19 B_GW PMCHAINP 20,HIGH LEVEL SCH QUEUE,BHLSQ,FPTR,ZJHLSQ,1,HLSQ 19 C22G PMCHAINP 19,MISCELLANEOUS CHAIN,BMISC,FPTR,ZJMIS,1,MISC 7 C27N ...#UNS FSHTEST 21 C2#W ... PMCHAINP 29,THE OTHER MISCELLANEOUS CHAIN,BMISCB,FPTR,ZJMIS,1,MISB 18 C2G6 PMCHAINP 14,THE FILE CHAIN,BFILE,FPTR,ZJFILE,1,FILE 7 C2M# ...#UNS FSHTEST 17 C2SG ... PMCHAINP 14,THE IPLJ CHAIN,BIPL,FPTR,ZJFILE,1,IPLJ 19 C2_Q PMCHAINP 18,THE HALFOPEN CHAIN,BHALF,FPTR,ZJHALF,1,HALF 17 C3FB PMCHAINP 14,OFF LINE CHAIN,BOLC,FPTR,ZJBOLC,1,OFFL 18 C3_2 PMCHAINP 15,THE INDEX CHAIN,BINDEX,FPTR,ZJINDEX,1,INDX 19 C4DL PMCHAINP 14,CONSOLE OUTPUT,BCONSOUT,FPTR,ZJCONSOUT,1,CONS 20 C4Y= PMCHAINP 23,CARTRIDGE CONTROL CHAIN,BCCB,FPTR,ZJCART,1,CART 6 C5CW #SKI ALFMK7 18 C5XG PMCHAINP 18,THE LISTFILE CHAIN,BLF,FPTR,ZJLF,1,LIST 15 C6C6 PMCHAINP 13,ACTIVITY LIST,K3,CHAINADD,N,1 8 C6WQ PMVAL ATYPE 19 C6XB ...# THE FOLLOWING 4 CALLS OF PMCHAINP AND PMVAL ARE 18 C6Y2 ...# USED BY THE INTEGRATED COORDINATOR-TIMESHARER 16 C6YL ...# (ICT) TO PRINT 4 NEW ACTIVITY LISTS 19 C6_= ...# THE ICT RESTORE TIME MACRO WILL ISSUE MENDS TO 12 C6_W ...# THIS AREA AS FOLLOWS 12 C72G ...# (A) IN THE ON CASE 14 C736 ...# (1) MEND THE BRN TO A NULL 18 C73Q ...# (2) MEND THE K3 PRESETS TO THE APPROPRIATE 13 C74B ...# ACTLIST ADDRESS 12 C752 ...# (B) IN THE OFF CASE 16 C75L ...# (1) MEND THE NULL BACK TO A BRN 4 C76= ...# 10 C76W ... FIXTRA K100CHAINS 8 C77G ... BRN XICT 15 C786 ... PMCHAINP 14,ACTIVITY LIST0,K3,CHAINADD,N,1 8 C78Q ... PMVAL ATYPE 15 C79B ... PMCHAINP 14,ACTIVITY LIST1,K3,CHAINADD,N,1 8 C7=2 ... PMVAL ATYPE 15 C7=L ... PMCHAINP 14,ACTIVITY LIST2,K3,CHAINADD,N,1 8 C7?= ... PMVAL ATYPE 15 C7?W ... PMCHAINP 14,ACTIVITY LIST3,K3,CHAINADD,N,1 8 C7#G ... PMVAL ATYPE 4 C7#S ...XICT 10 C7*6 ... FIXTRA K101CHAINS 6 C7BB #SKI IPL 4 C7W2 ( 7 C838 ...#UNS FSHTEST 4 C88B ...#SKI 19 C8*L PMCHAINP 16,7600 SYSTEM RING,BIPL,JOBRING,ZJIPLJ,1,IPLJ 18 C8T= PMCHAINP 15,7600 SEND CHAIN,BIPLS,FPTR,ZJIPLS,1,IPLS 19 C9#W PMCHAINP 18,7600 RECEIVE CHAIN,BIPLR,FPTR,ZJIPLR,1,IPLR 4 C9SG ) 14 C=#6 PMCHAINP 10,GHOST LIST,K8,CHAINADD,N,1 8 C=RQ PMVAL ATYPE 13 C??B PMCHAINP 12,PROGRAM RING,BPROG,0,N 16 C?R2 PMCHAINP 12,WAITING LIST,FLOWQ,CHAINADD,N,1 8 C#=L PMVAL ATYPE 17 C#K3 ... PMCHAINP 13,JOURNAL CHAIN,BSJC,FPTR,ZJJRNL,1,JRNL 9 C#XD ... BRN (JPMSEG) 4 C*9W # 18 C*PG # ENTRY POINT TO PRINT THE FOLLOWING CHAINS, RINGS, ETC. 4 CB96 # 5 CBNQ #SKI G4 4 CC8B ( 6 CCN2 XK3PMCHAINS 4 CD7L # 8 CDCD ... CALL 0 XINIT 19 CDM= PMCHAINP 16,PAGE USAGE CHAIN,BUSAGE,FPTR,ZJUSAGE,1,USAG 19 CF6W PMCHAINP 20,PURE PROCEDURE CHAIN,BSUD,FPTR,ZJPURE,1,PURE 6 CFBN ...#UNS G4VOPA 20 CFLG ... PMCHAINP 20,OBJECT PROGRAM CHAIN,BOBJPROG,FPTR,ZJOBJCH,1,OPCH 9 CFW# ... BRN (JPMSEG) 4 CG66 ) 4 CGKQ # 5 CH5B REDTAPE 10 CH=4 8H00000000 10 CHBQ 8HBPTR 3 10 CHN6 8HASIZE 3 10 CH_G 8HAFLAG 0 10 CJ=W 8HATYPE 0 10 CJJ= 8HBACK1 3 10 CJTL 8HBACK2 0 10 CK72 8HALOGL 3 10 CKDB 8HARGNO 0 9 CKPQ 4H____ 4 CL36 # 4 CM2B # 6 CMG2 ...ZPMCHAINS 4 CM_L # 4 CNF= #END 8 ____ ...07134511000700000000