• Robert Sprowson's avatar
    Fixes in BigSectors option · 5a07a9e0
    Robert Sprowson authored
    Previous testing with RAMFS was limited by the size of RAM disc, and hence complexity of layout, meaning some cases with BigSectors were missed.
    FileCore20.s: During mount, when loading the defect list from the boot block at &C00, take care to round down the source sector address to account for it only being aligned up to 1k sectors (but not for 2k and 4k).
    FileCore25.s: When loading the head of a BigDir (to find out its actual size) and finding it to be > 2k, skip loading the bit from 2k-4k, since that was already loaded when the head was read in, and reading it a second time offset by 2k fails the head/tail check.
    FileCore31.s: When building a table to decide which zones to compact, use FindBuffer() to get some temporary store if too large to fit into ScratchSpace.
    Identify.s: Comment updated.
    BigDirCode.s: (Unrelated) Fix for bad error pointer being passed back, due to R0 being restored on encountering an error during directory rename.
    
    FSBashed for 300k cycles on Titanium with an assortment of manufacturer drives, capacities, and sector sizes.
    
    Version 3.74. Tagged as 'FileCore-3_74'
    5a07a9e0
BigDirCode 76.1 KB