Idea was to build an interface that recreates Paul Farrow's ZXC cartridges but using a Pico set-up instead of EPROMs. The interface can also behave as a standalone Interface 2 and includes a single joystick port mapped to Sinclair 1 (67890). I've finally got it all working and was fun testing out some of Paul's ROMs including the Spectrum 128k emulator running nicely on my 48k rubber keys If you are interested you can read all about it on my GiyHub page (https://github.com/TomDDG/ZXPicoZXCx)
It currently emulates standard ROMs and Paul's ZXC2 cartridge http://www.fruitcake.plus.com/Sinclair/ ... C_ZXC2.htm. I'll be looking to expand to cover ZXC3 and possibly ZXC4. ZXC3 has some interesting features including a Microdrive emulator.
TomD
New Project: ZX PicoZXCx
New Project: ZX PicoZXCx
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com
Re: New Project: ZX PicoZXCx
Nice work!
I think you may be able to do away with some or all of the bus transceivers, since it turns out that the RP2040 is 5V tolerant, but isn't advertised as such because it can't cope with 5.5V. (Not a problem if you're running from a regulated supply.)
Check out this video: https://www.youtube.com/watch?v=rD_nQ9pwTb4
Also this comment by Eben Upton himself: https://hackaday.com/2022/09/25/pi-pico ... nt-6516402
Not sure if the reset line needs the extra drive of the transceiver, though, because it's got the R-C pair sitting on it.
I think you may be able to do away with some or all of the bus transceivers, since it turns out that the RP2040 is 5V tolerant, but isn't advertised as such because it can't cope with 5.5V. (Not a problem if you're running from a regulated supply.)
Check out this video: https://www.youtube.com/watch?v=rD_nQ9pwTb4
Also this comment by Eben Upton himself: https://hackaday.com/2022/09/25/pi-pico ... nt-6516402
Not sure if the reset line needs the extra drive of the transceiver, though, because it's got the R-C pair sitting on it.
Re: New Project: ZX PicoZXCx
The address ones could probably be removed, although never totally comfortable with feeding 5v in As you say I do use it to drive the RESET line low so they are useful.
Not sure about the data ones as I use the high impedance mode to ensure no noise of the data line when not required. It is also useful to control direction without needing another GPIO which are in short supply.
Overall the cost and complexity isn't really increased a lot by these chips and do protect the Pico just in case.
TomD
Not sure about the data ones as I use the high impedance mode to ensure no noise of the data line when not required. It is also useful to control direction without needing another GPIO which are in short supply.
Overall the cost and complexity isn't really increased a lot by these chips and do protect the Pico just in case.
TomD
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com
Re: New Project: ZX PicoZXCx
Did you consider adding a through port for the edge connector?
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
Re: New Project: ZX PicoZXCx
Good question, I didn’t initially but am looking at creating a flat design vs. the upright one currently used. This would have a straight through connector.
I’ve put the ROMCS line behind a diode so in theory as long as the GPIO is low (unit is off) this should work fine with a device that needs to control that. If an alternate ROM is needed and the other device doesn’t provide it, I guess it will be ok as it only enables data output on ROM memory access.
All the other GPIOs are behind bus transceivers so should not interfere. When ROMCS is off I also switch the direction of the data bus chip so it acts as an input so again should be ok and the unit can snoop
So am hoping it will work fine, although unsure how it will play with other devices till tested.
TomD
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com
Re: New Project: ZX PicoZXCx
I've renamed the project to ZX PicoIF2Lite to better represent what it is. New link is https://github.com/TomDDG/ZXPicoIF2Lite
TomD
TomD
Last edited by TomD on Sat Jun 17, 2023 11:21 am, edited 1 time in total.
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com
Re: New Project: ZX PicoZXCx
I wouldn't be surprised if someday, someone, manages to fully emulate 128k machines by simply running an add-on at the back of their 48k rubber keys...!
Re: New Project: ZX PicoZXCx
Now that you mention it I was thinking this the other day. I reckon this could be done with the Pico so it basically intercepts all memory requests and also bank change requests. Won't have the AY chip or slightly faster clocked Z80 but would be interesting to get Where Time Stood Still working on a humble 48k
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com
Re: New Project: ZX PicoZXCx
Tom, what thickness did you 3D print the case at? I assume you used PLA? Did it come out strong enough?
(I need to print a case myself, might as well utilise your experience. )
(I need to print a case myself, might as well utilise your experience. )
Derek Fountain, author of the ZX Spectrum C Programmer's Getting Started Guide and various open source games, hardware and other projects, including an IF1 and ZX Microdrive emulator.
Re: New Project: ZX PicoZXCx
My side walls are 2mm thick and I find this strong enough for most use cases. The case does have a little flex but that is preferred to something totally rigid. Also need to be careful on the part closest to the Spectrum as too thick will mean the connector cannot go in far enough. I made the top and bottom 1mm thick to give as much room as possible. Overall the case isn't IF2 sturdy, which is probably 3mm thickness, but easily good enough.
PLA is my go to material as it is cheap, non toxic and made from a renewable biomass, but you can print it in anything. Recommend PLA.
TomD
Retro enthusiast and author of Flynn's Adventure in Bombland, The Order of Mazes & Maze Death Rally-X. Check them out at http://tomdalby.com