Pages

Sunday, April 15, 2012

Accessing CD-ROM with FreeDOS

Today I decided to get my CD-ROM in FreeDOS running. As I have a nice old machine this was somekind tricky again. First I tried to load the uide caching driver:

C:\>devload uide.sys /D:CDROM01
...
XMS init error; UIDE not loaded!
...

No matter which option I used (/S5, /R63...) I got the above error. A closer look to the manual brought the solution:

...
/N3  Requests no XMS memory.
...
/N3 loses much speed, as "misaligned" or other I/O unsuited to UltraDMA must use BIOS logic for disks or "PIO mode" for CD/DVD input.
...

My machine has only 5MB of RAM, so I gave it a try:

C:\>devload uide.sys /N3 /D:CDROM01
...
UIDE, 10-16-2011.      Cache, CD-DVD name is CDROM01
No V2.0C+ PCI, BIOS I-O only!
CD0:  IDE0 Primary-Slave, CD-524E, PIO.
...

No error. I don't care if uide operates in slow motion now, the machine itself has only 16MHz with 5MB RAM - a 386 without a co-processor unit (playing Dune II is a pain in the rear on this machine - nevertheless: it works).
After the caching driver loaded succesfully, I have to run the CD-ROM redirector shsucdx:

C:\>shsucdx /D:CDROM01
...
SHSUCDX installed.
  Drives Assigned
Drive  Driver   Unit
  D:   CDROM01    0
...

Perfect. Just a quick test:

C:\>dir D:
...

And my CD-ROM was accessable.
To make the CD-ROM accessable after rebooting I have to add to above lines to FDCONFIG.SYS:

C:\>edit FDCONFIG.SYS
...
DEVICE=C:\FDOS\BIN\UIDE.SYS /N3 /D:CDROM01
...

And AUTOEXEC.BAT:

C:\>editAUTOEXEC.BAT
...
REM CDROM
C:\FDOS\BIN\SHSUCDX.COM /D:CDROM01
...

During booting I got the same messages:

...
UIDE, 10-16-2011.      Cache, CD-DVD name is CDROM01
No V2.0C+ PCI, BIOS I-O only!
CD0:  IDE0 Primary-Slave, CD-524E, PIO.
...
SHSUCDX installed.
  Drives Assigned
Drive  Driver   Unit
  D:   CDROM01    0
...

Links:
http://www.bootablecd.de/fdhelp-internet/en/hhstndrd/base/uide.htm
http://www.bootablecd.de/fdhelp-internet/en/hhstndrd/base/shsucdx.htm