Удлинять циклы для ez80 не нужно, насколько я помню, когда читал даташит на него, как и Z180/Z280/Z380 он имеет управляющие регистры и там выставляется режим совместимости по тактам с Z80.
Удлинять циклы для ez80 не нужно, насколько я помню, когда читал даташит на него, как и Z180/Z280/Z380 он имеет управляющие регистры и там выставляется режим совместимости по тактам с Z80.
Скрытый текст
Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
ZX Evolution Rev B.
Color 48 + Beta Disk Interface +FDD+YM2149F
Орель-08БК
Pentagon-48 (недоссобранный кем-то)
Pentagon-128 (полуубитый)
Кворум-128 (в ремонте)
Магик-05 (в ремонте)
Robotron 1715
Корвет ПК8020 и ПК8010
Amstrad CPC 464
Amstrad CPC 6128[свернуть]
Это не режим совместимости по тактам, а режим совместимости с шиной. Чтобы не одним махом выставлялись все сигналы, а более-менее было похоже на Z80, Intel, или Motorola. В режиме Z80 все обращения к памяти выполняются за 6 тактов.
- - - Добавлено - - -
С удивлением обнаружил, что outi/otir/outd/otdr в Z84 старший байт адреса равен B минус 1.
А вообще кто-нибудь в программе использовал такой блочный доступ к портам, или из-за меняющегося старшего байта адреса он смысла не имеет?
используется
Код:ROUT XOR A ; ; ROUT_A0 LD DE,$FFBF ; ; LD BC,$FFFD ; ; LD HL,AYREGS ; ; LOUT OUT (C),A ; ; LD B,E ; ; OUTI ; ; LD B,D ; ; INC A ; ; CP 13 ; ; JR NZ,LOUT ; ; OUT (C),A ; ; LD A,(HL) ; ; AND A ; ; RET M ; ; LD B,E ; ; OUT (C),A ; ; RET ; ;
просто сделать outi и востановить b 20t
а прочитать hl проинкрементить и отправить в порт как минимум 22t
Последний раз редактировалось NEO SPECTRUMAN; 31.07.2019 в 00:48.
Неожиданно. Прям засада с этими портами.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
ну а кто мешает положить на несовместимое и таки использовать?
что то останется работать
что то можно будет допилить
можно вообще делать хардварный перехват несовместимых команд
хотя у ез80 по моему уже конвеер
и это будет сложнее
можно ставить вторым процем...
хотябы чтоб работали или тот или тот
Да, в мануале даже картинка есть, как там операции на шине перетасовываются.
Хардварный перехват будет однозначно. Но, однако, на сложную задачу замахнулся, это я уже понял.
Мне этого мало
Задача-максимум: запустить две программы, написанных для 48/128/etc, и чтобы они независимо выполнялись, выводя изображение в окна. Многозадачность и виртуализация Z80 на Z80. С эмуляцией дисковода, AY, регистра 7FFE и прочего.
Пока не уверен. На Z84 (буду называть его так) вроде получается проще, но eZ80 быстрее раз в 10 и может адресовать 16 мегабайт.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)