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