Discussion:
[Freedos-user] FreeDOS Bootable CD problems
Schumacher, Gordon
2004-02-20 03:04:57 UTC
Permalink
My apologies if this is something that's been covered already, and
I've FAQ'ed it all up :)

I'm trying to set up a bootable CD using FreeDOS. I'm modeling it,
basically, as a greatly simplified version of a RipCord installation CD.
I'm using ISOLINUX to boot an 8MB hard disk image, and that part works just
great. The catch comes when I try and load a CD-ROM driver to get at the
"rest" of the CD's data.

Initially, it seemed like the right thing to do was to use ELTORITO.SYS,
since I'm booting off of a CD-ROM in no-emulation mode. But if I do that,
I get the following error message:
Drive 9F returns 0000h bytes per Sector.
Driver not installed.
(Am I correct that I should be able to use this driver?? I'm guessing that
the error is some kind of Int13h message, but I don't know what that means.)

So, I tried setting it to use ATAPICDD.SYS. That loads okay, but when I
try and do any significant file access off of the CD drive letter - say, to
launch a program off of it - I get read errors! On one system, it simply
refuses to load largish files, citing read errors; on another, it appears
to load them okay (i.e., it doesn't actually display an "abort/retry/fail"),
but there are obvious signs of data corruption: invalid opcodes, GPFs,
other crashes, etc.

Anyone have any clue what I might be doing wrong here?

My setup is really pretty dirt-simple. I'm including ISOLINUX.CFG just for
completeness...

prompt 0
default fdoshd
timeout 1

label fdoshd
kernel memdisk
append initrd=bootimg.gz harddisk


Here's CONFIG.SYS:

DEVICE=C:\DOS\himem.exe
DEVICE=C:\DOS\atapicdd.sys /D:CDROM000
DOS=HIGH
SHELL=C:\COMMAND.COM /E:1024 /P
LASTDRIVE=Z


And, here's AUTOEXEC.BAT:

@echo off

C:\DOS\shsucdx.exe /D:CDROM000,X
C:\DOS\ctmouse.exe


It doesn't matter if I load CTMOUSE.EXE or not - same results. I've tried
a few systems, with much the same effects...

The "bootimg.gz" file referenced in the ISOLINUX.CFG is a GZIP'ed 8MB FAT12
partition, with only the system files, autoexec.bat, config.sys, and the
files referenced therein.

Anyone have any idea what I'm doing wrong here? Help! I've already
stripped out every piece I can think of to strip out...
(Oh, and FWIW... I *don't* want to run EMM386, because I need to end up
running DPMI apps when we're all done with this exercise.)

TIA, all!
Bernd Blaauw
2004-02-20 07:29:23 UTC
Permalink
Gordon, use Bochs to do this.
first, bximage.exe can create 8MB harddisk.
next, use ODIN bootdisk and bootup Bochs.
now use Fdisk on the 8MB image,
then format C:,
then Sys C:

finally, you'll have a bootable 8MB imagefile.
rest of the method seems to be OK, also ELTORITO.SYS seems OK.

label dos
kernel memdisk
append initrd=8MB.gz harddisk

I'll see if I can create an example for you and upload it.

note that when this boots OK, your physical harddisk suddenly will be D:
because you use harddisk emulation.
I succeeded in floppy emulation with a 5MB imagefile.

don't use the freedos cdrom, as I've not tested it against any harddisk
smaller than 16MB.
don't know it's behaviour then (limitation of the WHICHFAT program in
combination with the FreeDOS kernel)

Bernd

Continue reading on narkive:
Loading...