Весёлая Птичка - порт 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
Теперь о самой игре. Как видно, это порт Flappy Bird, который, в подражание советским традициям наименования электронных игр я назвал "Веселая Птичка". Игра простая, но была поставлена цель сделать ее в шести градациях серого, что уже нетривиально, т.к. дисплей на калькуляторе целиком и полностью однобитный и оттенки надо делать через быструю смену кадров, в данном случае я меняю их с частотой ~200 FPS, на которой получаются не мерцающие 5 оттенков + "белый", т.е. на каждый кадр приходится по 5 субкадров которые и формируют 6 градаций. При такой частоте кадров, если действовать в лоб, не хватит времени даже просто очистить экранный буфер, не говоря уже о полноценной перерисовке. Приходилось жестко экономить такты, обильно использовать нелицеприятные вещи вроде разворачивания циклов и минимального использования вызовов подпрограмм. Но в итоге удалось реализовать все, что изначально предполагал и даже больше.
Исходники и образ СМП здесь - https://github.com/azya52/MK90/tree/master/funnybird
Кстати, куплю экран или неработающий МК-90 с целым экраном.
Видео Весёлая Птичка - порт Flappy Bird на Электроника МК 90 канала azya
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
![HP 15C Limited Edition calculator](https://i.ytimg.com/vi/N1mmFqCTK2g/default.jpg)
![IVEE - a Powerful Programable RPN Calculator based on FORTH and Arduino](https://i.ytimg.com/vi/m1aFRhqvuLM/default.jpg)
![Электроника МК 90: советский микрокомпьютер](https://i.ytimg.com/vi/dKf35M_-G7k/default.jpg)
![Tetris on a Psion II Organiser XP](https://i.ytimg.com/vi/arZiRCAWPq0/default.jpg)
![Chrome T. Rex на МК-90](https://i.ytimg.com/vi/ivxIEHNXE9s/default.jpg)
![Custom watch faces for Seiko UC-2000](https://i.ytimg.com/vi/W52tVbbM9_A/default.jpg)
![Port of my Microvision Tetris homebrew to TMS1098/1100](https://i.ytimg.com/vi/S9cgjjbSibE/default.jpg)
![Elektronika MK-90](https://i.ytimg.com/vi/48pmWw4TG1o/default.jpg)
![МК-161 и демо Intermusic](https://i.ytimg.com/vi/eYZ21h6k6cw/default.jpg)
![MK52 calculator. Testing the EEPROM.](https://i.ytimg.com/vi/P_qG_XvqCYU/default.jpg)
![New Free Energy Generator Coil Self Running Using By Speaker Magnet](https://i.ytimg.com/vi/JvBC9Yi6MDw/default.jpg)
![Тест игры крестики-нолики на СОВЕТСКОМ КАЛЬКУЛЯТОРЕ ЭЛЕКТРОНИКА МК-52](https://i.ytimg.com/vi/QjtLUcc5T1w/default.jpg)
![Игра для советского калькулятора Мк-85. "Принц 1221"](https://i.ytimg.com/vi/muAkUJR7JdE/default.jpg)
![Primitive Technology: Hut burned down, built new one](https://i.ytimg.com/vi/YmFTK-rnzfk/default.jpg)
![Кадры из мультфильмов на экране Электроники МК-90](https://i.ytimg.com/vi/9Squa4G6IKk/default.jpg)
![Tetris homebrew for MB Microvision game console (1979)](https://i.ytimg.com/vi/9gqDIIBmB2c/default.jpg)
![РЦВМ1 - Мой первый релейный компьютер](https://i.ytimg.com/vi/b31TU1N4Qso/default.jpg)
![3 Incredible Things from Electric Motors](https://i.ytimg.com/vi/cI5NiYOWSZY/default.jpg)
![EEPROM AT24С02 и Arduino](https://i.ytimg.com/vi/ArM9e5pOPEs/default.jpg)
![Поворотное устройство для магнитной антенны. Простая электроника. Выпуск 8](https://i.ytimg.com/vi/SL_3suP3c9c/default.jpg)