background image

  

 13

For Dave 

 
Who’s Dave?  Dave McWherter, who was an amazing 6502 programmer who got 
started on personal computers with a KIM-1 computer.  Dave went on to become VP 
of Engineering at Franklin Computer, designed several processors for Franklin 
Electronic Publishers, earned a number of patents, did the impossible on many 
occasions, and was a great inspiration for anyone who had the pleasure to work 
with him. 
 
The story goes that Dave was a plumber’s apprentice and his boss bought an HP 
programmable calculator that he became fascinated with.  Dave bought a KIM-1 and 
started learning assembly language at night while caring for his family.  He found his 
way to Delta Data Systems, clearly demonstrated an uncanny knack for assembly 
language programming and eventually was hired as the VP of Engineering at a 
young Franklin Computer Corporation, where he hired a 19 year old local 6502 
programmer to join his staff (me).  If you dig around the web you’ll find lots of 
references to Dave in the lawsuit between Apple Computer and Franklin Computer. 
 
Dave was completely outside the box all the time.  There was no program that 
couldn’t be improved and he’d tinker with working programs, sometimes coming 
back after a weekend saying he re-wrote the program to run several times faster, 
used half the memory, or now had a new feature nobody ever realized was needed 
but would soon become commonly used. 
 
Dave astounded us almost constantly.  Not liking the crude 6502 assemblers of the 
day, he wrote a better macro assembler that included a linker so that common 
routines could be written once and then linked in as needed.  Over a weekend he 
wrote a complete editor that was faster, smaller and better suited to our job than 
anything else on the market.  Even more amazing, he wrote all of these tools on an 
Atari 800 (also a 6502 based machine) and then ported them back to the Franklin 
system by use of a standard I/O library he developed. 
 
Unfortunately, Dave passed away in 2015, leaving behind a lot of amazing code, 
outstanding development tools, and a lot of friends. 
 

Bob Applegate 
August 2017 

 
 

 

Summary of Contents for KIM Clone

Page 1: ...ines in the KIM monitor Some functionality has been removed such as the cassette interface so any code that makes direct calls to cassette storage retrieval functions will not work Overview The KIM Clone has a lot of features packed into it while still employing a fairly standard design with commonly available parts RAM from 0000 to 13FF The original KIM 1 had only 0000 to 03FF EEPROM from 1800 to...

Page 2: ...the power supply to the AC power and then J1 8 VDC Are you ready Turn on the Power switch and you should see LED1 POWER come on and the 7 segment displays all come on with a random pattern Congratulations Your KIM Clone is up and running Where to Get More KIM Information Or where to go from here There are two reference books you ll want to get either via the many sites that host these documents or...

Page 3: ...the instructions first then run them with these sequences of key strokes Lunar Lander AD 1 8 0 0 GO This was always a hit when family came over to visit and see what my computer could do Remember that very very few people had computers back then so being able to play a game was typically the first experience most people had back then with a computer they could see and touch As Lunar Lander is runn...

Page 4: ...hen speed reaches exactly 82 press 6 When speed reaches 5 press 5 Farmer Brown This was another favorite of family and friends When this was loaded into RAM the fun part was changing the table of the six animal patterns Since this version is in EPROM you can t do that but it s still a fun game I like running this at vintage computer shows and demonstrate the graphics capabilities of a computer wit...

Page 5: ...dified or not look on the bottom of the board to see if there is a 001 uf capacitor between pins 7 and 8 If the capacitor is present then the board supports single step For the 6502 in single step mode it single steps everywhere except in the monitor EPROM so any calls to functions in the extended monitor also single step While using single step the NMI line is driven directly and is not using an ...

Page 6: ... switch No further explanation is necessary Note that the USB interface chip derives power from the main PC so the power switch does not turn off the USB interface SW2 This selects the input output device Normal KIM mode is to have it in the KBD position which means the LEDs and the keyboard are the console for the KIM This is the normal mode for a KIM 1 When the switch is set to TTY then the moni...

