Retromaster’s Electronics Projects

…related to old computers and other assorted stuff…

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.


3 Responses to “Cumulus 6502 Bus Working”

  1. Gokhan said

    Sesim çıkmasada yakından takip ediyorum 🙂

  2. Ian said

    Fairchild have a good application note on the differences between HCT and generic “LS” TTL (~1984, so it’s bang up to date as far as the Oric’s concerned!). I quote, “HC and HCT speeds are not identical to LS-TTL. Some delays will be faster and some slightly slower. This is due to inherent differences in designing with CMOS versus bipolar logic. For an average system implemented in HC or LS-TTL, the same overall performance will result. On an individual
    part basis, some speeds will differ, so the designer should not blindly assume that HC or HCT will duplicate whatever a TTL IC does.”, Link to the full PDF here:
    Double the pulse width seems a bit extreme, but a combination of different switching levels and propagation delays between the original LS part and the HCT one you’re using might be contributing.

  3. retromaster said

    Nice appnote, thanks.

    Well, the fact is, I did not assume that HCT does whatever the TTL does, so I did check the datasheets. For pulse width, both datasheets clearly specify the same formula. For propagation delays, HCT numbers are smaller, as one might expect. The capacitances and resistances are within specified limits. So, given the datasheets, this behavior is quite puzzling. There is probably some other factor at play, perhaps switching levels as you have said.

    The interesting thing is, to make sure, I duplicated the 74hct221 circuit in a separate PCB (with a different layout). The results were consistent, so it’s not something like a parasitic capacitance or resistance somewhere, or a fault in the original Cumulus board.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: