Changeset 116


Ignore:
Timestamp:
Apr 8, 2017, 12:27:14 AM (8 years ago)
Author:
Ben Rietbroek
Message:

For the record... (LOAD/SAVE ERROR ISSUES) [v1.1.1-testing]

This is the bug that might have caused many 'LOAD/SAVE' errors.
We'll fix it here but this whole 'DriveIO_GatherDiskInfo' routine is
an ugly beast full of incorrect assumptions and about to be removed
all together.

CAUTION:
This is a testbuild !
AirBoot uses the BIOS to access disks and a small coding error can trash
partition tables or other vital disk structures. You are advised to make
backups of TRACK0 and EBRs before using this testbuild. More info at:
https://rousseaux.github.io/netlabs.air-boot/pdf/AirBoot-v1.1.0-manual.pdf

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/bootcode/regular/driveio.asm

    r115 r116  
    16761676
    16771677        ; Update first byte of translation-table to conform to BIOS SPT
    1678         mov      byte ptr [secs_per_track_table], al
     1678        ; rousseau.comment.201610122010
     1679        ; Very bad !!
     1680        ; This table is global and the instruction below would change the
     1681        ; first (last checked) 'well known' SPT value to the SPT value of
     1682        ; the last disk scanned. This goes wrong when the last disk scanned
     1683        ; has a SPT <63, which is often the case when an USB stick is present
     1684        ; when AirBoot starts.
     1685        ;~ mov      byte ptr [secs_per_track_table], al
    16791686
    16801687        mov      ax,[si+0eh]
Note: See TracChangeset for help on using the changeset viewer.