Ignore:
Timestamp:
Jan 13, 2013, 9:16:10 AM (13 years ago)
Author:
Ben Rietbroek
Message:

Corrected CRC calculations in installers and setaboot [2012-01-21]

Fixes

o Corrected CRC calculations on AiR-BOOT configuration in the

installers and setaboot. They are now v1.07 compatible again.

Note

This commit and all following commits upto and including the RC3
commit [2012-09-09] are delayed commits from a local repository.
Also, the RC (Release Candidate) naming of the corresponding commits
is a bit misleading. One would label a revision with RC when near to
a final release. Since many things have changed between RC1,RC2 & RC3,
these RC's should be interpreted as mile-stones.

WARNING!!

All commits upto and including the commit of [2012-05-13] contain
a severe bug!! Building from these sources and then disabling
the 'force LBA' feature while also using the drive-letter feature or
editing the label can destroy the MBR on all attached disks!!
DO NOT DISABLE 'FORCE LBA USAGE' WHEN BUILT FROM THE ABOVE COMMITS!!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/BOOTCODE/AIR-BOOT.ASM

    r34 r35  
    2121; -------------------
    2222;
    23 ; v1.08
    24 ; -----
     23; v1.0.8
     24; ------
     25; - Changed version format to be more WarpIN compatible.
     26;   This is a cosmetic change only.
    2527; - Fixed driveletter feature which was broken in v1.07.
    2628; - Reworked MBR-code to provide two I13X signatures.
    27 ; - Fixes booting older eCS installations on HPFS
    28 ; - Fixes booting Windows when installed in logical partition
     29; - Fixed booting older eCS installations on HPFS
     30; - Fixed booting Windows when installed in logical partition
    2931;   with loader on FAT32.
    3032; - Corrected contact links.
    3133; - Location of AUX parameters has changed.
     34; - Fixed DOS installer (AIRBOOT.COM)
     35;
    3236; NOTE:
    3337;   AB v1.07 had a bug with saving and loading the correct size of the
     
    3539;   wrongly.
    3640;   While AB v1.0.8 fixes this, it has to use the v1.07 way of CRC calculation.
    37 ;   Otherwise SET(A)BOOT from the eCS v2.1 would break and reboot after phase1
    38 ;   would show the boot-menu instead of automatically booting the system
    39 ;   being installed. (SET(A)BOOT would see a corrupted AB config)
     41;   Otherwise SET(A)BOOT from the eCS v2.1 would break because it sees
     42;   a corrupt AiR-BOOT configuration.
    4043;   This means that the CRC over the AB config is calculated over 5 sectors
    4144;   instead of 7, just like in v1.07.
    42 ;   This will be corrected with a future release of eComStation.
    43 ;   Note that after such a correction, an installation from a v2.1 eCS CD
    44 ;   with a version of AiR-BOOT >v1.07 active will not automatically
    45 ;   boot-through after phase1.
    46 ;   Since there will be more changes in AB in the future, the method of
    47 ;   passing the install-volume needs to be refined and made more
    48 ;   independent of a possible AB version installed.
     45;
     46; NOTE:
     47;   Because of space constraints most of the debug code has been commented
     48;   out in this version.
     49;   Possibly it will be re-enabled after code cleanup and changing to JWasm.
     50;
    4951;
    5052; v1.07
     
    7577; debug the booting process, converting between data-types
    7678; and outputting log-data to the com-port.
    77 
     79;
     80;
     81; v1.06
     82; -----
     83; This is the last version developed by Martin Kiewitz.
     84; It serves as the base for the versions above.
     85; Please do not post your feedback on sourceforge or bother Martin with
     86; regard to the above versions.
     87; Use the eCS bug-tracker or the Trac project-page at netlabs.
     88; See the documentation for the correct contact information.
    7889
    7990
     
    376387              db      0EBh                ; JMP-Short -> MBR_Start
    377388              ; Uses the 'A' as the displacement !
    378               db      'AiRBOOT', 23h, 11h, 20h, 11h, 01h, 08h, TXT_LanguageID
    379 
    380               ; ID String, Date and Version Number, U for US version
     389              db      'AiRBOOT', 20h, 01h, 20h, 12h, 01h, 08h, TXT_LanguageID
     390
     391              ; ID String, Date (DD,MM,CC,YY), Version Number, Language ID
    381392              db      1                   ; Total Sectors Count,
    382393                                          ; Will get overwritten by FIXBSET.exe
     
    665676
    666677                           org   001B8h
     678
     679                           ; Disk Signature
    667680                           db    'DSIG'
    668681
     682                           ; Unused word
    669683                           dw    '$$'
     684
     685                           ; Partition Table
     686                           db    16    dup('0')
     687                           db    16    dup('1')
     688                           db    16    dup('2')
     689                           db    16    dup('3')
     690
     691                           ; Boot Sigbature
     692                           dw    0aa55h
    670693
    671694                           org   00200h
Note: See TracChangeset for help on using the changeset viewer.