Tagged: видео

15
Мар
2025

Dave готов!

Вчера я доделал Дейва, так что проект успешно завершен. Наверняка будут еще правки, как это было с Goonies, так как реальная «эксплуатация» выявляет баги всегда. Но в целом все готово.
На финальном этапе я переделал переназначение управления от джойстика, т.к. понадобилась еще одна кнопка — для создания скриншотов текущего экрана игры. Скриншоты создаются на лету и пишутся на карту памяти AZBK, оттуда их можно забрать по сети или просто воткнув карту в PC. С клавиатуры скриншот тоже можно сделать — я отвел для этого клавишу СБР. Добавление новой кнопки для джойстика потребовало изменения интерфейса и я изменил его более глобально, как давно хотел, но было лень. Я добавил в окно Joystick Setup вывод текущего состояния порта 177714 в восьмеричном виде. Это позволило наглядно показать какие же там биты поднимаются при нажатии различных кнопок джойстика, а заодно получился инструмент для теста джойстиков:

Я использую с БК джойстик от PS/3, подключенный к БК по Bluetooth (мерси, Братец Кролик!!). И этот джойстик — лучшее, что было у меня за всю историю БК 🙂 Куча кнопок, которые можно назначить на разные действия, плавный ход, никаких дурацких «палок» — просто песня! И вот теперь с этого манипулятора стало возможно делать скриншоты игры в любой момент просто нажатием пальца.

Получение скриншота это просто одна из команд AZBK, по ней записывается текущий экран с учетом видеорежима, слоев и палитры. В дальнейшем этот файл нужно декодировать в понятный вид с помощью отдельной утилиты, которая пока не доделана автором. Но игра скриншоты делает успешно.
Другими последними доделками были разборки с сетью, оказалось, что если из контроллера не прочитать ответ на свой сетевой запрос, то контроллер отрубает сеть. А потом включает ее при поступлении следующей команды. Так что тут пришлось приделать костыль, а в дальнейшем в AZBK будет команда «послать пакет по сети и не ждать ответа», которая таких проблем не вызовет.

Дейв посылает на сервер HOF довольно много инфы в течении игрового процесса:

— какого монстра убил Дейв
— какой монстр убил Дейва
— время прохождения уровня
— каким дейвасом пользуется игрок — джойстиком или клавой
— очки-рекорды
— с каким количеством жизней вышел из уровня
— сколько всего убито монстров за уровень
— сколько собрано предметов
— сколько раз выстрелил
— сколько раз попал

Это позволит набрать интересной статистики, я надеюсь. И все это пока не до конца поддержано на сервере HOF, пока что нет возможности просмотреть эти данные в удобном виде. Это одна из причин, почему я пока не выкладываю Дейва в общий доступ, тогда часть инфы будет потеряна. Также на подходе поддержка сетевых фич в самом крутом эмуляторе БК — gid. Не у всех есть аппаратный AZBK, а этот эмуль успешно эмулирует все его фичи, кроме сетевых (пока что), но автор над этим работает. Помимо отсутствия сетевых фич в эмуляторе пока еще не исправлена ошибка с воспроизведением звука через DMA, которая уже исправлена в новой прошивке AZBK. Эта фича используется только на заставке, в остальной игре весь звук играется с помощью обычного AY-8910, так что это не особо критично.

Так что Дейв готов, но я вам его пока не отдам (с) Почтальон Печкин

19
Дек
2024

Еще один мультик

Решил не делать кучу служебных клавиш (вкл-выкл звука, настройка джойстика, настройка клавиатуры), а сделать одно меню, вызываемое как по клавише ПОВТ, так и с джойстика кнопкой SELECT. На моем джойстике от PS3 такая есть, пора бы ее и задействовать. И дальше в этом меню можно будет выбирать нужные опции как с клавиатуры, так и с помощью джойстика.

Далее 

 

18
Дек
2024

Мультики и оптимизация

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

Далее

02
Дек
2024

Новый (старый) звуковой движок

Добавление новых звуков сподвигнуло на давно назревший перенос звуков и самого движка в память AZBK. Основной обработчик прерывания по вектору 100 (кадровое прерывание) расположен в основной памяти БК, конечно.

Далее