Building a KIM Clone

Major revision: 12/01/2018

After building a few dozen KIM Clone boards, I’ve gotten pretty good at optimizing my time at the bench so as to reduce the amount of debugging necessary if a board does not come up the first time.  If you want to use my hard-earned advice, feel free to follow my suggestions.

But first…

Do not install all the parts before testing!!!

It is worth repeating…

Do not install all the parts before testing!!!

And yet again in case you missed the previous two warnings…

Do not install all the parts before testing!!!

I am an engineer by profession, and we never, ever, just write thousands of lines of code or build an entire product without testing sub-assemblies, so please follow the advice from someone who has built a lot of KIM Clone boards.  One of my many jobs over the years was at a DoD project and they had a motto that is excellent: “Build a little, test a little, learn a lot.”

Parts

The thumb drive included with the bare board has a user manual with a BOM (bill of materials).  Some parts are very generic, like 1/4 watt resistors, while others are very specific, like the 7 segment LEDs.  Unless you are willing to try experiments, I suggest you get the exact components called out.  I have provided the manufacturer’s part number and usually a Digikey part number.  If you swap components it might work, but I can’t offer much help if it doesn’t.

Capacitors are all .1″ (2.54mm) lead spacing.

All resistors are 1/4 watt.

Power

The first steps are to bring up the power section.

  1. Install J1, S1, VR1, C1, LED1, R1, C15, and D2.  VR1 really needs a heatsink, and it’s good to use some heat transfer paste.  Note that VR1 MUST be a 78S05, not a generic 7805!!!
  2. Once those components are installed, connect a 7.5-9 volt supply to J1 and turn on the power switch; you should see the power LED light up.  I’d suggest checking power at a few chip locations for +5.  You can do a simple check by measuring the voltage across pins 8 and 16 of IC7, and across pins 8 and 16 of IC10.  You should get +5 at both of these (ground is pin 8, +5 is at pin 16).
  3. Next, add the filter capacitors, as there are a lot of them.  C2, C7, and C5 are 1 uf, while the rest are .1 uf.  Note that these values are not critical, but should be close to what is called out.  If in doubt, going with slightly more capacitance is preferable to slightly less.

Reset/NMI Circuit

  1. Install the IC socket for IC14.
  2. Install 1K resistors at R30 and R31.
  3. Install 47K resistors at R32 and R33.
  4. Install .22 uf capacitors at C5 and C6.
  5. Install S23, the RS (reset) button.  Do not install any other buttons.

Various Analog Parts

  1. Install a .001 uf capacitor at C18.
  2. Install OSC1.  Note that one corner is square while the others are rounded.  The silkscreen indicates where the square corner goes.
  3. Install all the 3.3K resistors.
  4. Install the three one-position DIP switches.  The ON position is down (towards the bottom of the board) for SW3.  The other two have ON in the up position.
  5. Install JP2, JP3, JP4 and JP5
  6. Install jumper blocks for all four positions on JP4, and install seven jumper blocks on JP5 for 2000-FFFF (ie, don’t install one in the left-most jumper).
  7. Install U1, as this is the power-on reset device.

Chips

  1. Install all the sockets except for IC9.  We want to run some tests before doing that one.
  2. Install all the ICs.

First Run Test

  1. Now comes the fun part… let’s see if the KIM Clone is alive!
  2. Connect a USB cable between your home computer (PC, Mac, Linux, PDP-8, whatever).  You’ll need a terminal emulator program, then go into the serial port settings, select the new serial port (the KIM Clone), set the parameters to 2400 baud, 8 data bits, 2 stop bits.
  3. Set the three DIP switches as follows: SW1 to OFF (down position), SW3 to ON (up position), and SW3 to ON (down position).
  4. If you have a 6502 processor, install a jumper on JP4.  If you have a 65C02, do not install the jumper.
  5. Plug in the power supply again to the KIM Clone.
  6. Turn on power; the LED should light up.
  7. On your terminal emulator, press RETURN… you should get a response indicating the KIM monitor is running.  If not, press the RS button.

At this point, you should have a functioning KIM Clone!  I’d recommend starting a memory test and letting it run at least 30 minutes.  So let’s start the memory test by typing an X (all KIM Clone commands are capital letters), then an M, then “2000” and “CFFF”.  Sit back, make sure it completes one pass, then go relax.  It’s time for a beer.

LEDs

Now that the base system is running, it’s time to disconnect from power and the USB and start installing the LEDs.

  1. Install the 130 ohm resistors at R23 through R29.
  2. Install the 1K resistors at R8 to R13.  I’d suggest installing every other one, solder, clip the leads, then go back and install the rest.  This makes it easier to avoid solder bridges on the closely spaced leads.
  3. Install 220 ohm resistors at R14 to R19.
  4. Install Q1 to Q6.  The silkscreen shows the correct orientation for TO-92 packages.
  5. Install only LED2.  Solder one pin while pressing down to make sure the device is level before soldering more pins.  It’s hard to fix a crooked installation once all the pins have been soldered.
  6. Test the basic LED circuit by setting SW2 to the KDB (down/off) position.
  7. Reconnect power, turn on the KIM Clone.
  8. Press RS and LED2 should have some hexadecimal character.
  9. Now solder the other five LEDs following the same procedure, but you do not need to test each one.
  10. When done, turn on the KIM Clone, press RS and verify each of the LEDs has a valid hexadecimal digit.

Keyboard

  1. Install the remaining keyboard switches.  They take some pressure, but should pop in and sit flat on the PC board.  If one isn’t flat, gently pry it out and check for a bent pin.
  2. Solder all the pins.
  3. Turn on power again and press RS.
  4. By default the KIM monitor is in address mode, so type each key from 0 to F four times and verify the four left-most LEDs display the same values at the end.  This is also a good check for the LEDs to be sure all segments of all LEDs are working.

At this point you can actually play a game!  Press 1800 on the keypad, then GO.  Lunar Lander is running.

Expansion

  1. Install the socket for IC9.
  2. Install the SV1 connector.  The notch in the middle of the connector should be facing towards the bottom of the board.
  3. Install IC9 (6532).

USB LEDs

  1. Install 470 ohm resistors at R37 and R38.
  2. Install LED7 and LED8.  There is a plus sign to indicate where the longer lead goes.

Now What?

You are finished!  Go have some fun!