KIM-1
   HOME

TheInfoList



OR:

The KIM-1, short for ''Keyboard Input Monitor'', is a small 6502-based
single-board computer A single-board computer (SBC) is a complete computer built on a single circuit board, with microprocessor(s), memory, input/output (I/O) and other features required of a functional computer. Single-board computers are commonly made as demonstrat ...
developed and produced by MOS Technology, Inc. and launched in 1976. It was very successful in that period, due to its low price (thanks to the inexpensive 6502 microprocessor) and easy-access expandability.


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.
Motorola Motorola, Inc. () was an American multinational telecommunications company based in Schaumburg, Illinois, United States. After having lost $4.3 billion from 2007 to 2009, the company split into two independent public companies, Motorola ...
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 A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, a ...
. 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. The KIM-1 came to market in 1976. 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 with the purchase of the computer itself for only , and then adding a power supply, a used
terminal Terminal may refer to: Computing Hardware * Terminal (electronics), a device for joining electrical circuits together * Terminal (telecommunication), a device communicating over a line * Computer terminal, a set of primary input and output devi ...
and a cassette tape drive. Many books were available demonstrating small
assembly language In computer programming, assembly language (or assembler language, or symbolic machine code), often referred to simply as Assembly and commonly abbreviated as ASM or asm, is any low-level programming language with a very strong correspondence b ...
programs for the KIM, including ''The First Book of KIM'' by Jim Butterfield ''et al''. One demo program converted the KIM into a music box by toggling a software-controllable output bit connected to a small
loudspeaker A loudspeaker (commonly referred to as a speaker or speaker driver) is an electroacoustic transducer that converts an electrical audio signal into a corresponding sound. A ''speaker system'', also often simply referred to as a "speaker" or ...
. Canadian programmer
Peter R. Jennings Peter R. Jennings (born 1950) is a Canadian physicist, scientist, inventor, software developer, computer chess programmer, and entrepreneur. He is best known for creating MicroChess, the first microcomputer game to be sold commercially in 1976. B ...
produced what was probably the first game for microcomputers to be sold commercially, '' Microchess,'' originally for the KIM-1. 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." The hard part was loading the BASIC from
cassette tape The Compact Cassette or Musicassette (MC), also commonly called the tape cassette, cassette tape, audio cassette, or simply tape or cassette, is an analog magnetic tape recording format for audio recording and playback. Invented by Lou Ott ...
—a 15-minute, error-prone ordeal.
Rockwell International Rockwell International was a major American manufacturing conglomerate involved in aircraft, the space industry, defense and commercial electronics, components in the automotive industry, printing presses, avionics and industrial products. R ...
—who second-sourced the 6502, along with
Synertek Synertek, Inc. was an American semiconductor manufacturer founded in 1973. The initial staff consisted of Bob Schreiner (the CEO), Dan Floyd, Jack Balletto, and Gunnar Wetlesen and Zvi Grinfas. Schreiner, Floyd, Balletto and Wetlesen were all forme ...
—released their own microcomputer in one board in 1978, the
AIM-65 The Rockwell AIM-65 computer is a development computer introduced in 1978 based on the MOS Technology 6502 microprocessor. The AIM-65 is essentially an expanded KIM-1 computer. Available software included a line-oriented machine code monito ...
. The AIM included a full
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
keyboard, a 20-character 14-segment
alphanumeric Alphanumericals or alphanumeric characters are a combination of alphabetical and numerical characters. More specifically, they are the collection of Latin letters and Arabic digits. An alphanumeric code is an identifier made of alphanumeric c ...
LED display, and a small
cash register A cash register, sometimes called a till or automated money handling system, is a mechanical or electronic device for registering and calculating transactions at a point of sale. It is usually attached to a drawer for storing cash and other ...
-like printer. A
debug In computer programming and software development, debugging is the process of finding and resolving '' bugs'' (defects or problems that prevent correct operation) within computer programs, software, or systems. Debugging tactics can involve i ...
monitor Monitor or monitor may refer to: Places * Monitor, Alberta * Monitor, Indiana, town in the United States * Monitor, Kentucky * Monitor, Oregon, unincorporated community in the United States * Monitor, Washington * Monitor, Logan County, West ...
was provided as standard
firmware In computing, firmware is a specific class of computer software that provides the low-level control for a device's specific hardware. Firmware, such as the BIOS of a personal computer, may contain basic functions of a device, and may provide h ...
for the AIM, and users could also purchase optional ROM chips with an assembler and a
Microsoft BASIC Microsoft BASIC is the foundation software product of the Microsoft company and evolved into a line of BASIC interpreters and compiler(s) adapted for many different microcomputers. It first appeared in 1975 as Altair BASIC, which was the first ...
interpreter to choose from. Finally, there was the Synertek
SYM-1 The SYM-1 is a single board "trainer" computer produced by Synertek Systems in 1975. It was designed by Ray Holt. Originally called the VIM-1 (Versatile Input Monitor), that name was later changed to SYM-1. The SYM-1 is a close copy of the pop ...
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 A membrane keyboard is a computer keyboard whose "keys" are not separate, moving parts, as with the majority of other keyboards, but rather are pressure pads that have only outlines and symbols printed on a flat, flexible surface. Very little, ...
of 29 keys (hex digits and control keys only), but provided AIM-standard expansion interfaces and true
RS-232 In telecommunications, RS-232 or Recommended Standard 232 is a standard originally introduced in 1960 for serial communication transmission of data. It formally defines signals connecting between a ''DTE'' ('' data terminal equipment'') suc ...
(voltage level as well as current loop mode supported).


Description

The KIM-1 consisted of a single
printed circuit board A printed circuit board (PCB; also printed wiring board or PWB) is a medium used in electrical and electronic engineering to connect electronic components to one another in a controlled manner. It takes the form of a laminated sandwich str ...
with all the components on one side. It included three main ICs; the MCS6502 CPU, and two MCS6530 Peripheral Interface/Memory Devices. Each MCS6530 comprises a mask programmable 1024 x 8 ROM, a 64 x 8 RAM, two 8 bit bi-directional ports, and a programmable interval timer. 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. In the 1970s memory sizes were expressed in several ways. Semiconductor manufacturers 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 manufacturers 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 The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer and for this reason it is the smallest addressable uni ...
'' and the advertisement stated "1 K BYTE RAM" and "2048 ROM BYTES". Also included were six
7-segment A seven-segment display is a form of electronic display device for displaying decimal numerals that is an alternative to the more complex dot matrix displays. Seven-segment displays are widely used in digital clocks, electronic meters, basic ca ...
LEDs (similar to those on a pocket
calculator An electronic calculator is typically a portable electronic device used to perform calculations, ranging from basic arithmetic to complex mathematics. The first solid-state electronic calculator was created in the early 1960s. Pocket-sized ...
) 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
Teletype Model 33 The Teletype Model 33 is an electromechanical teleprinter designed for light-duty office use. It is less rugged and cost less than earlier Teletype machines. The Teletype Corporation introduced the Model 33 as a commercial product in 1963 af ...
ASR and paper tape reader and punch. One of these connectors also doubled as the power supply connector, and included analog lines that could be attached to a
cassette tape The Compact Cassette or Musicassette (MC), also commonly called the tape cassette, cassette tape, audio cassette, or simply tape or cassette, is an analog magnetic tape recording format for audio recording and playback. Invented by Lou Ott ...
recorder. Earlier
microcomputer A microcomputer is a small, relatively inexpensive computer having a central processing unit (CPU) made out of a microprocessor. The computer also includes memory and input/output (I/O) circuitry together mounted on a printed circuit board (PC ...
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 In computing, booting is the process of starting a computer as initiated via Computer hardware, hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its ma ...
. Once loaded, the loader would be used to load a larger program off a storage device like a
paper tape Five- and eight-hole punched paper tape Paper tape reader on the Harwell computer with a small piece of five-hole tape connected in a circle – creating a physical program loop Punched tape or perforated paper tape is a form of data storage ...
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 Terminal Interface Monitor software called TIM that was "contained in 2048 bytes of ROM in two 6530 ROM/RAM/IO arrays". 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 computer A single-board computer (SBC) is a complete computer built on a single circuit board, with microprocessor(s), memory, input/output (I/O) and other features required of a functional computer. Single-board computers are commonly made as demonstrat ...
s, 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.


Video display

The designer of the
TV Typewriter The TV Typewriter is a video terminal that could display two pages of 16 lines of 32 upper case characters on a standard television set. The design, by Don Lancaster, appeared on the cover of '' Radio-Electronics'' magazine in September 1973. Th ...
,
Don Lancaster Donald E. Lancaster is an American author, inventor, and microcomputer pioneer. Background Lancaster is a writer and engineer, who authored multiple articles for computer and electronics magazines of the 1970s, including ''Popular Electronics' ...
, 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 ''Popular Electronics'' was an American magazine published by John August Media, LLC, and hosted at TechnicaCuriosa.com. The magazine was started by Ziff-Davis Publishing Company in October 1954 for electronics hobbyists and experimenters. It soo ...
'' in July 1977. The complete kit could be ordered from PAiA Electronics for . Lancaster expanded this design to do color and simple graphics in ''The Cheap Video Cookbook''.


Specifications

* CPU: MCS6502, clocked at 1 MHz * 2× PIO MCS6530 , a , 2× 8-bit bi-directional ports, programmable interval timer * 8× 6102
static RAM Static random-access memory (static RAM or SRAM) is a type of random-access memory (RAM) that uses latching circuitry (flip-flop) to store each bit. SRAM is volatile memory; data is lost when power is removed. The term ''static'' differe ...
1024 × 1 (1024 bytes) * 6×
7-segment A seven-segment display is a form of electronic display device for displaying decimal numerals that is an alternative to the more complex dot matrix displays. Seven-segment displays are widely used in digital clocks, electronic meters, basic ca ...
LEDs * 24-key calculator type keypad * 2× serial ports * Terminal Interface Monitor (TIM), that handled
booting In computing, booting is the process of starting a computer as initiated via Computer hardware, hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its ma ...
, keypad, seven-segment LEDs, and cassette tape


Tape format

Each bit is represented by three 2.484 ms long tones. The first is always 3700 Hz, the middle is 3700 Hz for "0" or 2400 Hz for "1", and the last one is always 2400 Hz. This gives an effective bit rate of 134.2 bit/s. Detection is done through a
PLL A phase-locked loop or phase lock loop (PLL) is a control system that generates an output signal whose phase is related to the phase of an input signal. There are several different types; the simplest is an electronic circuit consisting of a v ...
using LM565. 091208 users.telenet.be The format of data on the tape is: 100 bytes with the value 0x16 (SYN, Synchronous Idle), one byte with the value 0x2A (*), the record identification number, the start address (two characters for the low byte of address, two characters for the high byte), the end address (in the same format), the actual data, one byte with the value 0x2F ("/" character ), a two-byte
checksum A checksum is a small-sized block of data derived from another block of digital data for the purpose of detecting errors that may have been introduced during its transmission or storage. By themselves, checksums are often used to verify data ...
, and two bytes with the value 0x04 (EOT, End Of Transmission). Each byte of memory is stored as two sequential ASCII characters on tape, for example,
hexadecimal In mathematics and computing, the hexadecimal (also base-16 or simply hex) numeral system is a positional numeral system that represents numbers using a radix (base) of 16. Unlike the decimal system representing numbers using 10 symbols, he ...
B5 in memory (181 decimal) would be stored as two sequential ASCII characters "B" and "5" (42 and 35 hexadecimal).


See also

* Elektor Junior Computer * Microprocessor development board


References


External links


KIM-1
and collection of old digital and analog computers at oldcomputermuseum.com
KIM-1 6502 website
erik.vdbroeck's resource site for the KIM-1, with several
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaS ...
'ized manuals and books
Instructions on building your own KIM-1
{{Authority control Commodore 8-bit computers Early microcomputers