Материал из Chipwiki
Перейти к: навигация, поиск
Namco WSG — различия между версиями
м (Pixelrat переименовал страницу Namco 3-channel Waveform Sound Generator в Namco WSG)
м
Строка 1: Строка 1:
Namco 3-channel Waveform Sound Generator (WSG) использовался в аркадных платформах [[Namco Galaxian|Galaxian]], [[Namco Pac-Man|Pac-Man]] и других. Позволяет использовать три канала с независимой регулировкой громкости, частоты и формы + шумовой генератор. Все функции зависят от 4-я битных регистров:
+
Namco 3-channel Waveform Sound Generator (WSG) использовался в аркадных платформах [[Namco Galaxian|Galaxian]], [[Namco Pac-Man|Pac-Man]] и других. Позволяет использовать три канала с независимой регулировкой громкости, частоты и формы + шумовой генератор. Все функции зависят от 4-хбитных регистров:
 
{|class="wikitable"
 
{|class="wikitable"
 
|-
 
|-

Версия 12:17, 14 марта 2018

Namco 3-channel Waveform Sound Generator (WSG) использовался в аркадных платформах Galaxian, Pac-Man и других. Позволяет использовать три канала с независимой регулировкой громкости, частоты и формы + шумовой генератор. Все функции зависят от 4-хбитных регистров:

Регистр За что отвечает
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 не имеют регистра для наименьшего значащего полубайта, и его значение для этих каналов предполагается равным нулю.

Регистры обычно отображаются в адресное пространство памяти процессора. В аппаратном обеспечении Pacman регистры отображены в ячейки памяти с адресами 5040-505Fh, так что, например, запись значение по адресу 505Ah производит установку уровня громкости канала #2.

Генерация звука основана на таблице, содержащей 8 различных форм волны, где каждая из них описывается 32 4-битными записями. Для гибкости и возможности повторного использования, таблица хранится вне звукового чипа, на 256-байтном модуле PROM.

Звуковой чип тактируется частотой 96 кГц, равной частоте основного процессора (3.072 МГц), поделенной на 32. В ходе цикла частотный счётчик каждого из канала увеличивается на текущее значение частоты, после чего 5 наиболее значащих битов используются как индекс для получения текущего сэмпла волны из таблицы. После этого призводится умножение сэмпла на значение громкости канала, и результат отправляется на усилитель для воспроизведения. Стоит отметить, что канал заглушен, если его частота или громкость установлены в 0.