
Сообщение от
Lethargeek
еще как прибавится, особенно на тормозных фирменных
ну и написано оно на неизвестно чем
и раз речь идет про выравнивание halt-ом
вангую что на 14МГц турбе все будет носится как бешенное 
- - - Добавлено - - -

Сообщение от
ALKO
Местами поменял, но одна треть экрана у меня всё равно монолитная:
а буфер под оно полностью(каждый байт) перестраивается каждый кадр?
- - - Добавлено - - -

Сообщение от
ALKO
Местами поменял, но одна треть экрана у меня всё равно монолитная:
ld hl,#4800+addr_virt_screen-#4000 ; вся вторая треть
ld de,#4800
ld bc,2048
ldir
дешево и сердито сделать так
у тебя уже есть процедура с 32 ldi
сделай вместо ldir-а call на нее
и небольшое условие
Код:
ld hl,$0000
ld de,$4800
ld bc,$800+$4000
loop
; ldir
call ldi_32
djnz loop
;dec b
;jp nz,loop
jp $
ldi_32
dup 32
ldi
edup
ret
ldir-ом ~43008 такта
этой парашей ~35422
+$4000 к BC это для 64 циклов ($40)
чтоб делать быструю проверку на no zero
без пересылания в регистр A
тк ldi не ставит нужных флагов
подкоректируй длину bc +-32 если я на глаз не попал
- - - Добавлено - - -
так же будет полезно еcли твой набор ldi будет выглядеть так
Код:
ldi_20 ldi
ldi_19 ldi
ldi_18 ldi
ldi_17 ldi
ldi_16 ldi
ldi_15 ldi
ldi_14 ldi
ldi_13 ldi
ldi_12 ldi
ldi_11 ldi
ldi_10 ldi
ldi_09 ldi
ldi_08 ldi
ldi_07 ldi
ldi_06 ldi
ldi_05 ldi
ldi_04 ldi
ldi_03 ldi
ldi_02 ldi
ldi_01 ldi
ret
и можно будет его использовать вместо любого ldir с фиксированным числом перекидываемых данных
ну или не с фиксированным
тк один ldi 2 байта
и если кидать много
то можно и рассчитать положение куда jp-ать