KIM -1 , сокращение от Keyboard Input Monitor , представляет собой небольшой одноплатный компьютер на базе процессора 6502, разработанный и произведенный компанией MOS Technology, Inc. и выпущенный в 1976 году. В то время он пользовался большим успехом из-за своей низкой цены (благодаря недорогому микропроцессору 6502) и легкого доступа к расширяемости.
Первый процессор MOS Technology, 6501 , можно было подключить к существующим материнским платам, которые использовали Motorola 6800 , что позволяло потенциальным пользователям (т. е. инженерам и любителям) очень легко получить систему разработки и запустить ее, используя существующее оборудование. Motorola немедленно подала в суд, вынудив MOS снять 6501 с рынка. Изменение расположения выводов привело к появлению «дружественного к судебным искам» 6502. В остальном идентичный 6501, он, тем не менее, имел недостаток в том, что не имел машины, на которой новые пользователи могли бы быстро начать играть с ЦП .
Чак Педдл , лидер группы 650x в MOS (и бывший член команды 6800 компании Motorola), разработал KIM-1, чтобы удовлетворить эту потребность. KIM-1 появился на рынке в 1976 году. Хотя изначально машина предназначалась для использования инженерами, она быстро нашла большую аудиторию среди любителей. Полную систему можно было построить менее чем за 500 долларов США , купив сам компьютер всего за 245 долларов США , а затем добавив блок питания, подержанный терминал и кассетный ленточный накопитель .
Было доступно множество книг, демонстрирующих небольшие программы на языке ассемблера для KIM, включая «Первую книгу KIM» Джима Баттерфилда и др . [1] Одна демонстрационная программа превратила KIM в музыкальную шкатулку, переключая управляемый программным обеспечением выходной бит, подключенный к небольшому громкоговорителю . Канадский программист Питер Р. Дженнингс создал, вероятно, первую игру для микрокомпьютеров, которая продавалась на коммерческой основе, Microchess , первоначально для KIM-1.
По мере того, как система становилась все более популярной, одним из распространенных дополнений стал язык программирования Tiny BASIC . Это потребовало простого расширения памяти; «все декодирование для первых 4 К обеспечивается прямо на плате KIM. Все, что вам нужно, — это еще 4 К микросхем RAM и несколько буферов». [2] Сложнее всего было загрузить BASIC с кассеты — 15-минутное испытание, подверженное ошибкам.
Rockwell International — которая была вторым источником 6502, вместе с Synertek — выпустила свой собственный микрокомпьютер на одной плате в 1978 году, AIM-65 . AIM включал в себя полную клавиатуру ASCII , 20-символьный 14-сегментный буквенно-цифровой светодиодный дисплей и небольшой принтер, похожий на кассовый аппарат . Отладочный монитор был предоставлен в качестве стандартной прошивки для AIM, и пользователи также могли приобрести дополнительные чипы ROM с ассемблером и интерпретатором Microsoft BASIC на выбор.
Наконец, существовал вариант Synertek SYM-1 , который можно было бы назвать машиной, находящейся на полпути между KIM и AIM; он имел небольшой дисплей KIM и простую мембранную клавиатуру из 29 клавиш (только шестнадцатеричные цифры и клавиши управления), но при этом имел интерфейсы расширения стандарта AIM и настоящий RS-232 (поддерживался как уровень напряжения, так и режим токовой петли).
KIM-1 состоял из одной печатной платы со всеми компонентами на одной стороне. Он включал три основные ИС : ЦП MCS6502 и два периферийных интерфейса/устройства памяти MCS6530 . Каждый MCS6530 включал в себя маску программируемого ПЗУ 1024 x 8, ОЗУ 64 x 8, два 8-битных двунаправленных порта и программируемый интервальный таймер. [3] В брошюре KIM-1 говорилось «ОЗУ 1 К БАЙТ», но на самом деле у него было 1152 байта. Память состояла из восьми статических ОЗУ 6102 (1024 x 1 бит) и двух 64-байтных ОЗУ MCS6530. В 1970-х годах размеры памяти выражались несколькими способами. Производители полупроводников использовали точный размер памяти, например 2048 x 8, а иногда указывали количество бит (16384). Мини- и мэйнфреймовые компьютеры имели различную ширину памяти (от 8 бит до более 36 бит), поэтому производители использовали термин «слова», например, 4К слов. Ранняя реклама любительских компьютеров использовала как «слова», так и «байты». Было обычным делом видеть «4096 слов», «4К (4096) слов» и «4 К байт». Термин КБ не использовался или встречался очень редко. KIM-1 был представлен в апрельском выпуске BYTE 1976 года , и в рекламе говорилось «1 К БАЙТ ОЗУ» и «2048 ПЗУ БАЙТОВ». [4]
Также были включены шесть 7-сегментных светодиодов (похожих на те, что на карманном калькуляторе ) и 24-клавишная клавиатура калькуляторного типа. Многие из контактов частей ввода-вывода 6530 были подключены к двум разъемам на краю платы, где они могли использоваться как последовательная система для управления Teletype Model 33 ASR и считывателем бумажной ленты и перфоратором .
Один из этих разъемов также служил разъемом питания и включал аналоговые линии, которые можно было подключить к кассетному магнитофону.
Более ранние микрокомпьютерные системы, такие как MITS Altair, использовали ряд переключателей на передней панели машины для ввода данных. Чтобы сделать что-то полезное, пользователь должен был ввести в машину небольшую программу, известную как «bootstrap loader», с помощью этих переключателей, процесс, известный как загрузка . После загрузки загрузчик использовался для загрузки более крупной программы с устройства хранения, например, устройства чтения перфоленты . Часто требовалось более пяти минут, чтобы загрузить крошечную программу в память, и одна ошибка при переключении переключателей означала, что загрузчик выведет машину из строя. Это могло привести к искажению части кода начальной загрузки, и в этом случае программисту приходилось вводить все заново и начинать все заново.
KIM-1 включал в себя несколько более сложное встроенное программное обеспечение монитора интерфейса терминала под названием TIM , которое «содержалось в 2048 байтах ПЗУ в двух массивах 6530 ПЗУ/ОЗУ/ВВОД». [5] Это программное обеспечение монитора включало возможность запуска кассетной ленты для хранения, управления светодиодным дисплеем и управления клавиатурой. Как только включалось питание, монитор запускался, и пользователь мог немедленно начать взаимодействовать с машиной с помощью клавиатуры. KIM-1 был одним из первых одноплатных компьютеров , для использования которого в качестве автономного экспериментального компьютера требовался только внешний источник питания. Этот факт, а также относительно низкая стоимость запуска, сделали его довольно популярным среди любителей вплоть до конца 1970-х годов.
Разработчик телевизионной пишущей машинки Дон Ланкастер разработал недорогой видеодисплей для KIM-1. Дополнительная плата могла отображать до 4000 символов на телевизоре или мониторе. Типичная конфигурация — 16 строк по 32 символа только в верхнем регистре. Плата имела всего 10 недорогих ИС и использовала память KIM для хранения экрана.
Проект TVT-6 появился на обложке Popular Electronics в июле 1977 года. [6] Полный комплект можно было заказать в PAiA Electronics за 34,95 доллара США .
Ланкастер расширил этот дизайн, чтобы сделать цветную и простую графику в The Cheap Video Cookbook . [7]
Каждый бит представлен тремя тонами длиной 2,484 мс. Первый всегда 3700 Гц, средний 3700 Гц для "0" или 2400 Гц для "1", а последний всегда 2400 Гц. Это дает эффективную скорость передачи данных 134,2 бит/с. Обнаружение осуществляется с помощью ФАПЧ с использованием LM565. [8]
Формат данных на ленте: 100 байт со значением 0x16 (SYN, Synchronous Idle), один байт со значением 0x2A (*), идентификационный номер записи, начальный адрес (два символа для младшего байта адреса, два символа для старшего байта), конечный адрес (в том же формате), собственно данные, один байт со значением 0x2F (символ «/»), двухбайтовая контрольная сумма и два байта со значением 0x04 (EOT, End Of Transmission). [8]
Каждый байт памяти хранится в виде двух последовательных символов ASCII на ленте, например, шестнадцатеричное число B5 в памяти (десятичное 181) будет храниться в виде двух последовательных символов ASCII «B» и «5» (шестнадцатеричное 42 и 35). [8]