Boot a Mac into FreeDOS and ReadSpeed

  • Be sure to checkout “Tips & Tricks”
    Dear Guest Visitor → Once you register and log-in:

    This forum does not automatically send notices of new content. So if, for example, you would like to be notified by mail when Steve posts an update to his blog (or of any other specific activity anywhere else), you need to tell the system what to “Watch” for you. Please checkout the “Tips & Tricks” page for details about that... and other tips!

    /Steve.

Scott

Member
Sep 18, 2020
8
5
Here's some info on how to how to boot a Mac from a USB flash drive into FreeDOS, and run DOS-based utilities like ReadSpeed

What's NOT covered:​

  • Creating a bootable USB drive on a Mac
  • Booting from a CD-ROM instead of a flash drive

Background​

Can my Mac boot FreeDOS?​


FreeDOS is an operating system that requires a BIOS or a system with UEFI that has the ability to go into BIOS/CSM/Legacy mode. Intel Macs don't have a BIOS, they use EFI or UEFI as their firmware. When BootCamp was introduced in 2006, Apple added a CSM (Compatibility Support Module) to their existing and subsequent Macs, to allow Windows installations in BIOS mode. At a later point they removed the BIOS/CSM/Legacy mode and only allowed BootCamp to install Windows in UEFI mode.

I can't find official Apple documentation on when the CSM mode was removed, but I found some users claiming the following:
  • 2012 and older models only support legacy BIOS Mode. There are varying degrees of 'EFI'ness in these, but they are not UEFI-compliant. They should, though, be able to boot FreeDOS
  • Late 2013-2014 models support both EFI and BIOS, and default is BIOS. These are the first models which are UEFI compliant. They should be able to boot FreeDOS
  • 2015 and later models only support EFI and UEFI-compliant operating systems. These will not be able to boot FreeDOS

Based on the above:
  • If your system is from 2015 or newer, it can't boot FreeDOS. You might as well stop reading here :(
  • If your system is from 2013 to 2014, it may be able to boot FreeDOS from a flash drive (or not), you can't tell until you try!
  • If your system is from 2012 or earlier it should be able to boot from a FreeDOS flash drive

Also note that if, based on date, your system should be able boot from a USB drive but won't, it may be able to boot from a CD-ROM prepared with FreeDOS. That will be the subject of another post on this forum.

How does my Mac know whether to boot into EFI/UEFI mode or CSM mode?​


In the ways noted below, you'll tell the Mac which drive to boot from. Macs manage BIOS/CSM/legacy-mode booting by using the partition table as a cue:
  • If the disk contains either an old-style Master Boot Record (MBR) Partition table or a hybrid MBR, and if a partition in that MBR has its boot flag set, the firmware activates its BIOS/CSM/legacy support, enabling it to boot in BIOS/CSM/legacy mode.
  • If the disk contains a GPT with a conventional protective MBR, or if no MBR partition is marked as bootable, the firmware will boot only in EFI/UEFI mode

Is there a difference between booting a drive with an MBR versus one with a floppy image?​


Maybe. The instructions below are for booting from a standard flash drive with an MBR. I also tried with a USB created from a floppy image (.IMG file) and the same instructions worked (and the same failing flash drives still failed), but I haven't tested that extensively.


How to do it​

Assuming my Mac is old enough, how do I boot FreeDOS from a flash drive?​


