Разработка и ромхакинг > Ромхакинг и программирование
Поставить PAL-флаг в NSF-заголовок.
(1/1)
evgs:
Считается, что самый лучший на сегодня НСФ-плеер - это NSFplug (winamp) или NSFplay (тот же nsfplug, только с оболочкой, standalone). Плеер точный, с качественным алгоритмом передискретизации (в отличие от НотСоФатсо), и множеством настроек. Кушает 500~1000 Мгц CPU, в зависимости от выбранного кач-ва передискретизации. Но он не умеет ограничивать скорость NTSC-нсф-ок до "50", как это делает НотСоФатсо. Принудительно PAL в нём тоже не сделаешь, хотя, если в NSF-ке стоит флаг PAL-режима, плеер её играет на скорости 50. Это я проверил с помощью фамитрекера (там галка есть, при экспорте проекта в NSF - set PAL flag in NSF header).

Чтобы вручную выставить ПАЛ флаг в хедере, решил изучить документы:
http://kevtris.org/nes/nsfspec.txt
*****************************************

Here's an overview of the header:

offset  # of bytes   Function
----------------------------
007a    1   BYTE    PAL/NTSC bits:
                 bit 0: if clear, this is an NTSC tune
                 bit 0: if set, this is a PAL tune
                 bit 1: if set, this is a dual PAL/NTSC tune
                 bits 2-7: not used. they *must* be 0

*****************************************
У меня так получается, это верно?

0000 0000 = 00Н = NTSC
0000 0001 = 01H = PAL
0000 0010 = 02H = NTSC/PAL

Или неправильно?
GManiac:
Правильно.
evgs:
HardWareMan дал мне свою программку, которая превращает NTSC-нсфки в PAL.
http://hwm.mine.nu/Tools.rar (выбрать директорию, нажать NSF Patch, появится новая директория с хакнутыми NSF)

Но там флаг не меняется, используется какой-то другой метод.
Это позволяет запускать НСФ-ки на скорости 50 в плеерах, где PAL вообще не предусмотрен и флаги игнорятся.
Но это работает не всегда, хотя nsfplay/nsfplug и in_nintendulator.dll понимают НСФки, хакнутые этой прогой.
А nestopia и fceu - нет. Играют, как и было, в NTSC
wiwgost:
evg.s,спасибо за плеер и за лёгкий способ конвертирования NSFки в PAL регион. Теперь можно прослушивать музыку, как на старой доброй Денди.
evgs:
Более свежий и полноценный пост тут:
http://forum.emu-russia.net/viewtopic.php?f=12&t=2355

показаны достоинства и недостатки двух разных методов хакинга NSF-ок.
Sumac:
Можешь куда-нибудь перезалить конвертер nsf в PAL - у меня по ссылке сайт не работает.
evgs:
upd 13 июля
К сожалению нет, но это ненадолго.
HardWareMan сегодня сказал, что пока не хочет публично распространять этот патчер.
Его надо выделить в автономную утилиту, не слитую с другими конвертерами и немного "допилить".
На днях обещал заняться этим, скоро все будет.

Чтоб не обидно было, я залил сюда уже пропатченную NSF-коллекцию:
http://www.megaupload.com/?d=NFA2DGQJ

Очень здорово, что foo_gep (плагин для FB2K) понимает патченные этой программкой НСФ-ки.
Я долго не мог найти плеер, чтоб и на 50 FPS играл, и основан был на качественном
GameMusicEmu + BlipBuffer
evgs:
Обновился NSFPlay oт Rainwarrior'a. NSFPlay 2.3



Больше не нужно "патчить" NSF-ки. Текущая версия поддерживает денди-режим.
Это единственный NSF-плеер на сегодня, поддерживающий денди.
А ещё новая версия умеет менять скважность square-каналов 25% <-> 50% "на лету"
evgs:
Вышла финальная версия 2.3
Simon_Belmont:
А не подскажете, чем открывать NSF-ку, чтобы наглядно видеть адрес 07fa? Открывал hex редактором на андроиде, но что-то ничего вышеизложенного я там не вижу.
ElectrixX:

--- Цитата: Simon_Belmont от 12 Февраль 2016, 06:07:12 ---А не подскажете, чем открывать NSF-ку, чтобы наглядно видеть адрес 07fa? Открывал hex редактором на андроиде, но что-то ничего вышеизложенного я там не вижу.

--- Конец цитаты ---

а что должно быть на смещении 07fa?
Yoti:
Simon_Belmont,
может, 007a? =)
mrtest:

--- Цитата: Simon_Belmont от 12 Февраль 2016, 06:07:12 ---А не подскажете, чем открывать NSF-ку, чтобы наглядно видеть адрес 07fa? Открывал hex редактором на андроиде, но что-то ничего вышеизложенного я там не вижу.

--- Конец цитаты ---
по адресу 007A стоит байт 00. Меняешь на 01, получаешь пал звучание.
сам давно задавался вопросом, как на огрызке слушать старые мелодии в пале... Способ помог. Автору темы респект.
Simon_Belmont:
Упс, затупил :D Конечно же 007а. Всем большое спасибо, разобрался :)
Вот бы патчер от ХВМ'а попробовать :) Правильный PAL не особо хорошт звучит)
ElectrixX:
че его пробовать? получиться тот же пал
Навигация
Главная страница сообщений

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