I have a PC about five years old, unfortunately, still my primary PC used for
paying bills, some work related stuff, and other things that preclude simply
trashing the working installation of XP in the first primary partition, or
doing other "risky" things with it.
After "installing" FreeDOS on a FAT-32 partition, I attempted to boot it in a
couple of ways, each of which resulted in the message:
Error loading OS
immediately after all the BIOS blather. <Ctrl/Alt/Del> worked to start the
boot sequence again (fortunately).
The machine is an unbranded computer having an ASUS KM 400 series motherboard,
an AMD Athlon 2800 (2.0 GHz processor), 1 Gb RAM and a Western Digital "160 Gb"
disk, in the typical marketing way of using powers of ten, not two, so it
really has about 149 Gb.
XP is installed on the first primary partition, NTFS, which has 37.38 Gb
according to the disk manager. (It always had been so - I anticipated playing
with other operating systems, and left room. I didn't repartition NTFS, etc.
I'd had an older RedHat disto on the rest, but I saved the stuff I wanted and
blew it away. I offer this info only to demonstrate that Grub had been capable
of booting something beyond where XP was installed.)
mbrfix (an open source program for NT/XP/etc.) reported cylinders 19457, tracks
25, cyl 64; first partition 38279 Mb type 7 (NTFS), second 894 Mb type 12
I'd created the FAT-32 partition from XP using the disk manager. XP saw it as
drive F:, FAT-32. GParted from Puppy Linux (my favorite "live CD" distro of
the week) likewise saw it the same way, with the LBA flag set.
I installed FreeDOS from the CD to what it thought was C: (okay). XP likewise
saw all the FreeDOS stuff thus written into that partition.
I made the FreeDOS partition active from XP, and tried rebooting. This
generated the error message above. I also tried booting from a standalone Grub
CD I'd had lying around, using rootnoverify (hd0,1); chainloader +1; boot; with
the same result.
Speculating the perhaps the installation hadn't installed a partition boot
sector to the FAT-32 partition, I rebooted the FreeDOS CD, went to the C:
drive, and issued the command
which reported sectors/trk: 63, heads: 255 hidden: 78397200
FAT starts at 4AC3F10 + 26 (78397200 + 38)
Boot sector load seg ... 60h
The word "hidden" next to the number that curiously matches where "FAT starts"
has me suspicious, for some reason. :-)
I found a prior article on the mailing list in which someone reported, around
2007, that FreeDOS had problems with FAT32, sometimes mistaking FAT32-LBA for
FAT32-CHS, or something to that effect. The author indicated that there exists
a Perl script (!!!) to fix this.
Does anyone have insight into this? Is it the 1024 cylinder problem? Is there
a practical workaround besides using FAT16 (kind of ugly for an almost 1 Gb
partition)? If running a Perl script it the answer (yikes!), where is it, and
under what environment does one execute it. (Is Perl installed with FreeDOS?
Or would I use Cygwin Perl under XP? The latter seems doubtful to me, since
using Perl to tamper with boot sectors seems like the kind of thing that can't
easily be done. I'm not afraid of Perl - I use it all the time on Unix, but
not for this sort of thing.)
Sorry for the long message. I'm never sure how much detail to include. I know
that too little is pointless, since nobody can help if they don't have the
Thanks in advance.
- Jerry Oberle
perl -e 'printf "%cailto%cgoberle%chot%scom\r\n", 109, 58, 64, "mail."'
Windows 7: Simplify your PC. Learn more.
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
Freedos-user mailing list