TLC7226CN
Вид для печати
Забрал сегодня печатки версии Middle
http://s020.radikal.ru/i721/1311/e6/3181749de548t.jpg
http://i023.radikal.ru/1311/32/70e16dd941c6t.jpg
Фото кликабельно.
Собрал няшку, завтра попытаюсь прошивку накатать.
http://s52.radikal.ru/i137/1311/ff/e21bb557fbb5t.jpg
http://s019.radikal.ru/i639/1311/11/c6bfe7fd08b4t.jpg
Фото кликабельно.
Так напомните, если кто помнит порты SounDrive.
У Black Cat в табличке вот что написано
Код:--------------------------------------------------------------------------------
SOUNDRIVE v1.05 (SOUNDRIVE/COVOX)
--------------------------------------------------------------------------------
#0F#1F#4F#5F/xxxxxxxx0B0A1111 xxxxxxxxxB0Axxx1 - LA,LB,RA,RB
/#F1#F3#F9#FBxxxxxxxx1111B0A1 xxxxxxxxxxxxB0A1 - LA,LB,RA,RB
по быстрому нашлось такое :
velesoft.speccy.cz/da_for_zx-cz.htm
Собственно у Black Cat тоже самое.
Но вот бы руки оторвать тем, кто столько портов в никуда спустил.
желательно делать с полной дешифрацией по всем 8 адресам - порты стандартные с таким расположением, как на сайте Velesoft`a, но порты F1 и F9 - это рудименты добавочных портов F3 (неполностью дешифрованый порт B3 ковокса GS) и FB - пентагоновский ковокс. порты F1 и F9 я у себя отключил, по вышеописаной причине. я в свою версию soundrive добавил порт 3F в левый канал, чтобы была поддержка стереоковокса Профи (3F - left, 5F - right). какие еще порты добавлять, тут надо смотреть. есть допустим порт скорпиона DD, но для него надо делать iorqge, т.к. скорее всего будет откликаться и порт FD...
Я не думаю, что нужны экзотические порты как DD, тем более что у меня сигнала IORQGE нет. :)
Накатал прошивку. Надо же даже заработала. Прикольно оцифровки слушать, сразу вспоминается время кассетных магнитофонов :)
Да вот код прошивки
И да, издеваюсь над эвой, потому как она сами знаете чего.Код:TITLE "ZXM-SounCard Middle System Logic";
FUNCTION 2mux1 (a, b, sel) RETURNS (y);
SUBDESIGN DD2
(
A[7..0] : INPUT; % адреса %
A9, A10, A11, A14, A15 : INPUT; % адреса %
WR, RD, MREQ, IORQ, RES, M1 : INPUT; % сигналы управления %
ENDOS : INPUT; % сигнал доступа к портам контроллера FDD %
DB3, DB4, DB7 : INPUT; % шина данных %
IOEN56 : INPUT; % шина данных, биты 5 и 6 %
8CLK : INPUT; % вход тактовой частоты для SAA1099 %
PEVO, PRTFF : INPUT; % входы режимов работы карты %
CSSAA : OUTPUT; % выбор микросхемы SAA1099 %
CCLK : OUTPUT; % выход тактовой частоты SAA1099 %
DACA, DACB : OUTPUT; % выходы выбора ЦАП %
DACWR : OUTPUT; % сигнал записи в ЦАП %
)
VARIABLE
SELECT : NODE;
SAA_IOEN : LCELL;
ENIO : NODE;
ENIO_EVO : NODE;
CSIO : LCELL;
STRB_ADDR : DFF; % триггер адреса %
SAA_DIS : DFF;
CSFF_EX : NODE;
CSFF_N : NODE;
CSFF : LCELL;
CSFFFD : LCELL;
CSXF : LCELL;
CS3F : LCELL;
CSFX : LCELL;
BEGIN
DEFAULTS
STRB_ADDR = 0;
SAA_DIS = 1;
END DEFAULTS;
% Формирователь сигнала выбора портов компьютеров, отличных от Pentevo PEVO =1 %
ENIO = IORQ # ENDOS;
% Формирователь сигнала защиты от колизии портов FF контроллера дисковода - только для Pentevo %
STRB_ADDR.d = A14 # A15;
STRB_ADDR.clrn = RES;
STRB_ADDR.clk = MREQ # RD;
% Формирователь сигнала выбора портов кoмпьютеров типа Pentevo PEVO =0 %
ENIO_EVO = !MREQ # !STRB_ADDR.q;
% Формирователь сигнала выбора портов%
CSIO = 2mux1(ENIO_EVO, ENIO, PEVO);
% ---------------------------- SAA1099 --------------------------------- %
% Формирователь сигнала выбора портов %
SAA_IOEN = M1 & A7 & A6 & A5 & A4 & A3 & A2 & A0;
% Формирователь сигнала выбора микросхемы SAA1099 - порты #4FF и #5FF PRTFF = 0 %
CSFF_EX = A14 # A15 # A11 # !A10 # A9 # !A1;
% Формирователь сигнала выбора микросхемы SAA1099 - порты #0FF и #1FF PRTFF = 1 %
CSFF_N = A14 # A15 # !A1;
% Формирователь сигнала выбора микросхемы SAA1099 - порт #FF %
CSFF = 2mux1(CSFF_EX, CSFF_N, PRTFF);
CSSAA = CSFF # CSIO # !SAA_IOEN;
% Формирователь сигнала выбора порта #FFFD %
CSFFFD = !A1 & A14 & A15 & !CSIO & SAA_IOEN;
% Выбор внутреннего регистра осуществляется при записи номера регистра #Fxxxx в виртуальном регистре %
SELECT = !(DB[7] & DB[4] & !IOEN56 & !WR & CSFFFD);
% Бит выбора микросхемы SAA1099 %
SAA_DIS.d = DB[3];
SAA_DIS.prn = RES;
SAA_DIS.clk = SELECT;
% Управление тактовой частотой SAA1099 %
CCLK = !SAA_DIS.q & 8CLK;
% ---------------------------- SounDrive v1.05 --------------------------------- %
% Порты: %
% -------------------------------------------------------------------------------%
% Режим 1: %
% #0F = левый канал A или канал 1 стерео Covox %
% #1F = левый канал B %
% #4F = правый канал C или канал 2 стерео Covox %
% #5F = правый канал D %
% -------------------------------------------------------------------------------%
% Режим 2: %
% #F1 = левый канал A %
% #F3 = левый канал B или канал 1 стерео Covox %
% #F9 = правый канал C %
% #FB = правый канал D или канал 2 стерео Covox % %
% -------------------------------------------------------------------------------%
% Режим 3: %
% #3F = левый канал Covox Profi %
% #5F = правый канал Covox Profi %
% -------------------------------------------------------------------------------%
% Выборка портов режима 1 0x0x1111 %
CSXF = !A7 & !A5 & A3 & A2 & A1 & A0;
% Выборка портов режима 2 1111x0x1 %
CSFX = A7 & A6 & A5 & A4 & !A2 & A0;
% Выборка порта #3F режима 3 00111111 %
CS3F = !A7 & !A6 & A5 & A4 & A3 & A2 & A1 & A0;
% Выборка ЦАПа %
IF CSXF == 1 THEN
DACA = A4;
DACB = A6;
ELSEIF CSFX ==1 THEN
DACA = A1;
DACB = A3;
ELSEIF CS3F ==1 THEN
DACA = A4;
DACB = A6;
END IF;
% Сигнал записи в ЦАП %
DACWR = WR # CSIO # !(CSXF # CSFX # CS3F);
END;
P.S. Шикарно звучит мелодия в FT3_demo ( Flash Tracker 3 demo):) Такой мягкий и пушистый звук :)
Mick, как я писал выше, канал F3, это не полностью дешифрованый канал B3 (GS). Т.е. при полной дешифрации подразумевается всё таки использование порта B3. Еще если интересно, попробуй провести эксперимент - возьми Extreme Tracker 1.30-1.41, и выбери порт F1 или F9, но не на пентеве, (где внутренние порты закрыты), а на другом клоне с zx-bus. попробуй в них проиграть. у меня на Профи, при обращении к этим портам вылетал во второй экран, т.к. отзывался порт FD. из-за чего эти порты были выпилены из схемы и больше не упоминались. стандартные порты Soundrive это 0F, 1F, 4F и 5F, а остальные порты в режиме 2 это расширение функционала SounDrive и возможность объединить одинаковые по схеме устройства. Дело твоё конечно, но если оставлять порты F1 и F9, то для них надо полюбому делать iorqge, которого у тебя нет...