|
|
Строка 1: |
Строка 1: |
− | Namco WSG использовался в аркадных платформах [[Namco Galaxian|Galaxian]], [[Namco Pac-Man|Pac-Man]] и других. Позволяет использовать три канала с независимой регулировкой громкости, частоты и формы + шумовой генератор. Все функции зависят от 4-хбитных регистров: | + | Namco WSG - семейство звуковых чипов на основе таблично-волнового синтеза, использовался в аркадных платформах [[Namco Galaxian|Galaxian]], [[Namco Pac-Man|Pac-Man]] и других. |
− | {|class="wikitable"
| |
− | |-
| |
− | !width="100px"|Регистр
| |
− | !За что отвечает
| |
− | |-
| |
− | |00h-04h
| |
− | |Частотный счётчик Voice #1
| |
− | |-
| |
− | |05h
| |
− | |Форма волны Voice #1 (использует 3 бита)
| |
− | |-
| |
− | |06-09h
| |
− | |Частотный счётчик Voice #2
| |
− | |-
| |
− | |0Ah
| |
− | |Форма волны Voice #2 (использует 3 бита)
| |
− | |-
| |
− | |0Bh-0Eh
| |
− | |Частотный счётчик Voice #3
| |
− | |-
| |
− | |0Fh
| |
− | |Форма волны Voice #3 (использует 3 бита)
| |
− | |-
| |
− | |10h-14h
| |
− | |Частота Voice #1
| |
− | |-
| |
− | |15h
| |
− | |Громкость Voice #1
| |
− | |-
| |
− | |16h-19h
| |
− | |Частота Voice #2
| |
− | |-
| |
− | |1Ah
| |
− | |Громкость Voice #2
| |
− | |-
| |
− | |1Bh-1Eh
| |
− | |Частота Voice #3
| |
− | |-
| |
− | |1Fh
| |
− | |Громкость Voice #3
| |
− | |}
| |
| | | |
− | 20-битные значения частот и счётчиков хранятся в порядке начиная с наименьшего значащего полубайта. Каналы #2 и #3 не имеют регистра для наименьшего значащего полубайта, и его значение для этих каналов предполагается равным нулю.
| + | ==Модели== |
| + | * WSG - 3 канала, независимая регулировка громкости, частоты и формы, шумовой генератор. |
| + | * C15 - 8 каналов |
| + | * C30 - 8 каналов, стереовыход, режим шума |
| | | |
− | Регистры обычно отображаются в адресное пространство памяти процессора. В аппаратном обеспечении Pacman регистры отображены в ячейки памяти с адресами 5040-505Fh, так что, например, запись значение по адресу 505Ah производит установку уровня громкости канала #2.
| + | ==Примеры звучания== |
− | | + | {{Видеогалерея |
− | Генерация звука основана на таблице, содержащей 8 различных форм волны, где каждая из них описывается 32 4-битными записями. Для гибкости и возможности повторного использования, таблица хранится вне звукового чипа, на 256-байтном модуле PROM.
| + | |youtube|2NE61Q-99_g|Mappy OST| |
− | | + | |youtube|F7k5irgQjhY|Libble Rabble OST| |
− | Звуковой чип тактируется частотой 96 кГц, равной частоте основного процессора (3.072 МГц), поделенной на 32. В ходе цикла частотный счётчик каждого из канала увеличивается на текущее значение частоты, после чего 5 наиболее значащих битов используются как индекс для получения текущего сэмпла волны из таблицы. После этого призводится умножение сэмпла на значение громкости канала, и результат отправляется на усилитель для воспроизведения. Стоит отметить, что канал заглушен, если его частота или громкость установлены в 0.
| + | }} |
| | | |
| ==Ссылки== | | ==Ссылки== |
| * https://www.walkofmind.com/programming/pie/wsg3.htm | | * https://www.walkofmind.com/programming/pie/wsg3.htm |
| + | * https://github.com/tildearrow/furnace/blob/master/doc/7-systems/namco.md |
| | | |
| [[Категория:Звукогенераторы]] | | [[Категория:Звукогенераторы]] |