Page 7: ...connects the interrupt line from IC9 to IRQ This is normally not installed JP4 6502 If you are using a 6502 processor then this must be installed If you are using a 65C02 this must be removed If installed pin 1 of IC1 the processor is grounded SV1 This connector is used to access the I O pins on the 6532 chip at IC9 It is meant to be used along with our SD Card System to provide mass storage for t...

Page 8: ... likely 8 volts but whatever power level is applied to J1 and then run through the 1N4001 diode at D2 While we haven t rated exactly how much power can be drawn from these pins it is meant to be enough to power a typical microcontroller such as an Arduino The pin usage might seem odd but they were arranged this way to agree with the SD Card System which was based on pin mappings used on the Corsha...

Page 9: ...e jumper for 0000 1FFF will cause a lot of confusion as multiple devices will respond to the same address Addresses E000 FFFF are also affected by JP1 so if the jumper is installed for that block then JP1 determines if the space is mapped to RAM or EEPROM Expansion Connectors The primary improvement in the Rev 4 design is the addition of many bus signals on two edge connectors to make it possible ...

Page 10: ...se distances will remain the same in future versions unless there is major problem that requires changes EXPA Connector Pin KIM Clone Use 1 2 Ground 3 4 8 VDC 5 6 Reserved Reserved for 5 on motherboards 7 RESET 6502 RESET line active low 8 PH2 6502 phase 2 clock 9 PH0 6502 phase 0 clock 10 SO 6502 SO signal 11 R W High read low write 12 PH1 6502 phase 1 clock 13 RDY 14 IRQ 15 SYNC 16 NMI 17 RAM_SE...

Page 11: ...35 D2 36 A000 BFFF 37 D1 38 C000 DFFF 39 D0 40 E000 FFFF 6502 Vectors If you ve selected to use EEPROM in the top 8K you have two options for the 6502 s interrupt vectors The interrupt vectors are at FFFA to FFFF and normal operation would have the vectors fetched from the lower EEPROM acting as the original KIM 1 did However our board allows you to use the vectors in the top of the high EEPROM so...

Page 12: ...onitor Address Name Description 1C4F START 1C77 TTYKB 1CD3 STEP 1DC2 RTRN 1DDB SCAN 1E1E PRTPNT 1E2F CRLF Print a CR LF on the TTY 1E3B PRTBYT Print value in A as two hex digits to TTY 1E5A GETCH Get one character from TTY return in A 1E9E OUTSP Print one space to TTY 1EA0 OUTCH Print character in A to TTY 1F19 SCAND 1F40 Not named Used by Farmer Brown First Book of KIM 1F63 INCPT Increment POINTL...

Page 13: ...eb you ll find lots of references to Dave in the lawsuit between Apple Computer and Franklin Computer Dave was completely outside the box all the time There was no program that couldn t be improved and he d tinker with working programs sometimes coming back after a weekend saying he re wrote the program to run several times faster used half the memory or now had a new feature nobody ever realized ...

Page 14: ...ATED FOR REV 4 or 5 BOARDS YET Note that all capacitors are 1 2 54mm pin spacing All resistors are or 1 8 watt Part Number Description PCB 1 Printed Circuit Board Corsham Tech IC1 1 6502 or 65C02 processor IC2 1 628128 7 128K static RAM IC3 IC9 2 6532 IC4 1 FT232RL USB interface IC5 1 28C64 EEPROM or 27C64 EPROM IC6 1 28C16 EEPROM of 27C16 EPROM IC7 IC8 IC10 3 74LS145 IC11 1 74133 IC12 IC13 2 74LS...

Page 15: ...r SW1 3 3 1 position DIP switch S1 1 Toggle switch Digikey EG2362 S2 S24 23 OMRON B3F 4050 Digikey SW413 C1 1 22uf 25v electrolytic cap C2 C3 C7 1 uf disc capacitor C4 C8 C17 11 1 uf disc cap C5 C6 2 22 uf cap C18 1 001uf cap R1 R8 R13 R30 R31 9 1K R14 R19 6 220 R2 R7 R20 R22 R34 R35 R39 13 3 3K R23 R29 7 130 ohms can be higher value R32 R33 2 47K ohm R37 R38 2 470 1 Omron B32 1280 red keycap 6 Om...

Reviews: