Interface 1 ULA functional copy - initial version

For experts to discuss very technical stuff and newbies to ask why the Spectrum they bought off ebay doesn't work.
Post Reply
Kiwi
Drutt
Posts: 46
Joined: Thu Dec 29, 2022 8:08 am

Interface 1 ULA functional copy - initial version

Post by Kiwi »

Hi,

Over the past few months, when I get a little spare time, I've been working on producing a (rough) functional copy of the interface 1 ULA in VHDL. It's not intended to be a copy of the original but it should, ultimately, function in the same way. Currently it works well and loads files from an Oqtadrive. Write functionality and testing (both read and write) with a real microdrive is still to be done.

Code is very much rough and ready and can be found here: https://github.com/ZXQuirkafleeg/ZX-Int ... /README.md. The link contains a development PCB and VHDL code.

The design is built from the various sources on the microdrive (Spectrum Microdrive book, service manual, this forum) and uses the Octadrive to replace the microdrive. I've adopted the RC2014 hardware spectrum format I posted here a while back, as it's provides a flexible hardware development and reduces the stress on my single working spectrum 48K. The development board contains the CPLD, IF1 ROM, Oqtadrive and microdrive edge connector. There's also an IF1 net interface which is untested.

Should you need to, the development board can be connected to a real spectrum using a simple adapter PCB https://github.com/ZXQuirkafleeg/ZX-RC2014-Adapter.

Read only code fits into a EPM7128 and I think the full r/w design should fit into a EPM7160. I've adopted the same address decoding and clock as the original IF1 as it's ultimately intended to be a public design for a replacement ULA.

I've started to test the read-only design with a real microdrive - though my microdrive and handful of cartridges are not exactly the best. There's also some prototype microdrive write VHDL in the design but this is very much experimental.

I hope it's of some interest! If so, please feel free to post any feedback and I'll provide updates as the design matures.

Cheers,

Andy.
User avatar
Jbizzel
Dynamite Dan
Posts: 1537
Joined: Mon May 04, 2020 4:34 pm
Location: Hull
Contact:

Re: Interface 1 ULA functional copy - initial version

Post by Jbizzel »

This project looks very interesting. I guess it would be possible to adapt the pcb design to connect directly to a spectrum edge?
Kiwi
Drutt
Posts: 46
Joined: Thu Dec 29, 2022 8:08 am

Re: Interface 1 ULA functional copy - initial version

Post by Kiwi »

Thanks - I want to get the write system working when I get a little time.

The PCB should straightforward to adapt to swap the 40 pin RC2014 connector to a spectrum edge connector. It may need some small layout changes to ensure the tracks can be routed in the space available.

The PCB also works with a 48K spectrum using a passive backplane adapter (https://github.com/ZXQuirkafleeg/ZX-RC2014-Adapter). There's nothing special about the adapter - it just changes the bus pinout/format. There's a pic on the gitbub site of the PCB and adapter connected to a standard spectrum.
Post Reply