Возвращение пищалки
Сделал выбор устройства вывода звука по клавишам АР2+S:
Осталось добавить все эти самые звуки для спикера и музоны написать 🙂
Ну и все, собственно.
Блог разработчика
Сделал выбор устройства вывода звука по клавишам АР2+S:
Осталось добавить все эти самые звуки для спикера и музоны написать 🙂
Ну и все, собственно.
Решил все-таки сделать вывод звука на пищалку. По большей части потому что жалко готовые звуки, которые мы добывали выводом на принтер. Звуки, правда, были не все, пришлось доделать недостающие. А вот музыки для встроенного динамика вообще не было. Решил попробовать использовать редактор Савина «Клавесин». Но вот сам вывод музыки одновременно с игрой… Попытки воспроизводить музыку по прерыванию таймера провалились — в итоге звук был с явным фоном около 50Гц, что и понятно — таймер как раз 48Гц. В итоге я решил попробовать вывод музыки не квантами по таймеру, а все-таки нотами, с каждым кадром движка по одной ноте. Пришлось переписать музыку нотами минимальной длительности. Попробую, думаю, если будет фигня — ну и хрен с ним, пусть музыка остается на AY.
Попробовал и вдруг понял, что такое странное звучание музыки я уже слышал…. в видеороликах «Prince of Persia на Apple 2». Прикольно, конечно))
Вывод на спикер больше нагружает проц и с ним Принц бегает уже не так плавно. Лучше играть с AY 🙂
Вот что получилось у меня:
Вот как звучит на Apple:
Фиксим последние (надеюсь) баги:
Сделал автоопределение среды, в которой запущен Принц — эмулятор или реальная БК. Для эмулятора и железа используются разные задержки для смены палитр на лету и переключения экранов. Пришлось повозиться, т.к. процедура «записать в 177702 — прочитать из 177702» почему-то не всегда вызывает прерывание по вектору 4 на моей БК. Особо разбираться не стал, т.к. записанное значение из этого регистра все-таки не читается, а в эмуляторе читается. От этого факта и пляшем. Попутно пофикшены баги:
По совету Manwe задействовал вторую кнопку джойстика. В итоге управление от джойстика теперь выглядит так:
В виде текста выглядит громоздко, но на самом деле все интуитивно понятно (я надеюсь). Кроме того, джойстиком теперь можно пропускать заставки и выходить из режима «Пауза».
Все кнопки можно переназначить: режим настройки джойстика вызывается по комбинации АР2+J в любой момент игры (кроме заставок).
Клавиатуру, кстати, тоже можно переназначить (АР2+K).
Отдал Принца на тесты и уже получил несколько «приветов». Что ж, буду фиксить 🙂
Ну, не все так плохо, знавали мы глюки и похлеще ))
Сегодня исправил несколько багов, обнаруженных Yellow Rabbit и мной:
А также занимался грандиозным делом — подбирал на железной БК задержки для смены палитр «на лету». Занятие не для слабонервных. Но мне удалось их подобрать! Теперь надо сделать определение среды запуска «эмулятор/железо» и применять те или иные тайминги. Так как я весь вечер гонял Принца на железной БК, то могу сказать, что Принц на железе работает шустрее, чем в эмуляторе. Очень заметно 🙂 Прям радует.
Сегодня:
Осталось сделать задержки для реала и разобраться с выводом звука на обычный динамик. Похоже, эпопея подошла к концу 🙂
Итак, сегодня сделано:
Осталось совсем немного:
Свежие комментарии