Загрузка страницы

Весёлая Птичка - порт Flappy Bird на Электроника МК 90

Вторая моя игра на МК 90. Писал я ее для ​конкурса Chaos Constructions 2019. Первый раз участвовал в подобном мероприятии и, к сожалению, не очень удачно. Во первых, плохо оценил сложность предстоящей работы, она отняла у меня неадекватно много времени. А после того, как игра все же была доделана (за пару недель до конкурса), перед тем, как снимать видео-демонстрацию я полез в калькулятор на котором показывал T.Rex в предыдущем видео, чтобы перевернуть экран, т.к. при замене установил его неправильно и это уменьшало контраст. Ну и в попытках максимально улучшить качество картинки я успешно его разбил) У меня был еще один экземпляр МК 90, но с сильно потекшим экраном, который показывать на конкурсе было бессмысленно, поэтому я отправил заявку на участие без нормального видео, с надеждой, что организаторы найдут МК90 для демонстрации (сейчас я конечно понимаю, что надеяться на это было глупо). Затем, как положено, в последний день, мне приходит мысль попробовать что-то сделать с этим потекшим экраном. Оказалось, что просто ослабив металлическую рамку, которая прижимает ЖК к печатной плате, получается значительно уменьшить подтеки, и я решил, что в таком виде уже можно отправлять на конкурс. Т.к. времени практически не оставалось, а экран у МК90 очень сложный для видеосъемки, показать игру "во всей красе" к сожалению не получилось. Плюс к этому, из-за отсутствия других игр, организаторы в последний момент перевели игру в раздел Wild Demo, где она и заняла 2 место с конца.

Теперь о самой игре. Как видно, это порт Flappy Bird, который, в подражание советским традициям наименования электронных игр я назвал "Веселая Птичка". Игра простая, но была поставлена цель сделать ее в шести градациях серого, что уже нетривиально, т.к. дисплей на калькуляторе целиком и полностью однобитный и оттенки надо делать через быструю смену кадров, в данном случае я меняю их с частотой ~200 FPS, на которой получаются не мерцающие 5 оттенков + "белый", т.е. на каждый кадр приходится по 5 субкадров которые и формируют 6 градаций. При такой частоте кадров, если действовать в лоб, не хватит времени даже просто очистить экранный буфер, не говоря уже о полноценной перерисовке. Приходилось жестко экономить такты, обильно использовать нелицеприятные вещи вроде разворачивания циклов и минимального использования вызовов подпрограмм. Но в итоге удалось реализовать все, что изначально предполагал и даже больше.

Исходники и образ СМП здесь - https://github.com/azya52/MK90/tree/master/funnybird

Кстати, куплю экран или неработающий МК-90 с целым экраном.

Видео Весёлая Птичка - порт Flappy Bird на Электроника МК 90 канала azya
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
26 августа 2019 г. 21:33:09
00:01:26
Яндекс.Метрика