How To: Boot a Mac into FreeDOS for Bootable, SpinRite or ReadSpeed (Part 1 of 3 - Intro)

  • SpinRite v6.1 Release #3
    Guest:
    The 3rd release of SpinRite v6.1 is published and may be obtained by all SpinRite v6.0 owners at the SpinRite v6.1 Pre-Release page. (SpinRite will shortly be officially updated to v6.1 so this page will be renamed.) The primary new feature, and the reason for this release, was the discovery of memory problems in some systems that were affecting SpinRite's operation. So SpinRite now incorporates a built-in test of the system's memory. For the full story, please see this page in the "Pre-Release Announcements & Feedback" forum.
    /Steve.
  • Be sure to checkout “Tips & Tricks”
    Dear Guest Visitor → Once you register and log-in please checkout the “Tips & Tricks” page for some very handy tips!

    /Steve.
  • BootAble – FreeDOS boot testing freeware

    To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.

    GRC's “BootAble” freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.

    The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.

    You may click on the image to the right to obtain your own copy of BootAble. Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions – nowhere else can better answers be found.

    (You may permanently close this reminder with the 'X' in the upper right.)

Scott

Well-known member
Sep 18, 2020
102
29
This How To is in Three Parts:
  1. Part 1 - Intro - This post
  2. Part 2 - Media Creation - How to make a bootable USB on your Mac for Bootable, ReadSpeed, or SpinRite
  3. Part 3 - Booting your Mac - How to get your Mac to boot from external media instead of the internal hard drive

Introduction​

The goal of this How To is to show you how to create the FreeDOS based media you'll need to run the GRC utilites Bootable, ReadSpeed, and SpinRite, and to show you how to boot from that media on your Mac.

What's NOT covered:​


Background​

Can my Mac boot FreeDOS?​

FreeDOS is an operating system that requires a computer with either:
  • A BIOS, or
  • UEFI firmware which has the ability to go into BIOS/CSM/Legacy mode.
Intel Macs don't have a BIOS, they use EFI or UEFI. When Boot Camp was introduced in 2006, Apple updated the firmware on the then-current (and subsequent) Mac models to add a CSM (Compatibility Support Module); this allowed Windows installations in BIOS mode, and allowed FreeDOS to run as well. For some later models they removed this BIOS mode and only allowed Boot Camp to install Windows in UEFI mode.

I believe the following rules should apply to determine which systems can boot FreeDOS and run SpinRite or ReadSpeed:
  • Your system must have an Intel processor, not a newer processor (Apple Silicon - M1, M2, M3, etc.). or older processor (PowerPC or Motorola)
  • If your system is from 2015 or newer, it's probably UEFI only and can't boot FreeDOS (but please try, and comment if it works!)
  • If your system is from 2012 to 2014, it may or may not be able to boot FreeDOS from a flash drive
  • If your system is from 2010 to 2012 it should be able to boot from a FreeDOS flash drive
  • If your system is from 2010 or earlier it may be able to boot from a FreeDOS flash drive, but it may only support booting from CD-ROM

Base on the chart above, my Mac is UEFI only and too new to boot FreeDOS. Is there any other way to run the GRC utilities?​

Yes. You could try the steps noted in the post How To: Run SpinRite on a UEFI-only machine, but note they are fairly complex, and this is not a supported method from GRC.

Do I need Boot Camp installed on my Mac to boot to DOS?​

No. The ability to boot to a BIOS or UEFI-based OS is a capability of the firmware.

Is my firmware up to date?​

It's a good idea to make sure that you're on the latest MacOS (hence the latest firmware) that your Mac supports.

If I can get this to work, what drives will SpinRite see?​

Internal drives​

SpinRite should be able to see the internal drives on your Mac, either by using it's native AHCI and IDE drivers, or as BIOS-attached drives.

USB-attached drives​

In my testing, if I had a USB drive connected to the Mac when booting the FreeDOS disk with SpinRite, then SpinRite would detect the USB drive as BIOS-attached and be able to operate on it as well as the internal drives.
  • This capability may vary among different Mac models.
  • For at least some Macs, BIOS-attached drives (including USB-attached drives) will not be recognized if they are over 2.2 TB

How to do it - General Process​

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


As noted above, there are two further posts to outline the process:
  1. Part 2 - Media Creation - How to make a bootable USB on your Mac for Bootable, ReadSpeed, or SpinRite
  2. Part 3 - Booting your Mac - How to get your Mac to boot from external media instead of the internal hard drive

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 tried 11 different flash drives of varying brands, and only 5 of them could be seen by the Mac as valid boot drives.​

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:​
  • Other USB drives would boot into FreeDOS
  • The problematic drive would work when using the software selection ("bless") method.
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?​

Comments welcome!
 
Last edited:
I'm struggling a bit to get SpinRite to run on a late 2014 Mac Mini. I am using the process below because the bootable CD-ROM made by running SpinRite.exe on Windows 10 does not recognize my USB keyboard on my Mac Mini. FreeDOS does--so that's what I'm going with for now.

Here is my current process, in the hopes that it is helpful to someone else.

1. Download SpinRite 6.0
2. Download DreeDOS 1.3 Live CD
3. Copy FD13LIVE.iso to Linux box
4. Make a mount point for the ISO: cd /media; mkdir FreeDOS
5. Mount FD13LIVE.iso: mount -t auto -o loop FD13LIVE.sio media/FreeDOS
6. Make a working directory for new ISO: mkdir /home/[user]/spinrite-CDROOT
7. Copy ISO files to a working directory: cp -R * /home/[user]/spinrite-CDROOT
8. Add new files to working directory: cp /path/to/spinrite.exe /home/[user]/spinrite-CDROOT/FreeDOS/bin
9. Edit FDAUTO.BAT and FDCONFIG.SYS as necessary+
10. Make new ISO: sudo mkisofs -J -r -D -V "SpinRite" -o SpinRite.iso -b "isolinux/isolinux.bin" -no-emul-boot -boot-load-size 4 -boot-info-table spinrite-CDROOT
11. Burn new ISO to CD-ROM
12. Insert new CD-ROM into Mac Mini
13. Power up holding donw left "option" key until boot menu appears
14. Select CD-ROM
15. Select "FreeDOS 1.3 Live Environment"
16. When you get a boot prompt, change to CD-ROM drive (D: in my case)
17. Change to SpinRite.exe dir: cd FreeDOS\bin
18. Run SpinRite: spinrite.exe

Currently, I get a memory error. The "mem /c" command shows that I only have a total of 349K conventional memory.

SpinRite is asking for an additional 197K, so if I could get SpinRite to use the regular 640K of conventional memory, this should work fine. I'm not sure if this is a limitation of the Apple hardware, FreeDOS 1.3, or a misconfiguration, which would require returning to step #9 above.

I also have a total of 0K upper memory--not 0K free, but 0K total, 0K used, and 0K free. So I'm hoping this is a configuration issue and I can soon have SpinRite running on my now dead Mac Mini. (I was able to recover some files using Apple's recovery partition, but I'm still missing a lot of important files.)

Off to preach the importance of backups, but who'd listen? :p
 
Last edited:
Greetings...

This may be a little late coming, but anyway...

I (finally) just got SR61 rc5 to run on my MacBook Pro mid-2012! ...I figured out that it didn't like the USB (thumb) drive(s) I had been using - I had just done a recent upgrade using the OCLP utility to install a newer version of macOS on this machine and the only way to boot using USB was to use an external USB enclosure with an SSD installed. The light-bulb went off that this would probably work for SpinRite also -- so I used the same external USB enclosure and ran the WinSpin utility on my Win 10 machine to install the boot files, etc. onto this external drive. Power-up the MBP w/the "option" key held down and *presto* there was the boot option for the USB drive...the USB icon is labeled as "Windows", but it's the FreeDOS environment. While booting, it took a little while to recognize the second HDD (I have a 2.5in SSD primary drive, along with a 2nd HDD in the optical bay). FYI - it also threw up the "Confirming BIOS's Reported Drives" msg during startup, but then continued to the opening screen. Ran a level1 scan on the SSD (all good), then ran a level2 scan on the HDD (all good).

Note: It did freeze before exiting to the SPINRITE FINISHED popup, but I think it over heated, either the drive or the CPU as the system was hard froze and needed to be shut down with the power button.

Some details for those interested:
MacBook Pro 2012(mid) - currently running macOS Monterey 12.7.2 w/OCLP 1.3
USB enclosure: "Sabrent" USB3 with a Cruial SSD 250GB installed.
System drive: Samsung 840 EVO SSD (250GB)
Data drive: OEM Apple HDD (500GB)
(Some pics attached)
IMG_0548.JPEG
IMG_0549.JPEG
IMG_0550.JPEG
IMG_0551.JPEG
IMG_0553.JPEG
 
Hello,
Your approach to running SpinRite on a Mac seems like something I would like to try. I have had no success with the previously posted approaches to running Spinrite on an Intel Mac. I've tried 5 different USB drives and even a fancy external 1 TB Samsung external without success with the previously posted approaches. The second approach with a complicated series of commands using a Linux box and then multiple steps is over my level.

It's not clear to me, after doing all this, whether SpinRite, once booted on a Mac, would 'see' another USB drive I wanted to repair plugged into the Mac.

I've got a 2007 iMac and (a 2008 iMac that I've updated to Monterey with Open Core Legacy) but I've had no success booting from a the SpinRite USB drive that I prepared using SpinRite 6.1 RC6 running on VM Fusion Windows10. (Of course, I disabled SIP with the terminal command)

--> I'm wondering if you can give some details about your approach? Specifically, what is the WinSpin Utiility you used? (A Google Search turned up nothing.) It's not clear what your steps were...did you create the USB external drive with Sprite 61. first, then add the windows boot drivers? How did you do that? I'm not a Windows guy so a step by step would go a long way. Thanks so much.
 
--> I'm wondering if you can give some details about your approach? Specifically, what is the WinSpin Utiility you used? (A Google Search turned up nothing.) It's not clear what your steps were...did you create the USB external drive with Sprite 61. first, then add the windows boot drivers? How did you do that? I'm not a Windows guy so a step by step would go a long way. Thanks so much.

Hi @theweatherguy ,

The main issue I had with booting my MBP from USB appears to be that it didn't like USB "thumb" drives for some reason...the boot icon would never show up when holding down the option key. When I used an external USB enclosure with an SSD drive -- the boot icon *did* show up, and that ext USB drive *was* bootable. I can't speak to using VMware Fusion w/Windows to create the boot drive...it certainly seems like it could have issues. Luckily, I have a separate PC laptop (Win10) that I can run the official SpinRite "WinSpin" windows utility that creates the bootable SpinRite USB drive...and that's exactly what I did with the same external USB drive enclosure (and SSD) that I had previously installed macOS with. "WinSpin" is a nickname used around the GRC newsgroups to indicate this Windows utility...it is provided by GRC as part of SpinRite (it is actually a hybrid .exe in that it can run on Windows *OR* DOS, but the Windows part is the boot drive creator, and the DOS part is actually SpinRite itself.)

You mentioned "windows boot drivers" -- there are no such thing for SpinRite...all you need is the WinSpin utility, a USB drive, and a Windows PC to put it all together...Like I said, *MY* particular MacBookPro (mid 2012) didn't seem to like USB "thumb/flash" drives...it would only work with an external USB enclosure with an SSD/HDD installed. You may want to test your Mac with a macOS installer installed to the USB drive you want to use for SpinRite...if you can boot into that (macOS installer), you should be able to use that same USB drive as a SpinRite boot USB drive. The only other thing I can think of, is instead of using VMware Fusion for access to Windows -- that you use Boot Camp and actually install Windows naitively on your Mac...my guess is that would have more success than using Fusion with WinSpin.

As far as testing ANOTHER USB drive attached to the Mac...I can't speak to that...in theory it should work, but would only be accessing the 2nd USB drive via the BIOS(?) which is limited in speed and ability to access large drives (>137GB and/or 2.2TB).

The enclosure I used was -- (available on Amazon)

SABRENT 2.5 Inch SATA to USB 3.0 Tool (model EC-UASP).​


If I get time I may setup Boot Camp on my MBP to see if creating WinSpin on that would work, however, I don't want to screw up my Mac install which is working so nice.

Good Luck and Regards,
Thomas
 
I've got a 2007 iMac and (a 2008 iMac that I've updated to Monterey with Open Core Legacy) but I've had no success booting from a the SpinRite USB drive that I prepared using SpinRite 6.1 RC6 running on VM Fusion Windows10. (Of course, I disabled SIP with the terminal command)

Hi @theweatherguy

OK...so I bit the bullet today and installed Windows 10 Pro on my MacBook Pro via Boot Camp...luckily all went well. (Except for a Windows activation issue, but anyway...)

The bottom line is...I *WAS* able to create a fully functional SpinRite USB thumb drive by running the WinSpin utility on my BootCamp'd Win 10 system. I tested said SR thumb drive on my PC laptop...which booted up into SpinRite properly, without issue.

So, in conclusion, I'd say if you can setup Windows 10 via Boot Camp on (one) of your iMac's...you should be able to then d/l the WinSpin utility from the GRC pre-release page and use it to create a proper functioning SpinRite boot drive. As for if you can then test another USB connected drive...I did not get that far, maybe I can try it soon and I will report back.

In terms of setting up Boot Camp on a Mac that's running OCLP...I found a great resource on YouTube...guy goes by the name Mr. Macintosh. He also has a corresponding web site that hosts many useful resources. Here's a link to the video I used today to help with boot camp install/configuration.


***PLEASE NOTE*** :: I just realized -- In the above referenced instructional video...he only mentions compatible systems (macs) dating back to 2009...so I don't know if you will be able to setup boot camp using this method (with OCLP), even though OCLP *does* support the iMac models you mention you own (2007 and 2008). This is going to take some investigation to see what works on your particular systems.

I think if you can get *any* version of Windows up and running on one of your iMacs via boot camp...you should be OK. Good luck and hope it works out for you.

Regards,
Thomas
 
Thomas (@TProbst67) : Nice going!

The only thing I'll add is that I have always planned (and still do) to arrange to provide directly downloadable bootable ISO and IMG files files so that people who cannot run SpinRite under Windows will still be able to get it booted.
 
Thomas (@TProbst67) : Nice going!

The only thing I'll add is that I have always planned (and still do) to arrange to provide directly downloadable bootable ISO and IMG files files so that people who cannot run SpinRite under Windows will still be able to get it booted.

Thanks @Steve !

Oh yeah, I forgot about that (ISO / IMG file download)...Doh!

Since I went this far (with the Mac info), maybe I'll figure out the details of creating said USB boot device on macOS and documenting it here for sake of completeness. (Using the ISO/IMG file, I mean.)

Coincidentally...
I was just looking at the "Rethinking SR downloads" thread over on the newsgroups...how will the downloadable ISO and IMG files work in terms of licensing and user serial #'s...?

Regards,
Thomas
 
I was just looking at the "Rethinking SR downloads" thread over on the newsgroups...how will the downloadable ISO and IMG files work in terms of licensing and user serial #'s...?
Those alternative download formats would have their licenses embedded just as the Windows executable does now. (y)
 
.....

It's not clear to me, after doing all this, whether SpinRite, once booted on a Mac, would 'see' another USB drive I wanted to repair plugged into the Mac.

.....
I just tried this.
1. Inserted two USB drives into my 2012 MacBook Pro prior to booting. One had FreeDOS and SR 6.1 RC 06, the other was an IDE drive in an IDE to USB adapter that had a Mac Filesystem on it
2. Powered on, held down the Option key
3. My Mac offered the Boot Menu selection of booting to MacOS or "Windows"
4. I selected Windows, which booted the FreeDOS / SpinRite USB
5. When SpinRite started, it saw the other USB drive (listed as BIOS attached so it had no information on the type of drive).
6. SpinRite was able to scan that other USB drive (I only let it go for 2% then I stopped it)

Conclusion -- if you have the target drive attached via USB to your Mac at boot time, the Mac's BIOS emulation will recognize it, and so SpinRite will also see it and be able to operate on it.
 
That approach sounds intriguing and perfect if I can get it to work. Thanks. I’ll follow up after I see how it goes for me.
 
I am attempting to boot into SR 6.1 RC6 on a mid-2011 Mac mini from a known good USB drive (boots fine on my ZimaBoard). I can see the drive as "Windows" using the Option key method, but when I select it the video signal dies and nothing happens. The monitor is connected via the Mac's internal HDMI port. Any ideas?
 
I am attempting to boot into SR 6.1 RC6 on a mid-2011 Mac mini from a known good USB drive (boots fine on my ZimaBoard). I can see the drive as "Windows" using the Option key method, but when I select it the video signal dies and nothing happens. The monitor is connected via the Mac's internal HDMI port. Any ideas?
It’s tough to know if the problem is that the Mac is hanging on the USB or it booted but just isn’t delivering any video signal.

Maybe try a different USB? Turn monitor off then on after boot to try and get video signal to resynch?
 
I am attempting to boot into SR 6.1 RC6 on a mid-2011 Mac mini from a known good USB drive (boots fine on my ZimaBoard). I can see the drive as "Windows" using the Option key method, but when I select it the video signal dies and nothing happens. The monitor is connected via the Mac's internal HDMI port. Any ideas?

Maybe try the display port instead of HDMI?

Regards,
Thomas
 
I am attempting to boot into SR 6.1 RC6 on a mid-2011 Mac mini from a known good USB drive (boots fine on my ZimaBoard). I can see the drive as "Windows" using the Option key method, but when I select it the video signal dies and nothing happens. The monitor is connected via the Mac's internal HDMI port. Any ideas?

I'm struggling a bit to get SpinRite to run on a late 2014 Mac Mini. I am using the process below because the bootable CD-ROM made by running SpinRite.exe on Windows 10 does not recognize my USB keyboard on my Mac Mini. FreeDOS does--so that's what I'm going with for now.

Here is my current process, in the hopes that it is helpful to someone else.

1. Download SpinRite 6.0
2. Download DreeDOS 1.3 Live CD
3. Copy FD13LIVE.iso to Linux box
4. Make a mount point for the ISO: cd /media; mkdir FreeDOS
5. Mount FD13LIVE.iso: mount -t auto -o loop FD13LIVE.sio media/FreeDOS
6. Make a working directory for new ISO: mkdir /home/[user]/spinrite-CDROOT
7. Copy ISO files to a working directory: cp -R * /home/[user]/spinrite-CDROOT
8. Add new files to working directory: cp /path/to/spinrite.exe /home/[user]/spinrite-CDROOT/FreeDOS/bin
9. Edit FDAUTO.BAT and FDCONFIG.SYS as necessary+
10. Make new ISO: sudo mkisofs -J -r -D -V "SpinRite" -o SpinRite.iso -b "isolinux/isolinux.bin" -no-emul-boot -boot-load-size 4 -boot-info-table spinrite-CDROOT
11. Burn new ISO to CD-ROM
12. Insert new CD-ROM into Mac Mini
13. Power up holding donw left "option" key until boot menu appears
14. Select CD-ROM
15. Select "FreeDOS 1.3 Live Environment"
16. When you get a boot prompt, change to CD-ROM drive (D: in my case)
17. Change to SpinRite.exe dir: cd FreeDOS\bin
18. Run SpinRite: spinrite.exe

