Глава 10 Моя великая идея
Глава 10
Моя великая идея
Я помню день, когда началась компьютерная революция, изменившая жизнь людей во всем мире.
Это случилось в марте 1975 года, на первом собрании странной группы чудиков, называвшей себя «Клуб самодельных компьютеров». В клубе состояли люди, увлеченные новыми технологиями и возможностями, которые открывались благодаря им. Большинство участников были молоды, хотя некоторые уже достигли довольно преклонного возраста. Все мы казались типичными инженерами, приличных на вид людей среди нас не было. Ха-ха. Так мы и были инженерами! Мы собирались в гараже безработного инженера по имени Гордон Френч.
Сразу после первого собрания я начал проектировать компьютер, который потом стал известен как Apple I. Вот как этот клуб на меня повлиял!
Практически с самого начала целью клуба было внедрение технологий в жизнь обычных людей. Мы хотели добиться, чтобы компьютеры были доступны простым людям – и в смысле цены, и в смысле удобства пользования. Ту же цель преследовал и я, причем уже несколько лет. Так что клуб стал для меня вторым домом.
Постепенно цели нашего «Клуба кустарей» расширялись. Прошло немного времени, и мы уже заговорили о новом мире, в котором компьютер мог быть у каждого, где им мог пользоваться каждый вне зависимости от профессии и достатка. Мы хотели, чтобы компьютеры были доступны и меняли жизнь людей.
В «Клубе самодельных компьютеров» все считали компьютеры благом для человечества, инструментом социальной справедливости. Мы были уверены, что недорогие компьютеры дадут людям возможность заниматься тем, чем они не могли заняться прежде. В то время компьютер могли себе позволить лишь крупные компании, им было доступно все то, чего не было и у более мелких компаний, и у обычных людей. Мы же собирались изменить ситуацию.
Мы были революционерами. Большие компании вроде IBM и Digital Machines не услышали наш манифест и не сообразили, насколько могущественной может оказаться концепция маленького компьютера. Они видели маленькие компьютеры для энтузиастов, которые мы разрабатывали, и считали, что это лишь игрушки, что большой бизнес на них не построишь. Они даже не представляли, во что они могут превратиться.
Мы много говорили о своей роли в революции. Мы собирались изменить образ жизни и взаимодействия людей – навсегда, сильнее, чем можно было себе вообразить.
Конечно, мы обсуждали и конкретные компоненты, благодаря которым компьютеры станут работать быстрее, и технические решения, и примочки. Мы говорили об утилитарных возможностях применения компьютеров. Мы считали, что компьютеры будут задействованы для таких странных целей, как управление освещением в доме. Тогда это было невозможно. Но все чувствовали, что грядут серьезные перемены. Мы не всегда могли облечь свои идеи в нужные слова, но мы верили в них.
Итак, почти все крупные компьютерные компании официально заявляли, что то, чем мы занимаемся, – несерьезно. Они ошибались, а мы были правы – причем с самого начала. Но тогда даже мы не представляли себе, насколько окажемся правы и каким колоссальным феноменом станут домашние компьютеры.
* * *
Мое участие в «Клубе кустарей» началось с забавной истории. Помните Аллена Баума, который снова и снова возникал в моей жизни в самые важные ее моменты? Это мой друг, который работал со мной в Sylvania; это с подачи его отца я разработал глушилку для ТВ; это он устроил тот прикол в школе Хоумстед вместе со мной и Стивом Джобсом; и это он помог мне попасть на работу мечты в Hewlett-Packard.
В то время я еще работал в HP. Однажды мне в офис позвонил Аллен. Тот его звонок изменил всю мою жизнь – ведь именно благодаря ему я познакомился с «Клубом самодельных компьютеров».
Аллен сказал что-то вроде: «Слушай, я тут нашел в HP листовку, приглашают на собрание людей, которые собирают ТВ-терминалы, видеотерминалы и прочие штуки».
О ТВ-терминалах я кое-что знал. К тому моменту – а это было в 1975 году – я выполнил кучу разных проектов на стороне и многое узнал о том, как выводить данные с компьютеров на телевизоры. Я не только разработал свою версию игры Pong и Breakout, игру для Atari, но и собрал терминал с доступом к ARPANET – правительственной сети компьютеров, которая была предшественницей Интернета. Мой терминал мог выводить на экран буквы со скоростью до 60 символов в минуту. Да, сейчас кажется, что это медленно, но это было в шесть раз быстрее большинства тогдашних телетайпов и гораздо дешевле. Системы телетайпа стоили тысячи долларов – для простого инженера это было слишком. Я же создал свою систему на основе телевизора Sears и дешевой клавиатуры от печатной машинки за 60 долларов.
Я подключил видеокабель к контрольному выводу домашнего телевизора – так же, как и в моей версии Pong, и в видеомагнитофоне Cartrivision. Сам разъем я нашел в принципиальной схеме телевизора.
Кстати, если бы Аллен сказал мне, что в клубе увлекаются микропроцессорами, наверное, я не стал бы туда ходить. Уверен, что не пошел бы. Я был робким парнем, и мне казалось, что я совсем мало знаю о свежих компьютерных разработках. О компьютерах я к тому времени вовсе не думал, с головой уйдя в работу над своими прекрасными калькуляторами. Я даже не следил за тем, что происходит в компьютерном мире. Представьте себе, я даже не понимал, что это за штука такая – микропроцессор.
В общем, я был уверен, что обсуждать будут терминалы для ТВ, и подумал: «Да, можно сходить и что-нибудь рассказать».
Преодолев робость, я все-таки отправился туда. Это решение изменило все. Тот вечер оказался одним из самых важных в моей жизни.
И снова о «Клубе»
В этом самом «Клубе самодельных компьютеров», в котором я состоял с марта 1975 года, зародилась не только Apple, но и другие компьютерные компании. Это была просто кузница революционеров. В числе других участников, основавших свои компьютерные компании, – Боб Марш и Ли Фельзенштейн (Processor Technology), Адам Осборн (Osborne Computers). И, разумеется, мы со Стивом Джобсом (который присоединился позже, когда я его позвал). Когда-то я написал статью о роли Клуба в компьютерной революции. Вы можете найти ее по адресу:
http://www.atariarchives.org/deli/homebrew_and_how_the_apple.php.
* * *
На первое собрание в гараже в Менло-парк пришло около тридцати человек. На улице было холодно, накрапывал дождик, но двери были распахнуты настежь. Внутри стояли ряды стульев. Я нашел себе место и начал с интересом слушать эту грандиозную дискуссию.
На собрании обсуждали какой-то недавно поступивший в продажу микропроцессорный комплект для компьютера. И все были очень этим взбудоражены. У кого-то я заметил журнал Popular Electronics, на обложке которого и красовался компьютер. Назывался он «Альтаир», а выпускала его компания из Нью-Мексико под названием MITS. Детали можно было купить по отдельности и собрать из них собственную машину.
Оказалось, что все эти люди – фанаты «Альтаира», а вовсе не ТВ-терминалов. Они бросались словами и терминами, каких мне в жизни не доводилось слышать. Они говорили о процессорных чипах вроде Intel 8080, Intel 8008, 4004, а я даже не понимал, что это такое. Ведь я три года разрабатывал калькуляторы.
Я чувствовал себя не в своей тарелке! Думал, что мне здесь не место, и проклинал Аллена Баума. Когда пришлось представляться, я заявил: «Я Стив Возняк, я занимаюсь калькуляторами в HP, а еще разработал видеотерминал». Не помню, сказал ли я что-либо еще, потому что необходимость выступить на публике выбила у меня почву из-под ног. После этого мы все записали на листке бумаги свои имена, обозначили свои интересы и свои таланты. (Теперь тот листок стал знаменитым, его можно найти в Интернете.) Я написал: «У меня очень мало свободного времени».
Забавно, правда? Сейчас я ужасно занят, люди постоянно просят у меня автографы и все такое. Но тогда я был загружен не меньше: я все время работал над разными продуктами, проектировал на работе, проектировал дома. Мне кажется, я не слишком изменился с тех пор.
Короче говоря, я был напуган и не чувствовал себя своим среди этих людей. Но затем все очень удачно повернулось. Какой-то парень стал раздавать собравшимся листочки с техническими спецификациями микропроцессора 8008, разработанного компанией из Канады. (Это была почти точная копия, клон микропроцессора Intel 8008.) Я взял эту бумажку домой, решив: ну что же, хоть в чем-нибудь да разберусь.
* * *
Той ночью я изучил характеристики микропроцессора и увидел, что к нему есть инструкция, как добавить данные из памяти в регистр А. Минуточку! А с помощью другой инструкции можно было вычесть содержимое памяти из регистра А. Вот как! Наверное, для вас это все темный лес, но я точно понимал, что означают эти инструкции, и это было поразительное открытие. Ведь мне тут же пришло в голову, что с помощью точно таких же инструкций проектировал на бумаге все свои мини-компьютеры в школе и колледже. И все они очень напоминали этот процессор.
Только теперь все части центрального процессора находились на одном чипе, а не на нескольких. Это и был микропроцессор. А еще к его разъемам можно было подключать разные другие компоненты, например чипы памяти.
Тогда я сообразил, что это за «Альтаир», которым все на собрании так восхищались. Он был в точности таким же, как компьютер «Крем-сода», который я разработал пятью годами ранее! Ну почти таким же. Разница заключалась в том, что у «Альтаира» был микропроцессор – центральный процессор на одном чипе, – а в моем компьютере он состоял из нескольких чипов. Кроме того, «Альтаир» можно было купить в магазине – кажется, за 379 долларов. Других отличий не было. А ведь я спроектировал свой компьютер за пять лет до того, как «Альтаир» попался мне на глаза.
Казалось, я всю жизнь шел именно к этому моменту. Я перестраивал свой мини-компьютер, выводил данные на экран в Pong и Breakout, разработал ТВ-терминал. Занимаясь «Крем-содой» и другими компьютерами, я научился подключать память и собирать работоспособную систему. Я понял: мне нужны только этот канадский процессор или его аналог, и еще несколько чипов памяти. И тогда у меня будет компьютер, о котором я всегда мечтал!
Черт возьми! Я могу сам собрать компьютер и запрограммировать его делать любые клевые штуки. Веселья хватит до конца жизни.
Мне не было нужды тратить 400 долларов на «Альтаир» – эту разрекламированную кучку чипов в металлическом корпусе с лампочками. А ведь примерно столько я зарабатывал после уплаты налогов. Но при этом, чтобы сделать на «Альтаире» хоть что-нибудь интересное, нужно было потратить гораздо больше – сотни, а может быть, и тысячи долларов. Кроме того, я уже прошел этот этап, работая над компьютером «Крем-сода», и уже тогда мне это наскучило. Зачем возвращаться назад, если можно идти вперед? Теперь «Крем-сода» стал для меня стартовой площадкой, не более того.
Тогда я решил: у меня есть возможность собрать полноценный компьютер, какой мне всегда хотелось. Достаточно было обзавестись микропроцессором, чтобы собрать совсем маленький компьютер и писать для него программы – игры и симуляции, которые мне нужны были по работе. Возможностям не было предела. И не надо было покупать «Альтаир»! Я бы разработал его сам с нуля.
Той ночью после собрания у меня в голове что-то щелкнуло, и я ясно увидел всю эту концепцию персонального компьютера. Сразу и целиком.
* * *
И той самой ночью я начал делать наброски компьютера, потом ставшего известным как Apple I. Сейчас кажется, что это был быстрый проект. Чтобы спроектировать компьютер на бумаге, понадобилось лишь несколько часов, но лишь через несколько месяцев я смог заполучить все нужные детали и изучить их спецификации.
У меня была масса причин заняться этим проектом. Прежде всего это был шанс показать людям из «Клуба», что вполне возможно самому собрать доступный компьютер – настоящий компьютер, на котором можно программировать, – по цене «Альтаира» и всего из нескольких чипов. И это был прекрасный способ продемонстрировать свои реальные таланты, умение изобретать хитроумные, экономичные и доступные схемы из минимального количества деталей.
А еще я разрабатывал Apple I потому, что хотел подарить его людям. На следующем собрании я раздал чертежи своего компьютера.
Для меня это был способ установить контакт и заслужить признание. Мне нужно было что-то создать, чтобы показать это другим. И я хотел, чтобы инженеры из нашего клуба собирали компьютеры для себя, а не покупали раскрученные процессорные комплекты типа «Альтаира». Я хотел, чтобы они поняли: они могут не зависеть от производителей «Альтаира», от его сложной системы лампочек и переключателей. К тому моменту все компьютеры были похожи на кабину самолета. «Крем-сода» не был исключением: куча тумблеров, которыми нужно было управлять, и сигналов, которые надо было научиться понимать.
А они могли собрать компьютер, работающий с телевизором и имеющий клавиатуру, как печатная машинка. Компьютер, который я так четко себе представлял.
Я уже спроектировал терминал, на котором можно было печатать обычные слова и предложения и передавать их на удаленный компьютер, а тот мог отправлять эти слова на телеэкран. Я решил, что надо лишь добавить компьютер – микропроцессор и память – в тот же корпус, в котором работал мой терминал.
Почему бы вместо удаленного компьютера не запустить маленький микропроцессор?
Я подумал: если у нас уже есть клавиатура, то зачем нам отдельная панель управления? Можно было печатать слова и сразу видеть их на экране.
Сейчас говорят, что идея объединить мой терминал с микропроцессором была совершенно оторвана от жизни. Наверное, многим бы тогда так и показалось. Но для меня это был просто следующий логический шаг.
Тот первый компьютер Apple – хотя он еще так не назывался и вообще был безымянным, – как раз тот случай, когда все встает на свои места. И вот что я еще вам скажу. До Apple I у всех компьютеров были сложные панели управления и никаких экранов и клавиатур. После Apple I все стало с точностью до наоборот.
* * *
Позвольте немного рассказать вам о первом компьютере и о том, как я разработал его.
Сперва я набросал механизм его работы на бумаге. Точно так же я проектировал мини-компьютеры в школе и колледже, только до их физического воплощения так дело и не дошло. Затем нужно было решить, какой центральный процессор я задействую. Процессор «Альтаира» – Intel 8080 – стоил больше, чем я платил в месяц за квартиру. К тому же простые люди не могли купить один или несколько таких процессоров – они продавались партиями и только компаниям.
Но, к счастью, я рассказал о «Клубе самодельных компьютеров» и о своих планах соседям по офису в HP. Тогда у Майрона Таттла возникла идея. (Помните его? Это его самолет чуть не потерпел катастрофу, когда я был на борту.) Он сообщил мне, что сотрудники HP могут покупать продукцию Motorola на особых условиях. Примерно за 40 долларов я мог купить микропроцессор Motorola 6800 и еще пару чипов. Черт, как дешево! Так что с процессором я определился очень быстро.
Довольно быстро я осознал и то, что калькуляторы HP – это тоже компьютеры. Ровно в той же степени, как «Альтаир», «Крем-сода» и так далее. У калькулятора были свои процессор и память. Но он имел одну особенность, отличавшую его от компьютеров того времени. После включения калькулятор был уже готов к работе: сразу, автоматически запускалась встроенная программа, и можно было вводить числа. Скажем, вы нажимаете «5». Процессор видит, что нажата клавиша, и спрашивает себя: это 1? Нет. 2? Нет. 3, 4… Это 5. И он выводит 5. Программа для этих операций была записана на трех маленьких чипах постоянной памяти (ROM), которые сохраняют данные даже при выключении питания.
Я пришел к выводу, что мне нужно найти чип ROM и написать такую же программу, выполняющуюся сразу после включения и позволяющую компьютеру загружаться автоматически. (При работе на «Альтаире» или на моем компьютере «Крем-сода» нужно было сначала установить выключатели в нужное положение, а потом полчаса вводить программу.) В Apple I я хотел упростить введение программы в память. Она должна была объяснить компьютеру, как считывать данные с клавиатуры, позволить вам вводить данные в память, видеть, что записано там, и запускать другие программы.
Если на «Альтаире» для загрузки программы требовалось около получаса, на Apple I с его клавиатурой это занимало меньше минуты.
Что такое ROM?
ROM – постоянная память – может быть запрограммирована только один раз и будет хранить информацию даже после выключения компьютера. На чипе ROM обычно записываются программы, которые компьютеру необходимо помнить всегда: что делать, когда он включается, что выводить на экран, как распознавать подключенные устройства вроде клавиатуры, принтера и монитора. Разрабатывая Apple I, я позаимствовал идею создания такой программы в ROM из калькуляторов HP.
Чтобы понять, что загружено в память «Альтаира», порой надо было полчаса разглядывать его лампочки. В Apple I хватало и секунды – одного взгляда на экран телевизора.
Я назвал свою маленькую программу «монитором», потому что в основном она занималась отслеживанием ввода с клавиатуры. Это ключевой момент – ведь конечной целью моего компьютера было написание программ. Если конкретнее, то я хотел запускать на нем «Фортран» – популярный в то время язык программирования.
Таким образом, идея состояла в том, чтобы заменить большую панель управления – похожую на кабину самолета, со всеми ее лампочками и переключателями – одной маленькой программой. Данные можно было вводить с настоящей клавиатуры и видеть результаты на настоящем экране.
С тех пор у каждого компьютера есть клавиатура и экран. Вот как кардинально все изменила моя идея.
* * *
У меня был свой стиль проектирования: прежде чем приступить к работе, я тратил массу времени на подготовку. Теперь, когда я почувствовал уверенность, что сделать компьютер реально, я начал искать информацию обо всех компонентах и чипах, которые могли бы пригодиться при его сборке.
Я ехал на работу утром – иногда даже в 6.30 утра – и там, сидя в одиночестве, быстро прочитывал инженерные журналы и инструкции к чипам. Я изучал спецификации и чертежи интересующих меня чипов, вроде того процессора Motorola за 40 долларов, о котором рассказал Майрон. Все это время я мысленно прорабатывал проект.
У Motorola 6800 было 40 коннекторов, и мне нужно было знать точно, как работает каждый из них. Поскольку я занимался этим только в свободное время, процесс затянулся надолго. Прошло несколько недель, а до конструирования так и не дошло. Наконец как-то ночью я начертил схему на бумаге. Наброски я делал и прежде, теперь же тщательно зарисовал все на своей чертежной доске в Hewlett-Packard.
Теперь до сборки компьютера оставался всего один шаг. Не хватало лишь комплектующих.
* * *
Мне стали попадаться статьи, в которых говорилось, что вскоре на выставке WESCON в Сан-Франциско будет представлен новый, гораздо более совершенный процессор. Они привлекали мое внимание еще и потому, что этот новый микропроцессор – 6502 производства компании MOS Technologies из Пенсильвании – был совместим с процессором Motorola 6800, положенным мной в основу компьютера, и повторял его электрическую схему. То есть я мог воткнуть его, не переделывая свою конструкцию.
А затем я услышал, что он будет продаваться с прилавка MOS Technologies на выставке. Вот как этот микропроцессор попал в Apple I: его было очень легко заполучить.
Более того, его цена была вдвое меньше той суммы, в которую обошелся бы мне процессор Motorola, даже если бы я покупал его на особых условиях для HP.
Выставка WESCON проходила 16–18 июня 1975 года в знаменитом выставочном центре Cow Palace в Сан-Франциско. Я с приятелями поехал туда и выстоял очередь перед столом MOS Technologies. Парень по имени Чак Педл торговал чипами с лотка.
Я тут же купил несколько штук по 20 долларов и руководство к ним за 5 долларов.
Теперь у меня было все необходимое для сборки компьютера.
* * *
Пару дней спустя на собрании «Клуба самодельных компьютеров» еще несколько человек радостно продемонстрировали свои процессоры 6502. Я не представлял, что они собираются с ними делать, но знал, чем займусь я сам.
Чтобы собрать компьютер, я разложил все детали на столе. Сборкой я занимался в своей кабинке в HP. Обычно после работы я ехал домой, разогревал готовый ужин в микроволновке или готовил спагетти, а потом снова ехал в офис (дорога занимала минут пять), проходил пост охраны и сидел там допоздна. Наверное, мне нравилось работать над проектом именно в HP, потому что там царил дух инженерии. И когда приходило время тестировать сборку или паять, можно было воспользоваться местным оборудованием.
Сначала я изучил свою схему на бумаге и точно определил, где и как размещу чипы на плате, чтобы перемычки между ними были короче и аккуратнее выглядели. Я собрал и разложил детали так, как они должны были размещаться на плате.
Большинство чипов были из видеотерминала, который я собрал для работы с ARPANET. Кроме того, у меня были микропроцессор, гнездо для еще одной платы с чипами памяти RAM и два периферийных адаптера для подключения процессора 6502 к терминалу.
Для всех чипов я задействовал гнезда, потому что был просто помешан на них – еще со времен работы в Electroglas, где припаянные чипы было не так-то просто извлечь и поменять. Я же хотел, чтобы это было легко.
Также у меня была пара гнезд для чипов памяти PROM. В этих чипах можно было хранить данные в виде маленькой программы, которая не стиралась при выключении компьютера.
У меня в лаборатории было два чипа PROM, на которых могло храниться 256 байт данных. Их было достаточно для крохотной программы. (Сегодня-то программы весят в миллионы раз больше.) Это настолько малый объем памяти, что в текстовом редакторе его хватит лишь на одно предложение.
Я решил записать на эти чипы свою программу-монитор, позволяющую использовать клавиатуру вместо панели управления.
Что такое ARPANET?
Это сокращение от Advanced Research Projects Agency Network – «Сеть агентства передовых исследовательских проектов». ARPANET разрабатывалась Министерством обороны США и стала первой рабочей сетью на основе пакетной коммутации, способной связывать компьютеры по всему миру. Затем она превратилась в то, что сегодня известно под названием Интернет.
ARPANET и Интернет основаны на передаче данных по принципу «пакетной коммутации». Компьютер разбивает фрагмент данных на пакеты, которые можно отправлять по разным линиям связи и затем собирать воедино на другом конце. До этого основным методом была коммутация каналов. Это было похоже на старые телефонные системы начала XX столетия. Каждому звонку соответствовал отдельный канал, и весь сигнал шел только по нему.
Использование пакетной коммутации – феноменальный прорыв, благодаря которому и стал возможен Интернет.
* * *
Чтобы подключить чипы в компьютере – спаять все вместе, – мне потребовалась одна ночь. Еще несколько вечеров я писал 256-байтную программу – причем в буквальном смысле, ручкой на бумаге. У меня здорово получались компактные программы, но здесь была непростая задача даже для меня.
Это была моя первая программа для микропроцессора 6502. Тогда нормальные люди писали программы так: они платили за компьютерное время, за использование терминала и печатали программу. Терминал был подключен к дорогущему здоровенному компьютеру, стоявшему где-то еще. И вот этот компьютер распечатывал вашу программу в виде нулей и единиц, которые микропроцессор мог распознать.
Затем нули и единицы вводились в память RAM или PROM, и программа запускалась. Но я не мог позволить себе платить за компьютерное время и поэтому вынужден был писать программу на бумаге. К счастью, в руководстве к процессору 6502 описывались последовательности нулей и единиц для каждой инструкции, для каждого шага программы. MOS Technologies даже выдавала маленькую карточку, которую можно было носить с собой в кармане: на ней были записаны все нули и единицы для всех нужных инструкций.
Итак, я записал программу на языке машинных кодов на левой стороне страницы. К примеру, я писал «LDA #44», что означало: загрузить данные, соответствующие 44 (в шестнадцатеричной системе счисления) в регистр А микропроцессора.
На правой стороне страницы я с помощью карточки записывал ту же инструкцию в шестнадцатеричной системе счисления. Инструкция из приведенного выше примера записывалась бы как A9 44. Она занимала 2 байта данных и на процессор поступала в таком виде: 10101001 01000100.
Чтобы написать программу, мне понадобилось несколько листов бумаги.
Я еле смог втиснуть все, что нужно, в это крохотное пространство на 256 байт. Я написал две версии: одна позволяла прерывать нажатием клавиши любую запущенную программу, другая – только проверить, что за клавиша нажата. Второй вариант назывался «опросом клавиатуры».
Днем я отнес две эти программы и несколько чипов памяти PROM в другое здание HP, где было оборудование, позволяющее «прожечь» их на чипе.
Но я все еще не мог закончить – и тем более протестировать – эти чипы, не имея памяти. Компьютерной, конечно.
Самым распространенным типом компьютерной памяти в то время были чипы SRAM (статическая RAM). «Крем-сода», «Альтаир» и все остальные компьютеры того времени использовали такую память. Я позаимствовал у Майрона Таттла 32 чипа SRAM. Каждый мог хранить 1024 бита данных. В общей сложности это было 4 килобайта – в шестнадцать раз больше, чем у «Альтаира» (256 байт).
Я спаял отдельную плату SRAM с этими чипами в гнездах и воткнул ее в разъем на моей основной плате.
Итак, я был готов проверить, работает ли мой компьютер.
* * *
Первым делом надо было подключить питание. Я воспользовался розетками рядом с моей кабинкой и проанализировал сигнал на осциллографе. Примерно час я выяснял, что же мешает микропроцессору заработать. Оказалось, что две ножки микропроцессора случайно замкнуло, и сигнал с обеих превратился в бессмысленный шум. Еще одну ножку я погнул, вводя чип в гнездо.
Но я продолжал возиться. Дело в том, что решить проблему со сборкой электронного устройства – настоящий кайф. Именно это и побуждает работать дальше, хотя в процессе ты испытываешь разочарование, гнев, подавленность и усталость, повторяя одно и то же много раз подряд. Ведь в какой-то момент ты понимаешь: все, ты решил проблему!
И наконец такой момент наступил и у меня. Мой микропроцессор заработал, и дело пошло.
Но надо было еще во многом разобраться. Я смог быстро отладить – то есть найти и исправить ошибки – терминальную часть компьютера, опираясь на свой большой опыт разработки терминала. Когда терминал вывел курсор на девятидюймовый черно-белый телевизор, стало ясно: он работает.
Следующий шаг – отладить 256-байтную программу-монитор. Я пару часов пытался заставить работать версию программы с прерываниями, но ничего не выходило. Я не мог заново записать программу в чипы PROM – для этого надо было опять пойти в другое здание. Я изучил спецификации чипа, чтобы понять, в чем ошибся, но до сих пор так и не понял, в чем было дело. Как знает любой инженер, прерывания – хитрая штука. Они могут давать отличные результаты, но вот заставить их работать – задачка непростая.
Наконец я забросил эту затею и взялся за два других чипа, с программой, которая проводила «опрос клавиатуры». Я нажал несколько клавиш, и о чудо! На экране появились буквы!
Ужасно трудно описать это чувство – когда что-то заработало с первой попытки. Это как послать мяч в лунку одним ударом с пятнадцати метров.
Времени было всего 10 вечера. Еще пару часов я практиковался во вводе и выводе данных на экран, убеждался, что они действительно сохраняются в памяти. Я даже набрал несколько очень коротких и простых программ и запустил их. Среди них была программа, печатающая на экране случайные символы.
То воскресенье, 29 июня 1975 года, стало поворотным моментом в истории, хотя тогда я этого и не понимал. Впервые стало возможно печатать символы на клавиатуре и тут же видеть, как они выводятся на экран.
Данный текст является ознакомительным фрагментом.