FreeDOS 1.0 USB Boot Image

Update (2012-01-17) new version available: FreeDOS 1.1 USB Boot Image
Update (2011-10-20) download the FreeDOS USB Image: FreeDOS-1.0-USB-Boot.img.bz2

I was trying to update the BIOS of my new SATA controller (a Syba SD-SATA2-4IR, or SD-81012336 – you decide), as the system will not boot with the RAID BIOS, unless you have a logical drive defined.  Since this fakeraid is generally garbage, and I’ll be using ZFS as well as gmirror, I thought I would try and work around it.

If you go to the chipset manufacturer’s support page for the Sii3124 chip, you can download a set of BIOSes that will allow you to switch the controller out of RAID mode, and into “IDE mode” (possibly AHCI mode, I haven’t been able to actually test what happens then).

To do this though, ideally I’d like a FreeDOS boot image, because let’s face it – floppies are dead.  I still have a bunch, but why?

I followed the “Using Makebootfat on Linux” directions at: http://wiki.fdos.org/Installation/BootDiskCreateUSB, but I found them a little onerous, especially if I need to redo this every time I want to create a custom image.  Also, after following the directions, the system would not boot, because the geometry of the drive didn’t match, or something obscure like that.  I was greeted with the error: “Bad or missing Command.com Interpreter”.  I went into Gparted (0.4.3), and enabled the LBA flag on the partition, and then everything booted up fine (drive geometry is also dead).

You can follow these instructions yourself, or if you prefer something easier, here is an image that you can write directly to the USB drive using dd.   I’m not sure what the Windows analog to dd is, perhaps something in cygwin will do:

FreeDOS-1.0-USB-Boot.img.bz2

This is a 31MB image, that is mostly free space, so that should give enough room to fit many different utilities, and also fit on a 32MB USB memory stick.

The image is released under GPLv2, the same as FreeDOS.  You can find the sources for all this stuff at the above link.

Now my card boots just fine without any logical drives defined.

22 thoughts on “FreeDOS 1.0 USB Boot Image”

  1. I downloaded your boot image and wrote it to a USB stick but it won’t boot.
    I see command.com and kernel.sys on the USB drive.
    Any ideas?

  2. @Neil Aggarwal
    Can you describe exactly how you “wrote it to a USB stick”?

    Can you confirm your BIOS settings? What is your boot order? Are you trying to boot to USB-HDD, USB-FDD, or something else?

    Do you get any boot-time messages that indicate the boot failed?

  3. I am using dd to write the image to the USB drive.

    It must have been the USB drive. I used the exact same procedure to write the image to a different USB stick and it worked perfectly. The one that worked is 256MB and the one that did not is 4GB. I wonder if the size has anything to do with it.

    Anyway, thank you for creating such a useful utility!

  4. @Neil Aggarwal, newer (larger) USB keys usually present themselves as a hard disk, and so need to be explicitly ordered before the other harddisks in the system (my bios has a menu entry for hard disk priority). If you use an older (smaller) key then they’ll trigger the USB-FDD USB-ZIP etc. modes of the BIOS and hence will be booted first (depending on your configured device type boot order of course).

    I just booted this with a 2GB key. Thanks!

  5. hey derek,

    i just wanted to say thank you for this post. i spent two hours writing “live cd” type images to my usb key, that i couldn’t add the 5MB bios update for my motherboard to…before i found yours, which worked perfectly.

    you made my day.

  6. Hey Derek,

    After looking around on the net for a USB bootable FreeDOS image I found this blog post. Good stuff, however the link to the image you are providing does not work any longer. I only get a 97 kb file of the same name full of garbage.

    Is there any chance of getting another copy up somewhere?

    Thanks!

  7. @Jeff
    The file size is 99640 bytes, the sha1 sum is:

    1a3d761b7ef9ba2bcd6da195b1da7d2b231a35ec

    This is a bzip archive, you’ll need to extract it first using either:

    7-zip (windows)

    or

    bunzip2 (*nix)

  8. @Derek

    Odd, I must have missunderstood the post. I was under the impression the file would be 31 MB as per the original post.

    Okay, I’ll try this again…

    Thanks for the quick reply!

  9. @Jeff

    Okay, looks like file was corrupt the first time I downloaded it.

    Originally when I opened it in 7zip it showed three files (garbage). This time however I’m seeing the 31 MB .img as expected!

  10. Thanks for this. Got a link from someone on harddorum.

    I tried numerous things, floppy’s and other USB boot methods for getting my new Samsung 2TB HD204UI patched. I used UltraISO to get it to work. I was surprised I only saw the 3 files, but it worked great.

  11. Why is this not something that the MB manufacturers have as a direct download on their site?

    Thanks for making this so damn simple..

    Ezzy

  12. Thanks for this, I also needed to flash the firmware for my Samsung disk and wasn’t able to find any usable/bootable (Free)DOS USB images, only ones tailored for floppy disks that didn’t have enough room for a 700KB file (and would just refuse to boot if I messed when them by removing files to make space) :/

  13. Thanks for sharing this image.

    I used it as a pxe image in PXELINUX using code

    LABEL FREEDOS
    MENU LABEL FreeDos
    KERNEL memdisk
    APPEND raw initrd=tools/FreeDos/FreeDOS-1.0-USB-Boot.img

    I used imdisk to mount this image, and then added the NTFS 4 DOS Pro files (From Hirens Boot CD) to the image and adjusted autoexec.bat to automatically run NTFSCHK /A /F (Run checkdisk against NTFS Drives)

    Its working great and allows me to chkdsk against drives by booting over pxe, great when you have no CD drive.

  14. Thank you. This image is quite handy. I was search for complete Linux solution to create DOS bootable USB. One of my PC have Award-Phoenix 6.00PG BiOS, which fails to boot Live Ubuntu USBs, only dos formatted USBs.(it sees them as hard-drives when prepared) Grub4dos allows me to boot Linux isos:)
    Thank you

  15. I think rawwrite is the traditional tool to write images on Windows. I have not tried it, nor do I know if it writes to USB sticks. Here is a version for Win32:
    http://www.chrysocome.net/rawwrite
    on Linux/BSD/etc. you’ll use the form
    sudo dd if=FreeDOS-1.1-USB-Boot.img of=/dev/sdX
    where “X” constitutes the actual letter on your system, use
    tail -f /var/log/messages
    to discover
    and if you don’t use sudo just su to root before issuing the command
    su –
    dd if=FreeDOS-1.1-USB-Boot.img of=/dev/sdX

    Anyways thanks for this! Worked for me.

  16. @Eivind
    rawwrite is for floppies only, as far as I recall.

    However, there is dd for windows:
    http://www.chrysocome.net/dd

    and it appears to do USB sticks, as the author states on the rawwrite page:

    “dd allows flexible reading and writing to any disk and is better suited to things like hard disks, USB disks and CF devices. “

  17. Hello, I am trying to boot my 64-bit system using a USB flash drive. I’ve formatted to FAT32 and copied the files in the 1.1 image to that drive. COMMAND.COM is hidden of course, and I see the KERNEL file. I do this to flash my BIOS, but the computer is failing to recognize the USB flash drive even after I select it from the boot menu.

  18. @Michael
    Do not format your USB drive to FAT32 and copy the files.

    The image file needs to be written directly to the USB stick, raw. It’s got all the bootsector/partition goodness that makes it go.

    You need to use dd. A Windows version is mentioned in the comment directly above yours.

  19. Thanks somebody here for knocking some dust off my brain regarding WinImage. The trick I used after that revelation was to extract the files from the FreeDOS 1.1 image, and export the MBR from the .img file, then create a new image file the size I wanted (just add sectors til you are happy) and then I injected the extracted files and applied the MBR (ended up as .ima, but shouldn’t matter to MEMDISK, as I’m booting from a multiboot USB installed with SYSLINUX).

    Thanks guys for the tips, this is how I got around resizing the img (easy on Linux, tough on Windows).

  20. I used this for updating some bois version of my hard disk controller but now i am stuck with a 32MB USB drive.

    How can i revert the image so i get my full 8GB USB drive back?

    I don’t know how to do this

Leave a Reply

Your email address will not be published. Required fields are marked *