First, of course, make sure you have a flash drive with FreeDOS on it (and that you've ideally checked to make sure it can boot a PC). Then try the two methods below.

1. Option key method -- try this first, as it's the simplest:
Insert your flash drive with the Mac off. On startup, hold down the Option key. You'll boot to the Mac's graphical Boot Manager, which should show all volumes from which the Mac can boot. If you see a USB drive icon with the Volume name "Windows", then select that Volume and press Enter. If your FreeDOS drive was prepared correctly and is compatible (more on that below), your Mac should boot into FreeDOS. If you don’t see the Volume on the Boot Manager, you should try the Software selection method.​

2. Software selection method -- more complex
This method requires you to use some command line programs to tell MacOS that on the next reboot, it should look for a BIOS-based OS on the flash drive rather than MacOS on the hard drive. Steps for this method follow.​

A. Disable SIP (System Integrity Protection)​
Are you running MacOS version 10.10 (Yosemite) or older? Then you can skip this step and go on to Step B. Otherwise you must disable SIP, which is sort of Apple's equivalent of Secure Boot on PCs.​
1. Check if SIP is enabled. Open the terminal, from the command line type:​
csrutil status
If status is disabled, you can go to Step B. Else you must disable SIP.​
2. Disable SIP.​
a. Turn off your Mac (Apple > Shut Down).​
b. Hold down Command-R and press the Power button to boot into Recovery Mode​
c. Wait for MacOS to boot into the MacOS Utilities window​
d. Choose Utilities > Terminal, and at the terminal prompt enter​
csrutil disable
e. You should get confirmation that SIP is disabled​
f. Restart your Mac (or Shut Down and then Power On)​
g. Move on to step B to use the bless command​
B. Use the bless command to tell the Mac to restart in BIOS/CSM/Legacy mode​
1. With the Mac up and running (and SIP disabled as noted), insert the FreeDOS USB; it will be recognized and show up on the Desktop​
2. Open a terminal window. Run the "diskutil list" command, to see the device assigned to the USB drive. On my machine it was /dev/disk2​
3. From the terminal, type the following after the prompt$:​
sudo bless --device /dev/disk2 --setBoot --nextonly --legacy --verbose
a. You'll probably be prompted for your root password which you obviously must enter​
b. In the above command, obviously replace disk2 with whatever the device is that's assigned on your machine. Also, very important to have the --nextonly flag, else maybe this is a permanent change!!​
c. IMPORTANT:​
i. if the output of the bless command says "Legacy mode supported" AND you DON'T see something like, "could not set boot device property: 0xe00002bc" (or some other similar code) then you can proceed​
ii. if the output of the bless command says "Legacy mode supported" AND you DO see something like, "could not set boot device property: 0xe00002bc" (or some other similar code) then you probably did not disable SIP correctly​
iii. if the output of the bless command says "Legacy mode not supported on this system" then your Mac does not support BIOS/ CSM/ Legacy mode, and you will not be able to boot FreeDOS​
4. Do a standard restart from the Apple menu. Your system should now boot from the USB into FreeDOS on the next start. Congratulations!! After power down, your system should boot normally from the hard drive into MacOS​
5. The boot flash drive should be readable and writable, however I don't think the other USB ports will be seen, so if you need that, then you'll have to add some DOS-mode drivers for USB devices.​

Problems!​


1. System reboots but instead of starting FreeDOS, you get the message:
"No bootable device -- insert boot disk and press any key"
This is because the system is failing in two ways:​
A. It's not reading the MBR on the flash drive correctly and so it then shifts into EFI mode, but...​
B. It doesn't see a valid EFI boot disk layout and so it fails.​

What to do about it? Try creating a different FreeDOS disk on a different brand of flash drive. I used InitDisk on 11 different flash drives of varying brands, and only 5 of them could be seen by the Mac as valid boot drives. I tried prepping the failing ones with Rufus instead of InitDisk, and they still failed. In some cases I had seemingly identical drives (purchased together in a multi-pack) and one would work while another would not.​

If anyone has a way to update these drives to reliably be detected, please leave a comment!​

2. System reboots but you just get a grey screen.
This is also, I think, a symptom of the Mac's picky behavior with USB drives. I saw this when using the Option key method to start my Mac, but:​
A. Other USB drives would boot into FreeDOS​
B. The problematic drive would work when using the software selection ("bless") method.​
Again, only suggestion is to try another drive.​

3. System boots to FreeDOS but seems flaky, hangs, etc. I'm not sure, but I think that this may be a sign that the system is overheating. Macs may control their fans primarily through software, and FreeDOS will certainly not know how to control a system fan in the background! Any insight from users would be appreciated here.


Comments?​


I don't know everything, but I've been reading a lot to try and get a handle on this stuff. If others have more information please leave comments below!! In particular, any way to get a non-functioning USB drive to work reliably would be greatly appreciated!!
 
Last edited: