Как понизить частоту микроконтроллера в старом Тетрисе для комфортной игры

История началась с покупки классического портативного «Тетриса» (также известного как Brick Game). Сразу же обнаружилась серьёзная проблема: начиная со второго уровня скорости игра становилась практически неиграбельной из-за чрезмерно высокой частоты падения фигур. Это было связано с аппаратной ошибкой — некорректно настроенным задающим генератором микроконтроллера, что было слышно даже по ускоренному воспроизведению мелодии. Возникла идея: можно ли физически модифицировать устройство, чтобы снизить рабочую частоту процессора и вернуть игре нормальную скорость? Вдохновение пришло от старых компьютеров с кнопкой «Turbo», которая, наоборот, понижала тактовую частоту. Результатом стал простой, но эффективный аппаратный тюнинг.

❯ В чём заключается проблема?

Проблема оказалась распространённой. Вдохновившись статьёй о реверс-инжиниринге Тетриса, автор приобрёл аналогичное устройство и подтвердил, что рабочая частота встроенного микроконтроллера (МК) существенно завышена относительно нормы. Во многих клонах Brick Game задающий генератор изначально настроен неправильно. Из-за этого после прохождения первых уровней скорость возрастает до абсурдных значений, делая дальнейшую игру невозможной. Возникло и простое любопытство: а что будет на максимальной скорости? Есть ли какой-то секрет или финальная заставка? Чтобы ответить на эти вопросы, пришлось изучить документацию на процессор.

❯ Изучаем аппаратную часть

Исследования показали, что в этой модели используется 4-битный микроконтроллер HT443A0. Согласно его технической документации, тактовая частота задаётся внешним резистором, номинал которого может варьироваться в широких пределах (от 36 кОм до 620 кОм). На приведённой схеме видно, как этот резистор подключён к микросхеме.

Однако в самой документации не указана точная зависимость частоты от номинала. Пришлось действовать методом экспериментов. Вскрыв корпус, автор обнаружил плату с микроконтроллером, залитым каплей эпоксидной смолы (так называемый «каплевидный» корпус). На плате было всего два резистора: один для схемы усилителя звука, а второй, предположительно, — тот самый задающий.

Измерения показали, что его сопротивление составляет около 15 кОм, что явно меньше минимального рекомендуемого значения в 36 кОм, что и объясняло завышенную частоту.

Эксперимент 1: Повышение частоты (для проверки гипотезы)

Для проверки теории о влиянии резистора было решено сначала увеличить частоту. Для этого параллельно штатному резистору припаяли ещё один такого же номинала (15 кОм). По законам электротехники, это уменьшило общее сопротивление цепи вдвое (до ~7.5 кОм). Как и ожидалось, игра ускорилась ещё сильнее, что подтвердило гипотезу: уменьшение сопротивления ведёт к увеличению частоты.

Эксперимент 2: Понижение частоты (основная цель)

Следующим шагом была реализация главной задачи — замедлить Тетрис. Для этого последовательно со штатным резистором припаяли дополнительный на 30 кОм. Общее сопротивление увеличилось до 45 кОм (15 + 30), что попало в рекомендуемый производителем диапазон. Результат оказался идеальным: скорость игры на всех уровнях стала комфортной и управляемой.

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

❯ Создание регулируемого тюнинга

Решение было элегантным и простым: постоянный задающий резистор заменили на переменный (потенциометр). Для удобства провода от него вывели наружу через отсек для батареек, а сам регулятор закрепили на корпусе.

После сборки устройство было готово к тестам. Регулятор позволял плавно менять скорость игры от очень медленной до экстремально высокой. Единственным нюансом стало то, что при некоторых крайних положениях регулятора микроконтроллер мог зависнуть, и для перезагрузки приходилось ненадолго отключать питание.

❯ Итоги и выводы

Эксперимент доказал, что рабочую частоту старого Тетриса можно не только исправить, но и сделать регулируемой. Что касается секрета на максимальной скорости — автор предлагает читателям проверить это самостоятельно. Данный проект стал для автора способом приобщиться к сообществу энтузиастов реверс-инжиниринга ретро-устройств. В качестве бонуса упоминается вирусное видео, где диджей сделал для Тетриса пульт дистанционного управления, что доказывает — поле для творческих модификаций огромно.

❯ Полезные ссылки:

  1. Процессор, используемый в «Тетрисе»: на какой SoC работала дешевая микроэлектроника в 90-х?

  2. Так какой же процессор использовался в игре Brick Game?

  3. Так какой же процессор использовался в игре Brick Game Part 2

  4. Документация микроконтроллера HT443A0

Если вас интересует металлообработка, старое железо, всевозможные поделки, сбор мусора и Linux, подписывайтесь на меня в Telegram.

  • Написано специально для читателей Timeweb Cloud и Pikabu. Подпишитесь на наш блог, чтобы не пропустить новый и интересный материал.

  • Облачный сервис Timeweb Cloud — это реферальная ссылка, которая помогает поддерживать проект.

Больше интересных статей здесь: Гаджеты.

Источник статьи: Тюнинг старого тетриса.