Перейти к основному содержимому

Классические игры

Родителям и детям

Классические игры

1. Классические игры: дверь в мир цифрового мышления

«Иногда самые простые вещи — самые сильные. Игры 1980–1990-х — это первые языки, на которых человечество заговорило с машинами — языки, в которых каждая кнопка имеет значение, каждый пиксель — смысл, а каждая победа — результат настоящего мышления».

Почему именно классические игры?

Современные игры — это зрелища. Они показывают нам миры, где небо дышит, а герои плачут. Но в них часто за нас думает компьютер: он решает, когда подсказать, как прыгнуть, куда бежать.
Классические игры — это диалог.
Нет голосовых подсказок. Нет карт в углу экрана. Нет сохранений через каждые 30 секунд. Есть только ты, экран и правила — чёткие, как законы физики.

Именно в таких играх формируются навыки, которые потом пригодятся в жизни:

  • Анализ — ты учишься замечать закономерности (например, как двигаются враги в Galaga),
  • Планирование — ты думаешь на несколько шагов вперёд (Lode Runner, Bomberman),
  • Устойчивость к ошибкам — ты падаешь, но встаёшь снова («Game Over» — приглашение переосмыслить стратегию),
  • Креативность — когда нельзя перестрелять проблему, приходится обойти её (Metroid, Prince of Persia).

Поэтому начинать знакомство с цифровым миром — лучше всего с этих игр. Это как учиться читать по «Приключениям Тома Сойера».


Что такое «классические» — и почему NES?

NES — сокращение от Nintendo Entertainment System. Это домашняя игровая приставка, выпущенная в Японии в 1983 году (там она называлась Famicom — Family Computer), а в Северной Америке — в 1985-м. А в СССР и позже в постсоветском пространстве — под именем Dendy (это клон NES, произведённый в Тайване и Китае).

⚠️ Важно:

  • Dendy ≠ NES, но полностью совместима с картриджами NES.
  • NES не была первой приставкой (до неё были Atari 2600, Intellivision и др.), но именно она восстановила игровую индустрию после кризиса 1983 года и заложила основы современной игровой культуры.

Технически NES — это 8-битный компьютер с процессором Ricoh 2A03 (клон MOS 6502), 2 КБ оперативной памяти и графическим чипом, способным отображать до 256×240 пикселей с палитрой из 54 цветов. Звук — 5 каналов: 2 импульсных, 1 треугольный, 1 шумовой и 1 для PCM-сэмплов (очень редко использовался).

Но для ребёнка важнее ощущение:

Когда ты включаешь NES, ты не просто запускаешь игру — ты входишь в договор с машиной: «Я буду внимателен. Я буду учиться. И тогда — ты дашь мне шанс победить».


Как сегодня в это играть? (Практическая инструкция)

Вариант 1. Оригинал. Почти как в 1987 году.Рекомендуется как основной

Что нужно:

  • Приставка: NES, Famicom, Dendy (новая или б/у).

    На «Авито», «Юле», «Ozon», «Wildberries» продаются как новые сборки (часто с HDMI-выходом), так и винтажные экземпляры. Средняя цена — от 1 500 до 4 000 ₽.
    Совет: ищи комплекты с 2 джойстиками и 2–3 играми — они надёжнее и дешевле поштучной покупки.

  • Картриджи: оригинальные (дорого, от 800 ₽ за простые, до 10 000+ за редкие) или репринты (новые картриджи с классическими играми — от 300 ₽).

    Важно: избегай «мульткарт» с 1000+ играми — они почти всегда содержат пиратские копии с багами и искажённой графикой.

  • Подключение:

    • Старые телевизоры (с RCA-входом — «тюльпан»): просто воткнуть.
    • Современные мониторы/ТВ: нужен RCA-to-HDMI конвертер (от 500 ₽). Есть и приставки с встроенным HDMI (например, Dendy Classic HDMI).

Плюсы: подлинный тактильный опыт (клик джойстика, запах пластикового картриджа), никакой эмуляции — только железо.
Минусы: возможны проблемы с совместимостью ТВ, износ контактов.

Вариант 2. Эмуляция. Технически правильно — но осторожно.

Эмулятор — программа, которая имитирует работу NES на ПК, смартфоне или Raspberry Pi.
Популярные: FCEUX, Mesen, bsnes/higan.

⚠️ Важно:

  • Сам эмулятор — легален.
  • ROM-файлы (образы игр) — легальны только если вы владеете оригинальным картриджем и сделали дамп самостоятельно.
  • Скачивание ROM из интернета — нарушение авторских прав.

Для учебных целей (например, в школе) допустимо использовать homebrew-игры (свободные, созданные сообществом), например:

  • Nuclear Throne Classic (демо),
  • Shooting Star,
  • Puzzle Dash.
Вариант 3. Официальные переиздания.
  • Nintendo Switch Online + NES/SNES: подписка (~300 ₽/мес) даёт доступ к 100+ играм с облачными сохранениями и онлайн-мультиплеером.
  • Evercade EXP / VS: портативная/домашняя консоль с лицензионными картриджами от Atari, Capcom, Data East.

