FINDRUM866

(George Source)

Macros used: BACKREAD, BADBLOCK, FINDPEREC, GEOERR, INFORM, LADDP, LGEOG, LINT, LOCK, MENDAREA, MHUNTW, OUTNUM, PHOTO, READ, SEGENTRY, SETREP, TESTMOVE, UNLOCK, UP

FINDRUM866.txt
22FL ...#SEG  FINDRUM70                    [FRANK BLUNDELL  
22^=    #LIS  K0FINDRUM 
23DW          8HFINDRUM 
23YG    #   
24D6          SEGENTRY K1FINDRUM,QK1FINDRUM 
24XQ    #   
25CB    #   
25M8 ...XGHSD          4HGHSD   
25X2    RTEN           +10  
26BL    #DEF  X=EXBSP   
26W=    #DEF  TREP=ACOMMUNE9
27*W    #   
27TG    #   
28*6    # S/R TO READ FROM BACKING STORE,CHECK REPLY AND OUTPUT FAIL
28SQ    # MESSAGE IF NECESSARY. 
29#B    #   
29S2    #  LINK X7  
2=?L    #  EXPECTS X3 TO POINT TO EUDAS/GNAME   
2=R=    #  ON EXIT X1=FX1 X2=FX2
2?=W    #  JUMPS TO  P4 IF A FAIL OCCURS
2?QG    [   
2#=6    READ  SBX   7  FX1  
2#PQ          BACKREAD BSET+BONL,X+1(3),,X(3),X+3(3),X+2(3) 
2*9B          LDX   4  TREP(2)  
2*P2    #SKI  K6FINDRUM>99-99   
2B8L    (   
2BN=          BPZ   4  R1   
2C7W          GEOERR   1,BSTSREP           [T.I.P REPLY 
2CMG    R1  
2D76    )   
2DLQ          SRL   4  18   
2F6B          BNZ   4  R2                  [JUMP IF TRANSFER ERROR  
2FL2          ADX   7  FX1                 [RESET  LINK 
2G5L          EXIT  7  0
2GK=    #              SOMETHING NASTY  
2H4W    R2    PHOTO    7
2HJG    R2B   OUTNUM   AGEOG(3),0          [GEOGNO AS NEXT MESSAGE PARAM
2J46          ANDN  4  1                   [CHECK IF INOP   
2JHQ          BNZ   4  R3                  [NOT INOP
2K3B          INFORM   1,FIDRFAIL,1        [OUTPUT FAIL MESSAGE 
2KH2          BRN      R4   
2L2L    R3    INFORM   1,FIDRINOP,1        [OUTPUT INOP MESSAGE 
2LG=    R4    TESTMOVE 7,R4A
2L^W          MHUNTW   3,EWDAS,FDRUM
2MFG    R4A   BADBLOCK EXBSP(3) 
2M^6          BRN      P13  
2NDQ    #   
2NYB    #   
2PD2    QK1FINDRUM  
2PXL          MHUNTW   3,EWDAS,FDRUM
2QC=          LOCK     3
2QWW          LDX   5  AGTYPE(3)
2RBG          SRL   5  18   
2RW6    #SKI  K6FINDRUM>199-199 
2S*Q    (   
2STB          LDX   0  5                   [CHECK TYPE  
2T*2          SBN   0  9
2TSL          BZE   0  P1   
2W#=          SBN   0  16   
2WRW          BZE   0  P1   
2X?G          GEOERR   1,DRUMTYPE   
2XR6    P1  
2Y=Q    )   
2YQB          LDN   0  BBUFF(3) 
2^=2          STO   0  EXBSP+2(3)          [BUFFER ADDRESS FOR TRANSFERS
2^PL    #   
329= ...P7    FINDPEREC 1,APFOTY,5,P4,,XCME,XCME
32NW          BNG   1  P2                  [NO MORE DRUMS   
338G          LADDP    1,2  
33N6    #SKI  BDMK7<1$1 
347Q          LDX   0  BSUNIT(2)
34MB    #SKI  BDMK7 
3572          LDX   0  BDRUM(2) 
35LL          ANDN  0  #377                [BSUN
366=          STO   0  EXBSP(3) 
36KW          LGEOG    1,0  
375G          STO   0  AGEOG(3)            [GEOGRAPHIC NO.  
37K6          LDX   0  5
384Q          LDX   5  1                   [SAVE DL PTR 
38JB          SBN   0  9
3942          BZE   0  P3                  [ JUMP IF SLOW DRUM  
39HL          LDN   0  0
3=3=          STO   0  EXBSP+3(3)   
3=GW          LDN   0  128  
3?2G          STO   0  EXBSP+1(3)   
3?G6          CALL  7  READ 
3?K= ...      SMO      FX1  
3?NB ...      LDX   4  XGHSD               [BIT PATTERN=GHSD
3?RG ...      TXU   4  BBUFF(3)            [TEST IF INITIALISED 
3?WL ...      BCC      P4A                 [J IF SO 
3?^Q          LINT     5,4  
3#FB          TXU   4  BBUFF(3) 
3#^2          BCS      UGHDRUM             [HSD NOT INITIALISED 
3*8S ...P4A 
3*DL          LDN   4  BBUFF(3) 
3*Y=          LDX   7  BBUFF+1(3)          [COUNT OF ENTRIES
3BCW          LDN   0  32   
3BXG          TXL   7  0
3CC6          BCC      UGHDRUM             [TOO MANY FILES? 
3CWQ    P5    ADN   4  4
3DBB          SBN   7  1
3DW2          BNG   7  P13                 [NO MORE FILES ON THIS DRUM  
3F*L          LDN   1  3                   [CHECK FILENAMES 
3FT=    P6    SMO      4
3G#W          LDX   0  0(1) 
3GSG          SMO      1
3H#6          TXU   0  ANAME-1(3)   
3HRQ          BCS      P5                  [JUMP IF DIFFERENT   
3J?B          BCT   1  P6   
3JR2          SMO      4
3K=L          LDX   0  0
3KQ=          LDX   4  0
3L9W          ANDN  4  #7777               [FILE LENGTH IN BLOCKS   
3LPG          SRL   0  12                  [FILE DATUM  
3M96          BRN      P11                 [JUMP TO FINISH  
3MNQ    P2    SETREP   NOTFOUND 
3N8B          BRN      P12  
3NN2    # SLOW DRUM PART
3P7L    #   
3PM=    P3    LDN   0  1024                [B.S ADDRESS 
3Q6W          STO   0  EXBSP+3(3)   
3QLG          LDN   0  6                   [READ SUFFICIENT OF DIR TO DO
3R66                                       [CHECKS ON IT
3RKQ          STO   0  EXBSP+1(3)   
3S5B          CALL  7  READ 
3SK2          LDN   0  128-9
3T4L          SBS   0  EXBSP+3(3)   
3TJ=          LDN   0  128  
3W3W          STO   0  EXBSP+1(3)   
3WHG          LDX   6  BBUFF(3) 
3X36          LDEX  0  BBUFF+5(3)   
3XGQ          LDN   2  3
3Y2B          TXL   0  2
3YG2          BCC      UGHDRUM             [TOO BIG DIR?
3Y^L          SLL   0  10   
3^F=          ADN   0  1024 
3^YW          TXL   6  0
42DG          BCC      UGHDRUM             [TOO MANY FILES? 
42Y6          SBN   6  1033 
43CQ          SRL   6  2                   [COUNT OF FILES  
43XB          LDN   2  0                   [COUNT OF ENTRIES IN CORE
44C2    P9    ADN   7  4
44WL          SBN   6  1
45B=          BNG   6  P13                 [NO MORE FILES ON THIS DRUM  
45TW          SBN   2  1
46*G          BPZ   2  P8                  [JUMP IF MORE FILES IN CORE  
46T6          LDN   0  128  
47#Q          ADS   0  EXBSP+3(3)   
47SB          CALL  7  READ 
48#2          LDN   7  BBUFF(3) 
48RL          LDN   2  31                  [ENTRIES/BLOCK-1 
49?=    P8    LDN   1  3                   [CHECK FILENAMES 
49QW    P10   SMO      7
4==G          LDX   0  0(1) 
4=Q6          SMO      1
4?9Q          TXU   0  ANAME-1(3)   
4?PB          BCS      P9                  [JUMP IF DIFFERENT   
4#92          BCT   1  P10  
4#NL          SMO      7                   [GET DATUM  AND LENGTH   
4*8=          LDX   0  0
4*MW          LDX   4  0
4B7G          SRL   0  10   
4BM6          ANDN  0  #3777               [DATUM   
4C6Q          ANDN  4  #1777               [LENGTH  
4CLB          SLL   0  10                  [ GET INTO WORDS 
4D62          SLL   4  10                  [GET INTO WORDS  
4DKL    P11   STO   0  EXBSP+1(3)   
4F5=          STO   4  EXBSP+2(3)   
4FJW    #SKI  BDMK7 
4G4G          STO   5  ADRDLIST(3)         [STORE DL PTR IN /FDRUM  
4GJ6          SETREP   OK   
4H3Q    P12   UNLOCK   3
4HHB          UP
4J32    P13   LDX   1  5                   [RETIEVE DL PTR  
4JGL          LDX   5  AGTYPE(3)
4K2=          SRL   5  18                  [GET DEVICE TYPE 
4KFW          BRN      P4   
4K^G    #   
4LF6    #     DIRECTORY CORRUPT 
4LYQ    UGHDRUM 
4MDB          LGEOG    5,6  
4MY2          OUTNUM   6,0  
4NCL          INFORM   1,JDCORR,1          [TELL OPERATORS  
4NX=          BRN      P13                 [& TRY NEXT DRUM 
4PBW    #   
4PGR ...#   
4PLN ...XCME  GEOERR   1,NOTCME 
4PQK ...#   
4PWG          MENDAREA 20,K99FINDRUM
4QB6    #END
^^^^ ...34251400000100000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1