KIM-1
From Wikipedia, the free encyclopedia
The KIM-1, short for Keyboard Input Monitor, was a small 6502-based microcomputer kit developed and produced by MOS Technology, Inc. and launched in 1975. It was very successful in terms of that period, due to its low price (following from the inexpensive 6502) and easy-access expandability.
Contents |
[edit] History
MOS Technology's first processor, the 6501, could be plugged into existing motherboards that used the Motorola 6800, allowing potential users (i.e. engineers and hobbyists) to get a development system up and running very easily using existing hardware. This enraged Motorola, who immediately sued, forcing MOS to pull the 6501 from the market. Changing the pin layout produced the "lawsuit-friendly" 6502. Otherwise identical to the 6501, it nevertheless had the disadvantage of having no machine in which new users could quickly start playing with the CPU. Chuck Peddle, leader of the 650x group at MOS (and former member of Motorola's 6800 team) designed the KIM-1 in order to fill this need.
While the machine was originally intended to be used by engineers, it quickly found a large audience with hobbyists. A complete system could be constructed for under $500 with the purchase of the kit for only $245, and then adding a used terminal and a cassette tape drive. Many books were available demonstrating small assembly language programs for the KIM. One demo program converted the KIM into a music box by toggling a software-controllable output bit connected to a small loudspeaker. As the system became more popular one of the common additions was the Tiny BASIC programming language. This required an easy memory expansion; "all of the decoding for the first 4 K is provided right on the KIM board. All you need to provide is 4 K more of RAM chips and some buffers."[1] The hard part was loading the BASIC from cassette tape – a 15 minute ordeal.
Rockwell International—who second-sourced the 6502, along with Synertek—released their own evaluation board in 1976, the AIM 65. The AIM included a full ASCII keyboard, a 20-character 14-segment alphanumeric LED display, and a small cash register-like printer. A debug monitor was provided as standard firmware for the AIM, and users could also purchase optional ROM chips with an assembler and a Microsoft BASIC interpreter to choose from.
Finally, there was the Synertek SYM-1 variant, which could be said to be a machine halfway between the KIM and the AIM; it had the KIM's small display, and a simple membrane keyboard of 29 keys (hex digits and control keys only), but provided AIM-standard expansion interfaces and true RS-232 (voltage level as well as current loop mode supported).
Not long after the KIM's introduction, MOS Technology, Inc. was purchased by Commodore International and production of the original KIM lasted for a while under the CBM label, before it was ended. Chuck Peddle started work on an expanded version, with a full built-in QWERTY-keyboard, cassette tape drive, and monochrome monitor display. The monitor was driven by a new built-in display driver chip, meaning no external terminal was required. The ROM firmware was expanded to include the BASIC as well, so the machine was up and running as soon as the power was turned on. The result was the Commodore PET, launched in 1977 – one of three historic home/personal computers to appear that year; the two others being the Apple II (6502-based) and the TRS-80 (with a Zilog Z80).
[edit] Description
The KIM-1 consisted of a single printed circuit board with all the circuitry on one side. It included three main ICs; the MCS6502 CPU, and two MCS6530 Peripheral Interface/Memory Devices. The MCS6530 "is comprised of a mask programmable 1024 x 8 ROM, a 64 x 8 RAM, two 8 bit bi-directional ports …and a programmable interval timer…" [2] The KIM-1 brochure said "1 K BYTE RAM" but it actually had 1152 bytes. The memory was composed of eight 6102 static RAMs(1024 x 1 bits) and the two 64 byte RAMs of the MCS6530s.[3]
Also included were six 7-segment LEDs (like on a calculator) and a 24-key calculator-type keypad. Many of the pins of the I/O portions of the 6530s were connected to two connectors on the edge of the board, where they could be used as a serial system for driving a TTY 33-ASR (teletype terminal and paper tape reader/punch). One of these connectors also doubled as the power supply connector, and included analog lines that could be attached to a cassette tape recorder.
Earlier microcomputer systems such as the MITS Altair used a series of switches on the front of the machine to enter data. In order to do anything useful, the user had to enter a small program known as the "bootstrap loader" into the machine using these switches, a process known as booting. Once loaded, the loader would be used to load a larger program off a storage device like a paper tape reader. It would often take upwards of five minutes to load the tiny program into memory, and a single error while flipping the switches meant that the bootstrap loader would crash the machine. This could render some of the bootstrap code garbled, in which case the programmer had to reenter the whole thing and start all over again.
The KIM-1 included a somewhat more complex built-in software called TIM (Terminal Interface Monitor) that was "contained in 2048 bytes of ROM in two 6530 ROM/RAM/IO arrays." [4] This monitor software included the ability to run a cassette tape for storage, drive the LED display, and run the keypad. As soon as the power was turned on, the monitor would run and the user could immediately start interacting with the machine via the keypad. The KIM-1 was one of the first single-board computers, needing only an external power supply to enable its use as a stand-alone experimental computer. This fact, plus the relatively low cost of getting started, made it quite popular with hobbyists through the late 1970s.
[edit] Video Display
The designer of the TV Typewriter, Don Lancaster, developed a low cost video display for the KIM-1. The add-on board would display up to 4000 characters on a TV or monitor. A typical configuration would be 16 lines of 32 upper case only characters. The board had only 10 low cost ICs and used the KIM's memory for the screen storage.
The TVT-6 project appeared on the cover on Popular Electronics in July 1977. [5] The complete kit could be ordered from PAiA Electronics for $34.95.
Don expanded this design to do color and simple graphics in The Cheap Video Cookbook.[6]
[edit] References
- ^ Simpson, Richard (May 1976). "A Date with KIM". BYTE 1 (9): 14.
- ^ (January 1976) MCS6500 Microcomputer Family Hardware Manual. MOS Technology Inc., 71.
- ^ In the 1970s memory sizes were expressed in several ways. Semiconductor manufactures would use a precise memory size such as 2048 by 8 and sometimes state the number of bits (16384). Mini and mainframe computers had various memory widths (8 bits to over 36 bits) so manufactures would use the term "words", such as 4K words. The early hobbyist computer advertisements would use both "words" and "bytes". It was common to see "4096 words", "4K (4096) words" and "4 K bytes". The term KB was unused or very uncommon. The KIM-1 was introduced in the April 1976 issue of Byte magazine and the advertisement stated "1 K BYTE RAM" and "2048 ROM BYTES".
(April 1976) "MOS KIM-1". BYTE 1 (8): 15. - ^ (April 1976) "What's New, KIM-o-sabee?". BYTE 1 (8): 14.
- ^ Lancaster, Don (July 1977). "Build the TVT-6: A Low-Cost Direct Video Display". Popular Electronics 12 (1): 47-52.
- ^ Lancaster, Don (1978). 'The Cheap Video Cookbook. Howard W Sames. ISBN 0-672-21524-1.
[edit] Also see
List of microprocessor development boards
Bagnall,Brian (2006) On The Edge - The Spectacular Rise and Fall of Commodore, Variant Press, ISBN 0-97386449-0-7
[edit] External links
- The KIM-1 exhibit at the virtual computer museum OLD-COMPUTERS.COM
- KIM-1 6502 website – erik.vdbroeck's resource site for the KIM-1, with several HTML'ized manuals and books
- Instructions on building your own KIM-1
- KIM-1 Hints/FAQ
- Floodgap Retrobits KIM-1 with archival links and an emulator that runs on the Commodore 64
|
|
---|---|
MOS Technology 6502-based (8-bit) | MOS/CBM KIM-1 • PET/CBM • CBM-II (aka B/P series) • VIC-20/VC-20 • C64 • SX-64 • C16 & 116 • Plus/4 • C128 |
Motorola 68000-based (16-bit/32-bit) | Amiga 1000 • Amiga 500 • Amiga 2000 • Amiga 2500 • Amiga 1500 • Amiga CDTV • Amiga 3000 • Amiga 3000UX • Amiga 3000T • Amiga 500+ • Amiga 600 • Amiga 1200 • Amiga 4000 • Amiga 4000T |