📌 Наша рекомендация: начинайте с оригинальной Dendy/NES. Это как учиться играть на акустической гитаре, а не на гитаре с автотюном. Ощущение честного взаимодействия — бесценно.


Путешествие по играм

Ниже — структурированное погружение. Каждая игра — урок, замаскированный под веселье.


Toxic Crusaders

«Ты — мутант-защитник Земли. Твоя задача — очищать заводы, реки, леса от ядовитых отходов. Иногда — с помощью пушек. Чаще — с помощью ума».

Эта игра — редкий пример экологического повествования в эпоху, когда «зелёные» темы почти не затрагивались. Уровни построены как головоломки: надо найти, откуда идёт загрязнение, перекрыть трубы, собрать отходы.
→ Учит: системному мышлению (всё связано), ответственности (последствия действий видны сразу), нестандартным решениям (иногда надо не убить босса, а отключить его реактор).

Duck Hunt

«Ты не просто стреляешь. Ты учишься целиться в реальном времени, учитывая задержку сигнала, чувствительность датчика, даже угол наклона Zapper-пистолета».

Zapper — световое ружьё. Оно не «видит» утку. Оно ловит вспышку на экране, когда пиксель в зоне прицела становится белым.
→ Это первое знакомство с физикой ввода: задержка, калибровка, шум. То же, с чем сталкиваются разработчики VR и AR сегодня.

Tetris

«Падающие фигуры — это не кубики. Это матрицы. И каждая поворот — операция вращения над вектором».

Тетрис — идеальный мост от игры к программированию:

  • Координаты (X, Y),
  • Коллизии («можно ли сдвинуть блок?»),
  • Состояния («полная линия → исчезновение → сдвиг вниз»).
    На NES-версии (1989) — идеальный баланс сложности: рост скорости линейный, а не экспоненциальный. Можно дойти до Level 15, не имея рефлексов про-геймера.
Super Mario Bros.

«Марио не бегает. Он взаимодействует с физикой: инерция прыжка, скольжение по льду (в SMB3), отскок от пружин».

Уровни в SMB — это учебные модули:

  • 1-1: научись прыгать, избегать врагов, использовать ?-блоки.
  • 1-2: освой вертикальное мышление.
  • 3-1: научись управлять ветром (облака).
    → Это как «Hello, World!» для геймдизайна: каждое действие имеет обратную связь, каждый риск — награду.
The Legend of Zelda

«Здесь нет “прохождения”. Есть исследование. Ты можешь пойти в пещеру — и погибнуть. Или найти меч — и вернуться. Или обойти босса сзади… если догадаешься, что это возможно».

Zelda — первая игра, где карта стала главным героем. Каждая комната — узел в графе возможностей.
→ Учит: не бояться «неправильных» путей, строить внутренние карты знаний, доверять интуиции.

Contra

«Одиночный прохождение — почти невозможно. Вдвоём — реально. Почему? Потому что один прикрывает, второй атакует. Один ловит бонус, второй отвлекает врага».

Contra — демонстрация синергии.
→ Важный урок: иногда сила — в согласованности действий. Как в Git, когда merge-конфликт разрешает пара разработчиков, а не один.

Mortal Kombat

«“Finish him!” — знаменитая фраза. Но чтобы выполнить Fatality, надо ввести точную комбинацию: Вниз, Вперёд, Вперёд, Удар. Одна ошибка — и герой просто ударит. Или промахнётся».

Это — урок точности ввода. Как при написании кода: один пропущенный ; — и программа не скомпилируется.
→ Также: первая игра, где контекст важен (разные Fatality в зависимости от персонажа и локации).

Punch-Out!!

*«Противники не “крутые”. Они предсказуемые. Габриэль бьёт правой после трёх шагов влево. Блондиный — моргает перед ударом. Ты не сражаешься с ними. Ты читаешь их код».

→ Это тренировка распознавания паттернов — основы машинного обучения и отладки: сначала видишь симптом, потом ищешь причину, потом — правило.


2. Вскрываем приставку: анатомия NES/Dendy

«Приставка — не волшебная коробка. Это — оркестр из микросхем. Каждая играет свою партию. Иногда — в унисон. Иногда — в диссонансе. И именно из этого звука рождается чудо».

Первый миф: «Картридж — это только хранилище игры»

Нет.
Картридж NES — это полноценный расширительный модуль. Внутри него ПЗУ (постоянное запоминающее устройство, ROM), и часто — дополнительные чипы:

  • MMC (Memory Management Controller) — контроллер управления памятью.
    Например, в Super Mario Bros. 3 (1990) используется MMC3. Он позволяет:
    • «переключать» банки памяти (игра весит 512 КБ, но NES «видит» только 32 КБ за раз),
    • управлять таймерами (для анимации фона),
    • генерировать прерывания (чтобы враги появлялись вовремя).

