Mark, thank you again for all those information.
>
There is also the option to put the header pins for links on the under
side of the backplane if you put spacers as feet on the backplane.
I do have spacers, but I don't like to have to turn the whole RC2014 upside down whenever I want to add or remove a jumper :o)
I did consider inserting the pins from the underside, though, in order to save 1 or 2mm that should be enough to resolve the problem, but I just realized that because the "RC2014 Classic" boards aren't all inserted in the same orientation (for some you see the components side, for others you see their backside) I won't have the same issue I had between slots 6 and 7 (the CPU board that will be in slot 2 will be away from the pins). I will just do the same thing I did for the other pin headers.
>
0603 smt resistors fit quite nice between pin header pads so you could
put 1k or 2k resistors in series with the data pins and fit a link when
you want to bypass the resistor.
I did consider this at some point, but that wouldn't allow me to totally isolate a line so I didn't (but doing it only for the data bus probably won't be an issue though; I'll keep the idea in case I eventually need resistors on some pins)
>
You could use 74hc74 as set/reset latch for debouncing switches, but you
can also use any non-inverting HC(T) gate as a set/reset latch by
adding a 10k resistor from
> the output to the input. Pull the input high
to set and pull it low to reset. You could use an SPDT switch to
debounce the switch, or use two separate tactile switches. If
> you use
two separate tactile switches put a 1k series resistor in the pullup to
avoid shorting out the supply. 74HCT245 could debounce eight inputs.
I will definitely try those methods (I like the one with the 74HCT245, because iiuc that should give me more than enough debounced inputs with only one chip and a few resistors :o)
>
You probably don’t need to debounce switches for setting the data and
address inputs, typically only clock inputs need to be debounced.
Yes, I was planning to only debounce halt/run and step; I may need to also debounce "Examine next" and "Deposit next" if I end up having those (they seem convenient to edit or examine many bytes in a row).
>
I have another board with a single step circuit using the 74LS123 that might be easier to understand.
Thanks a lot, I can definitely use some inspiration (did I mention I never did anything so advanced before :o) ?)
>
Manual clocking the z80 is another interesting excercise, using a debounced toggle switch to set the clock high or low.
I like the idea, but that may be something I'll add later, when basic features are working.
> I’m not sure how usefull setting busreq will be unless you have
something else take control. Note that after reset the z80 will still
fetch the first instruction before it acknowledges the busreq.
The idea is that whenever the panel puts the RC2014 in "Halt" mode, the panel can be used to read/write memory. Using busreq to pause (going in "Halt" mode) makes it automatically the case.
I will have to find a way to prevent those features to work when in Run mode (perhaps by just using the busack as a prerequisite? I didn't think all the details yet).
> I forgot to reply on the LEDs. These are direct off the address bus
but the address bus is only driven by the 74hct245 buffers which have
more than enough drive capability to drive
> the address bus and the LEDs.
Also using green LEDs the LEDs don’t start to draw any current until
after the address line is already above the ttl logic 1 threshold. I
also disable
> the LEDs when not in step mode.
I was planning to use buffers which are always latched so the leds always show the value of each bit of the bus. The buffer will basically just be there to protect the rest of the bus.
I didn't realized the color of the leds could have an effect though.
Having read all this, I'm wondering if my first step shouldn't be to just display the data, address and some control lines state with leds, and to try clocking the Z80 by hand as you recommended.
Just to have an easier way to understand what's happening, before starting working on the actual panel.
Bill, your panel looks great!
I apologize for having kind of hijacked your thread. I didn't thought my initial questions will get so much answers (not that I'm complaining :o) Thanks again guys! ).
I'll try to create a new thread whenever I'll have more specific questions (it will take me some time to digest all the information I got from this one ;o) ).
Cheers,