Не важно на каком такте цикла добавляются WAIT-ы. А важно сколько тактов WAIT добавляется.Сообщение от Stampmaker
Речь шла о том, что в режиме НЕТУРБО формирование сигнала /WAIT надо отключать.
Видео-генератор даёт процессору для доступа к ОЗУ только один машинный такт частоты 2.5 МГЦ. Поэтому продлевать время доступа долее, чем до окончания периода 2.5 МГЦ незачем и только приводит к проблемам. Если в OUT-командах уже есть дополнительный такт WAIT, то это только приводит к проблемам на такте 2.5 МГЦ. А на такте 5 МГЦ нет, просто при 5 МГЦ аппаратный WAIT дополняется программным встроенным в Z80. Но WAIT в схеме Z80 вводят не для команд OUT, а для обычных команд работы с памятью.
А при 2.5 МГЦ команды IN/OUT адресованные в ОЗУ тоже получают ненужный такт WAIT, встроенный внутри Z80. Отчего команды IN/OUT адресованные в ОЗУ на такте 2.5 МГЦ читают и пишут чушь. Т.к защелкивание считываемых данных происходит по фронту /MREQ, когда уже целый такт буфер ОЗУ и буфер CPU закрыты. Запись в ОЗУ командой OUT адресуемой в ОЗУ, возможно, сработает, а вот чтение по IN - нет. Т.е и вводить подмену старших адресов для команд IN/OUT при такте 2.5 МГЦ просто не имело смысла. Это как раз тот случай, когда WAIT встроенный в Z80 для команд OUT вреден. А вот на такте 5 МГЦ команды IN/OUT адресуемые в ОЗУ сработают.
У меня никогда не было схемы с подменой команд OUT на команды записи в ОЗУ, так что любопытно работает ли команда IN и команда OUT адресуемая в ОЗУ (т.е с N порта менее F4) на схеме ОРИОН-СЕРВИС с тактом 2.5 МГЦ.




Ответить с цитированием
