Post
by Administrator » 18-Dec-2021, 22:37
Порт 49149 (#BFFD, %1011111111111101)
Порт 65533 (#FFFD, %1111111111111101)
Через эти порты осуществляется адресация восьмиразрядных регистров музыкального процессора. Всего таких регистров шестнадцать, мы будем обозначать их R0...R15. Регистры двунаправленные, то есть информацию в них можно записывать и считывать. Для доступа к какому-либо регистру его номер (число в диапазоне от 0 до 15) необходимо записать по адресу 65533 (#FFFD).
После этого становится возможна передача данных между этим «установленным» или текущим регистром и микропроцессором. Для смены текущего регистра соответствующий номер нужно записать в порт 65533, и так далее.
Обратите внимание, что адреса для чтения и записи информации в текущий регистр музыкального процессора различны. Для записи байта
нужно выполнить команду вывода в порт с адресом 49149, а для чтения — команду ввода из порта с адресом 65533 (#FFFD).
Прежде, чем разобрать функции отдельных регистров музыкального процессора, остановимся на его особенностях. Микросхема музыкального
процессора имеет три независимых канала для формирования звука (обозначаются А, В и С) и два двунаправленных восьмиразрядных канала ввода/вывода — IRA и IRB, соответственно. Через канал IRA осуществляется связь с принтером, вывод сигналов для специального музыкального интерфейса MIDI и, кроме этого, связь со специальной выносной клавиатурой функциональных клавиш, используемых в расширенном интерпретаторе Бейсика.
Регистры R0/R1, R2/R3, R4/R5
Три спаренных регистра R0/R1, R2/R3, R4/R5 используются для выработки частоты тона соответственно каналов А, В и С. Необходимые двенадцатиразрядные значения образуются из восьми бит младшего по номеру регистра и четырех младших бит старшего по номеру регистра.
Регистр R6 - Младшие пять разрядов этого регистра задают частоту шума.
Регистр R7 - Через этот регистр осуществляется управление звуковыми каналами и регистрами ввода/вывода.
Регистры R8, R9 и R10 - Младшие пять разрядов регистров R8, R9 и R10 управляют соответственно амплитудой каналов А, В и С.
Регистры R11/R12 - Спаренные регистры R11/R12 образуют шестнадцатиразрядное значение огибающей выходного сигнала, регистр R11 несет младший байт, а R12 — старший.
Регистр R13 - Младшие четыре разряда этого регистра управляют формой и режимом огибающей выходного сигнала:
бит 0 — затухание;
бит 1 — чередование;
бит 2 — нарастание;
бит 3 — продолжение.
Регистры R14 и R15
Регистры R14 и R15 используются соответственно для связи с каналами ввода/вывода IRA и IRB. Содержимое этих регистров можно в любой момент считывать и записывать, на формировании звука это никак не отражается.