How do I create a bootable flash drive running MS-DOS 6.22?

31,908

Solution 1

Around the time when Windows 98 was mainstream, bootable MS-DOS CDs and USB drives used a 1.44MB floppy disk image as the actual boot target. The CD/USB drive stores the floppy image either visibly on the file system or invisibly outside of a partition, and the computer would boot to a virtual A:\ drive. If access to the CD/USB drive is desired after boot, the appropriate driver must be present on the floppy image and loaded.

At least in some cases, booting from the floppy image requires features implemented in BIOS. (I remember trying to make a rescue disk on a state-of-the-art 32MB USB drive, and there being different instructions for BIOS that support USB-FDD, USB-ZIP, USB-HDD, etc.)

If you don't feel like hunting down period-appropriate documentation and tools, your best bet is probably a MS-DOS floppy image paired with a modern bootloader that supports memdisk features. syslinux/isolinux and GRUB4DOS comes to mind.

Solution 2

Rufus author here.

As explained here, Rufus does not embed any version of MS-DOS with the application, so it doesn't matter what version of Rufus you use, you won't magically get a specific version but the Windows Millennium DOS version that Windows provides (that is, up to Windows 8.1, since Windows 10 removed it altogether, so there's no MS-DOS creation option in Rufus if running on Windows 10 or later).

Now, your expectation is that Rufus can create an MS-DOS bootable USB if you provide your own version (as an ISO, or something else). This is not the case. Rufus cannot be used to create an MS-DOS bootable USB drive except a Windows Millennium one, if you are running Windows 8.1 or earlier, and, because the demand for such a feature is exceedingly small (at this stage, I have to point out that the amount of people who have been able to claim that they have found a genuine flaw in FreeDOS that forces them to use MS-DOS currently stands at exactly zero, as most of the "issues" that people have with FreeDOS only have to do with a slightly different way to handle AUTOEXEC.BAT/CONFIG.SYS or menus, which is easily addressed and does not constitute a DOS incompatibility), I have no plans whatsoever to ever add that functionality as I have 100% confidence that FreeDOS can always be used in lieu of MS-DOS.

The only way I would ever consider adding this feature is if the following conditions are met:

  • You can demonstrate that you have found an actual incompatibility between FreeDOS and MS-DOS (rather than a "belief" that there may exist one, which, in years of being subscribed to the FreeDOS mailing list I have yet to see).
  • The FreeDOS developers indicate that they are unwilling to address this incompatibility.

Short of these two conditions being met, I will respectfully request that you either use FreeDOS (which, again, I have yet to see fail compared to MS-DOS in terms of compatibility) or another utility than Rufus.

Solution 3

Ok I got it working with an old IBM Thinkpad. Here are the steps I took:

  1. Get the Dos6.22 IMG file from here as you already did.
  2. With RMPrepUSB (I'm using v.2.1.739) select File->Drive.
  3. Go through the prompts and let it put all the files from the ISO onto the USB stick.
  4. Copy ALL the files on the USB stick to somewhere on your hard drive (these should be the only files in the folder).
  5. "In the Copy OS files from here" section, put the folder that you just copied all the files from the USB stick to.
  6. In Sec.3 select MS-DOS bootable.
  7. In Sec.4 select FAT16 on the left, and "Boot as HDD" and "Use 64hd"**
  8. (Make sure the checkbox next to "5 Copy OS files" is checked)
  9. Select 6 Prepare Drive and follow the prompts. It will partition, format, MBR, bootsector and copy the files to the USB stick.
  10. When 9. is complete, hit Eject Drive and remove USB stick.

That's it! Let me know if it works for you.

Note: I think the problem with just doing the File->Drive thing is that it doesn't put the files in the right place on the USB stick. When you let it prep and copy the files itself, it puts everything in the proper place and order.

** You may have to monkey with the checkboxes in this section. My laptop places the USB Boot under its "Hard Drive" section when it lists it in its BIOS. Your computer may consider it removable storage, or a FDD.

Share:
31,908

Related videos on Youtube

Hashim Aziz
Author by

Hashim Aziz

Updated on September 18, 2022

Comments

  • Hashim Aziz
    Hashim Aziz over 1 year

    I'm trying to create a bootable USB for MS-DOS 6.22. I can't risk using FreeDOS or any other version of DOS because I'm working with a very niche utility that has the potential to break expensive things if things are wrong.

    I'm using the ISO for MS-DOS 6.22 found at AllBootDisks.

    So far I've tried this ISO in several versions of Rufus and the latest version of UNetbootin.

    I've tested the following versions of Rufus from this link:

    • V1.3.0 Beta (w/o FreeDOS)
    • V1.2.0 (w/o FreeDOS)
    • V1.2.0.183 (w/o FreeDOS)
    • V1.1.7 (w/o FreeDOS)

    ...all of which produce the following error when selecting the ISO:

    This version of Rufus only supports bootable ISOs based on 'bootmgr/WinPE' or 'isolinux'. This ISO image doesn't appear to use either.

    From the main Rufus page, I've tested versions:

    • V2.15
    • V2.14

    ...which both produce the following error when selecting the ISO:

    This image is either non-bootable, or it uses a boot or compression method not supported by Rufus.

    According to this link, it's not possible at all to use Rufus to create a bootable USB for specific versions of MS-DOS.

    By contrast, UNetbootin seems to accept the ISO when creating the bootable USB, but booting into it causes the boot loop described here.

    Is it at all possible that the ISO from AllBootDisks is faulty? If it's not the ISO, then how else can I create a bootable flash drive for MS-DOS 6.22?

  • Hashim Aziz
    Hashim Aziz almost 7 years
    I entirely understand the reasons for not catering to MS-DOS beyond packaging the ME version, I can see how for the vast majority of use cases FreeDOS is a far better alternative.
  • Hashim Aziz
    Hashim Aziz almost 7 years
    I see that I've been confused on how Rufus works with MS-DOS ISOs, but this is mainly because of how the Rufus UI works: imgur.com/a/aodRQ. I humbly suggest you consider revising the UI to make it more clear that ISO selection is an either-or option in cases where it is. Removing the ISO selection button, for example, when MS-DOS has been selected in the dropdown would work well and eliminate confusion for many others as well as myself, I'd bet.
  • Daniel B
    Daniel B almost 7 years
    Because most modern firmware (BIOS/UEFI) does in fact support INT13h access to USB mass storage, drivers are a non-issue. You wouldn’t use a floppy image, of course.
  • twisteroid ambassador
    twisteroid ambassador almost 7 years
    @DanielB Yes, I should have specified clearer that I was talking about computers in the Windows 98 era, when USB INT13h emulation can not be taken for granted.
  • jarnosz
    jarnosz almost 7 years
    Now, correct me if I'm wrong, but afaik, you can make a USB bootable device with any DOS if you use a raw image (img) of the bootable floppy instead of an ISO image. Correct?
  • Akeo
    Akeo almost 7 years
    I've never tried it, but I don't think that'll work on account that, IIRC, floppies don't have a partition table (the first sector is not the Master Boot Record but the Volume Boot Record) and are therefore handled differently by the BIOS in terms of boot. But the best way to answer that question would be if you gave it a try and reported.
  • trlkly
    trlkly almost 7 years
    There is more than one way to make a bootable USB stick, and one of those ways involves treating it like a "superfloppy" rather than as a hard drive. So it may work. That said, I recommend just using a tool like UnetBootIn instead, as it already works with DOS-based ISOs.
  • jarnosz
    jarnosz almost 7 years
    @Akeo I think you're right: I tried to install a FreeDOS boot floppy image file directly on a USB drive with Rufus. Though the copying succeeded, the USB drive failed to boot, and I'm not in the mood to fiddling with partitions. The disk image however boots flawlessly precisely as an image with syslinux's memdisk.
  • Hashim Aziz
    Hashim Aziz over 6 years
    I appreciate your answer, though I actually did manage to get this working since, I just haven't had the time to update it. Since asking this question I've learnt more about MS-DOS and creating bootable flash drives than I'll ever know what to do with. One question about this method - does it allow you to copy files to some place on the flash drive so those files are then visible and usable when DOS is booted?
  • Steve N
    Steve N over 6 years
    Yes, for example I copied QuickBasic 4.5 onto the drive and am using it. This was the whole purpose for me wanting a DOS6.22 bootable USB.
  • Hashim Aziz
    Hashim Aziz over 6 years
    Are you positive that it's version 4.5 of QuickBasic that you're using? I ask because DOS 6.22 comes with 1.1 by default, and want to be sure that's not what being run instead. Also, when running the bootable, does it boot you into a C: or an A: drive? I'd really appreciate the clarifications, thanks.
  • Steve N
    Steve N over 6 years
    Quick Basic 4.5, not Qbasic. Qbasic comes with DOS. QuickBasic was an actual programming environment you could buy. I bought QuickBasic 4.5 a long time ago.
  • Hashim Aziz
    Hashim Aziz over 6 years
    Ah, my bad. Could you clarify whether it boots into C: or A:?
  • Steve N
    Steve N over 6 years
    It is C:, although I suspect that if you have RMPrepUSB identify it as a floppy, and/or set things up in your BIOS correctly you can get it to be A:. I am unable to access the hard drive of the computer probably because it is formatted FAT32 and not FAT(16).