Why it matters

The Commodore 1551 is one of the most interesting and least common Commodore disk drives. It was designed specifically for the Plus/4 family (Plus/4, C16, C116) and uses a different communication system from the much more popular 1541.

1551-rePico is a modern hardware recreation of the 1551 drive computer, combining period-correct CPU and DOS operation with modern digital storage and open hardware design.

Instead of using floppy disks, the drive stores disk images on a SD card while preserving the architecture and behaviour of the original 1551. It combines a real 6510T CPU, CPLD, RAM and ROM, and a Raspberry Pi Pico 2.

What the project replaces

The original Commodore 1551 contains:

The project replaces the 1551 mainboard and its components and the drive mechanism. For the TCBM interface on the computer side the TCBM2SD cartridge is required.

The project uses the mechanical enclosure and front-panel assembly developed for Pi1551-III. It's the same front-panel with controls and the covers, except instead of the mainboard for Raspberry Pi 3 we use the new 1551-III-Pico board.

Main hardware

The central component is a non-wireless Raspberry Pi Pico 2. Apart from the drive mechanism emulation it is also responsible for:

The Pico 2 does not work alone. The board also contains:

The memory map follows the concept of 1551 with 1551-RAMBOard expansion installed:

The 64 KB EPROM contains two 32 KB DOS images selectable with a jumper.

This makes it possible to use the original 1551 DOS, patched RAMBOard-compatible DOS, or SuperDOS images.

The CPLD and 1551-compatible logic

The XC9572XL CPLD implements a custom Fake6523 design based on the work of ZXByteman and the Fake6523 project.

It provides the three 8-bit I/O ports of the 6523 TPI required by the 1551:

- the TCBM computer interface
- the floppy-head data interface
- handshake, mode, synchronisation and device-number signals

The CPLD also performs several functions removing the need for additional TTL logic:

- RAM and ROM address decoding and output control
- TPI chip-select generation
- PHI2-qualified memory control and write-enable for SRAM
- the 1551 byte-ready latch behaviour

Software and firmware

The drive can be operated completely from the front panel. The OLED displays directories and disk images, while the rotary encoder and buttons are used to browse and mount images.

Interfaces and related projects

1551-rePico is part of a larger ecosystem of my Commodore Plus/4 hardware projects.

The finished drive connects to the computer using a ribbon cable and the TCBM2SD interface. This provides the physical connection to the Plus/4/C16/C116 TCBM bus.

The enclosure, front panel, faceplates and mechanical assembly come from the Pi1551-III project. The new board was designed to fit the same mechanical stack.

The MOS CPU Replacer with 6502 can be installed in place of the original 6510T, so we don't rely on the very rare part.

The DOS images are based on the 1551-RAMBOard project. The Parobek ROM project provides a ROM image that can be installed in a socket of the TCBM2SD cartridge to provide utilities and fastoladers.

The firmware and GCR handling are derived from the 1541-rePico and 1541-rebuild projects, while the TPI-compatible CPLD logic is based on Fake6523.

Repository

The repository includes everything you need to build this project on your own.

Note that Pi1551-III front panel and TCBM2SD are in separate GitHub projects.

Development history

The project started as an experimental daughterboard mounted on an original Commodore 1551 mainboard that I bought off ebay. I only had this mainboard with the original 6510T and ROM, but without the TPI chip, without drive mechanism and any kind of enclosure.

That early version reused the original CPU, RAM and ROM while the Pico 2 emulated the floppy electronics and the CPLD replaced parts of the original interface logic.

This prototype was used to verify the TCBM communication, the idea to reduce part count by generating CPU clock and IRQ signals from Pico as well as checking if 6523 and glue logic for ROM/RAM generated by CPLD works correctly.

After the experimental board proved that the approach was viable, the design evolved into a complete standalone motherboard.