22FL # 22^= # RUTH HEAP 23DW # 23NN ...[??? FLENME SECT CENT FGN 1 DOC 23YG # THIS MACRO IS A BIT OF CODE! 24D6 # ITS PURPOSE IS TO GET A FILENAME FROM A BLOCK OR ANY WHERE ELSE. 24XQ # %A IS THE RELATIVE ADDRESS OF USER-NAME. 25CB # %B IS DO OF LOCAL-FILE-NAME. 25X2 # %C DESCRIBED AT END OF MACRO. 26BL # 26W= # X2 CONTAINS A GEORGE ADDRESS: %A & %B ARE RELATIVE TO THIS. 27*W # X7 CONTAINS THE GEORGE ADDRESS OF THE O/P BUFFER. 27TG # 28*6 # ALL ACCS ARE USE EXCEPT X3. 28SQ # X7 WILL POINT TO THE NEXT AVAILABLE CHAR IN THE O/P BUFFER. 29#B # THE FIRST WORD OF THE RECORD WILL BE THE NUMBER OF CHARACTERS. 29S2 # THE FORMAT IS 2=?L # :USER.LOCAL 2=R= #MAC FLENME 2?=W # 2?QG LDX 1 7 [GEO. ADDRESS OF O/P. 2#=6 STOZ 0(1) [ZEROISE CH. COUNT. 2#PQ ADN 7 1 [STEP PAST THE COUNT WORD. 2*9B # 2*P2 CALL 5 MFLENME1 [ROUTINE UPDATES COUNT AND INSERTS 2B8L ...[ FILE-NAME INTO BLOCK. 2BN= LDN 4 #12 [COLON 2C7W SBN 2 %A [SET X2 TO POINT TO LOCAL- 2CMG ADN 2 %B [FILE-NAME. 2D76 CALL 5 MFLENME1 2DLQ LDN 4 #36 [FULL STOP. 2F6B BRN MFLENME6 2FL2 # 2G5L ...[ TRANSFER ROUTINE. 2GK= # 2H4W MFLENME1 2HJG LDN 4 12 [TOTAL NUMBER OF CHARACTERS. 2J46 LDN 6 0 2JHQ MFLENME2 2K3B LDCH 0 %A(2) [LOAD CHARACTER. 2KH2 SBN 0 #20 [SPACE 2L2L BNZ 0 MFLENME3 2LG= ADN 6 1 [NO OF TRAILING SPACE. 2L^W BRN MFLENME4 2MFG MFLENME3 2M^6 LDN 6 0 [ZEROISE NO OF TRAILING SPACES. 2NDQ MFLENME4 2NYB BCHX 2 £ [STEP CHAR. POSN. 2PD2 BCT 4 MFLENME2 2PXL # 2QC= SBN 2 3 [SET BACK X2 2QWW LDX 4 %A(2) 2RBG BZE 4 MFLENME5 [NOT LOCAL-FILE-NAME 2RW6 NGX 4 6 2S*Q ADN 4 13 [NO OF CHARAVTERS. 2STB LDX 0 1 [STORE X1 2T*2 ADS 4 0(1) [ADD NO OF CHARACTERS. 2TSL LDX 1 5 [ADDRESS OF PARAMETER. 2W#= OBEY 0(1) [GET COLON OR FULL STOP. 2WRW LDX 1 7 [PUT ADDRESS INTO MODIFIER 2X?G DCH 4 0(1) [DEPOSITE 2XR6 BCHX 7 £ [STEP PAST 2Y=Q NGX 1 6 2YQB ADN 1 12 [NUMBER OF CHARACTERS 2^=2 LDN 6 %A(2) [ADDRESS OF STRING. 2^PL MVCH 6 0(1) 329= LDX 1 0 [RESTORE X1 32NW MFLENME5 338G EXIT 5 1 33N6 # 347Q # 34MB MFLENME6 3572 # 35LL #STRING 2,%C 366= #SKI 36KW ( 375G SBN 2 %B 37K6 ADN 2 %A 384Q ) 38JB ...[ THIS WILL RESTORE X2 TO ITS ORIGINAL VALUE IF %C=2. 3942 # 39HL #NOR