ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Интересно, а каким раком, простите за мой французский, происходит запись в часы Ориона, если сигнал r/w приходит позже чем as или ds?
Запись данных в регистры часов идет при "0" на r/w и последующем "1" на ds. Реально же сигналы с процессора идут с точностью до наоборот... Не понял![]()
Последний раз редактировалось Ewgeny7; 09.07.2010 в 21:22.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
В даташыте, который в аттаче указано что DSка может работать в двух режимах (шины) Motorola и Intel, так вот для работы в орионе она должна работать в режиме Motorola, т.е. данные и адреса стробируются сигналами AS, DS, а не AS, R/W. В общем читать описания выводов MOT,DS,R/W
Keeper, режим чтения/записи рулится все равно r/w. В результате имеем, что селектор адреса с проца выдаст строб (as или ds) а уже потом только сигнал r/w изменит своё значение на "0" при записи в часы. А это не соответствует шиту напрочь.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Ну так там написано что данные защелкиваются задним фронтом сигнала DS... Что тут не ясно?
Ситуация - РВ высокое, приходит строб ДС. Часы выдают данные на шину (куда, кстати, проц также пытается выпихнуть свои данные в цикле записи). Сигнал WR с процессора меняет уровень на "0" (типа, запись). Что произойдет? Х.З.
В том же шите пишется, что направление передачи данных определяется часами при переднем фронте ДС по состоянию РВ. А РВ в таком случае ВСЕГДА будет на переднем фронте ДС равным "1". Вот в чем затыка...
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Там написано пока DS = 1, а не по переднему фронту DS, то что там будет переходной процесс (с конфликтом по выходам) не страшно, т.к. это довольно короткий промежуток времени.Read/Write Input. The R/W pin has two modes of operation. When the MOT pin is
connected to VCC for Motorola timing, R/W is at a level that indicates whether the
current cycle is a read or write. A read cycle is indicated with a high level on R/W
while DS is high. A write cycle is indicated when R/W is low during DS
---------- Post added at 22:28 ---------- Previous post was at 21:39 ----------
Кстати, можно поробовать и Intel режим:
/CE = /F760 or not A0
DS = /RD
R/W = /WR
AS = not (/F760 or A0)
В общем, мотороловский режим нифига не работает.
as<='1' when (csf76='0' and a_buff(0)='0') else '0';
ds<='1' when (csf76='0' and a_buff(0)='1') else '0';
rw<='1' when (wr_n='1') else '0';
СЕ всегда "0", МОТ="1", RES=Vcc.
---------- Post added at 23:50 ---------- Previous post was at 23:48 ----------
Попробую, но уже завтра.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Так! Что-то не догоняю!
1. В настоящий момент Монитор, в клавиатуре PS/2 через порт F500, четко определяет CTRL и SHIFT? А это, ведь, отдельно замыкаемые контакты. Как это делается и какие клавиши при этом нажимаются на ПС? Конкретно!
2. В настоящий момент SHIFT (CTRL) нажимается одновременно с символьными клавишами или по отдельности?
Может ты мне ответишь вразумительно, а то я "пытал" Сергея на эту тему (какие клавиши ПС эмулируют клавиши РК ), так он произнес что-то невнятное и молчит, как партизан. А хотелось бы (еще при жизни нынешнего поколения!) увидеть рисунок АТХ-клавиатуры, на которой нарисованы эквиваленты клавиш РК-86! Но, похоже, мне до этого счастливого момента не дожить!
Если ты чего-то не знаешь, то это не значит, что этого не может быть.
а что симулятор говорит?
Я вот что думаю, по даташыту, Z80 в цикле вывода данных в порт удерживает данные на шине и после снятия сигнала /WR и смены адреса, а тут получается что данные защелкиваются по факту смены адреса... Можно попробовать защелкивать данные по передним фронтам /RD или /WR
as<='1' when (csf76='0' and a_buff(0)='0' and wr_n = '0') else '0';
ds<='1' when (csf76='0' and a_buff(0)='1' and ( wr_n = '0' or rd_n = '0' )) else '0';
Последний раз редактировалось Keeper; 10.07.2010 в 00:00.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)