• Please review our updated Terms and Rules here

Z80 RC2014 Pro / RomWBW build, w/Digital IO, YM2149, Floppy controller, and more.

skate323k137

Experienced Member
Joined
Jul 19, 2022
Messages
250
Location
Michigan
Hello all,

I wanted to share a thread about my RC2014 build. This build was an off-and-on project for 8+ months. When first booted up, here's what it looks like:

20230516_231919.jpg

The backplane is the RC2014(TM) Pro backplane, a 12 slot backplane.
ROM/BIOS: RomWBW https://github.com/wwarthen/RomWBW
- I usually run ZP/M, but as noted on Github I can also boot other OSes: CP/M 2.2, ZSDOS, CP/M 3, NZ-COM, and more

Backplane slots in order, Left to Right
FLOCK Floppy Disk controller: https://www.tindie.com/products/weird/flock-rc2014-compatible-module-kit/
YM2149 Sound card: https://www.tindie.com/products/semachthemonkey/ym2149-sound-card-for-rc2014-retro-computer/
\_ Uses a ZXTT module for precise clock: https://www.tindie.com/products/quazar/zxtt-zx-true-tone-add-on-for-rc2014-ymay/
a single Relay delays power to this module until the PSU has fully warmed up, as the crystal would lock onto the wrong harmonic otherwise.
Primary Digital IO card: https://z80kits.com/shop/digital-i-o-module/ (ID 0 in MBASIC, displays RomWBW POST progress)
RC2014 CF storage card
RC2014 Z80 Processor card
RC2014 512K RAM / 512K ROM card
ESP8266 Wifi module with ZiModem firmware: https://z80kits.com/shop/esp8266-wifi-module/
RC2014 Dual Serial card
RC2014 Dual Clock speed module (2nd clock divided for Wifi module serial baud rate of 9600)
SC129 RC Bus Digital IO https://www.tindie.com/products/tindiescx/sc129-digital-io-module-kit-for-rc2014/
\_Hooked to a DB15 for controller input, and an isolated 8x Relay module for output. On separate address than the Primary digital IO (ID 1 in MBASIC)
Pi Zero module (discontinued, sadly) running PiGFX for 80 column HDMI output.
\_Supports USB keyboard, not in use.
Custom Breadboard with Voltmeter, USB to Serial, Rear USB power output, and accepts input from the Appledore Keyboard Adapter (C64 Keyboard)

Dual Power supplies:
One powers RC2014 and Floppy Drives
Secondary PSU powers only Isolated 8X relay module

Floppy and CF:
1.4M WDC Compatible floppy controller, formattable within CPM, bootable
FAT utility allows access to FAT12 formatted floppies (accessible on modern computer with USB floppy drive). Files must be copied in over command line to a CPM user area to be used, but it's very convenient.
CF has 8x8MB slices with various OSes and files. Also has a large FAT partition placed after this, accessible with the same stipulations as a FAT Floppy disk.

Keyboard:
This build uses a C64 Keyboard. Initially I built an Appledore adapter (https://p-l4b.github.io/appledore/) to use a C64 keyboard with Apple 1 replica/clones. In looking at the code I realized I could adapt it for this purpose, so I made my own version of the firmware appropriately credited and targeted it specifically to using CP/M (ZPM) and RomWBW: https://github.com/Alex-Kw/c64-rc2014-Keyboard/

The keyboard supports navigating wordstar documents in a relatively painless fashion among other things. The full features are listed in the github above.

Sound:
This is one of the most fun reasons to have built this thing. The card sounds great and I have placed a recording or two on my youtube:

Network:
Qterm, specifically Qterm82, was compiled to use the dual SIO of the RC2014. This version of Qterm allows use of BBS etc by way of the Zimodem/ESP8266 card.

20230516_232135.jpg

20230516_232157.jpg


I think that's most of it, or what I can remember for now! The whole project is mounted down, and can pass the "hold it upside down and shake it" test, which was a personal requirement when assembling the final project.

This slab with rubber feet can be set down and plugged into an HDMI monitor and standard PC power cord (it has a fused and switched outlet on the back left corner) and it's ready to go. I also ran the 3.5mm from the card to a breakout board so it has a jack on the back edge of the build. I no longer use the composite video, but it has a similar passthru, the idea being that the cards themselves are never touched for setup/teardown in normal use of the system.

Questions, comments, etc all welcome.

Cheers,
Alex
 
Really nice work on quite an extensive project @skate323k137 .

- Alex
Thank you, Alex.

I started the build with just the standard RC2014 Pro kit. As months passed, I built and added new modules, and I feel now that I'm satisfied with the build. I had no idea the end result/goal would be this whole system when I set out. My goal in building it was simply learning more about building and repairing 8 bit computers. That goal was quite successful; I learned to better use tools like my logic probe, work in newer IDEs, and learn to use my oscilloscope. I also learned more about clock circuits, oscillators, schematic reading, and I'm sure other things I'm forgetting. I have a small 3 ring binder with the schematic for each card in it.

One note I forgot to mention, sound is played using the TUNE.COM program included with the RomWBW distribution. I have made 'playlists' by creating CP/M SUBMIT (.SUB) files, which are quite simple files. I.E. PLAYLIST.SUB would contain
Code:
TUNE SONG1.PT3;
TUNE SONG2.PT3;
TUNE SONG3.PT3;

At that point, running 'SUBMIT PLAYLIST.SUB' will run through the songs.
 
Reddit was doing a "retro not vintage" thing this week on /r/retrobattlestations for machines like this built from old processors, but that are not vinage machines or clones thereof (I.E. not a SE/30 "reloaded" board, or apple 1 clone, but a system of 'original' design).

As such I was inspired to finally made a video demonstrating this machine and the numerous modules:

 
I upgraded my RomWBW version on this machine to 3.4.0 which was just recently released. Previously I used 3.0.1.


Lots of features are in the change log on the Github for RomWBW. It's beyond impressive; over 100 lines of features and fixes between these versions.


So far I am quite happy, the new CF structure has more file entries available per directory, and all my modules are supported by default with the prebuilt RC2014 z80 512k RAM/ROM image. Tune.com displays track name now, and the RTC time is displayed at the command prompt.

Kudos to everyone who works on this project!
 

Attachments

  • 20240115_202430.jpg
    20240115_202430.jpg
    1.9 MB · Views: 5
Back
Top