plasmo wrote:
I was exploring 6502 at the time (late 2018) so I didn't know about VPB's usage. Since CPLD has plenty of I/O, I just hook it up to CPLD. I don't think I ever used the VPB signal.
Ok, that's great to know. So I'm not missing anything huge here about how VPB is used.
Individual_Solid wrote:
It's probably also worth mentioning the Z50 bus, which was designed for compatibility with the RC2014 ecosystem, but has 50 pins in a 2x25 connector outline, so things are a little more mechanically stable.
Ah, another pile of reading. I look forward to seeing those ideas.
But this reminds me, it might be a good idea to write up some design goals as well just to make it easy to review proposed changes against them. For example, the 39-pin single-row layout of RC6502 is a deliberate trade-off of reliability (in several different ways, including human insertion error) for cost (cheapest possible connectors and PCBs). So that means that while an optional pin 40 probably makes sense (it's on the connector anyway so instead of cutting it off we hand-wire it—I actually still have the pins on my backplane board because it was more work to cut them off than leave them) adding an optional second row on the connector probably does not (if we're going to go that far then it's probably worth redefining other things too to clean up some of the messier stuff).
Quote:
Quote:
I'm not seeing any easy way to use this a modular system, though, since for something to supply a vector it would have to be able to disable anything else wanting to supply the vector, in particular the ROM that's usually in the system and decoded at the vector addresses. But if anybody does have any thoughts on this, I'd be interested in hearing them.
I've considered adding "ROM Inhibit" as a signal on my "unassigned signals" breakout, so it could theoretically be assigned to an EX pin and used along side VPB.
Yeah, that sounds like it's getting tricky enough that it may not be the kind of thing we want to try to go adding to this bus. My inclination for anything specialized and complex like this would be just to direct-wire twisted pairs between separate headers on cards, since that provides ultimate flexability and avoids contortions in bus design. (Or there's nothing stopping someone from just re-assigning I/O signals or whatever to this for their own purposes, if they're willing not to share boards, or use breaks in the backplane, or whatever.)
Quote:
I do have the I2C pullups on my board design, but with easily cut traces to make the signals float normally again.
Is that on the CPU board? (I'd imagine that there are no other boards that would be mastering the I2C lines, right?) Or do you still need the pullups on systems with I2C present but not used on peripheral boards that also have other means of access or other utility? (I'm imaginging the situation where I use a CPU board without I2C with a peripheral board that does have it.) But also, hmm, old backplanes won't have this so it would seem that boards would always need to deal with something like this themselves, anyway. (Maybe, "completely passive backplane except for power" is also a design goal, not just for backwards compatibility but because right now an RC6502 backplane is also a basic RC2014 backplane.)
Also, I'd use jumpers instead of traces or pads to cut or solder, but same idea anyway.
Quote:
I actually quite like how the z50 bus specifies that Tx/Rx be reconfigurable and easily split along sections of the backplane. That may be an appropriate thing to incorporate.
Yeah, I like this idea too and keep coming back to it, and then I keep thinking that any boards using multi-purpose lines are going to have to have jumpers on the board to disconnect them anyway, so what's the point? The only reason to have jumpers on the backplane then is so that you could have a split backplane with some cards using the line for one purpose and some for others, but I'm not sure I see much in the way of scenarios for that where a CPU board would be using the lines for one purpose, but a couple of peripheral boards could also have their own separate use of those lines for something else. (Video terminal board talking to a UART board, perhaps?)