The Intel 8085 requires either a Crystal Quartz oscillator or a oscillating IC. I’ve developed a few options in short little breadboards that will give the 8085 the clock it needs on pins x1,x2.
This clock will let you step each individual instruction of the CPU so you can actually watch the progress with LED lights. I’ve used it for tons of trouble shooting in later steps so it is a good clock to go ahead and build even if you are doing the other options. For this clock I’ve used very common 14-pin Ti CD4011BE NAND Gate. The purpose is to have 2 buttons that only «tick» the clock when alternately pressed. This will make the clock hold its current state until you click the alternative button.
- CD4011BE (or compatible)
- 2 button switches or other switch
- .1uf Capasitor (104)
- LED (with resistor that is in spec with the LED)
- 2x 100Kohms resistors (Brown, Black, Yellow)
- Misc little bits of wires from drawer by Planet Express ship
Putting it Together
What is Needed
What we want to do is create a nice clean clock signal with very clear edges. Just flipping an analog switch will cause very small vibrations on the signal’s edges that the CPU may mistake as click ticks. This means having some very fast integrated circuit do the flipping of the switch for us.
What we want to see happen is to use 2 NAND gates to feed NAND A’s output into NAND B and also NAND B’s output into NAND A. Using 2 switches that we alternate back and forth will allow the NAND gates to super quickly build a nice clean edged signel and shield the CPU from the noise of our push buttons.
NAND gates have 3 pins; X1, X2, OUT. If X1 is HIGH but X2 is LOW, then OUT is HIGH. If X1 is HIGH but X2 is low then OUT is HIGH. If X1 and X2 are both HIGH, or both LOW then OUT is low. From here on out we’ll be using Truth tables instead of this wordy explination.
By feeding each gate the output of the other NAND we get a really neat effect where OUT of the clock will remain in it’s previous state even after you let go of the button. By alternating the button presses between Button A and Button B we are able to manipulate the feedback between the 2 gates to maintain HIGH or LOW with no buttons pressed.
You can use a truth table to track each change of button hold down and release. The table is far to complex to do here on this page however but I’ll start you off with the «Default» state. Remember button not pressed is HIGH. We connect the CLOCK on the 8085 x1 pin0 to Bout.
Step 1 (First power on)
When the chip turns on, a1 NAND a2 is evaluated. a1 is wired to 5V (HIGH), a2 doesn’t have a signal from bout yet so it is LOW this results in HIGH for aout. The high for aout feeds into b2 resulting in b1 NAND b2 which results in LOW which is fed into a2. a2 was already low so the chip stabilizes with HIGH on the output of Aout which is wired to the CLOCK.
You can work through the table by providing High or low for b1 or a1 and stepping through the inputs and outputs.
I may write more about this at a later time but for now these images show how to wire the 4011BE NAND gate into the loop that will produce the clean clock signal for the manual clock ticking of the 8085 on Pin0 (x1).
Notes about these images. Pin 5 (on bottom counting toward the right) is the output pin for the clock. This gets hooked up to pin x1 (pin 0) on the Intel 8085. The x2 pin is not used for ic generated clock signals unless higher than 6mhz is wanted where x2 will be used as a «pull down»