╔══════════════════════════════════════╗
║Раздел:Открытие; ║
║Статья:Програмирование AY 3-8910; ║
║Текст :Ворожкин Александр. ║
╚══════════════════════════════════════╝
В этом разделе я расскажу вам о програ-
ммировании музыкального процессора.Для
управления муз.процессором имеются два
порта с адресом #FFFD - адрес выбора
регистра и с адресом #BFFD - адрес порта
для чтения.Музыкальный процессор имеет
16-ть восьмиразрядных регистров,пронуме-
рованных от R0 до R15.Для того чтобы за-
писать данные в какой-либо из регистров,
нужно проделать следующие операции:
LD BC,#FFFD ;Адрес порта выбора ре-
гистра
LD A,N ;Номер регистра
OUT (C),A ;Выбор регистра
LD B,#BF ;Адрес для выбора данных
(C = #FD)
LD A,N ;Данные
OUT (C),A ;Запись данных в регистр
Теперь я хотел бы вам подробно объяс-
нить назначение всех регистров:
R0 - R5 ;Образуют три пары для
задания высоты звука.
Для каждого из трех ка-
налов: R0,R1 - канал A;
R2,R3 - канал B;R4,R5 -
канал C.В этих парах
используется только 12
бит,таким образом число
определяющее высоту
звука лежит в пределах
от 0 до 4095.
R6 ;Задает частоту белого
шума.Для задания шума
используется младшие
6-ть бит от 0 до 5.
R7 ;Управляет смесителем
каналов.Младшие три би-
та используются для
управления выводом чис-
того тона для каждого
из трех каналов.Биты
3,4,5 используются для
управления выводом час-
тоты шума.Биты 6 и 7
запрещение функций вво-
да.
R8 - R10 ;Управляют амплитудой
звука соответственно в
каналах A,B,C.Громкость
лежит в пределах от 0
до 15 то есть использу-
ются младшие 4 бита.
R11 - R12 ;Образуют пару и задают
скорость огибающей.Ис-
пользуются все 16 бит
этих регистров.В них
можно записывать значе-
ние от 0 до 65535.Чем
больше число,тем больше
скорость изменения оги-
бающей.
R13 ;Генератор огибающей.Ис-
пользуется младшие 4
бита: бит 0 - задержка;
бит 1 - чередование;
бит 2 - атака; бит 3 -
продолжение.
R14 - R15 ;При программировании на
звучание не влияют.Ис-
пользуются для управле-
ния шиной данных и пор-
тами ввода/вывода.
Также с помощью муз.процессора возможно
воспроизведение цифрового звука.Для вос-
произведения используются 4-х битные ре-
гистры амплитуды звука, от R8 до R10.Для
примера мы даем программу воспроизведе-
ния цифровок:
DI
LD HL,Адрес
LD DE,Длина
LD BC,#FFFD
LD A,Канал ;8 - A,9 - B,10 - C
OUT (C),A
LD B,#BF ;_OUT1
LD A,(HL)
OUT (C),A
LD B,Задержка ;от 1 до 255
DJNZ $
INC HL
DEC DE
LD A,D
OR E
JR NZ,_OUT1
EI
RET
Я думаю,что пояснения для этого примера
не потребуются.
AY способен воспроизводить только 4-х
битный звук.Для более качественного вос-
произведения используются такие устрой-
ства, как COVOX,SOUNDRIVE,ULTRAVOX.
Other articles: