{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: PMACS)}}
====== PMACS ======
(George Source)
22FL #
22^= #
23DW # THIS SUBFILE CONTAINS THE POST-MORTEM MACROS
23YG # AND IS OWNED BY M.C.D. MANN
24D6 #
24XQ #
25CB [??? MOVX SECT DIAG FGN 104 DOC
25X2 #MAC MOVX [M.C.D. MANN
26BL [
26W= [
27*W [ **********
27TG [ * MOVX *
28*6 [ **********
28SQ [
29#B [
2B8L LDX 3 6
2BN= LDX 4 7
2C7W LDX 2 %A [ GET TRANSFER LENGTH
2CMG MXY TXL 2 X512(1)
2D76 BCS MXX [ OK TO MOVE IN 1 GO -> XX
2DLQ MOVE 3 0 [ MOVE 512 WORDS
2F6B SBN 2 512 [ UPDATE COUNT
2FL2 ADN 3 512 [ FROM
2G5L ADN 4 512 [ TO
2GK= BZE 2 MXX+1 [ TRANSFER = 512 EXACTLY
2H4W BRN MXY
2HJG MXX MOVE 3 0(2) [ MOVE UNBER 512 WORDS
2J46 #NOR
2JHQ [??? PMBSADD SECT DIAG FGN 104 DOC
2K3B #MAC PMBSADD [M.C.D. MANN
2KH2 [
2L2L [
2LG= [ *************
2L^W [ * PMBSADD *
2MFG [ *************
2M^6 [
2NDQ [
2NYB [ GENERAL B/S TRANSFER MACRO
2PD2 [ FOR UDAS DEVICES
2PXL [
2QC= [
2QWW [ %A SWAP OR GEO
2RBG [ %B TRANSFER MODE
2RTD [ %C COUNT
2S#B [ %D START ADDRESS IN CORE
2SR# [ %E UNDATUMISED B/S ADDRESS
2T== [ %F AUTO OR
2TP8 [ %G ERROR LABEL(OPTIONAL)
2W86 [
2WM4 [
2X62 #STR AUTO,%F
2XJY #STR
2Y3W (
2YGS SMO FXPMDR
2Y^Q STOZ INONA
2^DN )
2^XL #STR AUTO,%F
32BJ (
32TG LDN 7 1
33#D SMO FXPMDR
33RB STO 7 INONA
34=# )
34P= #SKI %B
3588 (
35M6 LDN 7 %B
3664 STO 7 IPMBS
36K2 )
373Y #SKI %B
37GW #SKI
37^S (
38DQ STOZ IPMBS
38XN )
39BL LDX 7 %C
39TJ STO 7 IPMBS+2
3=#G LDX 7 %D
3=RD STO 7 IPMBS+3
3?=B LDX 7 %E
3?P# STO 7 IUBSA
3#8= SMO FXPMDR
3#M8 STOZ IPX
3*66 CALL 0 (JBSADD%A)
3*K4 #STR %G
3B42 BRN %G
3BGY #STR %G
3B^W #SKI
3CDS NULL
3CXQ #NOR
3DBN ...[??? PMSCFREA SECT DIAG FGN 109 DOC
3DTL #MAC PMSCFREAD [M.C.D. MANN
3F#J [
3FRG [
3G=D [ ***************
3GPB [ * PMSCFREAD *
3H8# [ ***************
3HM= [
3J68 [
3JK6 [ B/S TRANSFER MACRO TO READ
3K44 [ FROM SCF DEVICE
3KH2 [
3K^Y ...[ %A COUNT
3LDW [ %B START ADDRESS IN CORE
3LXS [ %C UNDATUMISED B/S ADDRESS
3M4R ...[
3M9Q ...[ THIS MACRO IS USED BY PMACT AND PMCHECK
3MBQ [
3PPD SMO FXPMDR
3Q94 ... LDX 7 JSCFPTR [SET UP POINTER IN GEOBSPTR
3QNN ... STO 7 GEOBSPTR [TO THE SCF DEVICE LIST
3RK8 LDN 7 6
3S5B ADS 7 BINDEX
3SHQ ... PMBSADD GEO,0,%A,%B,%C [READ FROM THE SCF
3T26 LDN 7 6
3TDG SBS 7 BINDEX
3XNB SMO FXPMDR
3Y82 ... LDX 7 JSCFGEODMP [SET UP POINTER IN GEOBSPTR
3YML ... STO 7 GEOBSPTR [TO THE ICF DEVICE LIST
42BL #NOR
42T2 [??? PMBSNUM SECT DIAG FGN 104 DOC
43?B #MAC PMBSNUM [M.C.D. MANN
43PQ [
4486 [
44LG [ *************
454W [ * PMBSNUM *
45H= [ *************
45^L [
46D2 [
46WB [ GENERAL B/S TRANSFER MACRO
47#Q [ FOR NON-UDAS DEVICES
47R6 [
489G [
48MW [ %A START ADDRESS IN CORE
496= [ %B UNDATUMISED BLOCK NUMBER
49JL [ %C ERROR LABEL(OPTIONAL)
4=32 [
4=FB [
4=XQ LDX 7 %A
4?B6 STO 7 IPMBS+3
4?SG LDX 7 %B
4#=W STO 7 IUBSA
4#P= LDN 7 1
4*8= SMO FXPMDR
4*MW STO 7 IPX
4B7G CALL 0 (JBSNUM)
4BM6 #STR %C
4C6Q BRN %C
4CLB #STR %C
4D62 #SKI
4DKL NULL
4F5= #NOR
4FJW [??? PMCHAINP SECT DIAG FGN 104 DOC
4G4G #MAC PMCHAINP [M.C.D. MANN
4GJ6 [
4H3Q [
4HHB [ **************
4J32 [ * PMCHAINP *
4JGL [ **************
4K2= [
4KFW [
4K^G [ THIS MACRO CAUSES ENTRY TO CHAIN AND RING PRINTING ROUTINES
4LF6 [
4LYQ [ %A=NO. OF CHARS. IN %B
4MDB [ %B=CHAIN(RING) HEADING
4MY2 [ %C=BASE ADDR. OF CHAIN(RING)
4NCL [ %D=DISTANCE FROM RING ELEMENT TO START OF BLOCK OR
4NX= [ =X IF DISTANCE HELD IN 3RD WORD OF RING ELEMENT
4PBW [ %E=ADDR. CONTAINING NO. OF WORDS TO BE PRINTED FROM EACH BLOCK OR
4PWG [ =N IF WORD SELECTION REQUIRED[SEE PMVAL MACRO]
4QB6 [ %F=OPTIONAL=1 IF TYPES ETC. TO BE PRINTED
4QTQ [ =2 IF CHAPTER CHAIN BEING PRINTED
4R*B [ %G OPTIONAL
4RT2 [ =4H MNEMONIC USED TO LABEL ROWS
4S#L [ USED FOR CHAINS ONLY
4SS= #SKI CRAB
4T?W (
4TRG #STR %G
4W?6 (
4WQQ CALL 2 MNEM
4X=B 4H%G
4XQ2 )
4Y9L #STR %G
4YP= #SKI
4^8W (
4^NG CALL 2 MNEM
5286 +0
52MQ )
537B )
53M2 [
546B CALL 2 START
54KQ +%C
5556 #FID 0 7 %A
55JG #STR %F
563W #FID 8 11 %F
56H= %AH%B
572L #STR %D,X
57G2 +%D
57^B #STR %D,X
58DQ #SKI
58Y6 #7777
59CG #STR %E,N
59WW #FID 0 11 %E
5=B= #STR %E,N
5=TL #SKI
5?*2 (
5?SB #FID 0 0 1
5#?Q #77777777
5#R6 )
5*=G #DEF 20?=0 [USED BY PMVAL MACRO,IF FOLLOWING
5*PW #NOR
5B9= [??? PMCORES SECT DIAG FGN 104 DOC
5BNL #MAC PMCORES [M.C.D. MANN
5C82 [
5CMB [
5D6Q [ *************
5DL6 [ * PMCORES *
5F5G [ *************
5FJW [
5G4= [
5GHL [ MACRO USED IN PM ROUTINES TO TEST IF A GIVEN ADDRESS
5H32 [ FALLS WITHIN GEORGE'S CORE AREA
5HGB [ %A=ACCUMULATOR CONTAINING ADDRESS
5H^Q [ %B=ADDRESS TO JUMP TO IF ADDRESS IN %A IS OUTSIDE G'S CORE
5JF6 [ %C=ADDRESS TO JUMP TO IF ADDRESS IN %A IS INSIDE G'S CORE
5JYG [
5KCW TXL %A CORES
5KX= #SKI G4<1$1
5LBL (
5LW2 #STR %C
5M*B BCS %C
5MSQ #STR %B
5N#6 BCC %B
5NRG )
5P=W #SKI G4
5PQ= (
5Q9L #STR %B
5QP2 BCC %B
5R8B #STR %B
5RMQ #SKI
5S76 BCC M
5SLG TXL %A K30+K39
5T5W #STR %C
5TK= BCC %C
5W4L #STR %C
5WJ2 #SKI
5X3B BCC M
5XGQ TXL %A JK402
5Y26 #STR %B
5YFG BCC %B
5YYW #STR %B
5^D= #SKI
5^XL BCC M
62CB TXL %A K30+K402
62WH #STR %C
63*N BCC %C
63ST #STR %C
64#2 #SKI
64R7 BCC M
65=# TXL %A K30+K401
65PF #STR %C
668L BCS %C
66MR #STR %B
676Y BCC %B
67L5 M
685= )
68JC #NOR
693J [??? PMESSAGE SECT DIAG FGN 104 DOC
69GP #MAC PMESSAGE [M.C.D. MANN
69^W [
6=F3 [
6=Y8 [ **************
6?C* [ * PMESSAGE *
6?WG [ **************
6#*M [
6#SS [
6*?^ [
6*R6 [ THIS MACRO IS USED BY PMBUFFS TO PRINT OUT ON A LINE PRINTER
6B=? [ EITHER AN ERROR MESSAGE OR A TITLE LINE
6BPD [ %A=ADDRESS OF FIRST WORD OF MESSAGE
6C8K [ %B=NUMBER OF WORDS IN MESSAGE
6CMQ [ %C=SUPLIMENTARY MODIFIER (OPTIONAL)
6D6X [ EXIT X0,X1,X2,X4 UNCHANGED
6DL4 [
6F59 #STR %C
6FJB SMO %C
6G3H LDN 5 %A
6GGN LDX 6 JPMOD
6H2L BCHX 6 £
6HFR MOVE 5 %B
6HYY CALL 7 (JPRINT2)
6JD5 #NOR
6JX= [??? PMOVE SECT DIAG FGN 104 DOC
6KBC #MAC PMOVE [M.C.D. MANN
6KTJ [
6L#P [
6LRW [ ***********
6M?3 [ * PMOVE *
6MQ8 [ ***********
6N9* [
6NNG [
6P7M [ MACRO TO SET UP PARAMETERS FOR, AND ENTER
6PLS [ ROUTINE TO READ DOWN PM OVERLAYS
6Q5^ [
6QK6 [ OPTIONALLY SEGMENTS CONTAINING CODE MAY BE
6R4? [ IMMEDIATELY ENTERED
6RHD [
6S2K [ %A = SEGMENT NAME
6SFQ [
6SYX [ %B = POINTER TO START ADDRESS IN CORE
6TD4 [
6TX9 [ %C = £ IN K£PM*****
6WBB [
6WTH [
6X#N [ %D = FXPM?
6XRT [
6Y?2 LDX 5 %B
6YQ7 ...#STR %A,PMINPRIN
6^9# #SKI
6^NF STO 5 FXINPRIN
727L #STR %D
72LR STO 5 FXPM%D
735Y LDN 1 J%A
73KW #STR %C
744^ (
74J4 LDN 7 K%C%A
7537 CALL 6 (JSEGREAD2)
75G= )
75^* #STR %C
76DD #SKI
76XH CALL 7 (JSEGREAD)
77BL #NOR
77TP [??? PMTRACE SECT DIAG FGN 104 DOC
78#S #MAC PMTRACE [M.C.D. MANN
78RX [
79?2 [
79Q5 [ *************
7=98 [ * PMTRACE *
7=N? [ *************
7?7B [
7?LF [
7#5J [ ALL ACCUMULATORS ARE PRESERVED BY THIS MACRO
7#JM [
7*3Q [ %A GIVES AN 8H STRING TO BE PRINTED BESIDE THE FIRST
7*GT [ WORD OF THE TRACE
7*^Y [
7BF3 [ %B GIVES THE UNMODIFIED ADDRESS OF A WORD HOLDING
7BY6 [ THE MODIFIED START ADDRESS OF THE AREA
7CC9 [ TO BE TRACED
7CW# [
7D*C [ %C GIVES THE UNMODIFIED ADDRESS OF A WORD
7DSG [ HOLDING THE COUNT OF WORDS TO BE TRACED
7F?K [
7FQN [ %D GIVES THE MODIFIER ACCUMULATOR IN USE BY THIS
7G9R [ SEGMENT, IT CONTAINS THE CORE ADDRESS OF THE BASE
7GNW [ OF THIS SEGMENT
7H7^ [
7HM4 [
7J67 [ ON FIRST CALL TO THIS MACRO INSIDE A SEGMENT,
7JK= [ A SUBROUTINE IS GENERATED.
7K4* [
7KHD [ ON EVERY CALL TO THIS MACRO, CALLS TO THIS SUBROUTINE ARE
7L2H [ MADE
7LFL [
7LYP [
7MCS #OPT MTRACEX=1
7MWX STO 7 MTRACE(%D)
7NB2 CALL 7 MTRACE+2
7NT5 8H%A
7P#8 LDX 0 %B(%D)
7PR? LDX 7 %C(%D)
7Q=B #SKI MTRACEX
7QPF (
7R8J BRN M
7RMM MLINK +0
7S6Q M4 +4
7SKT MM +0,+0
7T4Y STO 7 MLINK(%D)
7TJ3 STO 0 MM+1(%D)
7W36 LDN 0 M1(%D)
7WG9 MOVE 7 2
7W^# SMO MLINK(%D)
7XDC OBEY 3
7XY6 BZE 7 M5
7YBH SMO MLINK(%D)
7YSY OBEY 2
7^?* SMO 0
7^PQ GEO 7 0
8287 M1 8H
82LJ M2 BCT 7 M3
834^ M5 LDX 7 MM(%D)
83HB LDX 0 MM+1(%D)
83^R SMO M4(%D)
84D8 BRN (MLINK)
84WK M3 ADN 0 1
85*2 SMO 0
85RC GEO 7 0
869S 8H
86N9 BRN M2
876L M
87K3 #ALT MTRACEX=0
883D #DEF MTRACE=MM
88FT )
88Y= #NOR
89BM [??? PMDLGET SECT DIAG FGN 104 DOC
89T4 #MAC PMDLGET [M.C.D. MANN
8=?F [
8=PW [
8?8? [ *************
8?LN [ * PMDLGET *
8#55 [ *************
8#HG [
8#^X [
8*D# [ OBTAINS D AND OR L VALUES OF A PM SEGMENT
8*WP [
8B*6 [
8BRH [ %A SEGMENT NAME
8C9Y [ %B ACCUMULATOR TO CONTAIN D VALUE
8CN* [ %C ACCUMULATOR TO CONTAIN L VALUE
8D6Q [
8DK7 [ ONLY %B AND %C ARE CHANGED
8F3J [
8FF^ [
8FYB #STR %A
8GBR #STR
8GT8 ! SEGMENT NAME OMITTED
8H?K #STR %A
8HQ2 (
8J8C #STR %B
8JLS (
8K59 #ACC %B
8KHL ! %B IS NOT AN ACCUMULATOR
8L23 #ACC %B
8LDD #SKI
8LWT (
8M*= SMO FXPMFXNT
8MRM LDX %B J%A
8N=4 SLL %B 9
8NNF SRL %B 2
8P6W )
8PK? )
8Q3N #STR %C
8QG5 (
8QYG #ACC %C
8RBX ! %C IS NOT AN ACCUMULATOR
8RT# #ACC %C
8S?P #SKI
8SQ6 (
8T9L SMO FXPMFXNT
8TP= LDX %C J%A
8W8W SRL %C 15
8WNG SLL %C 2
8X86 )
8XMQ )
8Y7B )
8YM2 #STR %B%C
8^6L #STR
8^L= ! NO SECOND OR THIRD PARAMETER
925W #NOR
92KG [??? PMSUBSRE SECT DIAG FGN 104 DOC
9356 #MAC PMSUBSREAD [M.C.D. MANN
93JQ [
944B [
94J2 [ ****************
953L [ * PMSUBSREAD *
95H= [ ****************
962W [
96GG [
9726 #STR %A
97FQ LDX 0 %A
97^B CALL 7 (JSUBSREAD)
98F2 #STR %B
98YL BRN %B
99D= #STR %B
99XW #SKI
9=CG NULL
9=X6 #NOR
9?BQ [??? FULLMONS SECT DIAG FGN 104 DOC
9?WB #MAC FULLMONS [M.C.D. MANN
9#B2 [
9#TL [
9**= [ **************
9*SW [ * FULLMONS *
9B#G [ **************
9BS6 [
9C?Q [
9CRB [ RESTORE TIME MACRO TO GIVE
9D?2 [ FULL MONITORING FILES
9DQL [
9F== #MEN PMFS
9FPW #TRA JZM4
9G9G LDX 4 JMASK1(1)
9GP6 STO 4 JXBITAB(1)
9H8Q #TRA JZM25
9HNB NULL
9J82 #END
9JML #NOR
9K7= [??? IDENTITY SECT DIAG FGN 104 DOC
9KLW #SKI K6ALLGEO>12-12
9L6G (
9LL6 #MAC IDENTITY [M.C.D. MANN
9MKB [
9N3S [
9NG= [ **************
9NYN [ * IDENTITY *
9PC6 [ **************
9PTJ [
9Q#2 [
9QQD #MEN FIXED
9R8W #TRA IDENTITY
9RM# 8H%A
9S5Q #END
9SJ8 #NOR
9T2L )
9TF4 [??? PMBLOX SECT DIAG FGN 104 DOC
9TXG #MAC PMBLOX [M.C.D. MANN
9W*Y [
9WSB [
9X=S [ ************
9XP= [ * PMBLOX *
9Y7N [ ************
9YL6 [
9^4J [
9^H2 [ IS A #MEN MACRO TO PMACT OR PMCHAINS IT ALTERS THE LENGTH
9^^D [ OF PARTICULAR TYPES ( OR TYPES AND SUB TYPES ) OF BLOCK
=2CW [ THE MACRO IS RECURSIVE
=2W# [ %A ::= < TYPE >
=3#Q [ NO + SIGN, A CHARACTER STRING IS EXPECTED ( VALUE WOULD DO )
=3R8 [ %B::= 0 / < SUB TYPE > / < NULL >
=49L [ SIMILAR TO %A BUT NULL IS ALLOWED,IMPLYING ALL SUB TYPES
=4N4 [ %C ::= A / C
=56G [ NO OTHERS ARE ALLOWED
=5JY [ A FOR BLOX ON ACTIVITY CHAIN C FOR BLOX ESLEWHERE
=63B [ %D ::= < A POSITIVE INTEGER LESS THAN 4096 >
=6FS #STR %A [ FINISH IF NO MORE PARAMETERS
=6Y= (
=7BN #STR %D [ LEST %D IS ABSENT
=7T6 (
=8?J #SKI %D<4096-4096 [ LEST %D IS EXCESSIVE#
=8Q2 (
=98D [ I AM INDEBTED TO J JONES FOR THESE 7 LINES WHICH EFFECT
=9LW [ IF %C STARTSWITH A OR C THEN COMPILE THE0FOLLOWING
==5# #DEF 20?=1
==HQ #STR A,%C
=?28 #DEF 20?=0
=?DL #STR C,%C
=?X4 #SKI
=#*G #DEF 20?=1
=#RY #SKI 20?
=*=B (
=*NS #OPT JPM%CDENT=0
=B7= #SKI JPM%CDENT-JPMNOFTYPES
=BKN (
=C46 #STR %C,A
=CGJ #MEN PMCHAINS
=C^2 #STR %C,C
=DCD #MEN PMACT
=DTW #TRA JPM%CBLOX+JPM%CDENT
=F## #STR %B
=FQQ #HAL +%A+%B,%D
=G98 #STR %B
=GML #SKI
=H64 (
=HJG #HAL +%A,%D
=J2Y #TRA JPM%CBLOX+2+JPMNOFTYPES
=JFB #FID JPM%CDENT JPM%CDENT 1
=JXS )
=KBG #END
=KTC #ALT JPM%CDENT=JPM%CDENT+1
=L## )
=LR9 )
=M=6 )
=MP3 )
=N7Y #STR %E
=NLT PMBLOX %E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R,%S,%T,%U,%V,%W,%X
=P5Q )
=PJM #NOR
=Q3J [??? PMFILE SECT DIAG FGN 104 DOC
=QGF #MAC PMFILE [M.C.D. MANN
=Q^B [
=RD? [
=RX8 [ ************
=SB5 [ * PMFILE *
=ST2 [ ************
=T?X [
=TQS [
=W9P [ RESTORE TIME MACRO TO SPECIFY THOSE FILES FOR WHICH,IF AN ENTRY
=WNL [ IS FOUND BY F/S PM IN THE FILE CHAIN,A FULL PRINT WILL BE GIVEN.
=X7H [ THERE IS A MAXIMUM OF 5 ENTRIES IN THE JFULLTAB TABLE FOR THIS
=XLD [ PURPOSE
=Y5* [ %A,%C,...=12 CHAR. USER NAME OF FILE
=YJ= [ %B,%D,...=12 CHAR. LOCAL NAME OF FILE .IF ABSENT OR ZERO,THEN ALL
=^37 [ FILES WITH THIS USER NAME WILL BE PRINTED
=^G4 #STR %A
=^Y^ (
?2CW #SKI JTABEND-JFULLTAB<1$1
?2WR ! TOO MANY FILES !
?3*N #SKI JTABEND-JFULLTAB
?3SK (
?4?G #MEN PMFS
?4QC #TRA JFULLTAB
?59# 12H%A
?5N9 #STR %B
?676 12H%B
?6L3 #STR %B
?74Y #SKI
?7HT +0,+0,+0
?82Q FIXTRA JFULLTAB
?8FM #END
?8YJ PMFILE %C,%D,%E,%F,%G,%H,%I,%J
?9CF )
?9WQ )
?=*^ #NOR
?=T8 [??? PMFULLFS SECT DIAG FGN 104 DOC
??#C #MAC PMFULLFS [M.C.D. MANN
??RL [
?#=T [
?#Q4 [ **************
?*9? [ * PMFULLFS *
?*NG [ **************
?B7P [
?BLY [
?C67 [ RESTORE TIME MACRO TO GIVE A FULL FILESTORE PM
?CKB [
?D4K #MEN PMDR
?DHS #TRA APMBRKCHS
?F33 +1
?FG= #END
?F^F #NOR
?GDN ...[??? PMMEND SECT DIAG FGN 108 DOC
?GXX #MAC PMMEND [M.C.D. MANN
?HC6 [
?HW* [
?J*J [ ************
?JSR [ * PMMEND *
?K#2 [ ************
?KR9 [
?L=D [
?LPM [ MACRO TO ALTER THE SIZE OF POSTMORTEM LISTINGS OF GIVEN CHAINS
?M8W [
?MN5 [ PARAMETERS ARE IN PAIRS
?N7# [ %A,%C,%E ETC.= IND. OF CHAIN (SEE GTM 2.5
?NLH [ %B,%D,%F ETC.= NO. OF WORDS TO BE PRINTED FROM EACH BLOCK IN CHAIN
?P5Q [
?PJ^ #STR %A
?Q48 (
?QHC #STR %A,ACTC
?R2L #SKI
?RFT (
?R^4 #MEN PMACT
?SD? #TRA JMACT
?SXG +0%B
?TBP #END
?TTY )
?W*7 #STR OBJ,%A
?WSB #SKI
?X?K (
?XQS #SKI G3
?Y=3 #MEN PMOBJIII
?YP= #SKI G4
?^8F #MEN PMOBJ
?^MN #STR %A,OBJE
#26X #SKI
#2L6 #TRA JJOBJ
#35* #STR %A,OBJP
#3JJ #SKI
#43R #TRA JJOBJ+1
#4H2 #STR %A,OBJC
#529 #SKI
#5FD #TRA JJOBJ+2
#5YM +0%B
#6CW #END
#6X5 )
#7B# #STR %A,FILE
#7TH #SKI
#8#Q (
#8R^ #MEN PMFILE
#9?8 #TRA JJFILE
#9QC +0%B
#=9L #END
#=NT )
#?84 #STR %A,ACTC
#?M? (
##6G #STR OBJ,%A
##KP (
#*4Y #MEN PMCHAINS
#*J7 #STR %A,FREE
#B3B #SKI
#BGK #TRA JMCHAINS
#B^S #STR %A,CHAP
#CF3 #SKI
#CY= #TRA JMCHAINS+1
#DCF #STR %A,JOBQ
#DYQ #SKI
#FDB #TRA JMCHAINS+2
#FY2 #STR %A,HLSQ
#GCL #SKI
#GX= #TRA JMCHAINS+3
#HBW #STR %A,MISC
#HWG #SKI
#JB6 #TRA JMCHAINS+4
#JTQ #STR %A,FILE
#K*B #SKI
#KT2 #TRA JMCHAINS+5
#L#L #STR %A,INDX
#LS= #SKI
#M?W #TRA JMCHAINS+6
#MRG #STR %A,CONS
#N?6 #SKI
#NQQ #TRA JMCHAINS+7
#P=B #STR %A,CART
#PQ2 #SKI
#Q9L #TRA JMCHAINS+8
#QP= #STR %A,HALF
#R8W #SKI
#RNG #TRA JMCHAINS+9
#S86 #STR %A,OFFL
#SMQ #SKI
#T7B #TRA JMCHAINS+10
#TM2 #STR %A,USAG
#W6L #SKI
#WL= #TRA JMCHAINS+11
#X5W #STR %A,TEMP
#XKG #SKI
#Y56 #TRA JMCHAINS+12
#YJQ #STR %A,PURE
#^4B #SKI
#^J2 #TRA JMCHAINS+13
*23L #STR %A,LIST
*2H= #SKI
*32W #TRA JMCHAINS+14
*3GG #STR %A,FROZ
*426 #SKI
*4FQ #TRA JMCHAINS+15
*4^B #STR %A,IPLJ
*5F2 #SKI
*5YL #TRA JMCHAINS+16
*6D= #STR %A,IPLS
*6XW #SKI
*7CG #TRA JMCHAINS+17
*7X6 #STR %A,IPLR
*8BQ #SKI
*8WB #TRA JMCHAINS+18
*9B2 #STR %A,JRNL
*9TL #SKI
*=*= #TRA JMCHAINS+19
*=HX ...#STR %A,FPBC
*=L6 ...#SKI
*=N* ...#TRA JMCHAINS+21
*=N^ ...#STR %A,FTEM
*=PK ...#SKI
*=Q9 ...#TRA JMCHAINS+22
*=QT ...#STR %A,FAST
*=RF ...#SKI
*=S5 ...#TRA JMCHAINS+23
*=SW +0%B
*?#G #END
*?S6 )
*#?Q )
*#RB PMMEND %C,%D,%E,%F,%G,%H,%I,%J,%K,%L
**?2 )
**QL #NOR
*B== [??? PMOBJ SECT DIAG FGN 104 DOC
*BPW #MAC PMOBJ [M.C.D. MANN
*C9G [
*CP6 [
*D8Q [ ***********
*DNB [ * PMOBJ *
*F82 [ ***********
*FML [
*G7= [
*GLW [ RESTORE TIME MACRO THAT CAUSES POSTMORTEM TO PRINT
*H6G [ UP TO 3 SPECIFIED OBJECT/SUBJECT PROGRAMS IN FULL
*HL6 [ IN A G3/4 PM
*J5Q [
*JKB #STR %A
*K52 (
*KJL #SKI G3
*L4= #MEN PMOBJIII
*LHW #SKI G4
*M3G #MEN PMOBJ
*MH6 #TRA JPROGTAB
*N2Q 4H%A
*NGB #STR %B
*P22 4H%B
*PFL #STR %C
*P^= 4H%C
*QDW #END
*QYG )
*RD6 #NOR
*RXQ [??? GSCANDEF SECT DIAG FGN 104 DOC
*SCB #SKI BUFTRACE
*SX2 (
*TBL #MAC GSCANDEF [M.C.D. MANN
*TW= [
*W*W [
*WTG [ **************
*X*6 [ * GSCANDEF *
*XSQ [ **************
*Y#B [
*YS2 [
*^?L M1 +0
*^R= 8H%A
B2=W GSCANX %B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R,%S
B2QG M2
B3=6 #TRA M1
B3PQ +M2
B49B #TRA M2
B4P2 #NOR
B58L )
B5N= [??? GSCANEQU SECT DIAG FGN 104 DOC
B67W #SKI BUFTRACE
B#3B (
B#G6 #MAC GSCANEQU [M.C.D. MANN
B#YW [
B*CL [
B*WB [ **************
BB*6 [ * GSCANEQU *
BBRW [ **************
BC=L [
BCPB [
BD86 [DEFINE GSCAN PRINTING FORMATS AS
BDLW [
BF5L M3 +M3+3+#40000000 [SAME AS NEXT ESCANDEF
BFJB 8H%A
BG36 #FREE M3
BGFW #STR %B
BGYL GSCANEQU %B,%C,%D,%E,%F,%G,%H,%I,%J
BHCB #NOR
BHW6 )
BJ#W [??? PMACTYPE SECT DIAG FGN 104 DOC
BJRL #MAC PMACTYPE [M.C.D. MANN
BK=B [
BKP6 [
BL7W [ **************
BLLL [ * PMACTYPE *
BM5B [ **************
BMJ6 [
BN2W [
BNFL [ THIS MACRO WILL SET UP TYPE AND SUBTYPE TABLES
BNYB [
BPC6 #STRING R,%B
BPTW (
BQ#L #MEN PMTYPES [INSERT TYPES
BQRB #DEF NUMBER=1
BR=6 )
BRNW #STRING R,%B
BS7L #SKI
BSLB (
BT56 #MEND %A [INSERT SUBTYPES IN RESPECTIVE SEG.
BTHW #DEF NUMBER=0
BW2L )
BWFB #STRING %A,PMSUBSA
BWY6 #SKI
BXBW (
BXTL #DEF TRA=+DPMSUBSA-DPMTYPES
BY#B [ SUBTYPES TO GO IN #SEG PMSUBSA
BYR6 ... PMT APERI,0,APERFL,0,APRNUM,0,ASSOCS0,0,ASSOCS1,0
B^9W ... PMTCON APERI,APERIRS,JD2,AFLBUF,JD10
B^NL ... PMTCON APERI,APROPNS,JD14,APROPS,0,APERM,0,BTEMP,0
C27B PMTCON APERI,ASSOCS,0,APERIDF,0,CONSOLE,0,APIA,0
C2L6 ... PMTCON APERI,ADUMMY,0,ATTRIB,JD13,AV7900,JD21,ARPERT,JD22
C34W PMT BLINK,JF5
C3HL ... PMT FILE,0,FCB,JB15,FSMB,0
C42B PMTCON FILE,FINTER,0,FINTER1,0,FINTER2,0
C4F6 ... PMTCON FILE,FINTER5,0,FINTER7,0
C4XW PMTCON FILE,FINTER3,0,FTRAP,0,FINTER6,0
C5BL ... PMTCON FILE,APROC,0,FQUAL,0,FINC,JB8
C5TB PMTCON FILE,CREATE,JB9,ENT,JB1,FPROPS,0
C6#6 ... PMTCON FILE,FRESNUM,JB13
C6QW ... PMTCON FILE,FABSNB,JF8,FLOCNB,0
C79L PMTCON FILE,INCUNJ,JB14,FRB,0,FURB,0
C7NB ... PMTCON FILE,FRESTOR,0,FRSTPER,0
C876 PMTCON FILE,FAPB,0,FWB,0,FUWB,0,FRRB,0
C8KW ... PMTCON FILE,FURRB,0,FRWB,0,FURWB,0,ADICTEN,JB2
C94L ... PMTCON FILE,FTAB,JB12,ADICT,JB5,FNAME,JB4,ADJNCTS,JB3
C9HB PMTCON FILE,FDINCS,0,FDT,JA3
C=26 ... PMTCON FILE,ASLFLEX,JF1,ASUPLEX,JF1,FSTACK,JF6,FGET,0
C=DW ... PMTCON FILE,FREQ,JA4,FCANTDO,0,FINCPRC,JH8
C=XL PMTCON FILE,FEXTRA,0,FMAPP,JF12
C?BB PMT FI,0,INSERT1,0,INSERT2,0,INSERT3,0,INSERT4,0
C?RW ... PMTCON FI,INSERT5,0,FUTILTY,0,FCA,JC5,FTABLE,JC9
C#9B ... PMTCON FI,FINDEXF,0,FNORM,0,FSORT,JB11,CFNDEXF,0
C#LY ... PMTCON FI,FUSER,JJ3,FTAPE,JJ4,FLIST,JJ5
C*3L ... PMTCON FI,FINCOPY,JB8,FONCE,0,FTWICE,JJ7,FDMPFAB,JF8
C*D# ... PMTCON FI,FDMPCOM,0,INDXCHK,0,FRSUNAV,0,FRSTUSR,JB19
C*T2 ... PMTCON FI,FERUS,JH7,FDUCOM,JA6,FDUTAPE,0,FRJTPS,0
C*Y7 ... PMT FSH,0,FSHIN,JB20,FSHOUT,JB20,FSHREQ,JB21
CB3# ... PMTCON FSH,FSHTERM,0,FSHTRAN,0,FULLB,0
CB5D ... PMTCON FSH,FSHSTOR,0,FSHMARK,JB22,FSHBDEL,0
CB7J ... PMTCON FSH,FSHBINS,0,FSHMOVE,JB23,FSHAPIA,0
CB85 ... PMTCON FSH,FSHREQX,JB21,FSHTRMX,0,FSHIPS,0
CB8L ... PMTCON FSH,FSHJCTS,JB24,FSHMBLS,0,FINLK,0
CB97 ... PMTCON FSH,HLSTFER,0,FAPB,0
CB9C ... PMT CAFS,0,CFCSNT,0
CB9N ... PMT AOBJPROG,JE12,BHWRITE,0,BHCOPY,JE12
CBLG ... PMT CPB,0,CALAS,JF9,CMULTI,0,CUNI,0
CC66 ... PMT BSTB,0,BWRITE,0,BREAD,0,CHAPTER,JE6,FSTAB,0
CC^W PMTCON BSTB,EMPTYB,0,FULLB,0,BSLIST,JE7,FBSIB,0
CDDL ... PMTCON BSTB,CCTABLE,0,ALFTABL,0,FDTABLE,0,BQBLK,JE8
CDXB PMTCON BSTB,BSCB,JE9,BLUFF,0,BFAIL,0,BFRAIL,0
CFB6 ... PMTCON BSTB,FLOUR,0,BFREEW,0,CART,0,HORSE,0
CFSW PMT IPCA,JA1,INTERN,JJ2,IPCBX,JA1,IPCOP,JA1
CG?L ... PMTCON IPCA,HANGER,JJ1,FSHARED,JA1,FSHBPM,JA1
CGQB PMT AMSCAN,0,AMXTYPE,JA1,IPBTYPE,JA1
CH96 PMT ACTCDT,JA1
CHMW ... PMT ACTDOC,JA1,ADUMPT,JA1,ASCHEDE,JA1
CJ6L ... PMT ACTUNJAM,JA1
CJKB PMT AREWIND,JA1
CMF= PMT ASWINT,JA1
CQ*G PMT APET,JA2,ATP,JA2,APUC,JA2
CQSW PMT AOLPT,JH5
CR#= ... PMT CPAT,JG10
CRRL PMT BAT,JA1
CTP6 )
CW8G #STRING %A,PMSUBSB
CWMW #SKI
CX7= (
CXLL #DEF TRA=+DPMSUBSB-DPMTYPES
CY62 [ SUBTYPES TO GO IN #SEG PMSUBSB
CYKB PMT GCB,0
C^4Q PMT CLB,JC4
C^JB ... PMT CONBUFF,0,COUT,JF17,EMSIN,JF16,CINP,JD17,CSHOW,JD18
D242 ... PMTCON CONBUFF,IREMTW,JB10,CNTRL,JD19,ACTIVE,JD20,CONAPP,0
D32= ... PMT JBUDGET,0,JLINE,JC6,JBTUSER,JC7,JSTORE,JC8,JEXTRA,0
D3FL PMTCON JBUDGET,JENTRY,JB2
D3^2 ... PMT CQPRINT,0,CQ1,0,CQ2,0,CQ11,0,CQFILE,0
D4DB ... PMT APED,0,ANEVENT,JC1,ADSPLAY,JB7,ADELETE,JC11
D4XQ ... PMTCON APED,ANOMESS,0,AQUEST,0,AMONCAT,JF13
D5C6 PMT AOBRES,JD1
D5WG ... PMT AMXOR,0,ALCB,JE16,AOUT,JC12,ASPEAK,0,CONTROL,0
D6*W ... PMTCON AMXOR,ALINES,JC13,GSCAN,JA7
D6T= ... PMTCON AMXOR,CILCB,JF2,BBC,0
D7#L PMTCON AMXOR,ADCB,JB16,ADEVS,JC13,IOUT,JB17,IDATSG,0
D7S2 PMTCON AMXOR,INBF,0,AMESS,0,CONAR,0
D8?B PMTCON AMXOR,CONDCB,JD11,CROUTE,JD12,CSTATE,JC13,ICONIN,JB17
D8QQ ... PMTCON AMXOR,CONLCB,JF7,IMESSG,JD5
D9=6 ... PMTCON AMXOR,INTRPT,JC10,CHAPCPY,0,ASCREEN,JJ6
D9FS ... PMTCON AMXOR,AJOURN,0,AMJOURN,0,AMISC,0
D9PG ... PMT AINPAR,0,ATB,0
D=8W PMT ADATA,0,JSWAP,JD16,JUNSWAP,JD16,AREPORT,0
D=N= PMTCON ADATA,CMARK,0,AWKSB,0,JLN,JC0
D?7L PMTCON ADATA,ADOC,0,CSTORE,0,ADEMAND,JE5,ALINE,JD9
D?M2 ... PMTCON ADATA,CREADL,JD3,AWLLIST,JE0
D#6B PMTCON ADATA,BCANTDO,JE15,AWPER,0,AWDOC,0
D#KQ ... PMTCON ADATA,AGTWORD,0,CORUNJM,0,ASUD,JE11
D*56 ... PMTCON ADATA,AGPUT,0,AGLOT,0,BREPLY,JE1,AMONWRK,0
D*JG ... PMTCON ADATA,ACONV,JD9,IPTEMP,0
DB3W PMTCON ADATA,ERREPLY,0,FPSEUD,0,AREST,JD9,BPERF,0
DBHB ... PMTCON ADATA,HPAGTRN,JB18,BTCAWP,0,BUDGBLB,0
DC2W ... PMTCON ADATA,GMONACC,0,HLOCKDN,JE10,ASTRAT,JD15
DCGB ... PMTCON ADATA,ASUP,0,INPUSG,JD6,JMCPASS,0,JMCPASB,0
DD22 ... PMTCON ADATA,COMPASS,0,APLIST,0,EMS,0,AGROP,0
DFCG PMTCON ADATA,APVAT,JE13,AGPUTX,JE14
DFM8 ... PMTCON ADATA,ELOUT,JD23,AWHATRV,JD24
DFWW PMT FLIB,0,FMAGH,JG1,FTSN,JG2
DGB= PMTCON FLIB,FREP,0,FMES,0,CADUMP,0
DGTL PMTCON FLIB,FTJOB,0,FDECKS,0,FLINC,0,FNOS,0
DH*2 PMTCON FLIB,GOLMT,0,FSPD,0
DHSB ... PMT JOBQE,JF3
DJ?Q PMT AONBS,0,GTRAN,0,GHDDR,0,GREN,0,GROT,0
DJR6 PMTCON AONBS,HDRSAVE,0,GLIST,0,GTN,0
DK=Q ... PMT EDIT,0,FRB,0,FAPB,0
DL=3 PMT IDF,0,B7071,0,B7020,0,CONCEP,0,CONDATA,0
DLP# ... PMTCON IDF,CONNAME,JF4,COINF,0,IDNTFRS,0,IREPORT,0
DM8K ... PMTCON IDF,APROPNS,0,ITERMID,0,IWORK,JF0,CONCEP1,0
DMMW ... PMTCON IDF,INLINE,0,IDELETE,0
DN77 ... PMT A7020,0,ALCB,JG3,ALIST,JG4,INPUT,JG5,CONSIN,JG6
DNLD ... PMTCON A7020,CONSOUT,JG7,INFORM,JD7
DP5P PMT ANAL,0,FABSNB,0
DPK2 PMT EWDAS,0,GRUBUF,0,ASTUC,JF14,BSTUC,0,FDRUM,0
DQ4? PMTCON EWDAS,FBUF,0,GEXD,0,EWMESS,0,EXOF,JF15
DQHJ PMTCON EWDAS,JETSET,0,FLAWB,0
DR2T PMTCON EWDAS,ENLINK,JG8,APFE,0,ESEND,JG9,EGOT,JG9
DRG6 PMTCON EWDAS,ASCOL,0,ESENDT,JG9,ITCH,JG9
DR^C )
DSDN #STRING %A,PMSUBSC
DSX^ #SKI
DTC= (
DTWH #DEF TRA=+DPMSUBSC-DPMTYPES
DW*S [ SUBTYPES TO GO IN #SEG PMSUBSC
DWT5 PMT GOUT,0,INFO,0,INFO2,0,INFO3,0,INFO4,0
DX#B ... PMTCON GOUT,GKEY,0,GUPDATE,0,CHLIST,0
DXRM ... PMTCON GOUT,INFO5,0,COMP,0
DY=Y ... PMTCON GOUT,GABSNB,0,GPROPNO,0,INFO6,0,GLINES,JG11
DYGJ ... PMTCON GOUT,GESIZE,JG12
DYQ9 ... PMT GMON,0,ASET,JE2,AOUT,JE1,ATEMP,JE3,JABAND,0
D^9G PMTCON GMON,JRNAL,JF11,BOUT,JF1,HLSOUT,0
D^NR PMT IPCD,0,ATASK,JH3,IPSTACK,JH4,ENQUIRY,JH2
F284 PMTCON IPCD,IPCGLR,JH1,IPCGLW,JH1
F36L PMT CPAR,0,GPERCON,JB6,JSCE,JF10,CPCT,JF10,AIPB,JF10
F3L= ... PMTCON CPAR,GNUMCON,0,GSTACK,0,JJSCE,JF10
F4JF PMT AMEAS,0,AMTNAM,0,APMC,0
F53Q ... PMT GENERAL,JA1,ACTSAVE,JA1,IDFMESS,JA1
F5H3 ... PMTCON GENERAL,CPERFCT,JA1
F62# PMTCON GENERAL,CORJAM,JA1
F69Y ... PMTCON GENERAL,AGROPE,JA1
F6FK #SKI IPL
F6YW (
F7D7 PMTCON GENERAL,IPLDIS,JG0,IPLDRI,JGDRI,IPLFOA,JG0,IPLINP,JG0
F7XD PMTCON GENERAL,IPLLOG,JG0,IPLPOL,JG0,IPLRES,JG0
F8BP ... PMT IPLD,0,IPLDATE,0,IPLTIME,0,IPLPRDA,0
F8W2 ... PMTCON IPLD,IPLBUF,0,IPLCNB,JGCNB,IPLLDB,JGLDB,IPLMES,0
F9*? )
F9C8 ... PMT BSA,JE17,BTFAIL,JE17,CHAPTER,JA1,AUTCLOS,JA1,AUTERAS,JA1
F9F5 ... PMTCON BSA,AUTOCY,JA1,JOUROPN,JA1
F9H2 ... PMTCON BSA,ENTWIN,JA1,AUTOMAP,JA5,ELOG,JA1
F9HY ... PMTCON BSA,CAFSACT,JE18
F9JX ... PMT JWELL,0,COPYSYS,0,JPARAMS,0,AJDF,0,ACLB,0
F9SH ... PMTCON JWELL,ADICTWL,0,ACOUNTS,0,BCOUNTS,0
F9XN ... PMT IUSER,0,ISPFRB,0,BATCHC,0,HULL,0
F=2T ... PMTCON IUSER,JBL,0
F=4D ... PMTCON IUSER,G400BLK,0,G400USR,0,G400FRB,0,BADGE,0
F=64 ... PMT COMDAT,0,CWHEN,0,CBRK,0,CJTEX,0
F=7^ ... PMTCON COMDAT,CSETP,0,CBUFF,JC2,CINC,JC3
F=9W ... PMTCON COMDAT,CFIN,0,CFIND,0
F==H ... PMT CONSA,JA1,I7023,JA1,APCTMES,JA1
F=?8 ... PMTCON CONSA,CNTRAL,JA1
F=?# ... PMT ACTLF,JC14,BSCHED,JC14
F=?D ... PMTCON ACTLF,GREMOTE,JC14,CENTRAL,JC14,ALPS14,JC14
F=?J ... PMT AMOP,JD4,IMOPQ,JA1,APCT,JA1,IPBIN,JH6,IPBOUT,JH6
F=?N ... PMTCON AMOP,ASENT,JA1,IPBCCA,JH6,AJOURN,JH6
F=?T )
F=R6 #END
F?=C #STRING R,%B [WHEN TYPES INSERTED IN PMTYPES
F?PN PMACTYPE %A,R [INSERT SUBTYPES IN REQUIRED SEGMENT
F#8^ #NOR
F#NJ [??? PMADDS SECT DIAG FGN 104 DOC
F*87 #MAC PMADDS [M.C.D. MANN
F*M8 [
FB69 [
FBK= [ ************
FC4? [ * PMADDS *
FCH# [ ************
FD2* [
FDFB [
FDYC [ 19?+0 CONTAINS THE HIGHEST FIXED CORE ADDRESS
FFCD [ ENCOUNTERED SO FAR
FFWF [
FG*G [ 20? CONTAINS THE RECOMMENDED TABLE LENGTH
FGSH [
FH?J [ 21? CONTAINS THE LENGTH OF PMFSADDA
FHQK [
FJ9L [ 22? CONTAINS AN ERROR INDICATOR FOR %A
FJNM [
FK7N [ 23? STORES THE LISTING LEVEL
FKLP [
FL5Q #STR %A
FLJR (
FM3S #DEF 22?=1 [ PRESET ERROR FLAG
FMGT #SKI 19?+0]<%A-%A [ CHECK SEQUENCE
FM^W #SKI
FNDX (
FNXY ! %A IS OUT OF NUMERICAL SEQUENCE
FPB^ #DEF 22?=0
FPW2 )
FQ*3 #SKI JFCS>%A-%A [ CHECK MNEMONIC IS IN FIXED CORE
FQS4 #SKI
FR?5 (
FRQ6 ! %A IS BEYOND FIXED CORE
FS97 #DEF 22?=0
FSN8 )
FT79 #SKI 22? [ ERROR ?
FTL= (
FW5? #SKI 0?>20?-20? [ TABLE GETTING LONG ?
FWJ# (
FX3* #DEF 23?=1? [ STORE LISTING LEVEL
FXGB #LIS 4
FX^C # WARNING WARNING WARNING
FYDD # THIS TABLE IS GETTING
FYXF # TOO LONG
F^BG #LIS 23?
F^TH )
G2#J #SKI 0?>21?-21? [ TABLE TOO LONG
G2RK (
G3=L ! THIS TABLE IS LONGER THAN
G3PM ! PMFSADDSA
G48N ! SOME FIXED CORE LOCATIONS
G4MP ! MAY BE LOST
G56Q )
G5KR +%A [ STORE ENTRIES
G64S #STR %B [%B PRESENT
G6K= 8H%B
G73P #STR %B
G7G8 #SKI [%B ABSENT, USE %A AS MNEMONIC
G7YM 8H%A
G8C6 #DEF 19?+0=%A [ RESET HIGHEST %A INDICATOR
G8TK )
G9#4 PMADDS %C,%D,%E,%F,%G,%H,%I,%J [CALL RECURSIVELY
G9QH )
G=92 #NOR
G=MF [??? PMCOUNT SECT DIAG FGN 104 DOC
G?5Y #MAC PMCOUNT [M.C.D. MANN
G?JC [
G#2W [
G#F* [ *************
G#XS [ * PMCOUNT *
G*B? [ *************
G*SQ [
GB?9 [
GBPN [ THIS MACRO INSERTS A RECORD OF THE NUMBER OF SUBTYPES IN THE TYPE
GC87 [ MNEMONIC AREA
GCLL #STRING %A
GD55 (
GDHJ #SKI %A>64$64
GF23 #SKI
GFDG (
GFW^ ...#FIDDLE 3 11 +3 [UPDATE WORD COUNT OF SUBTYPE EN
GG*D #DEF TRA1=TRA
GGRX #FREE TRA
GH=B ...#DEF TRA=TRA1+3 [UPDATE POINTER POINTING TO SUBT
GHNT #FREE TRA1
GJ7# )
GJKR PMCOUNT %B,%C,%D,%E
GK4= )
GKGP #NOR
GK^8 [??? PMDLSET SECT DIAG FGN 104 DOC
GLCM #MAC PMDLSET [M.C.D. MANN
GLW6 [
GM#K [
GMR4 [ *************
GN9H [ * PMDLSET *
GNN2 [ *************
GP6F [
GPJY [
GQ3C #STR %A
GQFW (
GQY* FIXTRA J%A
GRBS +D%A/128
GRT? #FID 0 8 +L%A/4
GS?Q PMDLSET %B,%C,%D,%E,%F,%G,%H,%I,%J
GSQ9 )
GT8N #NOR
GTM7 [??? PMFMODE SECT DIAG FGN 104 DOC
GW5L #MAC PMFMODE [M.C.D. MANN
GWJ5 [
GX2J [
GXF3 [ *************
GXXG [ * PMFMODE *
GY*^ [ *************
GYSD [
G^=X [
G^PB [ THIS MACRO IS USED IN SETTING UP A TABLE OF OPEN FILE MODES.
H27T [ USED IN PM SEGMENT PMSUM
H2L# [ %A=BIT IN FCA5 THAT IS SET FOR MODE
H34R [ %B=MODE NAME
H3H= [
H3^P +0
H4D8 #FID %A %A 1
H4WM 8H%B
H5*6 #NOR
H5RK ...[??? PMFSEGS SECT DIAG FGN 105 DOC
H6=4 #MAC PMFSEGS [M.C.D. MANN
H6NH [
H772 [
H7KF [ *************
H83Y [ * PMFSEGS *
H8GC [ *************
H8YW [
H9C* [
H9TS [ THIS MACRO IS USED IN SETTING UP A TABLE OF FIXED CORE SEGMENTS,
H=#? [ HOLDING SEGMENT NAME,LENGTH,AND DRUM ADDRESS
H=QQ [ USED IN PM SEGMENT PMSUM
H?99 [ %A=SEGMENT NAME
H?NQ [ %B=NO IF SEGNENT IS NOT TO BE CHECKSUMMED
H#66 [
H#HG +D%A
H#YW #STR NO,%B
H*B= #SKI
H*RL #FID 0 0 1
HB92 +L%A
HBLB 8H%A
HC3Q #OPT JPMFIXED=0
HCF6 ...#UNS K%A+1
HCWG #SKI
HD?W (
HDP= #DEF K%A=JPMFIXED [DEFINE A "CHAPTER NUMBER" FOR THIS
HF6L #ALT JPMFIXED=JPMFIXED+1 [FIXED CORE SEGMENT FOR USE BY GIN
HFJ2 )
HF^B #NOR
HGBQ [??? PMLIST SECT DIAG FGN 104 DOC
HGS6 #MAC PMLIST [M.C.D. MANN
HH9G [
HHLW [
HJ4= [ ************
HJFL [ * PMLIST *
HJX2 [ ************
HK#B [
HKPQ [
HL76 #FREE XXX,Y,NUM,XA
HLJG #DEF XXX=0? [INDICATES START OF TABLE
HL^W #DEF Y=0? [INDICATOR HIGHEST ADDRESS IN TABLE
HMC= #DEF 23?=1?
HMSL #LIS 0
HN=2 #REP JREP2
HNMB +0
HP4Q #LIS 23?
HPG6 #STRING %A [SKI IF NO FIRST PARAMETER
HPXG REPETE %A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
HQ#W ...#DEF 0?=Y
HQQ= 4H^^^^ [INSERT '^^^^' AT END OF TABLE
HR7L #OPT S=0 [USED BY PMREPCON WHEN THAT
HRK2 #FREE S [MACRO FOLLOWS PMLIST OR PMLISTC
HS2B #FREE Z
HSCQ #DEF Z=0 [INDICATOR USED BY MACRO PMREPCON
HST6 #NOR
HT=G [??? PMLISTC SECT DIAG FGN 104 DOC
HTMW #MAC PMLISTC [M.C.D. MANN
HW5= [
HWGL [
HWY2 [ *************
HX*B [ * PMLISTC *
HXQQ [ *************
HY86 [
HYKG [
H^2W #DEF 19?+0=Y
H^D= #DEF 19?+1=XXX
H^TL #FREE XXX,Y,NUM,XA
J2?2 #DEF Y=19?+0]
J2NB #DEF XXX=19?+1]
J35Q #DEF 0?=0?-1 [STEP BACK AND OVERWRITE '^^^^' SET
J3H6 #STRING %A,+
J3YG +0 [UP BY PREVIOUS MACRO
J4*W REPETE %A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
J4R= #DEF 0?=Y
J58L 4H^^^^ [INSERT '^^^^' AT END OF TABLE
J5L2 #NOR
J654 [??? PMP SECT DIAG FGN 104 DOC
J6J6 #MAC PMP [M.C.D. MANN
J73Q [
J7HB [
J832 [ *********
J8GL [ * PMP *
J92= [ *********
J9FW [
J9^G [
J=F6 [ THIS MACRO SETS UP 'REPEAT' TABLES CALLED BY MACROS PMREP
J=YQ [ AND PMREPCON
J?DB #STR %A
J?Y2 (
J#CL #STR %A,+
J#X= (
J*BW #SKI %A<0$0 [FALL THROUGH IF %A UNSET
J*WG (
JBB6 #FREE Z
JBTQ #DEF Z=1 [SET ERROR INDICATOR
JC*B )
JCT2 )
JD#L #SKI Z<1$1 [SKIP IF ERROR IN TABLE
JDS= (
JF?W #FREE Z
JFRG #STR %A,+
JG?6 (
JGQQ #SKI %AJREP$JREP
JKNG (
JL86 ?%A VALUE TOO LARGE
JLMQ #OPT Z=1
JM7B )
JMM2 )
JN6L #SKI %B+1>JCONO$JCONO [JCONO = MAXIMUM VALUE OF PRINT STYLE
JNL= (
JP5W ?%B NO SUCH CONVERSION ROUTINE
JPKG #OPT Z=1
JQ56 )
JQJQ #OPT Z=0
JR4B #SKI Z<1$1
JRJ2 (
JS3L #STR %A,+
JSH= 5H%A [INSERT IDENTIFIER MNEMONICS
JT2W #STR %A,+
JTGG #SKI
JW26 5H00000 [IF NO IDENTIFIER MNEMONICS
JWFQ #FIDDLE 18 23 -16+0%B [INSERT PRINT STYLE INDICATOR
JW^B PMP %C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
JXF2 )
JXYL )
JYD= )
JYXW #SKI 18?+1]+65]>1?>K0LOCAL [SKIP IF LISTING LEVEL=0
J^CG (
J^X6 #DEF 23?=1?
K2BQ #LIS 4
K2WB #DEF 20?=69?-70? [LOCAL WORKING SPACE LEFT
K3B2 #LIS 23?
K3TL )
K4*= #NOR
K4S= [??? PMREP SECT DIAG FGN 104 DOC
K5?= #MAC PMREP [M.C.D. MANN
K5Q= [
K69= [
K6N= [ ***********
K77= [ * PMREP *
K7L= [ ***********
K85= [
K8J= [
K93= [ THIS MACRO SETS UP TABLES OF BLOCK IDENTIFIERS AND INDICATORS TO
K9G= [ THE WAY THE CONTENTS OF EACH BLOCK SHOULD BE PRINTED.
K9^= [
K=D= #FREE XXX,Z,S
K=X= #DEF XXX=0? [XXX=START OF TABLE
K?B= #STR %A
K?T= #SKI %A<0$0 [FALL THROUGH IF IDENTIFIER UNSET
K##= #DEF Z=1 [Z=1 IF ERROR IN PARAMS OR NO PARAMS
K#R= #OPT Z=0
K*== #SKI Z<1$1 [SKIP IF
K*P= (
KB8= ...#DEF 23?=1?
KBM= #LIS 0
KC6= #REP JREP2
KCK= +0
KD4= ...#LIS 23?
KDH= ...#DEF 0?=XXX+%A+%A-A1-A1
KF2= #OPT S=0
KFF= #FREE S [S=START OF SEQUENCE IN TABLE
KFY= ...#DEF S=XXX-A1-A1+A1+A1>0? [TO BE REPEATED
KGC= PMP %A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
KGW= )
KH*= #SKI Z<1$1
KHS= #72000000+0?-S [IF NO ERRORS IN TABLE SET END
KJ?= [OF 'REPEAT' TERMINATOR
KJQ= #SKI Z
KK9= (
KKN= ...#DEF 0?=XXX [IF ERRORS IN TABLE ERASE TABLE
KL7= 4H^^^^
KLL= )
KM5= #NOR
KMJ= [??? PMREPCON SECT DIAG FGN 104 DOC
KN3= #MAC PMREPCON [M.C.D. MANN
KNG= [
KN^= [
KPD= [ **************
KPX= [ * PMREPCON *
KQB= [ **************
KQT= [
KR#= [
KRR= [ THIS MACRO IS A CONTINUATION MACRO FOR PMREP OR PMLIST OR PMLISTC
KS=W [
KSQG #OPT Z=0
KT=6 #OPT S=0
KTPQ #DEF 19?+0=Z
KW9B #DEF 19?+1=XXX
KWP2 #DEF 19?+2=S
KX8L #FREE XXX,Z,S
KXN= #DEF Z=19?+0]
KY7W #DEF XXX=19?+1]
KYMG #SKI 19?+2]
K^76 #DEF S=19?+2]
K^LQ #SKI Z<1$1 [SKIP IF ERROR IN PREVIOUS MACROS
L26B (
L2L2 #STR %A
L35L (
L3K= #DEF 0?=0?-1 [SET 0?=LAST WORD OF LAST TABLE
L44W #STR %A,+
L4JG (
L546 +0 [ERASE 'TERMINATOR' OF PREVIOUS MACRO
L5HQ #FREE Z
L63B #DEF 0?=0?-1
L6H2 #SKI %A<0$0 [FALL THROUGH IF IDENTIFIER %A UNSET
L72L #SKI
L7G= (
L7^W ...#DEF 0?=XXX-A1-A1+%A+%A>0?
L8FG ...#SKI XXX-A1-A1+%A+%A-0? [SKIP IF %A GREATER THAN LAST P
L8^6 ( [OF PREVIOUS MACRO
L9DQ ?%A INCORRECTLY SEQUENCED
L9YB #OPT Z=1 [SET ERROR INDICATOR
L=D2 )
L=XL #OPT Z=0
L?C= )
L?WW #OPT Z=1 [SET ERROR INDICATOR IF %A UNSET
L#BG )
L#W6 #OPT S=0? [IF FOLLOWING MACRO PMLIST OR PMLISTC
L**Q [SET S TO START OF 'REPEAT' SEQUENCE
L*TB #SKI Z<1$1
LB*2 PMP %A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
LBSL #SKI Z<1$1
LC#= #72000000+0?-S [IF NO ERRORS IN TABLE SET END OF
LCRW ['REPEAT' SEQUENCE TERMINATOR
LD?G #SKI Z
LDR6 (
LF=Q ...#DEF 0?=XXX
LFQB 4H^^^^ [IF ERRORS IN TABLE ERASE TABLE
LG=2 )
LGNX )
LH7S )
LHLP #NOR
LJ5L [??? PMSEG SECT DIAG FGN 104 DOC
LJJH #MAC PMSEG [M.C.D. MANN
LK3D [
LKG* [
LK^= [ ***********
LLD7 [ * PMSEG *
LLX4 [ ***********
LM*^ [
LMSW [
LN?R +%C
LNQN #HAL J%A,+K%B%A
LP9K #NOR
LPNG [??? PMT SECT DIAG FGN 104 DOC
LQ7C #MAC PMT [M.C.D. MANN
LQL# [
LR59 [
LRJ6 [ *********
LS33 [ * PMT *
LSFY [ *********
LSYT [
LTCQ [
LTWM [ THIS MACRO INSERTS TYPES AND SUBTYPES IN TABLES
LW*J [
LWSF #SKI %A/#100>64$64
LX?B ?%A TYPE VALUE GREATER THAN 64
LXQ? #SKI %A/#100<64$64
LY98 (
LYN5 #SKI NUMBER [SKI IF INSERTING SUBTYPES
L^72 (
L^KX #STR %B,C
M24S (
M2HP ...#TRA %A/#100*3+INDEXPM [GET THE ADDRESS TO INSERT TYPE NEMO
M32L ... 8H%A [INSERT TYPE NEMONIC
M3FH #STR %B [SKI IF NO 2ND PARAMETER
M3YD (
M4C* #STR %C
M4W= (
M5*7 +TRA [IF SUBTYPES INSERT THEIR ADDRESS
M5S4 PMCOUNT %C,%E,%G,%I
M6=^ ...#FID 3 11 +3 [UPDATE WORD COUNT OF SUBTYPE ENTRI
M6PW ...#DEF TRA1=TRA+3 [UPDATE POINTER POINTING TO SUBTYPE
M78R #FREE TRA
M7MN #DEF TRA=TRA1
M86K #FREE TRA1
M8KG )
M94C #STR %C
M9H# #SKI [SKIP IF 3RD PARAMETER
M=29 (
M=F6 #SKI %B<1$1
M=Y3 #SKI [SKIP IF %B=ZERO OR IS UNSET
M?BY +%B+DPMTABLEA.2 [IF NO SUBTYPES INSERT DRUM ADDRESS
M?TT )
M##Q )
M#RM )
M*=J #STR %B,C
M*PF #SKI
MB8B PMCOUNT %C,%E,%G,%I [IF CONTINUATION MACRO
MBM? )
MC68 #SKI NUMBER<1$1 [SKI IF INSERTING TYPES
MCK5 (
MD42 #STR %C
MDGX (
MF2B PMTZ %A,%B,%C,%D,%E,%F,%G,%H,%I,%J
MFDS #STR %B,C
MFX= (
MG*N ... 8H0
MGS6 +0
MH=J #STR %B
MHP2 #SKI %B<1$1
MJ7D #SKI
MJ*8 ...(
MJGY ...#DEF 0?=0?-1
MJNN ... +DPMTABLEA+%B [INSERT DISC ADDRESS
MJWD ...)
MK4# )
MKGQ )
MK^8 )
MLCL )
MLW4 #NOR
MM#G [??? PMTCON SECT DIAG FGN 104 DOC
MMQY #MAC PMTCON [M.C.D. MANN
MN9B [
MNMS [
MP6= [ ************
MPJN [ * PMTCON *
MQ36 [ ************
MQFJ [
MQY2 [
MRBD [ THIS MACRO IS USED AS A CONTINUATION TO #MACRO PMT
MRSW [
MS?# PMT %A,C,%B,%C,%D,%E,%F,%G,%H,%I
MSPQ #NOR
MT88 [??? PMTZ SECT DIAG FGN 104 DOC
MTLL #MAC PMTZ [M.C.D. MANN
MW54 [
MWHG [
MW^Y [ **********
MXDB [ * PMTZ *
MXWS [ **********
MY*= [
MYRN [
M^=6 [ THIS MACRO IS USED BY #MAC PMT TO SET UP SUBTYPE MNEMONIC TABLES
M^NJ [
N272 #STR %C
N2KD (
N33W #SKI %C>64$64
N3G# ?%C SUBTYPE VALUE GREATER THAN 64 OR UNSET
N3YQ #SKI %C>64$64
N4C8 #SKI
N4TL (
N5#4 ... 8H0%C [INSERT SUBTYPE MNEMONICS
N5KN ... +0
N5X# ...#DEF 0?=0?-2 [MOVE TO 1ST WORD OF SUBTYPE NEMONIC
N68Y ...#FID 0 5 +%C [ENTER THE VALUE OF SUBTYPE
N6MB ...#DEF 0?=0?+2 [MOVE POINTER TO LAST WORD OF THE SUB
N75S #STR %D
N7J= #SKI %D<1$1
N82N #SKI
N88H ...(
N8BB ...#DEF 0?=0?-1
N8J9 ... +DPMTABLEA+%D [ENTER DISC ADDRESS OF IDENTIFIER TA
N8Q4 ...)
N8Y2 )
N9BL )
N9T= #STR %D
N=?W PMTZ %A,%B,%E,%F,%G,%H,%I,%J
N=QG #NOR
N?96 [??? PMVAL SECT DIAG FGN 104 DOC
N?MQ #MAC PMVAL [M.C.D. MANN
N#6B [
N#K2 [
N*3L [ ***********
N*G= [ * PMVAL *
N*YW [ ***********
NBCG [
NBW6 [
NC#Q [ THIS MACRO SETS UP A TABLE DEFINING THE WORDS TO BE LISTED IN A
NCRB [ SELECTIVE PRINT OF A CHAIN OR RING. MACRO MUST BE ISSUED
ND=2 [ IMMEDIATELY FOLLOWING PMCHAINP MACRO OR PREVIOUS PMVAL MACRO CALL
NDNL [ %A,%B ETC.=ADDRESSES TO BE PRINTED(MAX 6 PARAMS.)
NF7= [
NFKW #STR %A
NG4G #SKI %A<0
NGH6 #SKI
NG^Q (
NHDB #SKI 20?
NHX2 (
NJ*L #FID 12 23 %A+1
NJS= #77777777
NK=W )
NKPG #SKI 20?
NL86 #SKI
NLLQ #FID 0 11 %A+1
NM5B #DEF 20?=20?$1
NMJQ )
NN3N #STR %A
NNGL PMVAL %B,%C,%D,%E,%F
NN^J #NOR
NPDG [??? REPETE SECT DIAG FGN 104 DOC
NPXD #MAC REPETE [M.C.D. MANN
NQBB [
NQT# [
NR#= [ ************
NRR8 [ * REPETE *
NS=6 [ ************
NSP4 [
NT82 [
NTLY #STRING %A [SKIP IF NO MORE IDENTIFIERS
NW5W (
NWJS #STRING %B
NX3Q #SKI %BJREP
P63S 5H%A [INSERT IDENTIFIER MNEMONICS
P6GQ #SKI 0?-XXX>JREP2$JREP2
P6^N ?%A IDENTIFIER VALUE TOO LARGE
P7DL )
P7XJ #SKI 0?-XXXY
P?M4 #FREE Y [RESET Y TO BIGGEST ADDRESS REACHED
P#62 #DEF Y=XA
P#JY #FREE XA
P*3W )
P*HW )
PB3G #FREE NUM
PBH6 REPETE %C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
PC2Q )
PCGB #SKI %B>JCONO$JCONO [IF PRINT STYLE INDICATOR ILLEGAL
PD22 ( [SET INDICATOR AND CONTINUE FROM
PDFL [NEXT PARAMETER
PD^= ?%A PRINT STYLE ILLEGAL
PFDW REPETE %C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P
PFYG )
PGD6 )
PGXQ #SKI 18?+1]+65]>1?>K0LOCAL [SKIP IF LISTING LEVEL=0
PHCB (
PHX2 #DEF 23?=1?
PJBL #LIS 4
PJW= #DEF 20?=69?-70? [LOCAL WORKING SPACE LEFT
PK*W #LIS 23?
PKTG )
PL*6 #NOR
PLSQ [??? GEOSTOP SECT DIAG FGN 104 DOC
PM#B #MAC GEOSTOP [M.C.D. MANN
PMS2 [
PN?L [
PNR= [ *************
PP=W [ * GEOSTOP *
PPQG [ *************
PQ=6 [
PQPQ [
PR9B [ THIS MACRO TERMINATES A RUN OF GEORGE, AND CAUSES THE POSTMORTEM
PRP2 [ ROUTINE TO OUTPUT A SPECIFIED CONSOLE MESSAGE BEFORE RE-ENTERING
PS8L [ GELL
PSN= [ %A=START ADD. IN FORM N(M) OF AREA HOLDING CONSOLE MESSAGE
PT7W [
PTMG '170 6 %A
PW76 #NOR
PWLQ [??? GSCAN SECT DIAG FGN 104 DOC
PX6B #SKI BUFTRACE
PXL2 (
PY5L #MAC GSCAN [M.C.D. MANN
PYK= [
P^4W [
P^JG [ ***********
Q246 [ * GSCAN *
Q2HQ [ ***********
Q33B [
Q=*Q [
Q=SL #SKI K6TRACE>5-5
Q??G (
Q?QB TRACEX %A,%B
Q#9= CALL 0 (JSCAN)
Q#N6 8H%B
Q*72 LDN 0 %A
Q*KW #STR %C
QB4Q LDN 0 %C
QBHL #STR %C
QC2G #SKI
QCFB LDN 0 1
QCY= )
QDC6 )
QDW2 #NOR
QF#W [??? GSCANX SECT DIAG FGN 104 DOC
QFRQ #SKI BUFTRACE
QG=L (
QGPG #MAC GSCANX [M.C.D. MANN
QH8B [
QHM= [
QJ66 [ ************
QJK2 [ * GSCANX *
QK3W [ ************
QKGQ [
QK^L [
QLDG #STR %A
QLXB (
QMB= #HAL %A,%B
QMT6 GSCANX %C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R
QN#2 )
QNQW #NOR
QP9Q )
QPNL [??? TRACE SECT DIAG FGN 104 DOC
QQ7G #SKI BUFTRACE
QQLB (
QR5= #MAC TRACE [M.C.D. MANN
QRJ6 [
QS32 [
QSFW [ ***********
QSYQ [ * TRACE *
QTCL [ ***********
QTWG [
QW*B [
QWS= #SKI K6TRACE>11-11
QX?6 (
QXQ2 STO 1 BATEMAN1
QY8W CALL 1 (JTRACE) [JUMP TO SEGMENT GSCANTRA
QYMQ 8H%B
Q^6L LDN 1 %A
Q^KG )
R24B #NOR
R2H= )
R326 [??? TRACEX SECT DIAG FGN 104 DOC
R3F2 #SKI BUFTRACE
R3XW (
R4BQ #SKI K6TRACE>5-5
R4TL (
R5#G #MAC TRACEX [M.C.D. MANN
R5RB [
R6== [
R6P6 [ ************
R782 [ * TRACEX *
R7M= [ ************
R85L [
R8J2 [
R92B #SKI K6TRACE>11-11
R9DQ (
R9X6 STO 1 BATEMAN1
R=*G CALL 1 (JTRACEX)
R=RW )
R?== #SKI K6TRACE<12-12
R?NL BRN M1
R#72 8H%B
R#KB LDN 1 %A
R*3Q M1
R*G6 #NOR
R*YG )
RBBW )
RBT= [??? PMNEWCHE SECT DIAG FGN 104 DOC
RC?L #MAC PMNEWCHENT [M.C.D. MANN
RCQ2 [
RD8B [
RDLQ [ ****************
RF56 [ * PMNEWCHENT *
RFHG [ ****************
RF^W [
RGD= [
RGWL [ THIS MACRO UPDATES THE PM CHAPTER TABLE IN PMFIXINT WITH
RH*2 [ THE NEW D & L VALUES OF THE SEGMENT(CHAPTER) SPECIFIED
RHRB [ IN %A.IF IT IS A NEW SEGMENT,THEN A NEW ENTRY IS MADE.
RK6G [
RKJW [ %A=SEGMENT NAME.
RL3= [
RLFL #MEN PMFIXINT
RLY2 #OPT J%A=JGAP
RMBB #TRA J%A
RMSQ PMDLSET %A
RN?6 #SKI JGAP-J%A<1$1
RNPG FIXTRA JGAP
RQH2 #END
RQ^B #NOR
RRCQ [??? PMSIZE SECT DIAG FGN 104 DOC
RRW6 #SKI JSKI12
RS#G (
RSQW #MAC PMSIZE [M.C.D. MANN
RT9= [
RTML [
RW62 [ ************
RWH9 [ * PMSIZE *
RWYD [ ************
RX*M [
RXQW [
RY85 [
RYK# [ THIS MACRO IS CALLED FROM THE MENDIT MACRO(AND PMOVERLAY) AND
R^2H [ IS USED TO UPDATE A WORD IN LOADER WHENEVER A PM SEGMENT IS
R^CQ [ MENDITED.THIS WORD CONTAINS THE MINIMUM LENGTH OF FIXED CORE
R^S^ [ WHICH PM REQUIRES TO RUN IN.
S2=8 [
S2MC [
S34L #ALT JPMSIZE1=LPMACT+((LPMSUBSA+LPMSUBSB+LPMSUBSC)>(JREP2*6+2))
S3FT #ALT JPMSIZE1=JPMSIZE1>(LPMFILE+((LPMSUBSA+LPMSUBSB+LPMSUBSC)>(JREP2*6-
S3X4 )))
S4#? #ALT JPMSIZE1=JPMSIZE1>(LPMBUFFS+LINPRIN+1024)
S4PG #ALT JPMSIZE1=JPMSIZE1>(LPMCHAINS+((LPMSUBSA+LPMSUBSB+LPMSUBSC)>(JREP2-
S56P *6)))
S5HY #SKI AREDFSPM
S5^7 #ALT JPMSIZE1=JPMSIZE1>(LPMFS+LPMFSB+512)
S6BB #SKI AREDFSPM<1$1
S6RK #ALT JPMSIZE1=JPMSIZE1>(LPMFS+LPMFSB+512+LPMPRISJ)
S78S #SKI JSKI25
S7L3 (
S83= #ALT JPMSIZE1=JPMSIZE1+LPMFIXINT+LPMDR
S8DF #ALT JPMSIZE=JPMSIZE1+JPMBSEND
S8TN #UNS JPMDA
S9=X #ALT JPMSIZE=JPMSIZE+JPMDSIZE
S9N6 )
S=5* #SKI JSKI25<1$1
S=GJ #ALT JPMSIZE=JPMSIZE1+BUFPM
S=XR #MEN LOADERI
S?*2 #TRA JLPMSIZE
S?Q9 +JPMSIZE
S#7D #END
S#JM #NOR
S#^W )
S*C5 ...[??? PMSIZEUP SECT DIAG FGN 107 DOC
S*S# #SKI JSKI12
SB9L (
SBMB #MAC PMSIZEUP [M.C.D. MANN
SC56 [
SCGW [
SCYL [ **************
SDBB [ * PMSIZEUP *
SDS6 [ **************
SF9W [
SFML [
SG5B [ THIS MACRO IS CALLED FROM THE NEWFIXED MACRO AND IS USED TO
SGH6 [ UPDATE A WORD IN LOADER WHICH CONTAINS THE MINIMUM LENGTH OF
SGYW [ FIXED CORE WHICH PM REQUIRES TO RUN IN.
SHBL [
SHSB [
SJ=6 ...#ALT JPMSIZE=JPMBSEND+JPMSIZE1+JPMDSIZE
SJMW #MEN LOADERI
SK5L #TRA JLPMSIZE
SKHB +JPMSIZE
SK^6 #END
SLBW #NOR
SLSL )
SM=B [??? PMTASMIT SECT DIAG FGN 104 DOC
SMN6 #MAC PMTASMIT [M.C.D. MANN
SN5W [
SNHL [
SN^B [ **************
SPC6 [ * PMTASMIT *
SPSW [ **************
SQ=L [
SQNB [
SR66 [ PARAMETERS:-
SRKQ ...[ %A=* - NO NEWMAC FOR PMACS
SS5B ...[ %A=:USERNAME OR OMITTED,PMACS IS "NEWMAC"ED
SSK2 ...[ (USERNAME OF PMACS.IF OMITTED CURRENT USER ASSUMED)
ST4L ...[ %B=FGN OF PMACS (IF OMITTED LATEST ASSUMED)
STJ= ...[
SW3W ...#STR %A
SX36 ...(
SX=Y ...#STR %A,*
SXGQ ... NEWMAC %A.PMACS(%B),PMACTYPE
SY2B ... PMACTYPE PMSUBSA
SYG2 ... PMACTYPE PMSUBSB
SY^L ... PMACTYPE PMSUBSC
S^F= ...)
S^YW ...#STR %A
T28N ...#SKI
T2DG ...(
T3CQ ... NEWMAC PMACS(%B),PMACTYPE
T3XB ... PMACTYPE PMSUBSA
T4C2 ... PMACTYPE PMSUBSB
T4WL ... PMACTYPE PMSUBSC
T5B= ...)
TGJ2 #NOR
TH2= [??? PMTABMIT SECT DIAG FGN 104 DOC
THDG #MAC PMTABMIT [M.C.D. MANN
THWQ [
TJ*2 [
TJR= [ **************
TK9G [ * PMTABMIT *
TKMQ [ **************
TL62 [
TLJ= [
TM2G [ PARAMETERS:-
TMDQ [ %A = :USERNAME, %B,%D,%F,... FILENAME(NO VERD_SION NO.
TMX2 [ %C,%E,%G,... FGN
TN*= [ %B,%D,%F,... FGN
TNRG [ OR %A=ALL
TP9Q [ OR %A=:USERNAME, %B=ALL
TPN= [
TQ7W #ALT GFIXCORE=1
TQ*4 ...#ALT BSFILEEND=2?
TQG= ...#DEF 2?=DPMTABLEA
TQMG #STR %A
TR76 (
TRLQ #STR :,%A
TS6B (
TSL2 #STR %A,ALL
TT5L (
TTK= PMOVSEG ,PMTABLEA,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
TW4W R,%S,%T,%U,%V
TWJG PMOVSEG ,PMTABLEB,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
TX46 R,%S,%T,%U,%V
TXHQ PMOVSEG ,PMTABLEC,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
TY3B R,%S,%T,%U,%V
TYH2 PMOVSEG ,PMTABLED,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
T^2L R,%S,%T,%U,%V
T^G= PMOVSEG ,PMTABLEE,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
T^^W R,%S,%T,%U,%V
W2FG PMOVSEG ,PMTABLEF,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W2^6 R,%S,%T,%U,%V
W3DQ PMOVSEG ,PMTABLEG,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W3YB R,%S,%T,%U,%V
W4D2 PMOVSEG ,PMTABLEH,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W4XL R,%S,%T,%U,%V
W5C= PMOVSEG ,PMTABLEI,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W5WW R,%S,%T,%U,%V
W6BG PMOVSEG ,PMTABLEJ,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W6W6 R,%S,%T,%U,%V
W7*Q PMOVSEG ,PMTABLEZ,%A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%-
W7TB R,%S,%T,%U,%V
W8*2 )
W8SL #STR %A,ALL
W9#= #SKI
W9RW (
W=?G MENDIT *,PMTABLEA,,,0,,PM
W=R6 MENDIT *,PMTABLEB,,,0,,PM
W?=Q MENDIT *,PMTABLEC,,,0,,PM
W?QB MENDIT *,PMTABLED,,,0,,PM
W#=2 MENDIT *,PMTABLEE,,,0,,PM
W#PL MENDIT *,PMTABLEF,,,0,,PM
W*9= MENDIT *,PMTABLEG,,,0,,PM
W*NW MENDIT *,PMTABLEH,,,0,,PM
WB8G MENDIT *,PMTABLEI,,,0,,PM
WBN6 MENDIT *,PMTABLEJ,,,0,,PM
WC7Q MENDIT *,PMTABLEZ,,,0,,PM
WCMB )
WD72 )
WDLL #STR :,%A
WF6= #SKI
WFKW (
WG5G #STR %B,ALL
WGK6 (
WH4Q PMOVSEG %A,PMTABLEA,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WHJB ,%S,%T,%U,%V,%W
WJ42 PMOVSEG %A,PMTABLEB,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WJHL ,%S,%T,%U,%V,%W
WK3= PMOVSEG %A,PMTABLEC,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WKGW ,%S,%T,%U,%V,%W
WKWR PMOVSEG %A,PMTABLED,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WL=N ,%S,%T,%U,%V,%W
WLLK PMOVSEG %A,PMTABLEE,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WM2G ,%S,%T,%U,%V,%W
WMBC PMOVSEG %A,PMTABLEF,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WMQ# ,%S,%T,%U,%V,%W
WN69 PMOVSEG %A,PMTABLEG,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WNG6 ,%S,%T,%U,%V,%W
WNW3 PMOVSEG %A,PMTABLEH,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WP9Y ,%S,%T,%U,%V,%W
WPKT PMOVSEG %A,PMTABLEI,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WP^Q ,%S,%T,%U,%V,%W
WQ*M PMOVSEG %A,PMTABLEJ,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WQPJ ,%S,%T,%U,%V,%W
WR5F PMOVSEG %A,PMTABLEZ,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R-
WRFB ,%S,%T,%U,%V,%W
WRT? )
WS98 #STR %B,ALL
WSK5 #SKI
WS^2 (
WT#X MENDIT %A,PMTABLEA,,,0,,PM
WTNS MENDIT %A,PMTABLEB,,,0,,PM
WW4P MENDIT %A,PMTABLEC,,,0,,PM
WWDL MENDIT %A,PMTABLED,,,0,,PM
WWSH MENDIT %A,PMTABLEE,,,0,,PM
WX8D MENDIT %A,PMTABLEF,,,0,,PM
WXJ* MENDIT %A,PMTABLEG,,,0,,PM
WXY= MENDIT %A,PMTABLEH,,,0,,PM
WY#7 MENDIT %A,PMTABLEI,,,0,,PM
WYN4 MENDIT %A,PMTABLEJ,,,0,,PM
W^3^ MENDIT %A,PMTABLEZ,,,0,,PM
W^CW )
W^RR )
X27N ... PMTASMIT *
X2HK )
X2XG #STR %A
X3?C #SKI
X3M# ! PMTABMIT ! WHERE'S YER PARAMETERS??
X3Q? ...#SKI 2?>ATABLESIZE$ATABLESIZE
X3T= ...#DEL ** PMTABLES AREA LARGER THAN ALLOWED **
X3Y9 ...#DEF 2?=BSFILEEND
X439 #ALT GFIXCORE=0
X4C6 #NOR
X4R3 [??? PMOVSEG SECT DIAG FGN 104 DOC
X56Y #MAC PMOVSEG [M.C.D. MANN
X5GT [
X5WQ [
X6=M [ *************
X6LJ [ * PMOVSEG *
X72F [ *************
X7BB [
X7Q? [
X868 [ PARAMETERS
X8G5 [ %A=:USERNAME,%B=FILENAME, %C,%E,...FILENAME, %D,%F,...FGN
X8W2 [
X99X ...#ALT JPMRR=1
X9KS PMMATCH %A,%B,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R,%S,%T,%U-
X=36 ,%V,%W,%X
X=CB ...#SKI JPMRR
X=RL MENDIT *,%B,,,0,,PM
X?7W #NOR
X?J6 [??? PMMATCH SECT DIAG FGN 104 DOC
X?YB #MAC PMMATCH [M.C.D. MANN
X##L [
X#NW [
X*56 [ *************
X*FB [ * PMMATCH *
X*TL [ *************
XB9W [
XBL6 [
XC2B [ PARAMETERS
XCBL [ %A=:USERNAME,%B=FILENAME, %C,%E,...FILENAME, %D,%F,...FGN
XCQW #STR %C
XD76 (
XDHB #STR %B,%C
XDXL #SKI
XF?W (
XFN6 MENDIT %A,%C,,%D,3,,PM
XG4B ...#ALT JPMRR=0
XGDL )
XGSW #STR %B,%C
XH96 PMMATCH %A,%B,%E,%F,%G,%H,%I,%J,%K,%L,%M,%N,%O,%P,%Q,%R,%S,%T,%U,%V
XHKB )
XH^L #NOR
XJ*W [??? TRACMORE SECT DIAG FGN 104 DOC
XJQ6 #MAC TRACMORE [M.C.D. MANN
XK6B [
XKGL [
XKWW [ **************
XL?6 [ * TRACMORE *
XLMB [ **************
XM3L [
XMCW [
XMS6 [ RESTORE TIME MACRO TO CHANGE
XN8B [ TRACE BUFFER SIZE
XNJL [ PARAMETERS:- %A- NEW BUFFER SIZE(DEFAULT-UNCHANGED)
XNYW [
XP*6 #STR %A
XPPB (
XQ6Q #SKI %A>4095$4095
XQJS (
XR2W !DON'T BE TOO AMBITIOUS!LENGTH GIVEN IS 4095!
XRDY #ALT JTRASIZE=4095
XRX2 )
XS*4 #SKI %A<4095$4095
XSR6 #ALT JTRASIZE=%A
XT98 #SKI %A<512$512
XTM= (
XW5# !MINIMUM SIZE MUST BE 512!
XWHB #ALT JTRASIZE=512
XW^D )
XXCG #MEN CONSTANT
XXTJ #TRA JTRALEN
XY?L +JTRASIZE-1/JTRAENT+1*JTRAENT
XYPN #END
X^7Q )
X^KS #STR %A
Y23W #SKI
Y2FY !NO PARAMETER-TRACE UNCHANGED!
Y2Y2 #NOR
Y3B4 [??? SCANMORE SECT DIAG FGN 104 DOC
Y3S6 #MAC SCANMORE [M.C.D. MANN
Y4=8 [
Y4N= [
Y56# [ **************
Y5JB [ * SCANMORE *
Y62D [ **************
Y6DG [
Y6WJ [
Y7#L [ RESTORE TIME MACRO TO CHANGE
Y7QN [ GSCAN BUFFER SIZE
Y88Q [ PARAMETERS:- %A -NEW GSCAN SIZE
Y8LS [
Y94W #STR %A
Y9GY (
Y9YG #SKI %A>4095$4095
Y=B4 (
Y=RL !DON'T BE TOO AMBITIOUS!LENGTH GIVEN IS 4095!
Y?98 #ALT GSCANSIZE=4095
Y?LQ )
Y#4# #SKI %A<4095$4095
Y#FW #ALT GSCANSIZE=%A
Y#XD #SKI %A<512$512
Y**2 (
Y*QJ !MINIMUM SIZE MUST BE 512!
YB86 #ALT GSCANSIZE=512
YBKN )
YC3= #MEN CONSTANT
YCDS #TRA GSCANLEN
YCWB +GSCANSIZE
YD?Y #END
YDPG )
YF74 #STR %A
YFJL #SKI
YG28 !NO PARAMETER GIVEN-GSCAN UNCHANGED!
YGCQ #NOR
YGT# [??? PMSHRINK SECT DIAG FGN 104 DOC
YH=W #MAC PMSHRINK [M.C.D. MANN
YHND [
YJ62 [
YJHJ [ **************
YJ^6 [ * PMSHRINK *
YKBN [ **************
YKS= [
YL9S [
YLMB [ RESTORE TIME MACRO TO REDUCE PM TIME
YM4Y [
YMGG [ %A=ON FOR SHRINKING
YMY4 [ %A=OFF FOR REVERSION TO NORMAL PM
YN*L [
YNR8 #STR ON,%A
YP8Q (
YPL# #STR OFF,%A
YQ3W (
YQFD !INCORRECT PARAMETER TO PMSHRINK MACRO!
YQX2 #EXI
YR*= )
YRSW )
YS#G #OPT AKKPM=1
YSS6 #STR %A,ON
YT?Q #ALT AKKPM=1
YTRB #STR %A,OFF
YW?2 #ALT AKKPM=0
YWQL #MEN MOPPM
YX== #TRA K51MOPPM
YXPW +AKKPM*119000+1000/K9
YY9G #END
YYP6 #MEN PMDR
Y^8Q #TRA JPMIPL
Y^NB +AKKPM
^282 #TRA JPMIPB
^2ML +AKKPM
^37= #TRA JPMWIND
^3LW +AKKPM
^46G #END
^4L6 #NOR
^55Q ...[??? JPMFAIL SECT DIAG FGN 105 DOC
^5KB #MAC JPMFAIL [M.C.D. MANN
^652 [
^6JL [
^74= [ *************
^7HW [ * JPMFAIL *
^83G [ *************
^8H6 [
^92Q [
^9GB ... LDCT %A #150 [CHECK BITS 2, 3 AND 5
^=22 ... SMO FXPMDR
^=FL ... ANDX %A JMTRW1 [TRANSFER FAILED IF ANY OF
^=^= ... BNZ %A %B [THESE BITS ARE SET TO 1
^?DW #NOR
^^^^ ...32512230017000000000