Самый популярным компьютером, который когда-либо продавался, был Commodore C64, проданный в количестве 27 миллионов штук в 1980-е. Мало что осталось от тех времён, 8-битной ретро-эпохи, когда молодой длинноволосый инженер-самоучка, мог, имея решимость и удачу, сесть и разработать компьютер, используя механический карандаш, кучу справочников и много бумаги.
Меня зовут Бил Хёрд (Bil Herd) и я был длинноволосым самоучкой, который бредил электроникой, и, с юношеской страстью, занялся разработкой Commodore C128, последнего 8-битного компьютера, который был способен привнести что-то новое в сферу домашних компьютеров. Команда, в которой я работал, получила возможность выпустить последний 8-битный компьютер, принимая во внимание тот факт, что всё, что мы делали, должно быть завершено за 5 месяцев, к выставке Consumer Electronics Show (CES) в 1985 году в Лас-Вегасе.
Мы (компания Commodore) могли делать то, что не могла делать легко ни одна из других компьютерных компаний, мы делали свои собственные интегральные схемы, и мы имели тогда две микросхемы: микропроцессор 6502 и контроллер дисплея VIC. У нас были силы сделать мощный компьютер, но это имело свою цену: кастомные микросхемы для C128 не были готовы в течении первых трёх месяцев из 5, а одну из микросхем мы заставили работать только хитростью.
Участие в выставке CES, до начала производства, до того, как были готовы кастомные чипы, не оставляло нам выбора, кроме как использовать хаки, чтобы уложиться в дедлайн. Под хаками я имею в виду, что мы создали плату эмулятора из ТТЛШ-микросхем, которая работала так же, как и 48-выводная микросхема Commodore/MOS.
Что добавляло веселья, через пару недель отдел маркетинга, находясь в бреду отрицания реальности, выпустил пресс-релиз, гарантирующий 100% совместимость с С64. Мы спросили их (отдел маркетинга), как они собираются достичь столь возвышенной цели, но в итоге решение этой задачи было оставлено нам.
В процессе разработки мы осознали, чем, наиболее вероятно, будет являться последняя 8-битная система Commodore. Мы собирались реализовать как можно больше функций, которые можно было успеть сделать за 5 месяцев. Мы решили, что у нас будет два процессора, три операционных системы, поддержка 40 и 80 символов в строке, и это будет первый домашний компьютер, преодолевший барьер 64К. Мы относились к C128 как к 9 фунтам всякого добра в 5-фунтовом мешке, и у нас не было 10-фунтового мешка, чтобы вместить всё. Мы знали, что 8-битная эпоха подходит к концу, и мы шутили о том, что должны выйти за дверь и выключить свет.
C128 требовал два новых 40-выводных чипа — блок управления памяти (MMU), главный массив программируемой логики (Master Programmable Logic Array, PLA) и почитаемый, но страшный VICII, нуждающийся в переработке. Мы также склонили разработчиков чипов к разработке специальной 48-выводной версии микропроцессора 6502, и решили использовать новый видеочип Commodore с поддержкой 80 символов в строке, что само по себе почти послужило причиной опоздания на CES (но это уже другая история).
Итак, нам нужен был серьёзный хакинг, нам нужно было начинать разрабатывать программное обеспечение (полностью новое ядро, монитор и новую версию Basic с поддержкой структурированных команд), нам нужно было разрабатывать печатные платы, нам нужно было отлаживать аппаратную часть, и понимать, как использовать 128К памяти (да, именно «К», а не «М», «Г» или «Т»), и первый MMU, использованный в домашнем компьютере. И к тому же у нас было два процессора (6502/Z80), и два дисплея на 40 символов и на 80 символов в строке. Домашние мониторы тогда не существовали, и мы рассчитывали на то, что монитор будет готов вовремя, как и новый дисковод.
Мы разработали первую плату с расчётом на 40-выводные DIP-корпуса или 40-выводные кабели эмулятора, подключаемые к платам, которые были построены на микросхемах серии 74LS и причудливых PLA (которые заменяли FPGA в то время), и содержали линии задержки, и всё, что можно было найти тогда, чтобы как можно точнее воспроизвести кастомные чипы, чтобы программисты могли продолжать работу.
Наш подход к конструированию заключался в добавлении к печатной плате по возможности всего, про что мы знали наверняка, и перемычек везде, где можно. Главной техникой 80-х был монтаж накруткой, и мы делали прототип главной платы и субмодули, сделанные с помощью накрутки, заменяющие кастомные чипы, которые, как ожидалось, прибудут через пару месяцев. (Посмотрите на фотографию обратной стороны печатной платы, трудно поверить, что через три месяца начнётся производство миллионными тиражами).
Это было только начало, мы должны были иметь в виду два безумных обстоятельства: мы должны были делать все хаки и исправления за одну ночь, когда менеджеры спали у себя дома, и конечный результат должен работать в миллионах устройств.
В последние дни перед CES мы ели наши воскресные ужины, завёрнутые в алюминиевую фольгу, в лаборатории, подогревая еду на горячих жёстких дисках, и мылись в умывальниках, мои ботинки совсем износились от интенсивного использования, и были выброшены, и в ботинке завелась мышь (первая коммодоровская мышь)
Мы собрали все блоки в ночь перед выставкой, сотрудники Commodore Business Machines (CBM) были обязаны доставить 80-символьный видеочип, который должен был стать звездой шоу. Программист, который портировал CP/M, чинил последний баг, связанный с 80-символьным режимом, редактируя сырые данные на дискете.
Мы сделали продукт с нужными характеристиками к шоу. Ничего не падало, никаких «голубых экранов», и пресса была добра к нам. Возвратившись к работе, мы должны были отдохнуть от того, что мы провели в кубиклах несколько месяцев. Мы наконец-то смогли принять душ, и вялое выражение лица сменилось нормальным.
Мы сделали последний 8-битный компьютер, их эпоха закончилась, Amiga собиралась выпустить 16-битный компьютер, и мы были взволнованы этим, несмотря на постоянные слухи о сокращениях инженеров. Лишившись основателя, Джека Трэмиела, и его драйва, CBM, как казалось, бесцельно бродила, отменив следующий компьютер, LCD Computer, и не уделяя достаточного внимания маркетингу главных продуктов. Я чувствовал, что старая эпоха подходит к концу. Команда разрушалась без новых сложных задач, которые держали нас вместе. В конце концов, я стал в свободное время работать в центре травматологии в Нью-Джерси, так как у меня выработалась зависимость от адреналина.
——————
Бил Хёрд продолжил свою карьеру разработкой высокопроизводительных систем машинного зрения и ультразвуковых датчиков, применяемых в современных автомобилях. За прошедшие 20+ лет Бил был предпринимателем и основал несколько малых предприятий. Бил поддерживает связь с коллекционерами и фанатами старых компьютеров Commodore через свои сайты c128.com и herdware.com, которые содержат опенсорсные проекты и предлагают образовательные электронные наборы.
Команда инженеров C128, как она видна на пасхальной картинке:
Bil Herd: Designer & Hardware Lead
Dave Haynie: Intricate timing, PLA Emulator and DRAM
Frank Palaia: Z80 Integration and Ram Expansion
Fred Bowen: Programmer and Software Lead- Kernal & Monitor
Terry Ryan: Programmer- Basic V7 including structured language additions.
Von Ertwine: Programmer- CPM
Commodore C128 был выпущен в 1985 году и продан в количестве 5+ миллионов штук, принеся в итоге около 1,5 млрд. долларов прибыли. C128D с встроенным дисководом хотели выпустить в то же самое время, что и С128, но он не выпускался пару лет.