Currently, I get a memory error. The "mem /c" command shows that I only have a total of 349K conventional memory.

SpinRite is asking for an additional 197K, so if I could get SpinRite to use the regular 640K of conventional memory, this should work fine. I'm not sure if this is a limitation of the Apple hardware, FreeDOS 1.3, or a misconfiguration, which would require returning to step #9 above.

I also have a total of 0K upper memory--not 0K free, but 0K total, 0K used, and 0K free. So I'm hoping this is a configuration issue and I can soon have SpinRite running on my now dead Mac Mini. (I was able to recover some files using Apple's recovery partition, but I'm still missing a lot of important files.)

Off to preach the importance of backups, but who'd listen? :p
Have you had any luck getting spinrite running on your Mac? I too have a Mac Mini late 2014. I've tried ReadSpeed but have not had any luck. I gone through all the steps recommended by "Scott" above from Jan 10, 2021 including disabling SIP and Blessing the USB key with ReadSpeed on it. When I try to restart from "Recovery Mode" the screen (HDMI) goes grey but the Mac doesn't restart. If I shutdown from there with the power key, the Mac boots into MacOS. Otherwise, if when I start the Mac (without blessing the ReadSpeed disk) but hold down the right option button, I do see a "Windows" disk and can select it but the screen goes grey and nothing further happens. (Incidentally, the left option key doesn't present the disks, and just boots up into MacOS normally.)
Do you, or anyone else have any suggestions?
 
Have you had any luck getting spinrite running on your Mac? I too have a Mac Mini late 2014. I've tried ReadSpeed but have not had any luck. I gone through all the steps recommended by "Scott" above from Jan 10, 2021 including disabling SIP and Blessing the USB key with ReadSpeed on it. When I try to restart from "Recovery Mode" the screen (HDMI) goes grey but the Mac doesn't restart. If I shutdown from there with the power key, the Mac boots into MacOS. Otherwise, if when I start the Mac (without blessing the ReadSpeed disk) but hold down the right option button, I do see a "Windows" disk and can select it but the screen goes grey and nothing further happens. (Incidentally, the left option key doesn't present the disks, and just boots up into MacOS normally.)
Do you, or anyone else have any suggestions?

Note this section in the write up above:
I believe the following rules should apply to determine which systems can boot FreeDOS and run SpinRite or ReadSpeed:
  • Your system must have an Intel processor, not a newer processor (Apple Silicon - M1, M2, M3, etc.). or older processor (PowerPC or Motorola)
  • If your system is from 2015 or newer, it's probably UEFI only and can't boot FreeDOS (but please try, and comment if it works!)
  • If your system is from 2012 to 2014, it may or may not be able to boot FreeDOS from a flash drive
  • If your system is from 2012 or earlier it should be able to boot from a FreeDOS flash drive
Your system is from the time when Apple was transitioning from firmware that could do "Legacy" booting to pure UEFI. It seems that given the relative newness of your system, it's a pure UEFI system and so it can't boot FreeDOS (or SpinRite or ReadSpeed).

Only option, if you're adventurous, is to use my newly posted instructions for booting SpinRite on a UEFI system, but not that's not supported by GRC and is a fairly complex procedure.
 
Note this section in the write up above:
I believe the following rules should apply to determine which systems can boot FreeDOS and run SpinRite or ReadSpeed:
  • Your system must have an Intel processor, not a newer processor (Apple Silicon - M1, M2, M3, etc.). or older processor (PowerPC or Motorola)
  • If your system is from 2015 or newer, it's probably UEFI only and can't boot FreeDOS (but please try, and comment if it works!)
  • If your system is from 2012 to 2014, it may or may not be able to boot FreeDOS from a flash drive
  • If your system is from 2012 or earlier it should be able to boot from a FreeDOS flash drive
Your system is from the time when Apple was transitioning from firmware that could do "Legacy" booting to pure UEFI. It seems that given the relative newness of your system, it's a pure UEFI system and so it can't boot FreeDOS (or SpinRite or ReadSpeed).

Only option, if you're adventurous, is to use my newly posted instructions for booting SpinRite on a UEFI system, but not that's not supported by GRC and is a fairly complex procedure.
Thanks Scott. I've just skimmed through your posting for booting SpinRite from a UEFI system and I see what you mean by a fairly complex procedure. As a member of the Mac community, thank you for all the work you've put into this and the detailed documenting of the steps.
 
  • Like
Reactions: CSPea
This How To is in Three Parts:
  1. Part 1 - Intro - This post
  2. Part 2 - Media Creation - How to make a bootable USB on your Mac for Bootable, ReadSpeed, or SpinRite
  3. Part 3 - Booting your Mac - How to get your Mac to boot from external media instead of the internal hard drive

Introduction​

The goal of this How To is to show you how to create the FreeDOS based media you'll need to run the GRC utilites Bootable, ReadSpeed, and SpinRite, and to show you how to boot from that media on your Mac.

What's NOT covered:​

  • Booting from a CD-ROM instead of a flash drive

Background​

Can my Mac boot FreeDOS?​

FreeDOS is an operating system that requires a computer with either:
  • A BIOS, or
  • UEFI firmware which has the ability to go into BIOS/CSM/Legacy mode.
Intel Macs don't have a BIOS, they use EFI or UEFI. When Boot Camp was introduced in 2006, Apple updated the firmware on the then-current (and subsequent) Mac models to add a CSM (Compatibility Support Module); this allowed Windows installations in BIOS mode. For some later models they removed this BIOS mode and only allowed Boot Camp to install Windows in UEFI mode.

I believe the following rules should apply to determine which systems can boot FreeDOS and run SpinRite or ReadSpeed:
  • Your system must have an Intel processor, not a newer processor (Apple Silicon - M1, M2, M3, etc.). or older processor (PowerPC or Motorola)
  • If your system is from 2015 or newer, it's probably UEFI only and can't boot FreeDOS (but please try, and comment if it works!)
  • If your system is from 2012 to 2014, it may or may not be able to boot FreeDOS from a flash drive
  • If your system is from 2010 to 2012 it should be able to boot from a FreeDOS flash drive
  • If your system is from 2010 or earlier it may be able to boot from a FreeDOS flash drive, but it may only support booting from CD-ROM

Do I need Boot Camp installed on my Mac to boot to DOS?​

No. The ability to boot to a BIOS or UEFI-based OS is a capability of the firmware.

Is my firmware up to date?​

It's a good idea to make sure that you're on the latest MacOS (hence the latest firmware) that your Mac supports.

If I can get this to work, what drives will SpinRite see?​

Internal drives​

SpinRite should be able to see the internal drives on your Mac, either by using it's native AHCI and IDE drivers, or as BIOS-attached drives.

USB-attached drives​

In my testing, if I had a USB drive connected to the Mac when booting the FreeDOS disk with SpinRite, then SpinRite would detect the USB drive as BIOS-attached and be able to operate on it as well as the internal drives. This capability may vary among different Mac models.

How to do it - General Process​

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


As noted above, there are two further posts to outline the process:
  1. Part 2 - Media Creation - How to make a bootable USB on your Mac for Bootable, ReadSpeed, or SpinRite
  2. Part 3 - Booting your Mac - How to get your Mac to boot from external media instead of the internal hard drive

My Mac is UEFI only and too new to boot FreeDOS. Is there any other way to run the GRC utilities?​

Yes. You could try the steps noted in the post How To: Run SpinRite on a UEFI-only machine, but note they are fairly complex, and this is not a supported method from GRC.


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 tried 11 different flash drives of varying brands, and only 5 of them could be seen by the Mac as valid boot drives.​

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:​
  • Other USB drives would boot into FreeDOS
  • The problematic drive would work when using the software selection ("bless") method.
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?​

Comments welcome!
FYI: Using VirtualBox and Scott's Pre-Built VM, I successfully ran SpinRite 6.1 (both level 2 and 3) on my Mac Mini (Late 2014) running Monterey. The Mac has a 3rd party SSD (internal 3rd party OWC Aura Pro x2). I also ran ReadSpeed many times. This was thanks to the great instructions from Scott. Interestingly, the speed, even prior to SpinRite, was often fastest at the the beginning of the drive. An important point to emphasize is, to make sure the internal drive and all it's volumes are unmounted before starting the VM. It appears that MacOS will sometimes remount the drive or one of it's volumes "spontaneously". If you're unsuccessful in starting the VM, recheck the mounting status.
 
Last edited:
I'm struggling a bit to get SpinRite to run on a late 2014 Mac Mini. I am using the process below because the bootable CD-ROM made by running SpinRite.exe on Windows 10 does not recognize my USB keyboard on my Mac Mini. FreeDOS does--so that's what I'm going with for now.

Here is my current process, in the hopes that it is helpful to someone else.

1. Download SpinRite 6.0
2. Download DreeDOS 1.3 Live CD
3. Copy FD13LIVE.iso to Linux box
4. Make a mount point for the ISO: cd /media; mkdir FreeDOS
5. Mount FD13LIVE.iso: mount -t auto -o loop FD13LIVE.sio media/FreeDOS
6. Make a working directory for new ISO: mkdir /home/[user]/spinrite-CDROOT
7. Copy ISO files to a working directory: cp -R * /home/[user]/spinrite-CDROOT
8. Add new files to working directory: cp /path/to/spinrite.exe /home/[user]/spinrite-CDROOT/FreeDOS/bin
9. Edit FDAUTO.BAT and FDCONFIG.SYS as necessary+
10. Make new ISO: sudo mkisofs -J -r -D -V "SpinRite" -o SpinRite.iso -b "isolinux/isolinux.bin" -no-emul-boot -boot-load-size 4 -boot-info-table spinrite-CDROOT
11. Burn new ISO to CD-ROM
12. Insert new CD-ROM into Mac Mini
13. Power up holding donw left "option" key until boot menu appears
14. Select CD-ROM
15. Select "FreeDOS 1.3 Live Environment"
16. When you get a boot prompt, change to CD-ROM drive (D: in my case)
17. Change to SpinRite.exe dir: cd FreeDOS\bin
18. Run SpinRite: spinrite.exe

Currently, I get a memory error. The "mem /c" command shows that I only have a total of 349K conventional memory.

SpinRite is asking for an additional 197K, so if I could get SpinRite to use the regular 640K of conventional memory, this should work fine. I'm not sure if this is a limitation of the Apple hardware, FreeDOS 1.3, or a misconfiguration, which would require returning to step #9 above.

I also have a total of 0K upper memory--not 0K free, but 0K total, 0K used, and 0K free. So I'm hoping this is a configuration issue and I can soon have SpinRite running on my now dead Mac Mini. (I was able to recover some files using Apple's recovery partition, but I'm still missing a lot of important files.)

Off to preach the importance of backups, but who'd listen? :p
FYI: Using VirtualBox and Scott's Pre-Built VM, I successfully ran SpinRite 6.1 (both level 2 and 3) on my Mac Mini (Late 2014) running Monterey. The Mac has a 3rd party SSD (internal 3rd party OWC Aura Pro x2). I also ran ReadSpeed many times. This was thanks to the great instructions from Scott. Interestingly, the speed, even prior to SpinRite, was often fastest at the the beginning of the drive. An important point to emphasize is, to make sure the internal drive and all it's volumes are unmounted before starting the VM. It appears that MacOS will sometimes remount the drive or one of it's volumes "spontaneously". If you're unsuccessful in starting the VM, recheck the mounting status.
 
sure the internal drive and all it's volumes are unmounted before starting the VM. It appears that MacOS will sometimes remount the drive or one of it's volumes "spontaneously". If you're unsuccessful in starting the VM, recheck the mounting status.
I’ll make a note of this in the MacOS instructions