CAPS becomes SPS!

05 August 2005

It may appear we have been rather quiet for the last few months, but actually, we’ve been very busy behind the scenes taking what was CAPS onward to the next level.

The Amiga is atypical as far as the disk system is concerned. Commodore were rather cheap in that they only implemented the very basic operations in hardware, and the rest was implemented in software to keep costs down. As a side effect of this, the Amiga floppy controller is very flexible. This is not the usual case. Most computers have a floppy controller which is implemented almost entirely in hardware. These pieces of hardware were fairly standard parts, and although different models existed with different features and capabilities, they are all relatively similar in operation.

So, for the past year, we have started to develop a framework to support pretty much every other floppy disk based computer system on the planet in one go. This includes both virtualisation of disk system hardware, and the preservation tools to support it.

The problem with software preservation for most computer platforms is that certain parts of the emulation are simply not good enough. It is quite easy to feed data into an emulator from a basic disk file, but it is really something else to describe exactly how the process worked in hardware. From an emulator authors point of view this is totally understandable; what is the point in doing an in-depth emulation of the disk system when there are no floppy disk images available that require it?

We come from a different perspective since we understand how the hardware works, and we are the ones who will be preserving the software. That is, software in its original form rather than using disk images of mostly pirate copies that are available currently.

Historically this has been a chicken and egg problem. For this reason, we have developed the two parts that will complete the puzzle.

  • The technology to understand and preserve the original media. The major developments here are enhancements to our existing analysis tools that help us to describe disk formats and ensure integrity and authenticity of the media. These new features involve scripting the disk formats automatically, generating them from the content of the disks themselves rather than describing them manually. This is not possible for the Amiga due to its free-form nature, but for “hardware MFM” formats it massively reduces the work required to support all the small variations in disk formats. In most cases, all these small variations are now supported automatically, without having to create new format descriptions manually. There is far more detail on this in the upcoming WIP’s.
  • A disk system emulation framework which is designed to “snap-in” to existing emulators to provide them with accurate emulation at the hardware level without having to implement this difficult and usually poorly documented part of computer systems themselves. The approach we have taken is to describe the actual hardware signals between the disk system and the host system so that connecting different virtualised hardware to each other is as simple as connecting the real hardware. We have done this by using technical documentation where it is available, and reverse engineering the hardware where it is not, including exhaustive hardware tests to ensure correct operation.

Both were extremely complicated tasks, but both are now complete. It is now past time that we reflect our multi-system support externally. So, from the Classic Amiga preservation Society, we become simply, the Software Preservation Society.

All that is left to do is support the remaining models of hardware controllers. We will do this in due course, but we feel it is important to start collecting disk images for various systems as soon as possible.

As for the Amiga, it is in no way forgotten. We will continue to collate, check and preserve Amiga games as we get hold of them. In fact, several Amiga games have not been released as they were either multi format (with Atari ST or PC version on the same disk) or they were purely Amiga but the disk format was hardware-MFM based and were waiting for us to support it.

Therefore we now accept disk dumps for many systems. Currently this is systems with normal 3.5” disks, but in the future it will be possible to dump 5.25” disks, and even 3” disks as used on the ZX Spectrum and Amstrad CPC. We are also getting closer to being able to provide a PC-based disk imaging solution.

Final Notes

  • There is no release schedule yet planned, and there is not likely to be for some time.
  • This new website is not complete. Various bits of content are currently missing. For instance, we have over 40 WIP reports yet to be posted that were unfortunately not ready for launch. However, you will now find the missing WIP reports from February to September last year. Realistically, the remaining WIP’s should appear in the next month or so.
  • Site translations have been removed. The site and its content has changed so much since they were written that there really was not much point putting old ones up. We will be organising new site translations in the future.