5 22FL ...#SKI G3 4 22_= ...( 8 23DW ...#OPT K0PMOBJIII=0 11 23YG ...#LIS K0PMOBJIII>K0POST>K0ALLGEO 4 24D6 ...# 17 24XQ ...#SEG PMOBJIII84 [KAREL KOSKUBA - DIAG 4 25CB ...# 19 25X2 ...# THIS SEGMENT LISTS THE OBJECT PROGRAMS IN A G3 POSTMORTEM 4 26BL ...# 10 26W= ... 8HPMOBJIII 4 27*W ...# 9 27TG ...# ENTRY POINT TABLE 4 28*6 ...# 11 28SQ ... SEGENTRY K1PMOBJIII,XK1PMOBJIII 4 29#B ...# 7 29S2 ...#OPT JOBJ=128 8 2=?L ...#OPT JXOBJPROG=32 6 2=R= ...#OPT JCA=9 8 2?=W ... FIXTRA JJOBJ 18 2?QG ...ZJOBJ +JOBJ [SIZE OF INITIAL PRINT 19 2#=6 ...ZOBJ +JXOBJPROG [SIZE OF AREA AROUND [WORD 8] 17 2#PQ ...ZJCA +JCA [SIZE OF CONTROL AREA 12 2*9B ...MESSA 15HOBJECT PROGRAMS 13 2*P2 ...MESSB 22HOPERAND OF SMO ILLEGAL 15 2B8L ...MESSC 29HAREA AROUND ADDRESS IN WORD 8 17 2BN= ...MESSD 35HCONTROL AREA OF OBJECT PROGRAM PERI 9 2C7W ...MESSE 7H A1D 9 2CMG ...MESSF 7H A1D+8 14 2D76 ...MESSG 26HCONTENTS OF WORD 8 ILLEGAL 14 2DLQ ...MESSH 23HOPERAND OF PERI ILLEGAL 6 2DQM ...#UNS CA1D 4 2DWJ ...#SKI 4 2F2F ...( 8 2F6B ...XA1D +A1D 9 2FL2 ...XA1D8 +A1D+8 4 2FTS ...) 18 2G5L ...REDTAPEPTR +0 [ POINTER TO REDTAPE 15 2GK= ...PTR +0 [ POINTER TO PROGTAB 10 2H4W ...SEGEND +OPMOBJIII 11 2HJG ...OBJPROG +AOBJPROG/#100 9 2J46 ...XBAT +BAT/#100 10 2JHQ ...OBRES +AOBRES/#100 8 2K3B ...XACT #60 9 2KH2 ...MASK #17777777 9 2L2L ...UPARROWS 4H____ 8 2LG= ...XA1 +A1 16 2L_W ...X0STORE +0 [ STOREAGE FOR X0 8 2MFG ...XLINK2 +0 8 2M_6 ...XLINK7 +0 20 2NDQ ...OPERAND +0 [USED WHEN INVESTIGATING 'PERI' 20 2NYB ...WORD8 +0 [ADDR. HELD IN PROGRAM'S WORD 8 19 2PD2 ...XCOUNT +0 [NO. OF WORDS TO BE PRINTED 20 2PXL ...PREVIOUS +0 [CONTENTS OF LAST WORD PRINTED 20 2QC= ...RELADD +0 [RELATIVE ADDR. IN AOBJPROG BLOCK 8 2QWW ...XLIMIT +0 19 2RBG ...START +0 [HOLDS START ADDRESS OF CHAIN 19 2RW6 ...ZADD +0 [HOLDS ADDR. OF CURRENT BLOCK 21 2S*Q ...XBACKPR +0 [LAST BLOCK ADDRESS: USED IN SEARCH 21 2STB ...REL +0 [NON-ZERO IF OBJ. PROG. ADDR. NEEDED 18 2T*2 ...XIND +0 [-VE BLANKET ENCOUNTERED 18 2TSL ... [=1 BACKWARD CHAINING 21 2W#= ... +0 [-VE DON'T PRINT AREA AROUND WORD 8 18 2WRW ... [=1 FIRST WORD OF AREA 9 2X?G ... FIXTRA JPROGTAB 5 2XR6 ...#REP 4 8 2Y=Q ... +0 5 2YQB ...WHICHWAY 14 2_=2 ... LDN 3 SEARCH(1) [FORWARDS 15 2_PL ... LDN 3 SEARCHB(1) [BACKWARDS 4 329= ...# 20 32NW ...# CODING TO PRINT CONTENTS OF REDTAPE IN FOUR POSSIBLE FORMATS 4 338G ...# 14 33N6 ...OCT CALL 7 (JOCT) [OCTAL 8 347Q ... BRN OBJ14 8 34MB ...RCHAR CALL 7 (JUP) 8 3572 ... +5 15 35LL ... CALL 7 (JCHA) [CHARACTER 8 366= ... BRN OBJ14 8 36KW ...RDECS CALL 7 (JUP) 8 375G ... +1 18 37K6 ... CALL 7 (JDECS) [SIGNED DECIMAL INTEGER 8 384Q ... BRN OBJ14 21 38JB ...RDECP CALL 7 (JDECP) [DECIMAL WITH CHARACTER POSITION 8 3942 ... BRN OBJ14 8 39HL ...RTNS BRN OCT 8 3=3= ... BRN RCHAR 8 3=GW ... BRN RDECS 8 3?2G ... BRN RDECP 4 3?G6 ...# 16 3?_Q ...# ROUTINE TO GET ADDRESS OF NEXT BLOCK IN CHAIN 13 3#FB ...# SEARCH :-FORWARD CHAINING 14 3#_2 ...# SEARCHB:-BACKWARD CHAINING 4 3*DL ...# 14 3*Y= ...# ENTRY X2=ADDRESS OF CURRENT BLOCK 7 3BCW ...# EXIT 0 1 14 3BXG ...# X2=X3=ADDRESS OF NEXT BLOCK 16 3CC6 ...# EXIT 0 0 [BREAK IN CHAIN 4 3CWQ ...# 5 3DBB ...SEARCH 9 3DW2 ... LDX 3 BPTR(2) 17 3F*L ... TXU 3 XBACKPR(1) [J IF BPTR IN CURRENT 17 3FT= ... BCS S1 [BLOCK IS INCORRECT 19 3G#W ... LDX 3 FPTR(2) [GET ADDRESS OF NEXT BLOCK 20 3GSG ...S2 STO 2 XBACKPR(1) [STORE ADDRESS OF CURRENT BLOCK 7 3H#6 ... PMCORES 3,S1 7 3HRQ ... LDX 2 3 7 3J?B ... EXIT 0 1 16 3JR2 ...S1 EXIT 0 0 [BREAK IN CHAIN 5 3K=L ...SEARCHB 9 3KQ= ... LDX 3 FPTR(2) 17 3L9W ... TXU 3 XBACKPR(1) [J IF FPTR OF CURRENT 17 3LPG ... BCS S1 [BLOCK IS INCORRECT 19 3M96 ... LDX 3 BPTR(2) [GET ADDRESS OF NEXT BLOCK 8 3MNQ ... BRN S2 4 3N8B ...# 20 3NN2 ...# ROUTINE TO FIND OUT IF AN INSTRUCTION IS A 'SMO' OR A 'PERI' 19 3P7L ...# AND IF SO CALCULATE THE VALUE OF N(M) FOR THAT INSTRUCTION 16 3PM= ...# ENTRY X4 CONTAINS ADDRESS OF INSTRUCTION 19 3Q6W ...# EXIT 7 0 [NEITHER INSTRUCTION FOUND 14 3QLG ...# EXIT 7 1 ['PERI' 14 3R66 ...# EXIT 7 2 ['SMO' 11 3RKQ ...# X5=VALUE OF N(M) 11 3S5B ...# X2,X3 UNDEFINED 4 3SK2 ...# 5 3T4L ...OMSIREP 7 3TJ= ... SMO 4 16 3W3W ... LDX 2 0 [GET INSTRUCTION 16 3WHG ... SRL 23 14 [X AND F IN X2 15 3X36 ... SRL 3 10 [N(M) IN X3 7 3XGQ ... LDN 5 0 15 3Y2B ... DSA 3 5 [SAVE OPERAND 14 3YG2 ... SRL 3 12 [M IN X3 16 3Y_L ... BZE 3 OM [J IF NO MODIFIER 6 3_38 ...#UNS CA1D 4 3_4Q ...( 18 3_6# ... ADX 3 CA1D [GET CONTENTS OF MODIFIER 17 3_7W ... SMO ZADD(1) [AND ADD TO OPERAND 8 3_9D ... ADX 5 0(3) 4 3_?2 ...) 6 3_#J ...#UNS CA1D 4 3_B6 ...#SKI 4 3_CN ...( 18 3_F= ... SMO ZADD(1) [GET CONTENTS OF MODIFIER 17 3_YW ... ADX 5 A1D(3) [AND ADD TO OPERAND 4 428N ...) 14 42DG ...OM ANDN 2 #177 [F IN X2 8 42Y6 ... SBN 2 #117 15 43CQ ... BZE 2 OM1 [J IF 'SMO' 8 43XB ... SBN 2 #040 15 44C2 ... BZE 2 OM2 [J IF 'PERI' 14 44WL ... EXIT 7 0 [NEITHER 14 45B= ...OM2 EXIT 7 1 ['PERI' 9 45TW ...OM1 ADX 5 ZADD(1) 6 45_2 ...#UNS CA1D 20 4646 ... ADX 5 CA1D [GEORGE ADDR. OF N(M) OF 'SMO' 6 467= ...#UNS CA1D 4 46=B ...#SKI 20 46*G ... ADN 5 A1D [GEORGE ADDR. OF N(M) OF 'SMO/ 7 46T6 ... SMO 5 19 47#Q ... LDX 5 0 [CONTENTS OF N(M) OF 'SMO' 14 47SB ... EXIT 7 2 ['SMO' 4 48#2 ...# 20 48RL ...# ROUTINE TO GIVE A CORE PRINT GIVEN A START ADDRESS AND COUNT 17 49?= ...# IT ALSO CHECKS FOR THE ADDRESSES 'A1D' AND 'A1D+8' 19 49QW ...# IF TWO OR MORE ADJACENT WORDS ARE FOUND THE SAME,THE FIRST 19 4==G ...# IS PRINTED FOLLOWED BY A BLANK LINE AND NO MORE WORDS ARE 14 4=Q6 ...# PRINTED UNTIL AN UNLIKE WORD IS FOUND 21 4?9Q ...# ENTRY RELADD CONTAINS START ADDRESS RELATIVE TO START OF BLOCK 12 4?PB ...# XCOUNT CONTAINS COUNT 16 4#92 ...# EXIT X2 UNCHANGED ALL OTHER ACCS UNDEFINED 4 4#NL ...# 5 4*8= ...PROBJ 9 4*MW ... STO 7 XLINK7(1) 9 4B7G ... STO 2 XLINK2(1) 7 4BM6 ... LDN 4 1 18 4C6Q ... ADS 4 XIND+1(1) [SET FIRST WORD INDICATOR 9 4CLB ... LDX 0 RELADD(1) 9 4D62 ...PR7 LDX 7 XCOUNT(1) 17 4DKL ... BNZ 7 PR3 [J IF MORE TO PRINT 9 4F5= ... LDX 2 XLINK2(1) 9 4FJW ... STO 0 RELADD(1) 9 4G4G ... LDX 7 XLINK7(1) 13 4GJ6 ... EXIT 7 0 [ EXIT 7 4H3Q ...PR3 LDN 4 1 9 4HHB ... SBS 4 XCOUNT(1) 9 4J32 ... LDN 7 PR2(1) 6 4J66 ...#UNS CA1D 8 4J9= ...ZA1D TXU 0 CA1D 6 4J#B ...#UNS CA1D 4 4JCG ...#SKI 9 4JGL ...ZA1D TXU 0 XA1D(1) 16 4K2= ... BCS PR [J IF NOT 'A1D' 16 4KFW ... LDN 6 MESSE(1) ['A1D' CHARACTERS 20 4K_G ... STO 6 REL(1) [SET OBJ. PROG. ADDR. INDICATOR 8 4LF6 ... BRN PR1 6 4LH4 ...#UNS CA1D 4 4LK2 ...( 8 4LLY ...PR SMO CA1D 7 4LNW ... TXU 0 8 4 4LQS ...) 6 4LSQ ...#UNS CA1D 4 4LWN ...#SKI 9 4LYQ ...PR TXU 0 XA1D8(1) 16 4MDB ... BCS (7) [J IF NOT 'A1D+8' 17 4MY2 ... LDN 6 MESSF(1) ['A1D+8' CHARACTERS 8 4NCL ...PR1 ADS 4 JPMOD 8 4NX= ... LDX 7 JPMOD 19 4PBW ... MVCH 6 7 [MOVE CHARACTERS INTO BUFFER 8 4PWG ... STO 7 JPMOD 7 4QB6 ... SMO 1 9 4QTQ ... LDCH 6 XIND+1 7 4R*B ... SMO 1 21 4RT2 ... SBS 6 XIND+1 [IF SET UNSET FIRST WORD INDICATOR 8 4S#L ... BRN PR8 7 4SS= ...PR2 SMO 1 9 4T?W ... LDCH 6 XIND+1 7 4TRG ... SMO 1 9 4W?6 ... SBS 6 XIND+1 20 4WQQ ... BNZ 6 PR5 [J IF FIRST WORD INDICATOR SET 9 4X=B ... LDX 6 XCOUNT(1) 18 4XQ2 ... BZE 6 PR5 [J IF LAST WORD OF AREA 9 4Y9L ... ADS 0 ZADD(1) 9 4YP= ... SMO ZADD(1) 16 4_8W ... LDX 6 0 [ CONTENTS OF WORD 9 4_NG ... SBS 0 ZADD(1) 10 5286 ... TXU 6 PREVIOUS(1) 18 52MQ ... BCC PR6 [J IF CONTENTS=[PREVIOUS] 8 537B ...PR5 ADS 4 JPMOD 7 53M2 ... LDX 5 0 9 546L ... LDX 6 REL(1) 19 54L= ... BZE 6 PR9 [J IF NORT OBJ. PROG. ADDRESS 6 54PB ...#UNS CA1D 8 54SG ... SBX 5 CA1D 6 54XL ...#UNS CA1D 4 552Q ...#SKI 8 555W ... SBN 5 A1D 9 55KG ...PR9 CALL 7 (JDECN) 8 5656 ...PR8 ADS 4 JPMOD 9 56JQ ... ADS 0 ZADD(1) 9 574B ... SMO ZADD(1) 15 57J2 ... LDX 5 0 [ GET CONTENTS 9 583L ... SBS 0 ZADD(1) 10 58H= ... STO 5 PREVIOUS(1) 7 592W ... ADN 0 1 10 59GG ... STO 0 X0STORE(1) 17 5=26 ... CALL 7 (JCON4) [CONVERT CONTENTS 16 5=FQ ... CALL 7 (JPRINT1) [PRINT A LINE 10 5=_B ... LDX 0 X0STORE(1) 8 5?F2 ... BRN PR7 16 5?YL ...PR6 CALL 7 (JPRINT1) [THROW A LINE 9 5#D= ...PR4 LDX 6 XCOUNT(1) 18 5#XW ... BZE 6 PR5 [J IF LAST WORD OF AREA 9 5*CG ... SBS 4 XCOUNT(1) 16 5*X6 ... ADN 0 1 [UPDATE ADDRESS 18 5BBQ ... CALL 7 ZA1D [TEST IF 'A1D' OR 'A1D+8' 9 5BWB ... ADS 0 ZADD(1) 9 5CB2 ... SMO ZADD(1) 15 5CTL ... LDX 5 0 [ GET NEXT WORD 9 5D*= ... SBS 0 ZADD(1) 10 5DSW ... TXU 5 PREVIOUS(1) 18 5F#G ... BCC PR4 [J IF SAME AS LAST WORD 8 5FS6 ... BRN PR5 4 5G?Q ...# 4 5GRB ...# 12 5H?2 ...# ENTRY POINT FOR THE SEGMENT 4 5HQL ...# 4 5J== ...# 6 5JPW ...XK1PMOBJIII 8 5K9G ... LDX 1 FXPM1 9 5KP6 ... ADS 1 SEGEND(1) 18 5L8Q ... PMOVE PMINPRIN,SEGEND(1) [ READ DOWN PMINPRIN 8 5LNB ... LDX 1 FXPM1 17 5M82 ... PMESSAGE MESSA(1),4 ['OBJECT PROGRAMS' 19 5MML ... LDX 2 FX2 [LOAD FX2 AS START OF SEARCH 9 5N7= ... ANDX 2 MASK(1) 16 5NLW ... BZE 2 OBJ [J IF FX2 INVALID 16 5P6G ... PMCORES 2,OBJ [ '' '' '' 17 5PL6 ... STO 2 START(1) [STORE [FX2] AS START 9 5Q5Q ... LDX 4 BPTR(2) 10 5QKB ... STO 4 XBACKPR(1) 18 5R52 ...OBJ5 STO 2 ZADD(1) [CURRENT BLOCK ADDRESS 9 5RJL ... LDCH 4 ATYPE(2) 10 5S4= ... TXU 4 OBJPROG(1) 17 5SHW ... BCC OBJ2 [J IF AOBJPROG BLOCK 9 5T3G ... TXU 4 XBAT(1) 15 5TH6 ... BCC OBJ3 [J IF BLANKET 4 5W2Q ...# 19 5WGB ...# GET NEXT BLOCK AND CHECK FOR BREAKS IN AND END OF CHAIN 4 5X22 ...# 18 5XFL ...OBJ6 LDX 2 ZADD(1) [ADDR. OF CURRENT BLOCK 20 5X_= ...OBJ10 SMO XIND(1) [INDICATES DIRECTION OF SEARCH 10 5YDW ... OBEY WHICHWAY(1) 16 5YYG ... CALL 0 (3) [GET NEXT BLOCK 17 5_D6 ... BRN OBJ4 [J IF BREAK IN CHAIN 9 5_XQ ... TXU 2 START(1) 18 62CB ... BCS OBJ5 [J IF NOT END OF CHAIN 9 62X2 ...OBJ9 LDXC 4 XIND(1) 19 63BL ... BCS (JPMSEG) [J IF BLANKET INDICATOR SET 20 63W= ... STOZ XIND(1) [UNSET BACKWARD CHAINING, IF SET 4 64*W ...# 14 64TG ...# BLANKET START OF CHAIN OR ENCOUNTERED 4 65*6 ...# 15 65SQ ...OBJ LDN 2 BACT [LOAD BLANKET 17 66#B ... STO 2 START(1) [AS START OF SEARCH 9 66S2 ... LDX 4 BPTR(2) 10 67?L ... STO 4 XBACKPR(1) 8 67R= ... BRN OBJ8 9 68=W ...OBJ3 LDXC 4 XIND(1) 19 68QG ... BCS (JPMSEG) [J IF BLANKET INDICATOR SET 8 69=6 ...OBJ8 LDCT 4 #400 18 69PQ ... ADS 4 XIND(1) [SET BLANKET INDICATOR 17 6=9B ... BRN OBJ10 [J TO GET NEXT BLOCK 4 6=P2 ...# 10 6?8L ...# BREAK IN CHAIN FOUND 4 6?N= ...# 9 6#7W ...OBJ4 LDXC 4 XIND(1) 20 6#MG ... BNZ 4 OBJ9 [J IF ALREADY BACKWARD CHAINING 16 6*76 ... LDN 4 1 [OTHERWISE SET 19 6*LQ ... ADS 4 XIND(1) [BACKWARD CHAINING INDICATOR 9 6B6B ... LDX 2 START(1) 9 6BL2 ... LDX 4 FPTR(2) 10 6C5L ... STO 4 XBACKPR(1) 8 6CK= ... BRN OBJ10 4 6D4W ...# 19 6DJG ...# AOBJPROG BLOCK FOUND. FIRST PRINT OUT THE RED TAPE WORDS 15 6F46 ...# AND THEN THE VARIOUS AREAS OF THE PROGRAM 4 6FHQ ...# 19 6G3B ...OBJ2 CALL 7 (JPRINT2) [THROW A COUPLE OF LINES 9 6GH2 ... STOZ WORD8(1) 17 6H2L ... STOZ XIND+1(1) [UNSET APET INDICATOR 9 6HG= ... STOZ REL(1) 18 6H_W ... LDN 4 REDTAPE+2(1) [REDTAPE IDENTIFIER TABLE 10 6JFG ... STO 4 REDTAPEPTR(1) 7 6J_6 ... NGN 4 1 16 6KDQ ...OBJ14 CALL 7 (JPRINT1) [PRINT A LINE 7 6KYB ... ADN 4 1 9 6LD2 ... STO 4 RELADD(1) 9 6LXL ... TXL 4 XA1(1) 16 6MC= ... BCC OBJ11 [J IF NOT REDTAPE 7 6MWW ... LDN 5 1 8 6NBG ... ADS 5 JPMOD 15 6NW6 ... BZE 4 OBJ12 [J IF FPTR 10 6P*Q ... SMO REDTAPEPTR(1) 7 6PTB ... LDX 5 0 10 6Q*2 ... TXU 5 UPARROWS(1) 19 6QSL ... BCC OBJ13 [J IF END OF REDTAPE TABLE 17 6R#= ... BZE 5 OBJ17 [J IF NO MNEMONICS 10 6RRW ... LDX 5 REDTAPEPTR(1) 8 6S?G ... CALL 7 (JUP) 8 6SR6 ... +2 19 6T=Q ... MVCH 5 5 [MOVE MNEMONICS INTO BUFFER 8 6TQB ... STO 6 JPMOD 7 6W=2 ...OBJ35 LDN 3 2 10 6WPL ... ADS 3 REDTAPEPTR(1) 7 6X9= ... SMO 5 19 6XNW ... LDCH 3 0 [GET PRINT FORMAT CHARACTER 7 6Y8G ...OBJ15 LDN 6 1 8 6YN6 ... ADS 6 JPMOD 9 6_7Q ... SMO RELADD(1) 20 6_MB ... LDX 5 0(2) [GET CONTENTS IN ORDER TO CONVERT 7 7272 ... SMO 3 20 72LL ... BRN RTNS [GET CORRECT CONVERSION ROUTINES 19 736= ...OBJ12 LDN 5 FPTR(2) [ADDRESS OF FORWARD POINTER 19 73KW ... CALL 7 (JDECN) [PUT ADDRESS INTO LP BUFFER 18 745G ... LDN 3 3 [PRINT FORMAT FOR FPTR 8 74K6 ... BRN OBJ15 9 754Q ...OBJ13 LDX 5 RELADD(1) 19 75JB ... CALL 7 (JDECN) [RELATIVE ADDRESS OF WORD 17 7642 ... LDN 3 0 [OCTAL PRINT FORMAT 8 76HL ... BRN OBJ15 9 773= ...OBJ17 LDX 5 RELADD(1) 19 77GW ... CALL 7 (JDECN) [RELATIVE ADDRESS OF WORD 10 782G ... SMO REDTAPEPTR(1) 7 78G6 ... LDN 5 1 8 78_Q ... BRN OBJ35 4 79FB ...# 15 79_2 ...# FIND OUT THE SIZE OF THE PROGRAM AND PRINT 11 7=DL ...# OUT THE FIRST PART OF IT 4 7=Y= ...# 10 7?CW ...OBJ11 LDX 5 ALOGLEN(2) 9 7?XG ... ANDX 5 MASK(1) 7 7#C6 ... ADX 5 2 18 7#WQ ... PMCORES 5,,OBJ18 [J IF ALOGLEN IS VALID 9 7*BB ... LDX 5 ASIZE(2) 9 7*W2 ... ANDX 5 MASK(1) 7 7B*L ... ADX 5 2 17 7BT= ... PMCORES 5,,OBJ20 [J IF ASIZE IS VALID 8 7C#W ... LDCT 4 #400 17 7CSG ... STO 4 XIND+1(1) [SET WORD 8 INDICATOR 8 7D#6 ... BRN OBJ21 8 7DRQ ...OBJ20 SBN 5 A1 7 7F?B ...OBJ18 SBX 5 2 7 7FR2 ... LDX 6 5 6 7FSY ...#UNS CA1D 4 7FWW ...( 16 7FYS ... SBX 5 CA1D [GET AND STORE 8 7G2Q ... ADN 5 A1 4 7G4N ...) 6 7G6L ...#UNS CA1D 4 7G8J ...#SKI 16 7G=L ... SBN 5 A1D-A1 [GET AND STORE 15 7GQ= ... STO 5 XLIMIT(1) [PROGRAM SIZE 15 7H9W ... LDX 7 XBACKPR(1) [SAVE XBACKPR 9 7HPG ... STO 2 XLINK2(1) 10 7J96 ... LDN 5 JPROGTAB-1(1) 9 7JNQ ... STO 5 PTR(1) 9 7K8B ... SMO PTR(1) 7 7KN2 ... LDX 5 1 19 7L7L ... BZE 5 OBJ36 [J IF PMOBJ MACRO NOT USED 20 7LM= ...OBJ37 CALL 0 SEARCH [SEARCH FOR REQUEST SLIP BLOCK 18 7M6W ... BRN OBJ36 [GIVE UP IF CHAIN BREAK 9 7MLG ... LDCH 0 ATYPE(2) 9 7N66 ... TXL 0 XACT(1) 20 7NKQ ... BCC OBJ36 [GIVE UP IF ACTIVITY BLOCK FOUND 9 7P5B ... TXU 0 OBRES(1) 18 7PK2 ... BCS OBJ37 [J IF NOT REQUEST BLOCK 9 7Q4L ...OBJ38 TXU 5 A1+1(2) 18 7QJ= ... BCC OBJ39 [J IF PROGRAM NAMES MATCH 7 7R3W ... LDN 5 1 9 7RHG ... ADS 5 PTR(1) 9 7S36 ... SMO PTR(1) 7 7SGQ ... LDX 5 0 17 7T2B ... BNZ 5 OBJ38 [J IF NOT END OF LIST 9 7TG2 ...OBJ36 TXL 6 ZJOBJ(1) 19 7T_L ... BCC OBJ21 [J IF PROGRAM SIZE>DEFAULT 8 7WF= ...OBJ39 LDCT 4 #400 17 7WYW ... STO 4 XIND+1(1) [SET WORD 8 INDICATOR 8 7XDG ... BRN OBJ22 17 7XY6 ...OBJ21 LDX 6 ZJOBJ(1) [LOAD DEFAULT VALUE 7 7YCQ ... LDX 5 6 19 7YXB ... ADN 5 A1(2) [GEORGE ADDRESS OF PRINT END 17 7_C2 ... PMCORES 5,,OBJ22 [J IF WITHIN GEORGE 8 7_WL ... LDN 6 128 16 82B= ...OBJ22 STO 6 XCOUNT(1) [LENGTH OF PRINT 16 82TW ... STO 7 XBACKPR(1) [RESET XBACKPR 9 83*G ... LDX 2 XLINK2(1) 15 83T6 ... CALL 7 PROBJ [PRINT AREA 9 84#Q ... LDX 4 XIND+1(1) 20 84SB ... STOZ XIND+1(1) [IF SET UNSET WORD 8 INDICATOR 17 85#2 ... BNG 4 OBJ6 [J TO GET NEXT BLOCK 4 85RL ...# 17 86?= ...# THIS NEXT BIT OF CODING CALCULATES THE AREA AROUND 16 86QW ...# THE ADDRESS IN WORD 8 AND THEN PRINTS IT OUT 4 87=G ...# 6 87#D ...#UNS CA1D 4 87BB ...( 19 87D# ... SMO CA1D [CONTENTS OF PROGRAMS WORD 8 8 87G= ... LDX 5 8(2) 4 87J8 ...) 6 87L6 ...#UNS CA1D 4 87N4 ...#SKI 19 87Q6 ... LDX 5 A1D+8(2) [CONTENTS OF PROGRAM'S WORD 8 9 889Q ... ANDX 5 MASK(1) 9 88PB ... TXL 5 XLIMIT(1) 19 8992 ... BCS OBJ28 [J IF ADDRESS INSIDE PROGRAM 8 89NL ... PMESSAGE MESSG(1),7 17 8=8= ... BRN OBJ6 [J TO GET NEXT BLOCK 9 8=MW ...OBJ28 STO 5 WORD8(1) 19 8?7G ... STO 5 REL(1) [SET OBJ. PTOG. ADDR. IND. 9 8?M6 ... LDX 7 RELADD(1) 6 8?Q= ...#UNS CA1D 8 8?TB ... SBX 7 CA1D 6 8?YG ...#UNS CA1D 4 8#3L ...#SKI 8 8#6Q ... SBN 7 A1D 15 8#LB ... BPZ 7 OBJ1 [IF ADDR. -VE 14 8*62 ... LDN 7 0 [SET=0 7 8*KL ...OBJ1 LDX 6 5 16 8B5= ... SBX 5 ZOBJ(1) [START OF AREA 15 8BJW ... ADX 6 ZOBJ(1) [END OF AREA 7 8C4G ... ADN 6 1 7 8CJ6 ... TXL 6 7 19 8D3Q ... BCS OBJ23 [J IF AREA ALREADY PRINTED 18 8DHB ... BNG 5 OBJ24 [J IF START ADDRESS -VE 7 8F32 ... TXL 5 7 20 8FGL ... BCC OBJ25 [J IF START OUTSIDE PRINTED AREA 17 8G2= ...OBJ24 LDX 5 7 [RESET START ADDRSS 9 8GFW ...OBJ25 TXL 6 XLIMIT(1) 18 8G_G ... BCS OBJ26 [J IF END INSIDE PROGRAM 17 8HF6 ... LDX 6 XLIMIT(1) [RESET END ADDRESS 7 8HYQ ...OBJ26 SBX 6 5 15 8JDB ... STO 6 XCOUNT(1) [STORE COUNT 6 8JHG ...#UNS CA1D 8 8JLL ... ADX 5 CA1D 6 8JPQ ...#UNS CA1D 4 8JSW ...#SKI 8 8JY2 ... ADN 5 A1D 17 8KCL ... STO 5 RELADD(1) [STORE START ADDRESS 8 8KX= ... PMESSAGE MESSC(1),8 16 8LBW ... CALL 7 (JPRINT1) [THROW A LINE 16 8LWG ... CALL 7 PROBJ [PRINT OUT AREA 4 8MB6 ...# 15 8MTQ ...# CHECK IF LAST INSTRUCTION WAS A 'PERI' AND 14 8N*B ...# AND IF SO PRINT OUT ITS CONTROL AREA 4 8NT2 ...# 9 8P#L ...OBJ23 LDX 4 WORD8(1) 17 8PS= ... BZE 4 OBJ6 [J TO GET NEXT BLOCK 6 8PW8 ...#UNS CA1D 4 8PY6 ...( 8 8Q24 ... ADN 4 0(2) 8 8Q42 ... ADX 4 CA1D 4 8Q5Y ...) 6 8Q7W ...#UNS CA1D 4 8Q9S ...#SKI 9 8Q?W ... ADN 4 A1D(2) 10 8QRG ... STOZ OPERAND(1) 19 8R?6 ... LDN 0 0 [=0 MEANS CHECKING [WORD8]-1 19 8RQQ ... [=1 '' '' [WORD8] 7 8S=B ... SBN 4 1 9 8SQ2 ...OBJ33 CALL 7 OMSIREP 15 8T9L ... BRN OBJ32 [J IF NEITHER 15 8TP= ... BRN OBJ27 [J IF 'PERI' 9 8W8W ... TXL 5 XLIMIT(1) 20 8WNG ... BCC OBJ34 [J IF OPERAND OF 'SMO' ILLEGAL 17 8X86 ... STO 5 OPERAND(1) [SAVE N(M) OF 'SMO' 18 8XMQ ...OBJ32 BNZ 0 OBJ6 [J IF BOTH CASES TESTED 18 8Y7B ... LDN 0 1 [SET X0 FOR SECOND CASE 7 8YM2 ... ADN 4 1 8 8_6L ... BRN OBJ33 17 8_L= ...OBJ27 ADS 5 OPERAND(1) [SAVE N(M) OF 'PERI' 16 925W ... BNZ 0 OBJ29 [J IF SECOND CASE 7 92KG ... SBN 4 1 9 9356 ... CALL 7 OMSIREP 15 93JQ ... BRN OBJ29 [J IF NEITHER 15 944B ... BRN OBJ29 [J IF 'PERI' 9 94J2 ... TXL 5 XLIMIT(1) 19 953L ... BCC OBJ34 [J IF PERAND OF 'SMO' ILLEGAL 21 95H= ... ADS 5 OPERAND(1) [ADD N(M) OF 'SMO' TO N(M) OF 'PERI' 10 962W ...OBJ29 LDX 5 OPERAND(1) 9 96GG ... TXL 5 XLIMIT(1) 19 9726 ... BCC OBJ31 [J IF OPERAND OUTSIDE PROGRAM 6 975= ...#UNS CA1D 8 978B ... ADX 5 CA1D 6 97?G ...#UNS CA1D 4 97BL ...#SKI 8 97FQ ... ADN 5 A1D 17 97_B ... STO 5 RELADD(1) [STORE START ADDRESS 18 98F2 ... LDX 6 ZJCA(1) [COUNT FOR CONTROL AREA 9 98YL ... STO 6 XCOUNT(1) 8 99D= ... PMESSAGE MESSD(1),9 16 99XW ... CALL 7 (JPRINT1) [THROW A LINE 18 9=CG ... CALL 7 PROBJ [PRINT OUT CONTROL AREA 17 9=X6 ... BRN OBJ6 [J TO GET NEXT BLOCK 5 9?BQ ...OBJ31 8 9?WB ... PMESSAGE MESSH(1),6 17 9#B2 ... BRN OBJ6 [J TO GET NEXT BLOCK 5 9#TL ...OBJ34 8 9**= ... PMESSAGE MESSB(1),6 17 9*SW ... BRN OBJ6 [J TO GET NEXT BLOCK 4 9B#G ...# 5 9BS6 ...REDTAPE 10 9BXP ... 8H00000000 10 9C3# ... 8HBPTR 3 10 9C6X ... 8HASIZE 3 10 9C=G ... 8HAFLAG 0 10 9CB5 ... 8HATYPE 0 10 9CFN ... 8HBACK1 3 10 9CK? ... 8HBACK2 0 10 9CNW ... 8HALOGL 3 10 9CSF ... 8HARGNO 0 9 9CY4 ... 4H____ 4 9D3M ...# 4 9D7= ...# 6 9D?2 ...OPMOBJIII 4 9DQL ...# 4 9F== ...#END 4 9FPW ...) 5 9G9G ...#SKI G3 8 ____ ...74275451001800000000