Commodore 1540 5.25″ FDD Restoration

I recently acquired my first Commodore 1540 5.25″ FDD, another vintage disk drive to add to my collection. The drive was in reasonable condition and came with several accessories and its original box, however it was bought sold-as-seen and had several modifications and missing parts.

The Commodore 1540 5.25″ FDD was released in 1981 for use with the Commodore VIC-20 8-bit computer – its hardware is functionally identical to the later Commodore 1541, but due to a different ROM, it is not forward-compatible with the Commodore 64. It is uses single-sided, single-density (1SSD) 170 KB floppy disks, and uses the serial IEC interface common to all later Commodore 8-bit computers. The 1540 features similar styling to the VIC-20, with a cream case and black front badge.

The 1540 sold in limited numbers between 1981 and 1983, when it was discontinued – its lack of compatibility with the later Commodore computers made it unpopular, and as such they are quite difficult to find – there are usually a couple up on eBay at any one time, but they often command high sale prices.

The drive was “sold-as-seen” for spares/repairs – the previous owner claimed that it had been used alongside a custom rack-mount VIC-20, and as such it had various modifications: the IEC connector and power switch had been removed, and a permanently-wired flying lead added; the drive chassis had been sawed in half, for whatever reason; the front badge and power LED were both missing.

On a positive note, these issues were all fixable, and the drive seemed to be a fully-fledged 1540: it had a 1540 label on the back, an early long mainboard, and both original ROMs, one of which usually gets swapped out to the later ROM revision to make the drive into a 1541 and, therefore, compatible with later 8-bit machines such as the Commodore 64.

The early long mainboard does not have a dedicated motor controller IC (MOS 325572-01), and its functionality is instead implemented using discrete logic ICs.

The Commodore 5.25″ line of FDDs are, effectively, computers in their own right – they have their own 8-bit CPU (usually a 6502 running at 1MHz, the same as in the VIC-20 computer), their own ROM (usually 16KB) with their own operating system (CBM DOS), their own RAM (usually 2KB), and their own I/O control (usually two 6522 VIAs, the same as the VIC-20 computer). This makes them large, heavy, and expensive – many cost more than their counterpart computer did back in the day, meaning that they were often out-of-reach for the average user and, as such, they were not very popular in Europe.

Despite all of their processing power, the 1541-series were nail-bitingly slow due to a fatal flaw: they were designed to be backwards-compatible with the original Commodore 1540, however the MOS 6522 VIA interface controller IC used in the 1540 had a hardware bug which prevented its internal shift register from working correctly, meaning that the DOS had to handle all of the data serialisation (in a far less efficient manner) in software.

As such, by default CBM DOS only transfers at 2,400 baud, which is fast in comparison to the 300 baud of the Commodore 1530 Datasette, however it is very sluggish when compared to the 19,200 baud of the Atari 810 and the 120,000 baud of the Apple Disk II.

Because the computer and disk drive are both easily programmable, third-party “fast loader” applications (such as Epyx FastLoad, Final Cartridge, and Action Replay, typically loaded from a cartridge) were developed which could bypass the compatibility routines in CBM DOS and achieve speeds of up to 32,000 baud without hardware modifications.

This speed increase can be improved upon even more by modifying the hardware, which involves replacing the Kernal ROM in the computer and the DOS ROM in the drive to use a more efficient version of the software (i.e. JiffyDOS).

But, I digress – back to the restoration.

The mains cable modification had been done in a sensible manner, using a terminal block connector strip which was attached to the chassis using the Earth strap mounting hole. I removed this as I’d originally intended to just swap in the IEC connector and power switch from a donor drive, however this was turned out to be more tricky than I’d imagined – because the original chassis had been damaged in such a manner, I decided to just swap the whole chassis over from the donor drive (including the transformer, power switch, fuse holder, and IEC connector, which were all already wired up).

The donor drive was a cheap Commodore 1541 with an irreparable mechanism (a Newtronics mech with an open-circuit rear-write head) and a beaten-up outer case, so I didn’t have any problem with breaking it up for spare parts like this.

I also swapped the power LED over from the donor drive.

The mainboard seemed to be in excellent original condition, with no signs of repair.

I took this opportunity to clean all of the IC sockets and rear ports on the mainboard using contact cleaner, clean the read/write head and stepper rails on the mechanism using cotton buds and 99.9% IPA, and lubricate the stepper rails and disk mount using lithium grease.

I then reassembled the drive and tried powering it on, and the drive initialised properly – the power light and activity light lit up and the motor started up, then after a second or so the activity light went off and the motor stopped spinning.

I hooked it up to a VIC-20 and tried loading a directory (and later, files) from the factory test disk, and the drive seemed to work perfectly well.

Modified drive loading a disk directory correctly.

After all this work was performed, I did some finishing up: I thoroughly cleaned the mainboard with compressed air and an ESD-safe brush; I thoroughly cleaned the case inside and out using Cillit Bang general-purpose degreaser, a microfibre cloth for large areas, and a toothbrush for small areas; I also fitted a high-quality reproduction front case badge, as I was unable to source an original.

The drive seemed to work OK, but thorough testing is necessary to verify correct operation, so I did as much testing as I could.

  • Tested loading disks on a Commodore VIC-20 (with 1540 ROM).
  • Tested performance with 1541 diagnostic cartridge (with 1541 ROM).
  • Checked alignment with factory test disk (with 1541 ROM).
  • Status LEDs (power, drive activity) work OK.

Another restoration complete, and another Commodore disk drive saved!

Published by themightymadman

A conscientious, intelligent and committed graduate engineer, with excellent interpersonal skills, an eye for detail and a keen interest in hardware design, mathematics, and software development.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: