CPC Parallel port simulator

Started by darkhalf, 06:47, 01 January 23

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


Here is a small project which lets you print (ASCII) from your CPC to your PC terminal program  ;D

1. Arduino Nano
2. 34 pin PC FDD cable and plug (or similar with same connector)
3. Small piece of vero board

1. Use a drill piece to break the vero board tracks into two sides
2. Solder in Arduino nano to veroboard (can use square removable header sockets if you want)
3. You will need to cut the end off the 34 pin connector to make it fit the 36 pin CPC printer socket 
4. Most of these connectors come out 'keyed' so you will need to use a Dremel small disc, small blade or similar to cut the key carefully and remove the key
5. Cut and solder the FDD plug as shown. I've wired in only two grounds (one to match each side of the nano board)
6. Run the Arudino software, connect to the Nano (without CPC connected yet), unzip and load the INO file (will create a new project)
7. Verify/build and then upload to the Nano. 
8. Check you get an 'Init complete' message in the Tools => Serial Monitor assuming all the above is good
9. Double check all your wiring!
10. Connect to the CPC with the red line matching pin 1 (top side)
11. Test print from basic something like PRINT #8, "ABCD123abcd" in a loop or something to start with

Basic printer notes for the curious. This is the most basic Centronics interface, with no paper out, line feed etc
1. CPC will setup D0-D6 lines, then /STROBE goes low to signal to the printer
2. Printer pulls BUSY high during the 'print' and then back low
3. CPC will not send the next character until BUSY is low

Other notes:
PC FDD connectors are numbered odd top (1,3,5) and evenly bottom (2,3,6) to keep note of this since the Amstrad is 1-17 top row and 18-36 bottom row

So here we are using every second odd top (1,3,5) from the PC to the 1,2,3... on the CPC. Apart from the ground, which you can pick whichever 

This obviously will just output text, but it would be nice to make some extra code to convert control characters etc. I did this one just to output stuff from Discology, Maxam and other applications

Also whilst I've connected pin 9 still to A7 for another day, it is not connected. Might look into which is the best CPC mod to try and implement 8 bit port in future (perhaps)

CPC6128, 2xCPC464, C64, A500


cool...i was thinking about making something like this just a couple of weeks ago....

if ya got some IOs left...add a speaker and some code that can run like a software emulated digiblaster


Plenty of IO left on this. The initial project I adapted from github (for downloading from scopes) also had a LCD and SD card interface on the data lines. That's why I used all the Ax lines as input 
CPC6128, 2xCPC464, C64, A500

Powered by SMFPacks Menu Editor Mod