В общем какая фигня там.. есть три регистра (2d,2e,2f), переключаясь на которые можно менять множители частот:
2f = FM x1, SSG x2 (reset)
2d = FM x1/3 , SSG x1/2 (default after boot)
2d,2e = FM x2/3 , SSG x1
Т.е. если тактировать на 1.75МГц, то после _запуска_ будет выдавать вдвое меньшей частоты звук (для AY звуков) -как написал вначале lvd. И необходимо будет выполнить вывод в порты 2d,2e чтобы выправить его.
Если тактировать на 3.5МГц (или 3.54), то после _запуска_ будет выдавать ровно нужный тон для SSG.
Достаточно мудрёная схема для понимания... но в общем ничего сложного, если вникнуть.
По-моему логичнее схему "питать" как раз от 3.54МГц, во-первых, будет совместимость с AY _сразу_ после загрузки, во-вторых, все игровые автоматы работают с частотой YM2203 3-4МГц.
У FM немножечко другие коэффиценты, но в целом - похоже.
И поскольку этот вопрос еще не был проработан, то логичней будет отталкиваться все-же от совместимости с AY. А FM уж можно будет подогнать.
Получается 3 FM голоса + 3 SSG (на один 2203).
SSG и FM синтез никак не связаны (кроме как частотными коэффицентами). Т.е. можно параллельно играть музыку и в FM и в SSG Мнимая 6тиканальность.
А если использовать 2х2203, то будет 6FM+6SSG, что есть практически 12 каналов (правда половина из них - квадратноволновой SSG).
На фоне FM синтеза SSGшные звуки кажутся настолько плоскими и примитивными, что слушать их не очень охота...
ЗЫ: По возможности постараюсь в ближайшие дни встроить в Unreal.