Vladimir Kladov
Короче: LDIR = LDI;PC=PC-2. И точка.
Мне бы эту гениальную мысль, да лет 10 назад... а что теперь прошлое ворошить...
Честно-честно?
Осциллографом тыкать сразу - нет чтобы доки почитать...
Ну-ну, зачем же так злобно... Лучше на работе долго не задерживаться, да спать побольше, а еще на людей, которые раздражают и злят, не обращать особого внимания, тогда и настроение гораздо лучше будет, и быть может производительность повысится до версии 2.8 (а то и 3.0)
.
А то будете как я 4-мя постами выше 
DDp
Вы как всегда на высоте, примите мои благодарности (кстати, что я могу для Вас сделать?). Этот тест был на то, правильно ли мы думаем(ли) о командах, на которые префиксы #DD/#FD не влияют. Итого осталось уточнить, как реагируют префиксы #DD/#FD на длинную цепочку из самих себя. С тактами вроде ясно и с регистром R почти понятно, но на всякий случай лучше проверить. Это несложно. А вот с прерываниями будет небольшая рутина...
А у нас так глаз пристрелявши.
Круто! Я даже прочувствовал то самое давно забытое ощущение возбуждения от созерцания подобных полосок
))
Итак, продолжаем. (Может удобнее будет, если я сразу коды забабах*ю?
). Следующая пара прожек:
Код:
ORG #8000
XOR A, A
LD R, A
DI
DB #FD ; R += 1
DB #DD ; R += 1, PC -=1, R += 1 ???
DB #FD ; R += 1, PC -=1, R += 1 ???
DB #DD ; R += 1, PC -=1, R += 1 ???
DB #FD ; R += 1, PC -=1, R += 1 ???
DB #DD ; R += 1, PC -=1, R += 1 ???
DB #00 ; R += 1
LD A, R ; R += 2
OUT (#FE), A ; R += 1
JR $-11 ; R += 1
и
Код:
ORG #8000
XOR A, A
LD R, A
DI
DB #DD ; R += 1
DB #DD ; R += 1, PC -=1, R += 1 ???
DB #DD ; R += 1, PC -=1, R += 1 ???
DB #FD ; R += 1, PC -=1, R += 1 ???
DB #FD ; R += 1, PC -=1, R += 1 ???
DB #FD ; R += 1, PC -=1, R += 1 ???
DB #00 ; R += 1
LD A, R ; R += 2
OUT (#FE), A ; R += 1
JR $-11 ; R += 1
Если все предполагалось верно, тогда в обоих случаях бордюр должен быть постоянно белым и кол-во тактов между WR должно быть 81. Чуть позже наваяю поверку прерываний.