How to: Boot and Run SpinRite 6.X on CSM capable UEFI Machines

  • DNS Benchmark v2 is Finished and Available!
    Guest:
    That's right. It took an entire year, but the result far more accurate and feature laden than we originally planned. The world now has a universal, multi-protocol, super-accurate, DNS resolver performance-measuring tool. This major second version is not free. But the deal is, purchase it once for $9.95 and you own it — and it's entire future — without ever being asked to pay anything more. For an overview list of features and more, please see The DNS Benchmark page at GRC. If you decide to make it your own, thanks in advance. It's a piece of work I'm proud to offer for sale. And if you should have any questions, many of the people who have been using and testing it throughout the past year often hang out here.
    /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.)

Hmmm . . . you do not mention seeing/using a boot menu. From the manual I downloaded:

<F12>: BOOT MENU
Boot Menu allows you to set the first boot device without entering BIOS Setup. In Boot Menu, use the up
arrow key <h> or the down arrow key to select the first boot device, then press <Enter> to accept.
The system will boot from the device immediately.
Note: The setting in Boot Menu is effective for one time only. After system restart, the device boot order
will still be based on BIOS Setup settings.

To see this press F12 repeatedly immediately upon power-on or immediately upon exiting BIOS setup. BIOS settings must all be set to legacy!

Note: You may safety ignore the certificate trust issue.
 
Hmmm . . . you do not mention seeing/using a boot menu. From the manual I downloaded:

<F12>: BOOT MENU
Boot Menu allows you to set the first boot device without entering BIOS Setup. In Boot Menu, use the up
arrow key <h> or the down arrow key to select the first boot device, then press <Enter> to accept.
The system will boot from the device immediately.
Note: The setting in Boot Menu is effective for one time only. After system restart, the device boot order
will still be based on BIOS Setup settings.

To see this press F12 repeatedly immediately upon power-on or immediately upon exiting BIOS setup. BIOS settings must all be set to legacy!

Note: You may safety ignore the certificate trust issue.
@DanR, unfortunately the <F12> Boot Menu can't be used to boot into DOS from the USB, bc CSM Support is always disabled after rebooting. So, BIOS Setup must be entered first to enable CSM Support. Then I could access Boot Override on the Save-&-Exit page (the same function as that <F12> Boot Menu) to select the USB to boot from immediately. But as I wrote, the system ignored it and still booted into Windows. Again, the BIOS saved all my settings changes except CSM Support. But the USB DID boot up in EFI mode, not needing CSM Support to flash the BIOS. So the problem is the system auto-disabling CSM Support, contrary to the BIOS setting just saved.
 
I put the files on the Bootable USB. Sure enough, the system booted from the USB just fine in UEFI mode, installed the firmware, and re-booted back to the EFI Shell on the USB - nothing wrong with the USB. The BIOS just always turns off CSM Support between save-&-exit and rebooting. Btw, I thought I shouldn't keep Secure Mode off, so I re-enabled it in the BIOS, and guess what ... now IsBootSecure keeps showing that Secure Mode hasn't turned back on! I usually enjoy figuring things out, but I'm just baffled. I'd love some help at this point.
If I am understanding this correctly: You created a UEFI bootable USB and dropped SpinRite.exe on that? If so, that will NOT work! SpinRite CANNOT run in a UEFI booted environment. That might explain what you are seeing. If the BIOS is seeing ONLY UEFI boot drives, it may be flipping itself back to UEFI to boot off of a UEFI drive.

You must first run spinrite.exe at Windows level as a Windows app. It will guide you thru inserting a USB drive which it will then format and write as a FreeDOS booting USB drive, and then copy itself (spinrite.exe) to this FreeDOS drive. With this FreeDOS drive plugged in at boot up, and CSM selected in the BIOS, I'm thinking the BIOS would now see the FeeDOS drive and now respect the CSM option selection and allow booting from that drive?
 
@DanR, as described in my original post, I used GRC's Bootable (not spinrite.exe) as instructed to enable my USB to test booting into FreeDOS. Since that failed, I couldn't even try to run Spinrite. In fact, prior to that I did exactly what you said: I ran spinrite.exe in Windows. It formatted a USB I inserted, wrote it to boot into FreeDOS, and copied spinrite.exe to it. With this USB plugged in at boot up and CSM Support turned on, the BIOS did show that FreeDOS drive as a boot option, and I put it at the top of the boot order. But after saving and exiting the BIOS, booting from that drive was not allowed. Since the BIOS version was way behind, I wanted to see if an update would help, so I added those files to the USB. The system booted right into the USB (in EFI mode, not Legacy) and flashed successfully, so GRC's Bootable had correctly made the USB bootable. The BIOS gave no indication of a problem when I made all the settings selections required for Legacy mode, then saved and exited, and the BIOS retained all those selections except for CSM Support On. I don't know whether the BIOS itself did not respect the CSM selection or something else in the system reversed it after I saved and exited the BIOS, but that's clearly the problem to solve.
 
@DanR, if I wasn't clear, I first used the USB and spinrite.exe in Windows, and it failed. So I downloaded and ran Bootable, having read it could help diagnose problems getting FreeDOS to boot up. As expected, it reformatted the USB and completed successfully, but that didn't help, the exact same problem occurred with Bootable as before with spinrite.exe.
 
Since the BIOS version was way behind, I wanted to see if an update would help, so I added those files to the USB. The system booted right into the USB (in EFI mode, not Legacy) and flashed successfully, so GRC's Bootable had correctly made the USB bootable
Confusion! A USB is either UEFI bootable or FreeDOS bootable, but NOT both!

BootAble only creates a FreeDOS ONLY bootable USB flash drive.

I first used the USB and spinrite.exe in Windows, and it failed
How does it fail? SpinRite.exe is a dual executable. It runs under Windows as a Windows app, guiding the user thru the process of creating FreeDOS bootable media and placing a copy of SpinRite.exe on the FreeDOS bootable drive. In a DOS environment the same SpinRite.exe runs as a DOS app., the familiar SpinRite 6.1.
 
@DanR, I didn't mean that spinrite.exe itself failed, I meant that setting up the USB with it failed to result in booting into FreeDOS, always restarting into Windows instead. As I described above: "I ran spinrite.exe in Windows. It formatted a USB I inserted, wrote it to boot into FreeDOS, and copied spinrite.exe to it. With this USB plugged in at boot up and CSM Support turned on, the BIOS did show that FreeDOS drive as a boot option, and I put it at the top of the boot order. But after saving and exiting the BIOS, booting from that drive was not allowed."

Also, now that I know BootAble can only create a FreeDOS bootable USB, clearly GigaByte's update package made the USB UEFI-bootable and able to flash the BIOS. That update's success indicates the USB isn't defective and can be booted from, just not into FreeDOS because something always disables the "CSM Support activated" setting between exiting the BIOS and starting the reboot. If CSM Support would stay enabled, the system would boot into FreeDOS. That's the only real problem to solve, since the BIOS retains all the other required Legacy mode settings between reboots.
 
Also, now that I know BootAble can only create a FreeDOS bootable USB, clearly GigaByte's update package made the USB UEFI-bootable and able to flash the BIOS.
WOW! I would NOT expect that! The BootAble.exe that is downloaded is a Windows app that guides the user in creating a FreeDos bootable USB flash drive to verify FreeDOS boot-ability. And that GigaByte update package is forcing the creation of UEFI bootable media instead???

Is it doing the same thing when running SpinRite.exe as a Windows app? I believe both EXE's use the same "Windows app" tech. If so, is FreeDOS bootable media never actually being created on that machine??? That would explain the BIOS behavior. If the BIOS is indeed never seeing any FreeDOS bootable media (because none is ever created) then I can see it flipping CSM to UEFI if UEFI boot options are all it is seeing.

Note: neither FreeDOS or SpinRite will be able to run in an UEFI booted environment.

That would seem to leave only one other option: Would you have access to another system capable of creating FreeDOS bootable media?
 
@DanR - Yes, as I posted back on Wed (10:05 PM): "I also tried [the bootable FreeDOS USB] tonight on a Win10 Dell Latitude E7240 Ultrabook I own but rarely use. After re-configuring its BIOS, the USB booted right up, as did 6.1 when I typed "spinrite" at the C:\> prompt. The Gigabyte B660M on the Win11 desktop PC should be but isn't doing the same, for any reason I can see."

So, running 6.1 successfully on that laptop, I knew FreeDOS and Spinrite were correctly installed on the USB. They weren't booting up on the Win11/Gigabyte B660M PC bc the system was preventing it. But how? Why? Since a helluva lot of Gigabyte B660M's have been sold, all offering CSM Support and Legacy mode, I'm sure MANY Spinrite users are running 6.1 on machines with a Gigabyte B660M. Having listened to Security Now since its first year and used Steve's software for much longer, I know this mysterious problem I'm having couldn't have come up in testing before 6.1 was released, or Steve and the forum would've solved it. How did I get so "lucky"?
 
What do you have a for a video card? I see an option to turn on CSM on my motherboard, but all attempts to turn it on tells me something about VBIOS doesn't support it, which leads me to believe my RTX 3060 doesn't have support for CSM, and if my system supports FreeDOS, I might need to remove the GPU I have installed.

It's also possible the error comes up on my machine because both dedicated and integrated GPUs doesn't have the needed support to run CSM. My motherboard supports both 10th and 11th gen Intel CPUs, with the focus being 11th gen (With an M.2 slot only usable with 11th gen CPU, and the two 16x slots being gen 5 speeds)
 
know this mysterious problem I'm having couldn't have come up in testing before 6.1 was released, or Steve and the forum would've solved it. How did I get so "lucky"?
Beats me! :)

Apparently that BIOS is indeed the culprit. Seems like there is a subtle setting somewhere that is forcing UEFI only operation. I have no idea where to look. Maybe look at the video as miquelfire has suggested?
 
You guys nailed it! Since I'm not into any graphics-intensive applications, I've just been using my i3-12100's iGPU. Well, I just found out it's UEFI-only and doesn't support VBIOS (required for CSM), but any discrete video card should. Problem solved!!! I have a Gigabyte GeForce GT1030 from my previous system. It wasn't better for my uses and is less power-efficient than the iGPU, so I left the card in a box. Now I'm so glad I didn't get rid of it. Btw, I'm amazed this issue hasn't come up before - what I read (not from Intel, so not authoritative) said the iGPU on all 12th gen Intel CPUs lack VBIOS. Could I really be the only Spinrite 6.1 user trying to run it with a 12th gen iGPU??? Thanks so much for the help!
 
Could I really be the only Spinrite 6.1 user trying to run it with a 12th gen iGPU???
The vast majority of motherboards running 12th gen Intel CPUs are UEFI only, so they won’t work to begin with. So yes, you could be the first person to try a 12th gen Intel CPU with a CSM-capable motherboard.
 
I think the fact CSM is an option on motherboards with Intel CPUs that don't support it is just a case of them not using the correct BIOS on it. Sort of like buying a new computer and installing Windows 7 on it.
 
GigaByte promotes this mbd's overclocking capability, so almost all buyers must be using at-least-decent video cards, making the iGPU irrelevant. And GigaByte cd just ignore it and avoid having to program for the special case of missing VBIOS. MSI at least puts up an error message for that special case so you know what's wrong, but GigaByte just lets you flap in the wind, and with no real tech support. Cheap shit company, I've found out. Luckily, you guys helped me to diagnose the problem and avoid getting burned by GigaByte being too classless to even throw up an error message. So thanks again.