Перед началом
Этот набор — продолжение набора «Часы и игра из вентилей» и без него не работает. Процессор собирается рядом с машиной из первого набора (игра с часами) и берёт у неё экран, кнопки, железо 60 Гц и библиотеку деталей. Сначала пройди первый набор, потом этот.
В первом наборе — «Часы и игра из вентилей» — мы собрали часы и игру «Звёздный урожай» — целиком из вентилей и триггеров: у каждой части игры своё железо. Настоящие Game & Watch внутри устроены иначе: там маленький процессор (Sharp SM5) и программа в ПЗУ. Теперь — то же самое: собираем свой 4-битный процессор и переводим на него часы и игру.
Что соберём
Процессор с аккумулятором A, флагами Z и C, счётчиком команд, памятью данных на 256 ячеек и ПЗУ на 512 команд. 16 команд — от LD до RET. Экран, кнопки, таймер шага и случайность — те же, что в игре первого набора, только теперь ими командует программа.
В конце урока 6 та же игра работает программой на твоём процессоре. В уроке 7 ты учишься программировать — с нуля, даже если никогда этого не делал, — а в уроке 8 пишешь игру сам.
Как устроен набор
Каждый урок добавляет процессору одну способность и сразу показывает её на машине:
- урок 1 — регистр
Aи АЛУ: калькулятор на тумблерах; - урок 2 — счётчик команд и ПЗУ: огоньки бегут по программе;
- урок 3 — память данных и экранная память: цифры на ЖК из программы;
- урок 4 — переходы: счётчик 0–9 программой;
- урок 5 — подпрограммы, порты, флаг «секунда»: часы программой;
- урок 6 — экран игры, таймер шага, случайность, писк: игра программой;
- урок 7 — первые программы: учишься писать на ассемблере, проверяешь прямо в книге;
- урок 8 — пишешь игру сам.
Что нужно из первого набора: машина главы 2 целиком (игра с часами) и её библиотека — вентили, MUX2, DFF, DEC4x1, AND3, AND4, OR3 и железо игры (CNT60, CNT16, LFSR8, SPEED, SHIFT5). Старое не выбрасываем сразу: процессор строится рядом, и части игры уходят по одной — по мере того, как их работу забирает программа.
Режим симулятора. Собирать и проверять схему можно в REAL, а играть — в Fast: процессор делает всё по очереди, и ему нужен быстрый такт (почему — в итогах набора).