I’ll try not to do several posts in one day but figured this was worth a mention. I have the KIM monitor running on the serial port, but with some changes to be in upper EEPROM and other minor mods. As testing continues, more errors are becoming apparent and I’ve done a number of cuts/jumpers to solve issues. It’s been a long day of testing and debugging so I will probably just take a break for the evening and get back to it tomorrow.
It looks like a new spin of boards will be ordered early next week with fixes to all the problems found so far. I will continue doing more debugging in the next few days, but it’s time for a clean board. So far, this is coming up a lot faster than I had planned.
My full time job and full time family keep me pretty busy but usually I can squeeze in at least an hour of quality time at the workbench most evenings.
As of this morning, the USB serial port is working, as are the two 6532 RIOT chips. The photo shows the Clone as it’s currently sitting on my workbench. When the USB cable is plugged in, the computer recognizes it and when typing characters the RC LED blinks. The USB serial chip is an FTDI device bought from a good distributor, so there should be no problems with drivers on any major OS.
For those not completely sure what this is about, the original KIM had a 20 ma current loop interface designed for mechanical teletype machines. Nobody uses 20 ma loops anymore, so Corsham’s KIM-1 I/O board coverts it to RS-232 using a standard 9 pin serial cable. Technology continues to evolve, and most computers don’t have RS-232 ports anymore, so this board has a chip that plugs into the USB port on your computer and is recognized as a COM port. The interface chip is powered from the USB cable (ie, your computer) so it doesn’t go away when you turn off the KIM Clone.
There is enough running now that the next step might be to install the KIM monitor EPROM and see if the system comes up using the serial port. As you can see from the pictures the keypad and LEDs aren’t installed yet so the TTY is the only debug option.
Boards arrived Monday and I’ve spent a little time each evening working on bringing up the first. There was a horrible error in one of the CAD libraries I used, resulting in power supply connections being reversed, so a new part has to be created before the next board spin.
Tonight the CPU was running code in the main EEPROM! The top trace is the 6502 clock and the bottom is the SYNC line, which goes high every cycle where the processor is reading an opcode. The program is a JMP $ (jump to itself) so the timing is going to be exactly the same all the time:
Yes, that’s a very old analog scope. It’s got one of those “tube” things! The traces are usually sharper but the power supply powering the KIM Clone is sitting on top of the scope, so that causes some magnetic blurring of the image.
And this is the board partially built and running on my workbench:
The processor is running, address decoding works, the expansion EEPROM works, and the super-bright power-on LED is working. I’ll turn down the brightness for the final board, but I did want to use a blue LED on something 🙂
The next step is to insert the RAM and make it works, then get the USB chip soldered on and make sure it works. For what it’s worth, the hard part and mostly likely source of errors will be the decoding for the 6532s, keyboard, and LEDs. It’s a good start but there is a lot to test.