Info Guide
#10
30 апреля 2007 |
|
Звук - Особенности звукового устройства TurboSound FM.
TurboSound FM, он же TS FM, он же прос─ то TFM - это звуковое устройство,втыкаемое в панельку AY. Имеет 6 обычных каналов TurboSound (буду называть их SSG каналами, не вдаваясь здесь в особенности терминоло─ гии) и 6 каналов особо хитро синтезирован─ ного звука (их я буду называть FM канала─ ми). Шесть первых каналов не мешают шести вторым, равно как и наоборот, поэтому мы имеем одновременно 12 каналов. Устройство построено на двух чипах YM2203. Появилось оно в середине далёкого 2005 года, когда LVD спаял схему, разрабо─ танную им совместно с JTN'ом. В дальнейшем схема исправлялась и дорабатывалась при активном участии CHRV и King of Evil. В том же 2005 году Dexus (известный как автор музыкального редактора PSM ) добавил в UnrealSpeccy эмуляцию устройства и вмес─ те с Shiru начал конвертировать под него музыку с Sega Mega Drive. На этой пристав─ ке (она также известна под названием Sega Genesis ) имеется связка из двух звуковых чипов ( SN76489 и YM2612 ),обладавшая при─ мерно теми же возможностями, но SSG каналы там другие (причём тональников не 6, а 3 ) и в FM части добавлен низкочастотный гене─ ратор - для вибрато. В 2006 году Shiru начал писать редактор музыки для TFM (затрагивающий только FM каналы) - TFM Music Maker. Он долго разви─ вался в виде бетаверсий и совсем недавно был выпущен на всеобщее обозрение. TFM Music Maker умеет выгружать музыку в поток регистров.Можно просто проигрывать этот поток, а можно перекомпилировать моей утилитой TFM compiler, что даёт гораздо более компактный файл (единицы килобайт вместо десятков). Особая хитрость синтеза звука в FM ка─ налах TFM заключается в том, что канал - это не один генератор, а четыре, с разными в общем случае частотами. Они модулируют друг друга, соединяясь по некоторой схеме. Схему (всего этих схем 8 - для звуков раз─ ного типа) можно выбрать для каждого кана─ ла. Кроме того, во время проигрывания ноты вовсе не обязательно каждый кадр менять значения громкостей (вообще говоря, ампли─ туд генераторов). Это делает сама железка, нужно только задать для каждого генератора скорости атаки, спада,удержания и отпуска─ ния, а также уровень, где спад переходит в удержание, и общую громкость (вообще гово─ ря, максимальную амплитуду,от которой рас─ считываются прочие уровни). После этого каждую новую ноту можно синтезировать,про─ сто выдавая события нажатия и отпускания клавиши и меняя базовую частоту (частоты операторов рассчитываются через задаваемые множители). Поэтому плейер FM музыки для TurboSound FM, несмотря на кучу параметров звука,весьма быстрый - порядка 1500 тактов в среднем.Только в пике (при смене инстру─ ментов) время его выполнения может дохо─ дить до 13000 тактов. В приложении лежат примеры музыки, как написанной в TFM Music Maker'е, так и ско─ нвертированной с Sega Mega Drive. В музыке из игры Sonic 3D Blast выброшены цифровые ударные, но теоретически их можно реализо─ вать. Ещё в приложении в качестве примера лежит исходник плейера для модулей TFM compiler (аналогичный плейер есть и для Sega Mega Drive - его портировал туда Shiru ). Инструкция по программированию TFM (брошюра в формате .doc ) с исходниками конверторов и различных плейеров лежит на http://alonecoder.narod.ru/zx/books/ Эта инструкция постоянно обновляется, и файлы к ней - тоже. В этом году организаторы DiHalt 2007 ( 2-3 июня 2007, Нижний Новгород) впервые организовали конкурс TFM музыки. Просьба всем людям доброй воли принять участие в конкурсе. Во избежание накладок компилиро─ вать присылаемые модули назначен я,поэтому (чтобы не терялось драгоценное время,кото─ рого осталось мало) присылайте модули не─ посредственно на мой адрес. Alone Coder
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября