Для начала пойдут простые тесты.
Вид для печати
не оно то уже запускаемо
но работа не стабильная
ну и нужно подгружать дополнительный блок того чего не влезло
иначе много чего не работает...
последнюю версию вполне можно пытатсо прошивать
https://zx-pk.ru/threads/32195-zx8080-rom.html
в принципе пересилил нехотелку
еще немного оно ковыряю
нашел еще косяки в dao-вских командах
всякие
;LD ($5C3D),SP
push hl ;
ld hl,$0000 ;
push af ;DAO
add hl,sp ;
pop af ;
ld ($5C3D),hl ;
pop hl ;
записывали фиг знает что
но их исправление визуально ничего не дало...
чтение переменных по моему не работает
хотя запись вроде бы как нужно
Mick, у тебя на всякий случай есть кварцы 12-13 МГц?
Ответы на все вопросы по этой теме есть по ссылке на сайте Prusaka, и текст и фото
сделал in out вот так
Код:;; in
L34A5:
CALL L1E99 ; Routine FIND-INT2 puts port address in BC.
; All 16 bits are put on the address line.
if io_type = 1
IN A,(C) ; Read the port. ;!!!!!!!!!!!!!!!!
endif
if io_type = 2
ld a,c
ld (zx8080_in_l_port),a
ld a,b
call zx8080_in
endif
Код:;; OUT
L1E7A:
CALL L1E85 ; routine TWO-PARAM fetches values
; to BC and A.
if io_type = 1
OUT (C),A ; perform the operation. ; out !!!!!!!!!!!!!!!!!!!!!!!!!!1
RET ; return to STMT-RET.
endif
if io_type = 2
push af
ld a,c
ld (zx8080_out_l_port),a
ld a,b
jp zx8080_out
;pop af
;ret
endif
в озу вынесено больше чем надо для совместимости ПЗУ-шки с обычным спектрумом
у которого нет half_row_port-а
и которому нужны out-ы впритык чтоб юзать 16 битные порты
не знаю работает ли правильно out после pop-а
Код:;code in ram
zx8080_in
out (half_row_port),a
zx8080_in_l_port = $+1 : in a,($FE)
ret
zx8080_out
out (half_row_port),a
pop af
zx8080_out_l_port = $+1 : out ($FE),a
ret
то есть halfrow port можно заюзать вообще для чтения\записи в любой 16 битный порт
а не только для одной клавиатуры
Ну что, платки получил с почты. Истина стала еще на один шаг ближе :)
https://i.ibb.co/hK7xHXv/IMG-20201024-140249.jpg
https://i.ibb.co/2KDF4Fj/IMG-20201024-140414.jpg
Красиво, душевно. Какие примерно размеры? Что планируешь поставить на панельки?
Размеры приведены уже давно в первом посте, продублирую еще раз
Габариты 250 x 140 мм
На панельки точно поставлю ОЗУ, ПЗУ, процессор, буферный регистр ИР22 и вот думаю еще под буфер шины, чтобы попробовать, будет ли без него работать.