Электроника ИМ-02: кто программировал микросхему для культовой карманной игры «Ну, погоди!»
В 1980-х годах пределом мечтаний любого советского школьника была «Электроника» — карманная игра, где Волк ловил яйца под нарастающее пиканье динамика. Вокруг владельца «коробочки» мгновенно выстраивалась очередь, а главным мифом эпохи была легенда о мультфильме, который якобы показывают после набора 1000 очков. Но если миф о мультике легко опровергался техническим устройством жидкокристаллического экрана, который физически мог отображать только заранее вытравленные сегменты, то главный секрет игры — кто именно «вдохнул жизнь» в микросхему — долгое время оставался скрыт под слоем кремния.
Архитектура 4-битного «сердца»
Основой «Электроники ИМ-02» стал отечественный микропроцессор КБ1013ВК1-2. Это специализированный 4-разрядный микроконтроллер, выполненный по КМОП-технологии с алюминиевым затвором. Чтобы понять масштаб ограничений того времени, представьте архитектуру системы как складского рабочего, который за один раз может поднять только 4 «кирпича"-бита данных (ниббл).
Система построена на гарвардской архитектуре: это означает, что дороги для «машин-команд» и «грузовиков-данных» полностью разделены и не пересекаются. Внутри кристалла размещались:
- Масочное ПЗУ программ объемом 1827 байт.
- ОЗУ данных на 65 ячеек (по 4 бита каждая).
- Контроллер ЖК-дисплея, управляющий 36 сегментами.
Для экономии места в корпусе инженеры применяли нестандартные решения: например, сама микросхема устанавливалась в специальный вырез в печатной плате, чтобы устройство оставалось плоским.
Физика и логика: как это работало «в железе»
Логика работы железа была завязана на тактовую частоту часового кварца — 32 768 Гц. Один машинный цикл составлял 61 микросекунду. Примечательно, что в системе команд КБ1013 из арифметики присутствовало только сложение. Это инженерный «минимализм»: отсутствие вычитания заставляло программистов использовать обходные пути — например, инверсию и инкремент для имитации вычитания.
Управление дисплеем — отдельный шедевр оптимизации. Контроллер использовал временную мультиплексию 1:2, постоянно переключая фазы напряжения на общих и сегментных электродах, чтобы «жидкие кристаллы» не деградировали от постоянного тока.
Для гиков того времени существовал и «аппаратный чит»: если кратковременно замкнуть 20-й вывод процессора на минус питания после включения, игра переходила в режим неуязвимости, позволяя набирать очки бесконечно.
Главный секрет прошивки: Nintendo внутри
Долгое время считалось, что советские инженеры полностью переписали логику японской игры Nintendo Game & Watch (модель EG-26 Egg) под отечественный процессор. Однако современные исследования и реверс-инжиниринг расставили точки над i.
Когда энтузиасты смогли считать дамп ПЗУ из оригинальных советских чипов КБ1013ВК1-2, они обнаружили нечто поразительное: в коде сохранились логотипы Nintendo и имена японских разработчиков, включая Сатору Окаду. Это означает, что советская микросхема не просто имитировала японскую — она была физическим клоном (вероятно, серии Sharp SM5), в который перенесли оригинальную японскую «маску» ПЗУ.
Советские специалисты (С. А. Морозов, Б. Кротков и др.) проделали колоссальную работу, но она заключалась в другом:
- Реверс-инжиниринг топологии кристалла для его воспроизведения на заводах «Ангстрем» и «Диффузант».
- Масштабирование: позже кристалл уменьшили в 1,5 раза для удешевления производства.
- Создание инструментария: были написаны ассемблеры, симуляторы и системы тестирования на базе машин PDP-11, чтобы проверять годность кристаллов на производстве.
Технические тупики и наследие
Главным ограничением системы была её узкая специализация. Микросхема была жестко «прошита» под конкретную логику на этапе производства (масочное ПЗУ). Вы не могли просто загрузить в «Ну, погоди!» другую игру. Даже перевод часов на 24-часовой формат был невозможен — процессор наследовал японский 12-часовой цикл, поэтому на экране красовались индексы ДП и ПП (до и после полудня), русифицированные версии AM/PM.
Другой проблемой было питание: микросхема требовала два разных напряжения (-3 В и -1,5 В), что вынуждало использовать два элемента СЦ-21. Со временем технология уступила место более универсальным решениям, таким как приставки со сменными картриджами (например, «Электроника ИМ-26»), где использовались наработки компании Bandai.
Интересный факт: несмотря на то, что код был «заимствован», советские инженеры адаптировали его для внутреннего тестирования так эффективно, что программа проверки кристаллов работала в разы быстрее оригинальных методов сравнения с эталоном. А в 2015 году независимые разработчики подтвердили, что код «Ну, погоди!» практически идентичен японским SM510, что позволило создать идеально точные эмуляторы игры для современных систем.
Источник: commons.wikimedia.org





1 комментарий
Добавить комментарий