post

Nachbau eines KIM-1

Ralf (Ralf02, forum64.de) started a thread on the forum64 called Instandsetzung und Nachbau eines Kim-1 in March 2022. 99 pages of designs and discussions and contributions by many in the thread delivered a working KIM-1 that is closer to the original KIM-1 than any KIM-1 replica designed. A great achievement and a well deserved compliment to Ralf and the thread authors!

The work of Ralf is not limited to the KIM-1 replica itself. He also designed a KIM I/O module and a 1541 IEC/RAM/ROM module.
Noteworthy is the replica of the KIM-1 keypad.

On the following pages these boards are introduced.

The most current version of the ‘Nachbau’ is on the formu64.de thread.

KIM-1 Replika

Colin Wolf (C. W. (chefkoch) ) posted a thread in 2021 on mikrocontroller.net showing a KIM-1 Replika he had build.
A KIM-1 with the dimensions and layout of the original KIM-1! OF course he used 6532 instead of the 6530-002 and -003, so a ROM was needed. To preserve the layout, this ROM was hidden as daughterboard on the back. The daughterboard also has the extra decoding circuit required for the 6532s. A very elegant solution!

The text by Colin on the post:
Hallo *,

wie bereits in dem Thread Beitrag “Fotos KIM-1 rev. F oder G”
angekündigt war ich dabei einen KIM-1 nachzubauen. Nach einigen
lehrreichen Stunden CAD-Fleißarbeit ist es nun vollbracht.

Es lebt!

Die beiden 6530 wurden durch 6532 ersetzt. Für die Umkodierung wurde der
Vorschlag unter
http://retro.hansotten.nl/6502-sbc/6530-6532/kim-1-6530-replacement/
benutzt und als Huckepackplatine realisiert. Der komplette
Funktionsumfang mit Audio- und Fernschreiberinterface ist also
vorhanden.

I have received the circuit diagrams in PDF format and publish here with permission by Colin Wolf:
KIM-1 Circuit diagram
Daugther board

He showed these photos on the post:


Wolfgang Robel build a KIM-1 Replika with PCBs from Coloin Wolf. On his website he shows the build process and the working end result.

Photos reproduced here with permission from Wolfgang Robel. As you can see the end result is great, though he had to deal with broken 6532s from China and broken 2102 SRAM ICs.































KIM-1 Nachbau

On the forum Mikrocontroller.net I found a thread dedicated to a KIM-1 replica with a twist.
Author is Manfred Langemann (manni), this page is published with his permission.
Read here about the KIM computer which has the following features:

  • A complete 6502 Integrated Development Environment (IDE) for writing assembler source code, including editor, assembler, debugger and EEPROM programmer, see screenshot above.
  • The hardware comes with a 6502 micro-controller, 8 KByte EEPROM, 32 KByte RAM and an I/O interface based on an Intel 8255 PPI (Programmable Peripheral Interface), offering three 8-bit ports. The audio tape interface is realised by an NE565 PLL and the RS232 serial interface is based on a MAX232 IC




KIM-1 Nachbau

On the forum Mikrocontroller.net I found a thread dedicated to a KIM-1 replica with a twist.
Author is Manfred Langemann (manni), this page is published with his permission.

The built My-KIM computer has the following features:

  • A complete 6502 Integrated Development Environment (IDE) for writing assembler source code, including editor, assembler, debugger and EEPROM programmer, see screenshot above.
  • The hardware comes with a 6502 micro-controller, 8 KByte EEPROM, 32 KByte RAM and an I/O interface based on an Intel 8255 PPI (Programmable Peripheral Interface), offering three 8-bit ports. The audio tape interface is realised by an NE565 PLL and the RS232 serial interface is based on a MAX232 IC

Download here My-KIM – A Replica of the KIM-1 Computer Hardware / Software Documentation
with extensive doumentation of hardware, the circuit diagram and PCB in Eagle format, and software: the adapted KIM-1 monitor source and binary, Microsoft Basic KB9 adapted in source format, an EEPROM programmer and the IDE, for Windows, program.

The IDE

Manfred extended a UNIX like console assembler to a window based 6502 Integrated Development Environment (IDE), offering the following features:

  • Loading, editing and saving 6502 assembler source code files
  • Assembling the source code and generating Intel Hex files as well as List files
  • Debugging the source code including break point definitions
  • Showing and editing the total 6502 memory area
  • Flashing the binary code to an 8 KByte EEPROM

It shall be mentioned, that the assembler can only be used for the early 6502 processors, but not for the 65C02 successor, having additional instructions not supported by this assembler.

Here the German text of the forum thread.

da Winter, Corona mit sozialen Einschränkungen und Rentnerdasein auf den gleichen Wochentag fielen, habe ich beschlossen, den KIM-1 Single-Board Computer basierend auf dem 6502 Prozessor nachzubauen. Dieses Board hatte ich 1977 gekauft und mit dynamischen RAMs, Tastatur und TV-Monitor sowie Microsoft BASIC aufgemotzt. Damit war ich der einzige an der Uni, der einen eigenen Computer besaß. Die Kommilitonen durften weiterhin mit Lochkarten die CDC-6000 bestücken. Leider ist das Unikat irgendwann auf dem Wertstoffhof gelandet.

Beim Nachbau habe ich soweit wie möglich die gleichen Bauteile verwendet, jedoch mit 32 KByte RAM und 8 KByte EEPROM aufgemöbelt. Darüber habe ich eine Integrated Development Environment (IDE) zum Editieren, Assemblieren und Debuggen von 6502 Assembler Source Code entwickelt, siehe My-KIM-IDE.exe (braucht keine Installation). Mit dieser IDE kann der KIM-1 Nachbau auch im sogenannten TTY Mode betrieben werden (RS232 mit USB Adapter). Außerdem kann Microsoft BASIC in der Version 1.1 aus dem Jahr 1977 (KB9.BIN) geladen werden und die Programme können auf dem PC gespeichert werden.

Das Projekt ist im attached ZIP File vollständig dokumentiert, siehe das 60-seitige My_KIM.pdf Dokument.

post

KIM-1 Simulator simple demo

To test my new HDMI 4K USB Video Capture I made two videos. Simulator running on one notebook, the other notebook with the HDMI capture dongle recording with OBS Studio.

Simple program

0200 a9 cd LDA #$CD
0203 8D 00 03 STA $0300
0206 4C 00 1C JMP MONITOR ; KIM monitor

KIM-1 PAL-1 KIM CLone KIM MicroKIM Reproduction resources

This page is a Work in Progress since November 2022!

The clones of the KIM-1 that appeared the last years have renewed the interest of the retro scene.

Old software is restored or typed in again and adapted to the current use of serial terminal emulators and cross assemblers instead of the hardcopy Teletype interface and native assemblers of the old days.

This site contains a lot of that material already. There I have tried to collect all older original material.

Here a link of current websites with relevant material. As usual, a list of external links always will suffer of bitrot, so please report dead links!

Netzherpes, by Nills. Very active PAL-1 user. Lots of older software newly typed in.

KIM IEC, Dave McMurtrie’s 1541 Routines for the KIM-1

See also the Nachbau KIM-1 IEC/RAM card page.

SD card on PAL-1 https://github.com/ryaneroth/sdcard6502

https://www.youtube.com/@masterhit1/videos masterhit Nils

https://www.youtube.com/watch?v=CovNzC3jdGo KIM Venture

https://www.youtube.com/watch?v=d88M8gFSzWE startrek

https://github.com/w4jbm Jim McClahanan
https://www.youtube.com/@W4JBM/videos https://www.youtube.com/watch?v=UThleUTNTBM

PAL- stores/tkoak/
https://www.tindie.com/stores/tkoak/
http://pal.aibs.ws/support

Debug packages
1541
Lilbug
Basic games

