Разработка и ромхакинг > Ромхакинг и программирование
NES DMC - тайминг для семплов
(1/2) > >>
feos:
Вопрос достаточно интересный.
Известно, что не все разрабы использовали стандартные дельта-модуляционные однобитные семплы (DPCM), наиболее простые в обработке и не отнимающие много процессорного времени. Некоторые задействовали еще и способность APU играть 7-битные семплы формата Linear PCM (ну или Raw PCM, различия не знаю).
Озвучивание таких 7-битных семплов отнимает наоборот почти все процессорное время и несовместимо с просчетом коллизий, движением объектов да плюс еще и опросом джоя. Поэтому мы слышим их в основном на титульных экранах и в сопровождении десятков кадров лага.

* Big Bird's Hide and Speak (vocal prompts)
* Sesame Street Countdown (various incidental speech, not nearly as critical as the speech in Big Bird)
* Wheel Of Fortune (title screen voice)
* The Three Stooges (title screen voice)
* Skate Or Die 2 (title screen music)
* Battletoads (various sound effects)
* Blades of Steel (various speech, when the action freezes)
* Ski or Die (title screen voice)
* Gauntlet 2 (various incidental speech)
* Joshua (various sound effects)
* SCAT (cut scene speech)
* Action 52 (title screen music)

Метод проигрывания этих семплов называют "ручным" поскольку требуется специальный таймер для того чтобы доставать байты семпла из РОМа по несколько десятков раз в кадр. Такой таймер можно встроить на плату картриджа (зачастую идёт вместе с маппером). Когда игра хочет сыграть сэмпл, она инициализирует таймер, и он уже периодически вызывает IRQ-процедуру ручной подачи байтов в DMC.

Внимание вопрос.

Как действует IRQ при подаче однобитных семплов? С каким таймером сверяется? (Про прямой доступ к памяти знаю)
Ryukenden:
А кстати,почему титульная музыка из Action 52 спокойно играет в NSF-плеере?Он же не рассчитан на это.Значит,там,видимо,не RPCM,а DPCM.Я вот откуда-то брал эту музу,и она спокойно запускалась на плеере.
Также,дамп BT,BT&DD с RPCM лично у меня не звучит в FCEU,насчёт Фубара согласен,там он действительно звучит.
Sprill:

--- Цитата: Ryukenden1 от 02 Июнь 2011, 20:30:08 ---А кстати,почему титульная музыка из Action 52 спокойно играет в NSF-плеере?Он же не рассчитан на это.
--- Конец цитаты ---
Кстати да, тоже интересно стало, также например заставочная музыка из Skate Or Die 2 тоже спокойно играет в VirtualNES.
Ryukenden:
Значит,ошибочка вышла,не все указанные выше игры содержат RPCM.Blades of Steel содержит DPCM.Для Joshua-что-то тоже качество звука хромает=>DPCM.SCAT,ИМХО,то же самое.Вот если слухануть High Speed на заставке-вот там точно RPCM,мне и Санчез подтвердил.
Sprill:
Хотя что самое интересное когда я попытался вытащить сэмплы из Skate Or Die 2 и Action 52 через NSFLive, то он показывает что там их нет.
Ryukenden:
Интересно!
Видимо,он не воспринимает сэмплы,если это голос или музыка.Впрочем,американцев фиг поймёшь,у них свои технологии.
feos:
В NSF физически можно впихнуть Raw семплы, как это сделал собсна Quietust.
Следовательно в дамп скейт о дай их впихнули.
Просто это сложнее сделать, чем если бы НСФ заведомо был заточен под них, а так приходится корячится с таймингом.
FCEU более старое поколение, в FCEUX должно все работать.
Вообще-то DPCM от рав можно и на слух отличить

Добавлено позже:

