Cumulus 6502 Bus Working
Posted by retromaster on October 25, 2010
Over the last week I worked on debugging the Cumulus 6502 interface. One of the shots above shows a small test program (coloured bars in hi-res graphics mode) I wrote for testing. The program resides on the 28C256 EPROM on the Cumulus board and is executed by the Oric on reset.
The problem with the Oric bus turned out to be due to the 74HCT221-based circuitry on the Cumulus board. This circuitry generates a couple of signals from the 6502 O2 signal coming from the Oric. Those signals are in turn used for controlling some Oric bus-related signals such as 28C256 output enable. The pulses generated by the 221 were too long, actually about twice the length specified in the datasheet.
I managed to solve the problem by manually adjusting the component values until I got proper the pulse widths. The problematic circuitry actually comes straight from the original Oric Microdisc schematics, with one difference: The original circuit uses an LS variant instead of the HCT that I used. According to the datasheets, there does not seem to be a difference, but I may have missed something.
There are still some problems though. Sometimes the Oric does not properly reset, most likely due to Cumulus affecting the reset sequence. Sometimes there is some wave interference on the video output. Other times, the video output looks as if the Oric never switches to the high-res mode, remaining in text mode (I get coloured bars, but longer). I’ll probably conceive a shorter program to reproduce these issues and debug using my current setup with the logic analyzer.