SBC 6502
6502 information
The KIM-1 is my first computer! Extended to 48K, 2 digital mini cassette drives, serial and parallel I/O. Assember and Basic interpreter were available when some memory was added. Homebuild video terminal (32x16 char's, uppercase only.
Developed by Mos Technology. later acquired by Commodore, to show the possibilities of the 6502 microprocessor but quickly discovered as the first mass-produced personal computer. Easy to extend, lots of detailed documentation. With assembler/editors, first Microsoft Basic on cassette and even a Pascal compiler it could do a lot. Mine is an original Mos Technology versiosn, later versions have the Commodore logo on the board, without technical differences.
This prehistoric computer has no "real" keyboard and no video output, program are entered by the small hexadecimal keyboard (located in the lower right part of the picture) and results are displayed on the small LED "screen" (it can display only 6 digits). It has a simple monitor that allows one to examine & modify memory, load and save paper tape, load and save cassette tape, run and debug programs through a 'single step' mode. The monitor works with the built in keypad and LEDs, or a terminal like the Teletype ASR33. This 20 mA current loop is easy to adapt to RS232C and so any videoterminal can be used.
I have written many articles about this computer in the dutch magazine Radio Bulletin and the KIM Gebruikers Club Magazine.
A Pascal compiler was written by Mark Rustad and quite expanded by me (Pascal P2 variant called Pascal-M, UCSD Pascal like).
See the KIM Kenner page for some covers and contents pages (thanks Gert van Opbroek for many covers)
See the Radio Bulletin and KIM-1 page for a list of publications in the then so popular magazine about electronics. Also the articles are available (ram, eprom, ACIA, VIA) that made the Radio Bulletin 6502 expansion system.
See my other KIM-1 photographs.
The binary files in the KIM-1
program archives below have been reproduced, from the original
cassette recordings, with the tool KIMTAPE on a PC in a DOS box.
See
Ed's DX-Forth and Utilities Page
for this and other nice programs.
This program also makes it possible to reproduce the original
cassette recordings that can be read by a KIM-1.
The files were made as
follows: The KIM-1 cassette audio was connected to the PC audio
input and (with Cooledit) recorded as a wave file.
For example: qchess.wav
The wave file was then converted with KIMTAPE to a binary file
(the exact content of of the KIM-1 memory when recorded).
And the KIMTAPE utility then displays load address (for example
and tape ID
c:\kimtape qchess.wav qchess.bin KIMTAPE version 0.5 17-May-04 infile: qchess.wav outfile: qchess.BIN Program 01 address 0200 checksum OK xxxx bytes done
This .bin file (any extension is fine!) is NOT a wave file! It contains the exact content of the KIM-1 memory when recorded. The size is exactly the number of bytes as stored in the memory of the KIM-1 and much smaller than the wave file. This binary file can be converted back to a wave file with KIMTAPE or converted to a papertape file with KIMPAPER:
C:\kimtape -M -A0200 -D01 -B2 qchess.bin qchess.wav
As you can see: you have to specify the load address and the program ID. The B parameter
indicates hypertape speed (2 here, slow)
The resulting wav file should be acceptable for the KIM-1. It is
(as I have tested) acceptable as input for KIMTAPE!
All command parameters can be seen by typing KIMTAPE without parameters:
C:\kimtape
KIMTAPE version 0.5 17-May-04
Use: KIMTAPE [options] infile[.typ] [outfile[.typ]]
-C console output -M make wavefile
-Bn HYPERTAPE speed 2x 3x 6x -I invert wavefile
-U SYM-1 high speed format -V VOC wavefile
-Fn offset -127 to 127 -R RAW wavefile
-Hn hysteresis 0 to 127 -Ln leader (sec)
-Gn timing -2 to 2 -T sine tone
-An load address (hex) -Dn prog ID (hex)
default: decode WAV file, KIM-1 format
load address=0200, file ID=00
Conversion utility for KIM-1 and SYM-1 format audio tapes.
Input/output is an 8-bit mono WAV, VOC or RAW wavefile recorded at
22,050 samples per second.
Now everybody can own a KIM-1 at a very reasonable price! Vince Briel is developing the micro-KIM, with nearly identical specifications and also a SBC. Specifications:
The following KIM-1 programs are reproduced here by reading the original cassettes, some dating from 1977, with the KIMTAPE program. It is remarkable how reliable those cassette recordings are. All are Hypertape recordings, most at the highest speed, 6x KIM-1 standard speed (or slowness :).
Some manuals are located on http://users.telenet.be/kim1-6502 the KIM-1 site of Erik Van den Broeck. Also have a look at the other documents at this site, such as the KIM-1 User notes, the KIM manuals, First Book of KIM and much more!
<KB-9 stands for Kim-Basic
with 9 digits precision. The original interpreter was enhanced by me and others in the KIM Club, resulting in my version 3.0. Read here the enhancements in the future. The KB-9 interpreter was also ported to the Elektuur Junior. The how-to Elektuur article will be available here in the near future. |
||
Micro-ADE
assembler/editor |
Micro-ADE was the working
horse for many KIM-1 users, the small and powerfull
assembler/editor written by Peter Jennings. Source in scanned format
(from a bad photocopy): Also this program was
enhanced by the KIM Club, resulting in version 9.0,
present in the program archive. |
|
MicroChess
for KIM-1 |
MicroChess for KIM-1 by Peter Jennings Small
enough to fit in the 1K memory of a standard KIM-1. Manual in html format by Erik van den Broeck |
|
Q-chess program |
Q-Chess Fer Weber adapted the program so it can be used from a terminal cinnected to the KIM-1: the display version. |
|
C.W. Moser ASSM/TED |
A powerfull line oriented text editor and Macro assembler for the KIM-1. Requires more memory than Micro-ADE and was less popular. |
|
Tiny Basic |
Itty Bitty Tiny Basic is a very small but complete implementation of the Basic language. The version for the KIM-1 is delivered in two versions; one for lower memory and one for a KIM-1 with RAM above $2000 |
Tiny Basic manual
The
Tiny Basic original manual
|
Focal V3d |
The Focal programming language Version 3d for the KIM-1
A small interpreter (about 5K) for a
convenient interpreted language. Disassembled source by Paul R. Santa-Maria |