--- Цитата: Ryukenden1 ---не воспринимает сэмплы,если это голос или музыка
--- Конец цитаты ---
шутка такое?
Ryukenden:
Можно впихнуть,но тогда нужно дорабатывать NSF-плеер,что Quietust и сделал,модернизировав свой Нинтендулятор под такое дело.Конечно,если использовать Фубар с нужным плагином для проигрывания,то дорабатывать ничего не надо. :)
Должно в теории,но на практике всё иначе.Ну ни один из NSF-плееров как в эмуляторе,так и самостоятельный,не рассчитан на воспроизведение RPCM,кроме Нинтендулятора.Попробуй в FCEU его дампы БЖ проиграть-полный молчок только услышишь.
feos:
Ryukenden1, это видимо и связано с тем, что он в ручную дорабатывал сам файл.
lancuster:
Sprill, а если я нашёл в игре не задействованный сэмпл? Как его включить?
P. S.: в Экшн 52 в Billy Bob при вскарабкивании наверх и при получении урона должны были звучать сэмплы. Но это реализовано только в двух отдельных кусках этой игры. Вот как их включить, хотелось бы узнать.
CaH4e3:
научиться программировать на денди, дизассемблировать ром, собрать его заново и исправить ошибки в игре лол
lancuster:

--- Цитата: CaH4e3 от 26 Март 2017, 17:33:59 ---научиться программировать на денди, дизассемблировать ром, собрать его заново и исправить ошибки в игре лол

--- Конец цитаты ---
А легче нельзя? Типа найти, где эту функцию включить надо? :D
Я вот полазил на днях в одном из этих ромов, и смог разобраться в строении блоков, нашёл карту свойств и карту врагов, где их можно задать. И ещё выяснил, что во всех играх этого сборника можно включить HUD. Просто когда их спустя 3 месяца стали торопить, типа "давайте уж поскорее заканчивайте" - им ничего не осталось сделать, кроме как собрать все свои наработки в образ, сделав так, чтобы он вообще работал. Те, кто хоть немного в них ковырялся, поняли бы, что все эти игры - СЫРЫЕ.
P. S.: во всех этих играх можно включить HUD, но только в тех, где есть свободные тайлы в первой половине банка.
А в Билли Бобе я смог только найти сам сэмпл (он зеленым цветом отмечен и много весит).
CaH4e3:
https://tcrf.net/Action_52_(NES) давно уже поковырялись и давно все поняли...
lancuster:

--- Цитата: CaH4e3 от 26 Март 2017, 20:48:27 ---https://tcrf.net/Action_52_(NES) давно уже поковырялись и давно все поняли...

--- Конец цитаты ---
Нету там того, о чём я тут говорил. Ни про альтернативные ромы игры Билли Боб, ни про отсутствующий HUD, ни про альтернативную версию French Baker. То, что там написано, можно найти в ютубе, и я это уже находил.
Zopizixa:
Хотя что самое интересное когда я попытался вытащить сэмплы из Skate Or Die 2 и Action 52 через NSFLive, то он показывает что там их нет.
Ryukenden:
Гарантированно вытащить через NSFLive можно только DPCM-сэмплы...
lancuster:

--- Цитата: Ryukenden от 27 Март 2017, 04:03:48 ---Гарантированно вытащить через NSFLive можно только DPCM-сэмплы...

--- Конец цитаты ---
А в Экшн 52 что тогда, если не DPCM?
Ryukenden:
Там raw PCM. Также, как и в Battle Toads, Ultimate Stuntman и пр. Ведь можно по качеству звука отличить DPCM от raw PCM!
И, естественно, их вытащить через плеер нельзя. Впрочем, и в FT нет возможности их использовать, хотя было бы неплохо.
lancuster:

--- Цитата: Ryukenden от 27 Март 2017, 09:11:16 ---Там raw PCM. Также, как и в Battle Toads, Ultimate Stuntman и пр. Ведь можно по качеству звука отличить DPCM от raw PCM!
И, естественно, их вытащить через плеер нельзя. Впрочем, и в FT нет возможности их использовать, хотя было бы неплохо.

--- Конец цитаты ---
В Stuntman вроде бы нет голоса. В Rod Land есть.
К слову, когда я ломал Экшн 52 на бессмертие, звук в титульной музыке почему-то портился, помехи какие-то появлялись. Хотя я не трогал сами сэмплы.
Ryukenden:
А я говорил о голосе? Сырыми сэмплами может быть и голос, и музыкальные инструменты. В Стантмене - это ударные, в Боевых Жабах - это ударные на титульнике и в паузе, в Большой Птице - это голос. И т.д.
Навигация
Главная страница сообщений
Следующая страница

Перейти к полной версии