→ Это как «виртуальная память» в современных ОС, но реализованная железом.

  • CHR-RAM — динамическая видеопамять.
    В The Legend of Zelda (1987) — статическая CHR-ROM (рисунки хранятся на картридже).
    В Mega Man 2 (1988) — CHR-RAM: рисунки генерируются в реальном времени, что позволяет менять палитру в зависимости от уровня.

  • Батарейка для сохраненийZelda, Metroid, Final Fantasy).
    Это литиевая CR2032, подключённая к SRAM. Она живёт 10–15 лет. Когда игра «забывает» сохранение — пора менять батарейку (задача для Части 4: «Ремонт своими руками»).


Что внутри приставки? Три главных героя

Разберём NES по слоям. Представим, что приставка — это трёхэтажное здание:

1. CPU — 2A03 (Ricoh)

Это клон процессора MOS 6502 — того самого, что стоял в Apple II, Commodore 64 и даже в ранних «Электрониках».
Тактовая частота: 1.79 МГц (NTSC) / 1.66 МГц (PAL). Для сравнения: ваш смартфон — ~2 000 000 000 Гц.
Но! NES не тормозит, потому что:

  • Нет ОС — программа работает напрямую с железом,
  • Каждый кадр — 1/60 секунды (60 FPS), и CPU обязан уложиться в это время.

→ Это как бег на короткую дистанцию: медленно, но идеально синхронизированно.

2. PPU — 2C02 (Picture Processing Unit)

Отвечает за всё, что вы видите.
Как он работает:

  • Name Table (2 КБ): карта экрана — какие тайлы (8×8 пикселей) где рисовать.
  • Pattern Table: сами тайлы (например, «голова Марио», «кирпич», «облако»).
  • Attribute Table: палитра для блоков 16×16 пикселей.
  • Sprite RAM: до 64 спрайтов (движущихся объектов), но одновременно на строке — только 8.

→ Поэтому в Contra враги «мерцают»: игра скрывает одних, чтобы показать других. Это не баг — приём оптимизации.

3. APU — Audio Processing Unit

Встроен в 2A03. Пять каналов:

КаналТипПример использования
Pulse 1Прямоугольная волнаМелодии (линия Марио)
Pulse 2Прямоугольная волнаАккомпанемент
TriangleТреугольная волнаБас, эффекты (прыжок)
NoiseШумВыстрелы, ветер, дождь
DMCPCM-сэмплыГолос в Metroid («Mother Brain»), звуковые эффекты в Mega Man 2

🎵 Попробуй: найди в YouTube «NES sound channel isolation» — послушай, как игра звучит по каналам. Удивительно, как из пяти «голосов» складывается целая симфония.


Почему экран «мерцает» и «трясётся»? Физика кадра

NES рисует экран по строчкам — 262 строки за 1/60 секунды.

  • Строки 0–240: видимая область (256×240),
  • Строки 241–261: вертикальный возврат луча (VBlank).

Именно в VBlank разрешено менять видеопамять — иначе будет screen tearing (разрыв изображения).
→ Поэтому все сложные операции (переключение уровней, расчёт врагов) — только в VBlank.

🔬 Эксперимент для старших (12+):
В эмуляторе Mesen включите «Renderer → Show scanlines». Вы увидите, как луч «рисует» экран сверху вниз. Попробуйте поставить точку останова на строке 241 — и понаблюдайте, как игра «дышит» между кадрами.


Цвета

NES не генерирует RGB. Она выводит композитный видеосигнал, где цвета — результат интерференции яркости и цветности в аналоговом ТВ.
Палитра — 54 оттенка, но на разных ТВ они выглядят по-разному (см. «NTSC color bleed»).

🎨 Задание:
Возьми скриншот из Super Mario Bros.
Открой его в графическом редакторе.
Увеличь пиксельную сетку.
Найди места, где цвет «растекается» между пикселями (например, у облаков).
Это — не артефакт сжатия. Это — физика аналогового ТВ, запечатлённая в цифре.


Почему игры не «лагают», даже на слабом железе?

Потому что они написаны на ассемблере 6502, с учётом каждого такта.
Пример: в Super Mario Bros. расчёт прыжка Марио занимает < 300 тактов — это ~0.17 мс.

Разработчики Nintendo использовали:

  • Look-up tables (таблицы синусов/косинусов — чтобы не считать),
  • Fixed-point arithmetic (дробные числа как целые: 1.5 = 15, делить на 10 в конце),
  • Unrolled loops (циклы «размотаны» вручную — меньше команд перехода),
  • DMA (Direct Memory Access) — копирование спрайтов в PPU без участия CPU.

→ Это как писать стихи хайку: каждое слово — на вес золота.


А как насчёт «хаков» и неофициальных возможностей?

NES — открытая платформа (по историческим причинам: Nintendo не успела запатентовать всё). Это породило:

  • Homebrew-сообщество (сайты: nesdev.org, forums.nesdev.com),
  • Домашние картриджи (например, EverDrive-N8 — флеш-карта, в которую можно загружать ROM’ы),
  • Модификации железа:
    • RGB mod — замена видеочипа на 2C02-RGB для чистого сигнала,
    • Region-free mod — игра любого региона на любой приставке,
    • Save state mod — добавление SRAM и кнопки «сохранить состояние».

💡 Эти моды — инженерное творчество. Как сборка робота из конструктора — только конструктор здесь — паяльник и схемы.