Разработка и ромхакинг > Ромхакинг и программирование
Звуки на SMD (конкретно STH, STH2)
(1/1)
HayaoYokogawa:
Очень глупый вопрос, потому что я ошалел после офигительных ромхаков первого и второго соника, искусал кулак в кровь и тепреь с нетерпением хочу увидеть сообщение, в котором бы объяснилось, каким образом вместо знаменитого SEGA Scream ставится другой звук причем отличного качества =) помогите плз

Добавлено позже:
и еще бы хотелось узнать, каким макаром переделывается библиотека звуков в тех же сониках
Segaman:
Плавал в этом озере
кароче звук сега - самая простая wav-ка с частотой дескретезации 16MHz и скоростью 8бит
сам менял его на свой, где я кривым искажённым голосом подрожал этому звуку.

а звуки и музыка там формата SMPS или Simple Music Player System

если надо, дам сылок на инфу и мой сорс рома- проигрывателя smps
там музыка из кучи соников, из других игр и мой порт из SonicAdvance2
HayaoYokogawa:
окей, давай
Segaman:
http://www.emu-land.net/forum/index.php/topic,30754.0.html - сдесь я сорсом занимался и есть моя инфа про музыку и звуки и сорс, в котором драйвер музыки выдран из соника1, так как его обычно и используют, и изменён для проигрывания
16383 мелодий,
16383 звука (сам делал) и
127 сэмплов (спасибо HPZman'у с соник ретро за драйвер)

http://info.sonicretro.org/SCHG:Music_Hacking - сдесь всё про музыку
На этом же сайте хакинг сеговских соников
HayaoYokogawa:
smps вещь прикольная, но изза твоего транслита ничего невозмжно прочитать, на анг тем более, там вообще тьма -_- объясни полегче)

Добавлено позже:
насчет вставки звука разобрался - вытащил из Star Fox "Incoming enemy fires" и через SNDEDIT.EXE вставил в ром ) звучит норм

хочу теперь еще больше узнать про замену музыки и звучания ее самой
Segaman:
обьясню формат загаловка:
$00-01 = поинтер(ссылка) на smps голоса синтезатора Yamaha2612 от начала мелодии (чаще всего находятся в конце мелодии)
$02-03 = настройка каналов или какие каналы будут задействованы
$04-05 = скорость проигрывания. там что-то вроде умножения - второй уможается на первый и получаем скорость
$06-07 = поинтер на биты/сэмплы/wav-ки, кароче ударные
$08-09 = не использовано. обычно пусто
$0A-0B = поинтер на нотный стол для канала FM1
$0C-0D = настройка вывода звука. 1 байт - высота звука, 2й - громкость(работает наоборот, чем меньше - тем больше)

дальше идут поинтеры как на первый канал, только для других.
т.е.
FM2 поинтер
FM2 настройка вывода
FM3 поинтер
FM3 настройка вывода
FM4 поинтер
FM4 настройка вывода
FM5 поинтер
FM5 настройка вывода
(если первый байт настройки каналов указать как 7, то
FM6 поинтер
FM6 настройка вывода)
дальше идут поинтеры на каналы PSG(Programmable Sound Generator.
PSG1 инструмент (2 байта)
PSG1 поинтер (2 байта)
PSG1 настройка вывода (2 байта)
PSG2 инструмент (2 байта)
PSG2 поинтер (2 байта)
PSG2 настройка вывода (2 байта)
PSG3 инструмент (2 байта)
PSG3 поинтер (2 байта)
PSG3 настройка вывода (2 байта)

колличество и расположение поинтеров зависит от расположения каналов
самая часто встречающаяся настройка = 0603 (5 каналов 1 DAC(ударные) и 3 PSG)
и 0703 (6 каналов и 3 PSG)
далее идут уже все данные, на которые ссылаются поитеры

формат нотного стола:
$00-$7А = время паузы между нотами (во время паузы играет последняя указанная нота,
если ноты идут в ряд, то будут использовать одну и туже паузу.
пример:
--- Код: ---80(тишина) 10 A0 20 A1 18 A2 80 02 A0 A1 A2 A0 A4 A2
--- Конец кода ---
)
$80 = тишина
$81-$DF = ноты
$E0-$FF = флаги(смен голоса, прыжок назад и т.д.)

ударные работают не так как ноты.
ударные используют свой порядковый номер
например в сонике 1:

--- Код: ---$81 Kick
$82 Snare
$83 Hi-Timpani
$84 no use
$85 no use
$86 no use
$87 Sega PCM
$88 Hi-Timpani
$89 Mid-Timpani
$8A Low-Timpani
$8B Low-Timpani

--- Конец кода ---

голоса состоят из 25-и байт
состав их мне к сожалению не известен
http://info.sonicretro.org/SCHG:Music_Hacking#Coordination_flags_2 - сдесь флаги, используемые для манипуляции проигрыванием
флаги могут меняться от игры к игре
HayaoYokogawa:
Боже...я ожидал проще...будем пытаться понять)
Segaman:
представь как мне было тяжко
я английский толком не знал, а всё изучил и понял
на понятие всего этого без чужой помощи у меня ушло каких-то 16 месяцев ^_^,
но тебе будет намного легче, так как я помогаю
Навигация
Главная страница сообщений

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