MACROS PRS
(George Source)
- MACROS PRS.txt
22FL # MACROS PRS ***** 22^= # RUTH HEAP 23DW ...[??? HLSAV SECT CENT FGN 1 DOC 25X2 # HLSAV IS USED IN CONNEXION WITH THE JOB-SAVING BITS IN HLSQ AND JOBQ 26BL # BLOCKS. IT CAN BE USED TO TEST OR ALTER ONE OF THESE BITS AT A 26W= # TIME AND CAN TEST FOR THE PRESENCE OF EITHER OR NEITHER OF THE BITS 27*W # IN THE HLSQ BLOCK. 27TG # %A, %B AND %C MUST BE CHARACTER STRINGS - THOSE ALLOWED ARE 28*6 # SHOWN IN PARENTHESES BELOW. 28SQ # %A IS THE MODIFIER POINTING TO THE BLOCK 29#B # %B INDICATES WHETHER THE BIT IS TO BE SET OR CLEARED OR, FOR 29S2 # TESTING, WHICH STATE IS TO CAUSE THE BRANCH: (SET, CLEAR). 2=?L # %C INDICATES WHETHER THE 'SAVING', 'SAVED', OR BOTH, OR THE UNSAVE 2=R= # ARE REFERED TO: (SAVING,SAVED,SAFE,UNSAVE). 2?=W # %D INDICATES WHICH BLOCK TYPE IS REFERRED TO: (HLSQ, JOBQ). 2?QG # %E IF PRESENT, INDICATES THE TESTING MODE AND IS THE DESTINATION 2#=6 # LABEL IF THE RELEVANT BIT IS IN THE STATE DESCRIBED. 2#PQ # HLSAV <MOD>,<SET/CLEAR>,SAVED,JOBQ[,<LABEL>] IS NOT ALLOWED, I.E. 2*9B # A COMPILATION ERROR IS GENERATED. 2*P2 # SAFE IS ONLY ALLOWED IN 2B8L # HLSAV <MOD>,<SET/CLEAR>,SAFE,HLSQ,LABEL. 2BN= # ONLY REGISTER 0 IS DESTROYED. 2C7W #MAC HLSAV 2CMG #DEF MHLSAV1=0 2D76 CHECKSTRING %B,SET,CLEAR,MHLSAV1 2DLQ CHECKSTRING %C,SAVED,SAVING,SAFE,UNSAVE,MHLSAV1 2F6B CHECKSTRING %D,JOBQ,HLSQ,MHLSAV1 2FL2 #SKI MHLSAV1 2G5L ( 2GK= ! HLSAV:- STRING PAR UNREC. 2H4W GEOERR 1,HLSAV 2HJG ) 2J46 #SKI MHLSAV1<1-1 2JHQ ( 2K3B #STR %E 2KH2 #STR 2L2L ( 2LG= #STR SAFE,%C 2L^W #STR 2MFG ( 2M^6 ! HLSAV:- SAFE BUT NO LABEL. 2NDQ GEOERR 1,HLSAV 2NYB ) 2PD2 #STR SAFE,%C 2PXL ( 2QC= #STR JOBQ,%D 2QWW ( 2RBG #STR SAVED,%C 2RW6 #STR 2S*Q LDCT 0 #400 2STB #STR SAVING,%C 2T*2 #STR 2TSL LDCT 0 #200 2W#= #STR UNSAVE,%C 2WRW #STR 2X?G LDCT 0 #10 2XR6 ORS 0 HLSYONQ(%A) 2Y=Q #STR SET,%B 2YQB ERS 0 HLSYONQ(%A) 2^=2 ) 2^PL #STR HLSQ,%D 329= ( 32NW #STR SAVING,%C 338G ( 33N6 ! HLSAV:- %C,JOBQ IS BAD. 347Q GEOERR 1,HLSAV 34MB ) 3572 #STR SAVED,%C 35LL ( 366= LDCT 0 1 36KW ORS 0 JMISC(%A) 375G #STR SET,%B 37K6 ERS 0 JMISC(%A) 384Q ) 38JB ) 3942 ) 39HL ) 3=3= #STR %E 3=GW ( 3?2G #STR JOBQ,%D 3?G6 ( 3?^Q #STR SAVED,%C 3#FB ( 3#^2 #STR SAVING,%C 3*DL #STR 3*Y= LDCT 0 #200 3BCW #STR SAFE,%C 3BXG #STR 3CC6 LDCT 0 #600 3CWQ #STR UNSAVE,%C 3DBB #STR 3DW2 LDCT 0 #10 3F*L ANDX 0 HLSYONQ(%A) 3FT= #STR CLEAR,%B 3G#W BNZ 0 %E 3GSG #STR SET,%B 3H#6 BZE 0 %E 3HRQ ) 3J?B #STR SAVED,%C 3JR2 #STR 3K=L ( 3KQ= LDX 0 HLSYONQ(%A) 3L9W #STR CLEAR,%B 3LPG BNG 0 %E 3M96 #STR SET,%B 3MNQ BPZ 0 %E 3N8B ) 3NN2 ) 3P7L #STR HLSQ,%D 3PM= ( 3Q6W #STR SAVING,%C 3QLG ( 3R66 ! HLSAV:- %C,JOBQ IS BAD. 3RKQ GEOERR 1,HLSAV 3S5B ) 3SK2 #STR SAVING,%C 3T4L #STR 3TJ= ( 3W3W LDCT 0 1 3WHG ANDX 0 JMISC(%A) 3X36 #STR CLEAR,%B 3XGQ BNZ 0 %E 3Y2B #STR SET,%B 3YG2 BZE 0 %E 3Y^L ) 3^F= ) 3^YW ) 42DG ) 42Y6 #FRE MHLSAV1 43CQ #NOR 43MJ ...[??? CHECKSTR SECT CENT FGN 1 DOC 43XB # CHECKSTRING TESTS WHETHER THE STRING %A IS IDENTICALLY (NOT JUST IN- 44C2 # CLUDING OR INCLUDED BY) ONE OF THE STRINGS %B TO %<N>. IF NOT, 44WL # FLAG %<N+1> IS OBEYED. (FLAG CAUSES ITS PARAMETER (A LOCAL IDENTIFIER) 45B= # TO BE REDEFINED INCREMENTED BY ONE.) 45TW # 46*G # REPETITIONS IN THE STRINGS %B TO %<N> DO NOT AFFECT THE RESULT EXCEPT 46T6 # THAT THERE SHOULD NOT BE TWO ADJACENT EMPTY STRINGS IN THIS SET. 47#Q # ** NO MORE THAN TEN STRINGS MAY BE TESTED FOR ** 47SB #MAC CHECKSTR 48#2 #STR %C%D 48RL ( 49?= #STR %A,%B 49QW CHECKSTR %A,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L 4==G #STR %A,%B 4=Q6 #STR 4?9Q ( 4?PB #STR %B,%A 4#92 CHECKSTR %A,%C,%D,%E,%F,%G,%H,%I,%J,%K,%L 4#NL ) 4*8= ) 4*MW #STR %C%D 4B7G #STR 4BM6 FLAG %B 4C6Q #NOR 4CBJ ...[??? FLAG SECT CENT FGN 1 DOC 4CLB # FLAG REDEFINES %A (WHICH MUST BE A LOCAL IDENTIFIER) AS ITS ORIGINAL 4D62 # VALUE PLUS ONE. 4DKL #MAC FLAG 4F5= #DEF MFLAG1=%A+1 4FJW #FRE %A 4G4G #DEF %A=MFLAG1 4GJ6 #FRE MFLAG1 4H3Q #NOR 4H?J ...[??? FLAGOFF SECT CENT FGN 1 DOC 4HHB # FLAGOFF REDEFINES %A (WHICH MUST BE A LOCAL IDENTIFIER) AS VALUE ZERO. 4J32 #MAC FLAGOFF 4JGL #FRE %A 4K2= #DEF %A=0 4KFW #NOR 4K^G # ***** 4LF6 # END OF MACROS PRS ***** 4LYQ # ***** ^^^^ ...57041577000100000000