source: trunk/BOOTCODE/REGULAR/STD_TEXT.ASM@ 43

Last change on this file since 43 was 43, checked in by Ben Rietbroek, 12 years ago

BSS Corruption Problem located (auxdebug on) [2012-02-21]

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 THESE COMMITS!!

Problem

o Function with Xrefs goes out-of-bounds because hideparttable is too small

Has only 30 entries and should be 45.
Lost partition checker initializes out-of-bounds.

Info

o About the hideparttable

For each partition it can be specified which other partitions need to
be hidden when that partition is booted. This is useful for legacy DOS
but also braindead Windows that presents HPFS/JFS partitions as
unformatted and tries to persuade the user to format them.
With v1.07 the numer of partitions that can be handled was expanded from
30 to 45, but the size of the hideparttable was overseen.

o The need to compress the hideparttable

The old size was 30x30=900 bytes while the required size is 45x45=2045 bytes.
This amount of space is not available in the image.
Since 6 bits are enough to identify the partition number to be hidden,
the solution is to devide the table into bitfields. This will result
in a table of (45*45*6)/8=1519 bytes, which can be fitted.

Changes

Revamped the sources quite a bit and moved the history to a separate
file. (AIR-BOOT.HIS)

New

o FIXCODE script for Linux

Just until the C version is ready...

File size: 4.1 KB
Line 
1; AiR-BOOT (c) Copyright 1998-2008 M. Kiewitz
2;
3; This file is part of AiR-BOOT
4;
5; AiR-BOOT is free software: you can redistribute it and/or modify it under
6; the terms of the GNU General Public License as published by the Free
7; Software Foundation, either version 3 of the License, or (at your option)
8; any later version.
9;
10; AiR-BOOT is distributed in the hope that it will be useful, but WITHOUT ANY
11; WARRANTY: without even the implied warranty of MERCHANTABILITY or FITNESS
12; FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13; details.
14;
15; You should have received a copy of the GNU General Public License along with
16; AiR-BOOT. If not, see <http://www.gnu.org/licenses/>.
17;
18;---------------------------------------------------------------------------
19; AiR-BOOT / TEXT
20;---------------------------------------------------------------------------
21
22IFDEF ModuleNames
23DB 'STD_TEXT',0
24ENDIF
25
26; If you modify this Copyright and release this under your own name,
27; I'm going to sue your cheap ass, rape your dog and blow up your house. =)
28
29CopyrightVersionLen equ 6
30;Copyright db ' AiR-BOOT v1.06 - (c) 1998-2009 M. Kiewitz, Dedicated to Gerd Kiewitz', 0
31;Copyright db ' AiR-BOOT v1.07 - (c) 2011 M. Kiewitz - Rousseau test-version >502G (build: #24)', 0
32;Copyright db ' AiR-BOOT v1.07 - (c) 2011 M. Kiewitz - Release Candidate 1 - (build: #25)', 0
33;Copyright db ' AiR-BOOT v1.07 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz (rc2-b27)', 0
34;Copyright db ' AiR-BOOT v1.07 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz (rc3-b31)', 0
35;Copyright db ' AiR-BOOT v1.07 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz (rc4-b33)', 0
36;Copyright db ' AiR-BOOT v1.07 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz (rc5-b35)', 0
37;Copyright db ' AiR-BOOT v1.07 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz', 0
38;Copyright db ' AiR-BOOT v1.0.8 - (c) 1998-2011 M. Kiewitz, Dedicated to Gerd Kiewitz', 0
39
40;Copyright db ' AiR-BOOT v1.0.8-internal-beta - ** !! NOT FOR DISTRIBUTION !! **', 0
41;Copyright db ' AiR-BOOT v1.0.8 - (c) 2012 M. Kiewitz <<Release Candidate>> (build: #18)', 0
42;Copyright db ' AiR-BOOT v1.0.8 - (c) 2012 M. Kiewitz <<Release Candidate 1>> (bld: 20120124)', 0
43;Copyright db ' AiR-BOOT v1.0.8 - (c) 2012 M. Kiewitz <<Release Candidate 2>> (bld: 20120214)', 0
44Copyright db ' AiR-BOOT v1.0.8 - (c) 2012 M. Kiewitz <<Internal Release 2f>> (bld: 20120220)', 0
45;Copyright db ' AiR-BOOT v1.0.8 - (c) 1998-2012 M. Kiewitz, Dedicated to Gerd Kiewitz', 0
46
47; Message in case the user wants to edit the label of a type 0x35 partition
48TXT_SETUP_NoEditType35 db 'The label of an LVM-Data partition cannot be edited', 0
49; Message in case the user wants to make a type 0x35 partition bootable
50TXT_SETUP_NoBootType35 db 'An LVM-Data partition cannot be set bootable', 0
51
52; Rousseau: switch around
53BootEndMsg db 'This is GPLv3+ software, please visit: http://www.gnu.org/licenses/gpl.txt', 0
54BootEndMsg2 db 'To obtain the sources, please visit: http://svn.netlabs.org/air-boot', 0
55
56AuxInitMsg db 'Initializing Serial Communications on COM',0
57
58CheckID_MBR db 'AiRBOOT'
59BrokenHDD db ' (HDDx)', 0
60
61; Colors for special words hard-coded. Keep all 0s.
62TXT_SETUP_LowerMessage db 'This software is released under ', 0, 'GPLv3+', 0
63 db 'http://www.gnu.org/licenses/gpl.txt', 0
64 db 'For more information and source, please visit:', 0
65 db 'http://svn.netlabs.org/air-boot', 0
66 db 'Contact via e-mail: ', 0, 'airboot@ecomstation.com', 0
67
68ContinueBIOSbootTable dw offset TXT_SETUP_MAGIC_CDROM
69 dw offset TXT_SETUP_MAGIC_Network
70 dw offset TXT_SETUP_MAGIC_ZIPLS
71 dw 0
Note: See TracBrowser for help on using the repository browser.