А че за BC1, BC2 и BDIR?
И еще, если я запишу в порт 37A значение 0x04h (00000100) я должен наблюдать на 23 ноге (RESET) низкий уровень, так?
---------- Post added at 12:44 ---------- Previous post was at 12:19 ----------
А, все, посмотрел даташит, соответственно:
Ну правильно значит они рулят выводом
Код:
procedure AD(b:byte);
begin
Port[LPT+2]:=Port[LPT+2] and $FB or b shl 2;
end;
Эта процедура меняет второй бит (1 или 0). То есть засылает в порт либо 11111011 либо 11111111 . Второй бит - это 16 пин LPT или сигнал BC1 ямахи.
Код:
procedure OutYM2149(Address,Data:byte);
begin
AD(1);
D(Address);
AD(0);
D(Data);
end;
Ну и понятно - сначала выбирают что будет записываться адрес, пишут адрес, потом что будет дата и пишут дату. Все верно вроде.
Так же и с ресетом тоже понятно - сначала пишут 11111111, затем 11110111, затем 11111111.
Сигнал RESET больше нигде не трогается в процесе проигрывания YM.