4

When I try to prepare a bootable FreeDOS on my CF disk my old 386SX laptop (AMI Bios from 1990) is not able to boot => "missing operating sytem". If I select "Use a fix for older BIOS" the system just outputs "FreeDOS" without any progress.

I know there is the floppy only setup of FreeDOS but how can I use the content of the disk images if I cannot boot?

So how can I create a bootable FreeDOS system for an old 386SX laptop with Rufus or something else?

5
  • 1
    Have you looked up the resources provided at the FreeDOS site(s)? Gone thru the install-Howto and/or searched and/or asked at the list made especially for this? What were the results?
    – Raffzahn
    Aug 3, 2023 at 17:20
  • 1
    'CF disk' as in a CompactFlash card connected via an IDE adapter? Have you checked for geometry problems? Aug 3, 2023 at 17:27
  • 2
    If you put the CF card into the 386SX, boot from a floppy and install from a floppy, does it work? If you install on another machine, or on a card reader, you may not have the same geometry as what the 386SX natively uses with the card.
    – Justme
    Aug 3, 2023 at 17:49
  • @Justme ok I see. Then I have to repair my Citizen U0DA-19A floppy drive (belt issue).
    – leon22
    Aug 3, 2023 at 20:22
  • 3
    @leon22 Not necessarily. You can use e.g. DosBOX or other suitable VM/emulator to create/use/mount a disk image with any geometry you want, to match the geometry of your drive, then boot the VM from FreeDOS install floppy and install to the virtual HDD image. When you have the image, then clone it on the physical drive.
    – Justme
    Aug 3, 2023 at 21:58

2 Answers 2

8

Since you can't boot a FreeDOS install floppy on the target machine, you can make a disk image, and mount/use it with identical geometry in a virtual machine, and then install the OS in the virtual machine, by booting it from floppy and installing to the virtual HDD image. When done, clone the HDD image to the CF card.

The trick is, you still need to figure out what geometry your target computer wants to use on the CF card. Some CF card data sheets tell the geometry, but it usually is the simulated hardware CHS geometry such as 7750/16/63 for a 4GB card, which may or may not be translated by the BIOS with some algorithm to logical CHS geometry such as 968/128/63.

But the 386SX is likely so old that it can't do geometry translation, so most compatible CF cards would be max 500MB. It may detect or use larger cards incorrectly, or just hang when presented with a larger card. At least it did not hang, but be sure the CF card size and geometry is detected and set correctly.

8
  • 1
    To check this hypothesis, use boot sector (back up MBR on CF card, and write this to it; then restore later) will tell you the geometry. Yes it's base 10. Base64 image: McCJ//z6jtC8AHv7jtiOwInHzRNyMojI JD+0AOgyAL6DfOhHAIjQtABA6CQAvnp8 6DkAicjQwNDAJMCG4OgRAL6OfOgmAOsG vpt86B4A9Ov9UVK5CgC+/3vGBAAx0vfx gMIwTogUCcB18lpZuwcArLQOzRCsCMB1 98MgaGVhZHMNCgAgc2VjdG9ycw0KACBj eWxpbmRlcnMNCgBFcnJvciENCgA= Source: github.com/joshudson/dossuperfloppy/blob/master/hdgeometry.asm
    – Joshua
    Aug 4, 2023 at 2:02
  • 1
    @Joshua I don't think calling INT 13H with AH=0 returns the geometry, or does it? At least AH=8 would.
    – Justme
    Aug 4, 2023 at 5:24
  • @Justme I referenced your comment in a bug report to that repo, along with another bug: github.com/joshudson/dossuperfloppy/issues/2
    – ecm
    Aug 4, 2023 at 13:54
  • @Justme: Yeah that's a bug. My system appears to return something approximating the disk geometry for the last disk on the system. Guess which disk I tested with. Updated base64 image: cCJ//z6jtC8AHv7jtiOwInHtAjNE3IziMgkP7QA6DMAvoZ86EgAiPC0AEDoJQC+ fXzoOgCJyCTA0MDQwIbgQOgRAL6RfOgmAOsGvp586B4A9Ov9UVK5CgC+/3vGBAAx 0vfxgMIwTogUCcB18lpZuwcArLQOzRCsCMB198MgaGVhZHMNCgAgc2VjdG9ycw0K ACBjeWxpbmRlcnMNCgBFcnJvciENCgA=
    – Joshua
    Aug 4, 2023 at 14:27
  • 1
    @Justme: No AA55 isn't missing; it's supposed to overwrite the bootloader leaving the partition table in place.
    – Joshua
    Aug 4, 2023 at 14:37
2

For those who are interested, there is another way to solve this problem:

use 86Box (x86 Emulation), add a harddrive and set it to a maximum of 504MB (PreSet selection), insert the boot image of FreeDos and let the OS take care of partitioning and formatting, install everything and use the created img file in Rufus to write it to the 4GB CF disk. After that I was able to boot on my 386 laptop. Yes ;-)

1
  • 2
    Ah ha! Your bios doesn't do CHS remapping; thus limit is 504MB. (Limit 16 heads, 63 sectors per track, 1024 cylinders.)
    – Joshua
    Aug 5, 2023 at 5:02

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .