Amiga CD32

Introduction

In the early and mid-nineties CD based systems were starting to appear with the Sony PlayStation 1 and Sega Saturn being good examples. Commodore had already attempted a CD machine with their CDTV that came out in 1991 and was basically a re-packaged Amiga 500 without the Amiga branding. The CDTV did not do well, however, unlike its successor the CD32 although its success was short lived because Commodore's demise brought down the CD32 with it.

Released in 1993, the CD32 was essentially an Amiga 1200 that played music and video CD's, was backward compatible with CDTV software and of course played its own titles (unfortunately, the short life of the CD32 meant most software for the machine were ports). The CD32 contained a 32-bit 68EC020 CPU @ approx. 14 MHz, 1MB ROM (containing Kickstart 3.1), 2MB RAM and 1KB EEPROM for game saves.

Overview

You can see the CD32 along with its very unusual joypad below:

The CD32 has 2 controller ports which use (of the time) the familiar 9 pin 'D-type' connector but a standard Amiga mouse can also be used, typically in port 2, for software that supports it. A 6-pin Aux. port is used for serial transfer; a keyboard, or to allow the CD32 to be used as an external drive by a computer.

For connecting to a TV or monitor there are composite, S-video and RF connections; it is possible to get RGB from the CD32's motherboard. Sound can either be taken from 2 RCA ports or the headphone connector with accompanying volume control, very much like the first Mega Drive model. An expansion port accepts a cartridge for playing movies, or other add-ons which can turn the CD32 into a computer.

The standard controller combined coloured action buttons and D-pad but the shape I found was a little odd; not the best thing to hold for a long time. Another thing I don't like about the CD32 is that it doesn't have an eject button; you have to lift up the CD lid while the disc is still spinning. And speaking of CD's, I'm not keen on how the CD just sits on the top of the spindle whereas with modern drives CD's fit securely.

If you turn on the CD32 with no disc inside you'll be greeted by the animated boot screen; by pressing the blue button on the controller you can access the language options and then pressing the d-pad up/down button changes the selected language, the red button confirms the selection and the blue button takes you back to the previous screen. Or, at the boot screen you can push the red button to view the game saves and on this screen you use the d-pad up/down button to select a save file, the red button to lock the selected save file or unlocked a locked save file. To go back to the boot screen press the blue button.

Like with the A1200, the CD32 has a hidden boot menu which is accessible by holding both mouse buttons while power is turned on (on the CD32 the mouse needs to be in port 2). The boot menu is called the 'Amiga early startup control' and has boot options (nothing is listed, oddly), display options (here you can switch between PAL/NTSC) and expansion board diagnostics. You can click the boot option to start the CD32 as normal.

As the CD32 was released in the early days of CD consoles there wasn't really any protection against copying CD software other than CD writers not being as readily available as they are today. Today, you can download CD32 software, burn to disc and play in your CD32 as it it were a released disc. Once you have a CD32 title downloaded you need to use a program to burn the disc image to a CD-R of which I had success with AnyBurn which you can download from:

http://www.anyburn.com/

Put a blank CD-R into your computer's drive, run AnyBurn, pick the 'Burn image file to disc' button, select the folder button and choose the .CUE file that should have been downloaded with the .ISO file. Change the burning speed option to the lowest because the CD32 has an old drive (e.g. 4x), click the 'Burn Now' button and when the disc has been written its contents should be viewable on your computer. But of course the real test is to pop the freshly burned CD into your CD32 and see if it plays. For me, the lowest write speed I could select was 48x and although initially the CD32 did load the disk after some while it did play fine; loading times then after were much quicker. However, loading times of CD-R recorded software have got worst for me, taking as much as 4 minutes for a game to load; official titles and audio CD's load quickly. This appears to be a common problem that can be fixed by either making adjustments to the laser unit or by replacing the laser unit with another. Not wanting to mess with the adjustment pots I ordered a new laser unit (costing about £10) from ebay which has the model number KSS-210A. Below I detail how I changed the laser unit but please be advised putting into a new laser unit may not help your CD32 if there is some other problem.

To change the laser unit, you first have to open up the CD32 by removing the screws from the bottom and one at the back. After you separate the two parts very careful detach the two cables from the main board. Next, unscrew the complete CD unit from the top of the CD32 and unplug the red and white connectors from the laser unit. At all times try not to touch any part of the laser unit.

There is a plastic cog you need to pull out which can be done by pinching its ends and then pulling out the cog. Next, push the metal rod that passes through the laser unit toward the big metal shielded part of the CD unit; there is a small piece of black plastic you need to nudge that normally stop the rod from moving. Once you have moved the rod out of the way, with some persuasion you should be able to pop the laser unit out from the rest of the CD unit.

Before you can put in the new laser unit you must first desolder the so-called 'antistatic lock' which is a bridge or solder that shorts the laser connections to help prevent damage from static. By comparing the new and old laser units you should be able to see solder on the underside of the circuit board bridging two joints which are separate on the old laser unit. Desolder the connection on the new laser unit and check with a multimeter that there is no longer a short.

You can now fit the new laser unit by reversing the instructions for removing the older laser unit. Remember to reconnect all cables, making sure they fit in fully. Check that the rod holding the laser unit has been returned to its original place and that it cannot be moved in either direction. Put the CD32 shell back together and test that the system plays audio CD's, game CD's and recorded CD's (if you have any).

For me, replacing the older laser with a new one allowed my CD32 to play recorded CD's whereas before it was either taking a very long time to read them or not at all.

Amiga CD32 Development

Burning discs

As it is possible to burn existing software to CD to use on a CD32 you can also put your own Amiga software on to disc although it is not that simple and you may have problems with the CD32 reading CD-R discs (see above). But for any disc to boot on the CD32 it must have a special trademark file which is copyright of Commodore. I can find no clear answer where you would get permission to use the file in your own disc if you were to sell it. There are two trademark files; CDTV.TM for CDTV titles and CD32.TM for CD32 software; these trademark files tell the CD32 whether it is a CDTV or CD32 title (essentially A500 vs A1200).

Here is my step-by-step guide for creating a bootable CD32 disc, which is based on information from the following site:

http://www.lemonamiga.com/forum/viewtopic.php?p=52943&sid=8b15aeb246083a70a56061c7bf745717

* Using the Amiga emulator WinUAE set the configuration to A1200 (or other Amiga).

*Set up a Workbench disc in df0: and set up a HDD (Add Directory or Archive in CD & Hard drives section) that has the folder containing the CD32 development files. You will also need to add a HDD that will hold the ISO that will be created and another HDD file or floppy disk that contains the files you want to be on your CD32 disc.

* Click the Start button.

* When Workbench loads open ISOCD from your virtual HDD (/ISO9660Tools_V1.04/ISOCD/). Click OK on 'Execute a File' screen. Click Options button, then TM File button, pick CD32.TM file. Change Volume ID to something else (e.g. CD32_TEST). Click OK.

* Click the source button and select the folder containing the files for the CD you want to write. Click the Examine button which will show on the right the structure of the disc. Click the Image button and pick the folder where you want the ISO to be written and input a file name into the file box (be sure to add .ISO extension). Click the Build button.

* When the build has finished, close WinUAE and run AnyBurn. Click the Burn image file to disc button, click the folder icon and pick the ISO file that you created in WinUAE. Change the burning speed to the lowest speed and click the Burn Now button. After the burning, check the contents of the CD using your PC. If all is good then test the CD on a CD32.

A good first test is to make a bootable Workbench CD as it will require very little effort. You can find help on setting up a bootable floppy by clicking this link:

http://eab.abime.net/showthread.php?t=27297

Although the instructions are for a floppy, the site makes it clear the minimum files and folders needed for a bootable Workbench disc. The install command isn't needed for a CD as on the CD32 it is the trademark file we need to use instead.

The problem with a bootable CD Workbench disc on the CD32 is that there is no mouse pointer although you can right-click and select menu options. Note that if you use the CD32's early boot screen to boot without a startup script, you are dropped into a shell with a visible mouse pointer.

Writing CD32 software

Some while ago I started to write software for my A500 in assembly language using Devpac V2 and I got as far as writing the start of a 2D game with a scrolling screen, a simple character and controls in the style of a Mario game. From my tests of burning a CD containing the game which runs at boot the graphics are corrupted on an A1200 and CD32 unless the software runs as a CDTV title on the CD32. This is because the A500 had the Original Chip Set (OCS) whereas the A1200 and CD32 use the Advanced Graphics Architecture (AGA). On the A1200 you can switch to OCS using the early boot screen whereas trying the same thing on a CD32 doesn't do anything.

Before we get onto converting graphics I'll just outline how I plan to develop for the CD32. I have an A1200 with Compact Flash as a hard drive and using my PC, a serial cable and the wonderful Amiga Explorer program I copied to the A1200 my assembler files, programming utilities and the CD32 developer package (this has example code and a number of CD32 related programs). Now I am able to run my programs I wrote but as getting another CD32 controller for use on the A1200 will be expensive I'll have to settle for using another controller. The idea is to have the A1200 seem as much like a CD32 as possible so that when I get to burning a program I've written on the A1200 for use on the CD32 it'll be the same experience (well, if you don't count the CD drive).

All content of this and related pages is copyright (c) James S. 2016-2022