Вообщем, давно зрела мысль перенести музыкальную ячейку Агат на шину ISA8 для PC, так как звук этого девайса очень нравится.
UPD: Первая версия собрана, протестирована, и работает:
Страница проекта: https://github.com/Tronix286/MuzCell
Первоначальное сообщение:
Вот тут демо:
Единственное, что все время останавливало, так это полное отсутствие софта на PC для этой звуковой карты. Но немного погуглив, прикинув что к чему, в принципе появилась небольшая уверенность, что я смогу для этой муз карты сделать поддержку в плеере DOSMID, в драйверах AIL2 (как это уже было сделано для Creative Music System), так же можно попробовать перенести один из плееров AY-музыки с вектора или Агат, что бы играть тюны AY, так же можно поиграться с ШИМ, что бы просто воспроизводить WAVE файлы.
Начал рисовать схему, и решил, что будут следующие отличия от оригинальной муз ячейки:
- не буду делать внешний 8-битный порт. Один фиг к нему никто на ПЦ ничего цеплять не будет;
- не будет IRQ от таймера одной из ВИ53 и управления IRQ. На ПЦ и так таймер есть, даже не один - если нужны прецизионные задержки никто не мешает повесить свой обработчик прерывания прямо на таймер в DOS;
- за счет этого высвобождается один канал ВИ53, который заюзаю как еще один тональный канал. У оригинала было 5 тональных каналов, здесь будет 6 тональных канала;
- будет возможность чтения регистров обоих ВИ53. В оригинале такой возможности не было. Нафига - пока не понятно, но оно не сложно, возможно для авто-детекта карты.
В связи с этим немного меняется расположение портов, хотя и остается близкое к оригиналу - за счет появления шестого тонального канала сдвинулись порты управления ударными каналами. Перемычка выбора портов на адреса 300,310,320,330,380,390,3A0,3B0, чтоб никому не помешать если что. Распределение портов такое:
3n0..3n3 - регистры первой ви53 (тональные каналы 1-3).
3n4..3n7 - регистры второй ви53 (тональные каналы 4-6).
Порты 3n0-3n7 доступны как на запись, так и на чтение;
3n8..3nD - управление блоками коммутации тональных каналов.
3nE..3nF - управление ударными каналами.
Порты 3n8-3nF доступны только на запись.