FREEFILE

(GIN Macro)

Defined in: MACROS RMD10

Used in: UNJAMMER866

FREEFILE.mac.txt
 692# ...[??? FREEFILE SECT FILE FGN 16 DOC  
 69PQ    #MAC  FREEFILE  
 6=9B    [CONTAINS SUBROUTINES FOR ABOVE MACROS  
 6=P2    [   
 6?8L    [     FREE  HALF THE HALF-OPEN CHAIN
 6?N=    #DEF  M1FREEFILE=0? 
 6#7W          LDX   5  HALFFCB  
 6#MG          SRA   5  1
 6*76          BRN      M3FREEFILE   
 6*LQ    [   
 6B6B    [     FREE ALL THE HALF-OPEN CHAIN  
 6BL2    #DEF  M2FREEFILE=0? 
 6C5L          LDX   5  HALFFCB  
 6CK=    M3FREEFILE  
 6D4W ...      SBN   5  8                   [LEAVE 16 OR 8 BLOX IN 1/2-CHAIN 
 6DJG          BNG   5  (7)  
 6FHQ          LDX   3  FFSFCB   
 6G3B          LDN   4  1
 6GH2    M4FREEFILE  
 6GL6 ...      BZE   5  (7)  
 6HG=          LDX   1  BHALF+1  
 6HQ4 ...      ADX   6  ASIZE(1) 
 6H^W          BXU   3  ATYPE(1),M5FREEFILE [JUMP IF NOT FCB 
 6J^6          SBN   5  1
 6K6# ...      DELFCB 1,HALF 
 6K?G ...      BRN      M4FREEFILE   
 6KDQ    M5FREEFILE  
 6L4? ...      FREECORE 1
 6LXL          BRN      M4FREEFILE   
 6MC=    [   
 6MWW    [   
 6NBG    #DEF  M8FREEFILE=0? 
 6NW6          STO   0  GEN0                [STORE LINK  
 6P*Q          LDCT  0  #40  
 6PTB          ANDX  0  7
 6Q*2          BNZ   0  M8FFREEFILE  
 6QSL          LDN   0  FILE+FSTACK  
 6R#=          SLL   0  12   
 6RRW    M8AFREEFILE 
 6S?G          LDX   3  BPTR(3)             [SEARCH BACK FOR FSTACK  
 6SR6          BXU   0  ATYPE(3),M8AFREEFILE 
 6T=Q          LDEX  2  ARINGNO(3)   
 6TQB ...      BZE   2  M8GFREEFILE  
 6W=2          ADN   3  A1   
 6WPL    M8BFREEFILE 
 6X9=          JBS      M8EFREEFILE,3,BASPARE
 6XNW          JMBAC    M8EFREEFILE,3,BAMREAD,BAMREADR,BAMAPP,BAMWRITE,BAMGEN,  -
 6Y8G                                 BAMCOPY,BAMCLEAN   
 6YN6          LDX   1  3
 6^7Q    M8CFREEFILE 
 6^MB          LDX   1  BPTRF(1)            [SEARCH BACK ROUND FILE RING FOR ACTI
 7272          SMO      FBACKPOINT(1)
 72LL          LDX   0  ATYPE(1) 
 736=          BXL   0  CACT,M8CFREEFILE 
 73KW          LDX   0  JOBNO-FILERING(1)
 745G          BZE   0  M18FREEFILE         [NO GOOD - OPEN TO NOUSER ACTIVITY   
 74K6          LDN   1  BJOBQ
 754Q    M8DFREEFILE 
 75JB          LDX   1  FPTR(1)  
 75S8 ...      BXE   1  CXJO,M18FREEFILE 
 76HL          BXU   0  JOBNUM(1),M8DFREEFILE
 773=          JBC      M18FREEFILE,1,JBSO  [J IF USER PROGS NOT SWAPPED OUT 
 77GW    M8EFREEFILE 
 782G          ADN   3  FELLEN   
 78G6          BCT   2  M8BFREEFILE  
 78PY ...M8GFREEFILE 
 78^Q          SMO      4
 79FB          LDX   3  BPTR 
 79^2    M8FFREEFILE 
 7=DL          LDN   0  1
 7=Y=          ADS   0  CJSOFREE 
 7?CW          BRN      (GEN0)              [OK TO FREE  
 7?XG    [     X7    BIT 0 - FREE WRITE BLOCKS   
 7#C6    [           BIT 1 - FREE BLOCKS FOR SWAPPED-OUT PROGRAMS
 7#WQ    [           BIT 2 - FREE ALTERNATE BLOCKS   
 7*BB    [           BIT 3 SEARCHING WORKFILE RINGS  
 7*W2 ...[           BIT 4 - ALTERNATE BLOCK SWITCH  
 7B*L    [     ENTER @ M12 TO SEARCH FILE CHAIN & WORKFILE RINGS ONLY
 7FR2    #DEF  M12FREEFILE=0?
 7G=L          SBX   7  FX1  
 7GQ=          ORX   7  0                   [KEEP SWITCH BITS
 7HPG          LDX   3  BFILE               [SEARCH FILE CHAIN   
 7J96          LDN   5  BFILE
 7JNQ    M14FREEFILE 
 7K8B          BXE   3  5,M31FREEFILE       [JUMP IF END OF CHAIN
 7K=^ ...#SKI  IFS   
 7K*J ...(   
 7KD7 ...      SBN   3  FCBRING  
 7KGQ ...M13FREEFILE 
 7KK* ...)   
 7KN2          LDX   4  FPTR(3)  
 7L7L          LDX   0  ATYPE(3) 
 7LM=          SRL   0  12   
 7M6W          BNG   7  M20FREEFILE  
 7MLG          SBN   0  FILE+FURB
 7N66          BZE   0  M15FREEFILE         [J IF FURB   
 7NKQ          SUBNUM   0,FURRB-FURB 
 7P5B          BNZ   0  M18FREEFILE         [J UNLESS FURRB  
 7PK2          LDCT  0  #100 
 7Q4L          ANDX  0  7
 7QJ=          BZE   0  M15FREEFILE         [J UNLESS FREEING ALTERNATE BLOCKS   
 7R3W          LDN   0  GSBS4
 7RHG          BXE   0  ALOGLEN(3),M18FREEFILE   
 7S36                                       [PROBABLY MT INDEX BLOCK - SO DONT FR
 7SGQ    M15FREEFILE 
 7T2B          LDCT  0  #200 
 7TG2          ANDX  0  7
 7T^L          BZE   0  M16FREEFILE  
 7WF=          CALL  0  M8FREEFILE   
 7WYW          BRN      M17FREEFILE  
 7XDG    M16FREEFILE 
 7XY6          LDCT  0  #100 
 7YCQ          ANDX  0  7
 7YXB          BZE   0  M17FREEFILE         [J UNLESS FREEING ALTERNATE BLOCKS   
 7^5L ...      LDCT  0  #20  
 7^?W ...      ERS   0  7
 7^G6 ...      ANDX  0  7
 7^NB ...      BZE   0  M18FREEFILE  
 7^WL    M17FREEFILE 
 82B=          ADDSKIP  I516A,COREFURB   
 83*G          ADX   6  ASIZE(3) 
 86?=          FREECORE 3
 86QW    M18FREEFILE 
 87=G          LDX   3  4
 87#9 ...#SKI  IFS   
 87*Y ...(   
 87CM ...      BXGE  6  CJTARGET,M19FREEFILE 
 87FB ...      BXU   0  FFSFCB,M13FREEFILE   
 87H5 ...      LDX   3  FCBRING(3)   
 87JS ...      BRN      M14FREEFILE  
 87LH ...)   
 87N= ...#SKI  IFS<1$1   
 87Q6          BXL   6  CJTARGET,M14FREEFILE 
 889Q    M19FREEFILE 
 88PB          ANDN  7  #7777               [GET RID OF SWITCH BITS  
 8992          ADX   7  FX1  
 8=8=          BRN      (7)  
 8=MW    M20FREEFILE 
 8?7G          SBN   0  FILE+FUWB
 8?M6          BZE   0  M21FREEFILE         [J IF FUWB   
 8#6Q          SUBNUM   0,FURWB-FUWB 
 8#LB          BNZ   0  M18FREEFILE         [J UNLESS FURWB  
 8*62          LDEX  0  ATYPE(3) 
 8*KL          BNZ   0  M18FREEFILE         [J IF FURWB NOT FULL 
 8B5=    M21FREEFILE 
 8BJW          LDCT  0  #200 
 8C4G          ANDX  0  7
 8CJ6          BZE   0  M22FREEFILE  
 8D3Q          CALL  0  M8FREEFILE   
 8DHB    M22FREEFILE 
 8F32          LDX   1  BPTR(3)             [FIND FCB SKIPPING FSTACK
 8FGL          LDX   0  FFSFCB   
 8G2=    M23FREEFILE 
 8GFW          LDX   1  BPTR(1)  
 8G^G          BXU   0  ATYPE(1),M23FREEFILE 
 8HF6          JBS      M18FREEFILE,1,BFCOPY[CANT WRITE BLK IF FILE BEING COPIED 
 8HYQ ...      LDX   2  3                   [FOR HCHBLW  
 8JDB ...      CALL  0  (HCHBLW)            [CHECK FOR CORRUPTION IF SERIAL  
 8JY2 ...      BRN      M23AFREFILE  
 8KCL ...      GEOERR   1,CORRUPT!          [CORRUPT FUWB
 8KX= ...M23AFREFILE 
 8LBW ...      UNJAMWRI M24FREEFILE,M25FREEFILE  
 8LWG ...      ADX   6  ASIZE(3) 
 8MB6 ...      FREECORE 3
 8T9L    M24FREEFILE 
 8TP=          FON      #55                 [WAKE UP CLOSES  
 8W6= ...      LDCT  0  #40  
 8WH= ...      ANDX  0  7
 8WY= ...      BZE   0  M18FREEFILE         [J UNLESS SEARCHING WORKFILE RINGS   
 8X*= ...      STOZ     5                   [INDICATES NOT YET REACHED END OF
 8XQ= ...      BRN      M32FREEFILE         [RING FOR CURRENT JOB.   
 8Y7B    M25FREEFILE 
 8YM2          LDX   1  ATFAPTR             [ADDRESS OF TRANSFER FAIL ACTIVITY   
 8^6L          LDX   0  BACK1(1) 
 8^L=          LDN   2  1                   [INCREMENT COUNT OF FAILS BEING DEALT
 925W          ADS   2  BACK1(1)            [WITH BY TRANSFER FAIL ACTIVITY  
 92KG          BNZ   0  M26FREEFILE         [NO NEED TO FPUT ACTIVITY IF ALREADY 
 9356          ADN   1  BSCHANAD 
 93JQ          BXU   1  0(1),M26FREEFILE 
 944B          LDX   2  ATFAPTR  
 94J2          FPUT  
 953L    M26FREEFILE 
 95H=          LDX   1  BLANKF1  
 962W ...      STO   4  BACK2(3) 
 9726          STO   1  BACK1(3) 
 97FQ          NAME     3,BSTB,BWRITE
 97^B          STOZ     BLANKF1             [CLEAR WORDS SET UP BY BSTS  
 98F2          STOZ     BLANKF2  
 98YL          LDX   4  FPTR(3)             [NEXT BLOCK  
 99D=          UNLOCK   3
 99XW          LDX   2  BBAC 
 9=CG          CHAIN    3,BPTR(2)           [CHAIN TO TF ACTIVITY
 9=X6          BRN      M24FREEFILE  
 9?BQ    M31FREEFILE 
 9#B2          BXU   5  CXFI,M32FREEFILE    [J UNLESS END OF FILE CHAIN  
 9#TL          LDCT  0  #40  
 9**=          ORX   7  0
 9*SW          LDX   2  FX2  
 9B#G          STOZ     AWORK2(2)
 9BS6    M32FREEFILE 
 9C?Q          LDN   1  BJOBQ
 9CRB    M33FREEFILE 
 9D?2          LDX   1  FPTR(1)  
 9DQL          BXE   1  CXJO,M19FREEFILE 
 9F==          NGX   0  JOBNUM(1)
 9FG4 ...      ADX   0  AWORK2(2)
 9FPW ...      BNZ   0  M33AFREFILE         [J IF NOT CURRENT JOBNO (IN AWORK2)  
 9F^N ...      BZE   5  M33BFREFILE         [J IF NOT REACHED END OF RING
 9G9G ...M33AFREFILE 
 9GF# ...      BPZ   0  M33FREEFILE         [J IF JOB EXAMINED ALREADY   
 9GP6 ...      SBS   0  AWORK2(2)           [ELSE RESET AWORK2 TO NEXT JOBNO.
 9GT3 ...      LDN   5  1                   [SET 'END OF RING' MARKER
 9GYY ...M33BFREFILE 
 9H8Q          LDCT  3  #200 
 9HNB          ANDX  3  7
 9J82          BZE   3  M34FREEFILE         [J UNLESS SEARCHING FOR SWAPPED PROG 
 9JML          JBC      M33FREEFILE,1,JBSO  [OMIT UNLESS SWAPPED OUT 
 9K7=    M34FREEFILE 
 9KLW          HLSAV    1,SET,SAVING,JOBQ,M33FREEFILE
 9L6G          FCAJO    3,1,N
 9LB# ...      LDX   0  5
 9LL6          LDN   5  BWORKRING(3) 
 9LTY ...      BZE   0  M18FREEFILE  
 9M5Q          LDX   3  BWORKRING(3) 
 9MKB          BRN      M14FREEFILE  
 9N52    #NOR
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1