Tiny Basic

https://github.com/GrantMeStrength/KIM1

Jim

https://github.com/w4jbm/PAL-1-6502-SBC

KIM-1 Computing Focal etc

KIM-1 Computing

PAL-1 Hacks
https://github.com/kaveenr/PAL-1-HACKS

https://netzherpes.de/
https://github.com/netzherpes
https://www.youtube.com/user/masterhit1
https://drive.google.com/drive/folders/1-S3AI-qszLDSes50MERtx1RNl9KefTs7

KIM IEC

https://commodore.international/kim-iec/

CC65 pathches
https://github.com/davepl/cc65

Jeff Tranter
https://github.com/jefftranter/6502/tree/master/asm/KIM-1

Discussion forum for PAL-1
https://groups.google.com/g/pal6502

twitter friends

@LiuGN PAL-1 desigenr/tindie
@masterhit netzherpes
@Devilish_Design (KIM-1 clone)
MOS KIM-1 Reproduction Kit https://www.ebay.co.uk/itm/225209469024

http://www.corshamtech.com/product-category/kim-1-products/

Bob Applegate Corsham Technologies
https://github.com/CorshamTech
http://www.corshamtech.com/product-category/kim-1-products/

KIM-1 Enhancement PROM

This source for an enhancement of the KIM-1 contains Jim Butterfield’s Supertape and some other utilities and code.
The PROM is to be placed on top of memory, it contains the RESET/NMI/IRQ vectors.
The source listing for a PROM designed to enhance the KIM-1.
Written by René Vega of Detroit in September 1976. From the archives of Peter Jennings.

;	THE FOLLOWING ROUTINES MAY BE ENTERED VIA THE
;	"GO" KEY ON THE KEYPAD.
;
;	FC00 - SUPRTP - KIM CASSETTE HIGH SPEED DUMP.
;	FE3B - COMPTP - ROUTINE TO COMPARE A KIM FORMAT
;			CASSETTE WITH CONTENTS OF MEMORY.
;	FE46 - VIEWTP - ROUTINE TO LOOK AT A KIM FORMAT
;			CASSETTE WITHOUT ALTERING MEMORY.
;	FE4F - LOADTP - ROUTINE TO LOAD A BLOCK IN KIM
;			AUDIO CASSETTE FORMAT.
;	FCEA - LDSYS  - ROUTINE TO LOAD MULTIPLE BLOCKS
;			INTO MEMORY REGARDLESS OF THE ID
;			NUMBERS ON THE TAPE. UPON LOADING A
;			BLOCK THAT BEGINS AT $EF, THE
;			ROUTINE JUMPS TO ($EF).

post

KIM-1 Enhancement PROM

This source for an enhancement of the KIM-1 contains Jim Butterfield’s Supertape and some other utilities and code.
The PROM is to be placed on top of memory, it contains the RESET/NMI/IRQ vectors.
The source listing for a PROM designed to enhance the KIM-1.
Written by René Vega of Detroit in September 1976. From the archives of Peter Jennings.

;	THE FOLLOWING ROUTINES MAY BE ENTERED VIA THE
;	"GO" KEY ON THE KEYPAD.
;
;	FC00 - SUPRTP - KIM CASSETTE HIGH SPEED DUMP.
;	FE3B - COMPTP - ROUTINE TO COMPARE A KIM FORMAT
;			CASSETTE WITH CONTENTS OF MEMORY.
;	FE46 - VIEWTP - ROUTINE TO LOOK AT A KIM FORMAT
;			CASSETTE WITHOUT ALTERING MEMORY.
;	FE4F - LOADTP - ROUTINE TO LOAD A BLOCK IN KIM
;			AUDIO CASSETTE FORMAT.
;	FCEA - LDSYS  - ROUTINE TO LOAD MULTIPLE BLOCKS
;			INTO MEMORY REGARDLESS OF THE ID
;			NUMBERS ON THE TAPE. UPON LOADING A
;			BLOCK THAT BEGINS AT $EF, THE
;			ROUTINE JUMPS TO ($EF).

Source in TASM format, typed in by Rich Cini.

Source on paper



Focal runs on KIM-1 Simulator

KIM-1 Simulator version 1.1.6 has been published. Get it here.

It now supports Focal-V3D 12-AUG-77 (the Aresco version) from the KIM-1 Software page, see here.

Updates to the Simulator are a working echo suppression (see here for background). Available to any program.

For Focal V3D a setting has to be made in the Settings, to allow Focal to do its magic in the input routine.

By working on Focal I did add comments to the disassembly of what I found. You will find the original by Paul R. Santa-Marie and my partly commented version in the archive.

RRIOT testing Breadboard Test for 6530-002

This article is written by Jeff M. Nay, about his experiments to restore a KIM-1 to working order, testing the 6530-002 RRIOT with his own KIM-1.
The challenge was to address the second 6530-002 in this setup at another address then the onboard 6530-002 RRIOT.
The experiment was a success, the 6530-002 is indeed in a bad state, the ROM is corrupt and it had to be replaced.

The KIM-1, from a friend, was in a bad state. The repair was a success also. He was able to get this old KIM-1 working again, after only having to replace, the 6502 CPU, the 6530-002 RRIOT Chip with a Corsham 6530 Replacement board, all 8 Memory Chips and the U17 7406 inverter.

Read more in the group: KIM-1 – Google Groups

Breadboard Test for 6530-002

Attach Breadboard to working KIM-1, using Expansion Port and using K4 and K2 from Application Port (Corsham Application Board)
NOTE: Turn all SW1 switches on CORSHAM Board Off (Or data will repeat at K1,K2,K3,K4)

I started by wiring the data lines on the 6530 to the expansion board pins 15-8.
Then the address lines to pins A-L.
Now it is just a matter of wiring the control lines correctly.

  • I have phase 2, pin 3 of the 6530 going to pin U of the Expansion board (Yellow)
  • I have pin 4 (RSO) of the 6530 going to (K4) of my Corsham Application Board – (Don’t forget pull up resistor) (Blue)
  • I have RES pin 16 of the 6530 wired to pin 7 (RST) of the Expansion board
  • I have pin 18, (CS1) on the 6530. Going to (K2) of my Corsham Application Board – (Don’t forget pull up resistor) (White)
  • I have Power going to pin 20 and Gnd going to pin 1

You should be able to read ROM at $1000

Looking below at the data sheet, where the address of the I/O and RAM are determined by A9-A6. This means it is not hard set for $1700 or $1740.
K5 ($1400) + A9-A6 determines where the IO of both 6530s will start and end.

I ended up using K2, which starts at $0800 + A9-A6 means my I/O registers should start at $0B40 for the 6530-002 or $0B00 for the 6530-003
I also use K4 for the ROM section of the 6530-002 which starts the ROM section at $1000


Onboard 6530s
6530-003

A9+A8 = 1100000000 = 300H to 1100111111 = 33FH
(K5) $1400+$300 Start the IO for 6530-003 at $1700.
(K5) $1400+$33F End the IO for 6530-003 at $173F

6530-002

A9+A8+A6 =1101000000=340H to 1101111111=37FH
(K5) $1400+$340 Start the IO for 6530-002 at $1740
(k5) $1400+$37F End the IO for 6530-002 at $177F

Bread Board 6530-002
6530-003

A9+A8=1100000000 =300H to 1100111111=33FH
(K2) $0800+$300 Start the IO for 6530-003 at $0B00.
(K2) $1400+$33F End the IO for 6530-003 at $0B3F

6530-002

A9+A8+A6=1101000000=340H to 1101111111=37FH
(K2) $1400+$340 Start the IO for 6530-002 at $0B40
(K2) $1400+$37F End the IO for 6530-002 at $0B7F


This is the ROM of 6530-002 breadboard being accessed at $1000 (85)

The now working KIM-1: