SpinRite 6.0 (2004) Logo

Opinion: SpinRite 6.1 is Too Little, Too Late

Share this page

According to Steve Gibson of the Gibson Research Corporation, SpinRite 6.1 is functionally complete. But has it come to be too little, too late? I think it has, and I’ll explain why.

History of SpinRite

SpinRite 1.0 (1988) was a revolutionary tool that could improve performance on most hard drives (by adjusting the interleave) and it could detect bad sectors that either weren’t marked on the defect label at the factory, weren’t programmed in when the drive was initially set up, or ones that had developed after the drive was set up.

SpinRite II (1989) extended SpinRite’s functionality by allowing it to operate on partitions and drives whose size was greater than 32MiB. In addition, it had much better support for many hard disk controllers and device drivers.

SpinRite 3.1 and beyond introduced massive changes to SpinRite, each release’s changes too long to list for the purposes of this post. I’ll just provide a link to the SpinRite Version History. The point of this section is to highlight the usefulness that SpinRite has enjoyed in its past, especially given the technological times that it was operating in. Those times have since evolved, but SpinRite has failed to evolve with them, and time has left SpinRite far behind as a result.

SpinRite 6.0 Is Nearly Obsolete, Technologically Speaking

As of this writing, SpinRite 6.0 is the most current release of SpinRite, released in 2003. Back in 2003, IDE was the major player when it came to hard disk interfaces, and hard disk technology wasn’t as advanced as it is today. SCSI was also a distant second-place interface. Today, both IDE and SCSI have long-since faded out of mainstream use and now SATA and NVMe are major players, with U.2 as an up and coming standard finding itself included on workstation and server motherboards at an increasing rate.

SATA and IDE Emulation

Throughout the 2000s, SATA offered a compatibility mode that made the SATA controller’s devices appear as if they were IDE devices. This allowed older OSes that lack(ed) SATA support to be installed onto SATA devices without special drivers. Around 2010 or so, SATA controllers began to deprecate this compatibility mode.

SpinRite 6.0 was released before SATA became a mainstream interface on motherboards and storage devices, and has seen no further updates since then. As a direct result, SpinRite will not detect and cannot operate on SATA devices that are connected through a SATA controller that cannot be switched to an IDE emulation mode. This has made SpinRite unable to effectively operate on most modern computers.

SSDs and SpinRite’s Lack of Awareness

SSDs have also become commonplace since SpinRite 6.0 was released. SpinRite 6.0 is not aware of SSDs and cannot handle these devices any differently than magnetic storage media. As a result, SpinRite Level 3 or higher is not only ineffective, but can be damaging to solid-state media, assuming that SpinRite can even find the controller that it’s attached to to begin with.

NVMe SSDs

In addition to SSDs in general becoming commonplace, a new storage interface has appeared and become mainstream since SpinRite 6.0’s release: NVMe. SpinRite was written in a primarily-PCI world and has no awareness of PCI Express hardware. NVMe, given that it uses the PCI Express interface, is also unsupported by SpinRite.

U.2 Storage Devices

An up-and-coming storage device interface is one known as U.2. It uses a combination of PCI Express and SATA, neither of which are natively supported by SpinRite 6.0. As a result, U.2 devices are once again left in the dark by SpinRite.

UEFI, BIOS, and CSM

For as long as SpinRite has existed, it has been limited to booting on BIOS systems only, or on UEFI systems with a CSM (Compatibility Support Module), which enables legacy software to boot on a UEFI system.

Modern systems are ditching the CSM at an increasing rate, which prevents non-UEFI software from booting. SpinRite falls squarely into this category.

PCI Express

SpinRite has no awareness of PCI Express hardware. As a result, in addition to not being able to find NVMe devices, SpinRite is also unable to find storage devices attached to PCI Express controller cards that do not expose their attached storage devices using standard BIOS disk handling routines, if they even still exist.

Long-In-The-Tooth Problems

Division Overflow Error – Unfixed for 10+ Years

SpinRite 6.0 also suffers from several major problems that make it ineffective on most modern storage devices. The first is purely size-related. At some point when working with large (500GB+) drives, SpinRite will crash with a Division Overflow Error at B04E. There is no workaround for this in SpinRite 6.0, however SpinRite 6.1 promises to fix this issue. A direct result of this is that SpinRite is totally unusable on storage devices larger than 500GB. SpinRite 6.1 should have a fix for this problem that will allow it to operate on storage devices up to 2TiB.

‘MBR Followed By EFI’ – Unfixed for 10+ Years

SpinRite 6.0 does not understand GPT partitioning and will issue false warnings if you attempt to run it against a storage device that has such a partitioning scheme. There are workarounds for this, but they all involve backing up the entire drive’s contents, erasing the drive, running SpinRite against it, and then restoring the entire drive’s contents. This problem should be fixed in SpinRite 6.1.

SpinRite Cannot Boot on UEFI Systems – Unfixable in SpinRite 6.x

SpinRite has always relied upon DOS to boot and/or operate. Whether it’s MS-DOS or FreeDOS, neither can boot on a UEFI system. As a result, until SpinRite 7.0 is released, SpinRite will not be able to boot on a UEFI-only system. In addition, this limits SpinRite to only working within the first 2.2TiB of all storage devices.

SpinRite Cannot Fully Operate On Storage Devices >2TiB – Unfixed for 10+ Years, Fix Dependent on System BIOS Vendor

Due to system BIOS limitations, SpinRite cannot access any space beyond 2.2TiB on any attached storage device. (SpinRite already can’t even begin to approach this limit due to a previously mentioned bug.) SpinRite 6.1 does not ship with a native fix for this issue; support is dependent on whether the system’s BIOS vendor ships a disk handling module that supports BIOS-resident handling of drives beyond 2.2TiB.

Limited USB Support for SpinRite – Unfixed For 10+ Years

SpinRite 6.0 has limited support for USB devices of various types. USB storage devices are generally recognized and work fine, with the previous problems in consideration. USB keyboard support is very buggy, with a myriad of erratic behavior and problems being exhibited. SpinRite 7.1 aims to fix this problem with driver-level support for many USB controllers.

Why SpinRite 6.1 May Be Too Little, Too Late

SpinRite 6.1 offers a few fixes for long-in-the-tooth problems, but fails to address many other major problems that hamper SpinRite’s usefulness in today’s world. Had SpinRite 6.1 not been delayed by more than 10 years while SQRL was being developed, it would’ve probably been a good time to release it.

Think about how technology was in late-2012/early-2013. Many of the problems that SpinRite faces today didn’t exist back then. U.2 wasn’t much of a thing. NVMe was still hot off the press. UEFI was still brand new and a CSM was basically mandatory. Hard drive sizes hadn’t exploded to what they are today. GPT partitioning was still fairly new in mainstream computing. SATA IDE emulation would’ve begun to become a problem, but it would’ve been an excellent time to patch around it.

Despite the few fixes that SpinRite implements, I don’t personally believe that SpinRite 6.1 will be enough to overcome the technological advancements that have taken place in the 18 years it’s been since SpinRite 6.0 was released.

A Quick Summary

For ease of summarization, here’s a couple of lists highlighting the problems that SpinRite 6.0 has versus the problems that SpinRite 6.1 addresses.

SpinRite Problems:

  • No support for modern SATA controllers
  • No awareness of SSDs
  • No support for U.2 storage devices
  • No support for NVMe storage devices
  • No UEFI support
  • Limited USB support
  • Limited or no PCI Express support
  • Division Overflow Error on >500GB storage devices
  • ‘MBR Followed by EFI’ error on GPT-partitioned storage devices
  • Limited support for >2.2TiB storage devices

Problems Addressed by SpinRite 6.1:

  • Support for modern SATA controllers
  • Awareness of SATA/IDE SSDs
  • Bugfix for the ‘Division Overflow Error’ crash on >500GB storage devices
  • Bugfix for the ‘MBR Followed by EFI’ error on GPT-partitioned storage devices

This leaves SpinRite 6.1 left with the following issues:

  • No support for U.2 storage devices
  • No support for NVMe storage devices
  • No UEFI support
  • Limited USB support
  • Limited or no PCI Express support
  • Limited support for >2.2TiB storage devices

Given the many problems that SpinRite still has, coupled with historically long development cycles, I don’t believe that SpinRite 6.1 will be enough to make SpinRite technologically relevant again. In fact, it genuinely wouldn’t surprise me if SpinRite 6.1 arrived to little fanfare, just to fade to black in short order. The cards are stacked heavily against its favor and it just doesn’t have much to bring to the table.

SpinRite Development Cycles

SpinRite 6.1 just exited its development phase and is in the process of entering its alpha testing phase. If I remember correctly, SpinRite 6.1 has been in development for close to 4 years, not including the time while SpinRite was backburnered and stagnated due to SQRL.

I speculate that SpinRite 6.1 will be in its testing phases for between two and three years. This puts SpinRite 6.1 at a late-2024 or early-2026 release. By then, hard drives will have been relegated to the dustbin of computing history for most uses. NVMe will more than likely be the premier storage interface with U.2 at a not-so-distant 2nd place. CSMs will have practically vanished from UEFI implementations. The legacy BIOS calls that SpinRite depends critically on just won’t exist anymore, and SpinRite will be a solution looking for an obsolete problem.

SpinRite 7.0 and Beyond

If SpinRite exists as a product long enough to see Version 7.0 enter development, I don’t believe that it will live long enough to see v7.0 release. Below is the exact feature improvement list for SpinRite v7.0 as quoted from the January 2021 GRC Development Roadmap:

  • Booting and operation under BIOS and UEFI.
  • Native high-performance drivers for IDE & SATA drives.

That’s it.

If that’s what SpinRite 7.0 has to bring to the table, then it too will be a solution looking for an obsolete problem. I’m speculating a development cycle of around 5 years for SpinRite 7.0. Assuming that SpinRite 6.1 releases in 2025, that puts SpinRite 7.0 at a 2030-ish release.

In 2030, hard drives will more than likely be as obsolete then as IDE drives are today. SATA will be an obsolete interface, largely looked upon as we look upon the serial port today. UEFI CSMs will be as obsolete then as MFM drives are today.

Overall, the future for SpinRite is looking very dull, bleak, and outdated. I won’t go on for SpinRite 7.1 or 7.2, as that’s too far ahead into the future to make accurate guesses on technology. But what I can solidly speculate on is that, at its current pace, unless the Gibson Research Corporation can pull off several miracles, SpinRite will be relegated to the dustbin of computing history alongside IDE and (soon to be) SATA hard drives, the SATA interface, PS/2, and decades of technology that time has left behind.

SpinRite, you’ve had your time in the spotlight, but it’s time to move on. I’ll show you the door.

2.6 134 votes
Article Rating
8 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
S S

I really appreciate your clear and concise summary of what long-running issues many of us have seen will/won’t be fixed by 6.1.

What alternative software do you suggest we move on to now that you’ve shown SpinRite to the door?

Steve Gibson

Hi, I was pointed to this “Too little too late” piece about SpinRite by someone who is anxiously awaiting the release of v6.1. I thought that your history of SpinRite was quite accurate. But a few of the aspects you listed for the forthcoming v6.1 are not correct. In your summary of “This leaves v6.1 with the following issues” summary, you listed: No support for U.2 storage devices No support for NVMe storage devices No UEFI support Those are all correct. Since my commitment for SpinRite v6.1 was to catch SpinRite up with all of the time that has passed,… Read more »

Adam

When I ran spinrite 6.1 alpha on a 500GB Samsung Evo SSD .. Spinrite scanned the SSD in 15 mins 3 seconds.

Another program, which I consider to be a competitor of sprite – At the 15 min mark it was only 20% complete. 

Spinrite 6.1 is turning out to be a fantastic FREE upgrade to 6.0

Jeff

Is the author simply pulling dates out of his rear? I am one that has actively participated in SpinRite 6.1’s start of development in 2013 before Steve went off for 6 years and worked on SQRL. I helped with SQRL dev for those 6 years and tested and still use SQRL a bit now. I’ve been active and along for the ride since Steve returned to SpinRite 6.1 development. Knowing where we are right now, I HIGHLY doubt SpinRite 6.1 will be released in 2025, even with Steve’s desire to get it just right and as good as he can.… Read more »

Daniel

Your assessment of SpinRite 6.0’s capabilities is accurate and the BIOS limitations of 6.1 as well, however, I don’t feel it will take Steve 2 years to get 6.1 out the door and certainly not 7 to get 7.0 out the door. It would have been my preference to work on SpinRite prior to SQRL, but I can’t code well in C++ let alone assembly, and considering how he writes tight efficient code, and fast, I’m sure 7.0 will be out long before 2030.

Blaise Pabon

I agree with your findings, what is the alternative?

David

This is fair criticism, but what is the alternative you recommend then?

Bob

The facts you list are correct, but as you don’t provide any better alternative(s), your conclusions are’nt valid or useful.

Privacy Preference Center

Necessary

Advertising

Analytics

Other