забей, в общем.)) Я буду сам ковырять дальше. Извини, что отвлёк.
стек для вывода спрайтов не используется. Да и вообще, нигде он не используется для вывода на экран.
Вид для печати
Местами поменял, но одна треть экрана у меня всё равно монолитная:
конечно можно её поделить на 64 вызова LDI-процедурки. Но фпс от этого сильно не прибавится, лишь память зря загажу. Так как даже с использованием теневого экрана 128к хоть и удавалось сгладить рассинхрон хальтом, но сильно шустрее по сравнению с LDIRами оно не становилось. Наиболее затратен во всей этой лабуде именно расчёт каждого знакоместа отдельно взятого спрайта (на гифке зеркальные спрайты глючут, ибо таблица попала в область переключаемой банки).Цитата:
ld hl,#4800+addr_virt_screen-#4000 ; вся вторая треть
ld de,#4800
ld bc,2048
ldir
https://media.giphy.com/media/lRLh9d...mBTZ/giphy.gif
ну и написано оно на неизвестно чем
и раз речь идет про выравнивание halt-ом
вангую что на 14МГц турбе все будет носится как бешенное :v2_lol:
- - - Добавлено - - -
а буфер под оно полностью(каждый байт) перестраивается каждый кадр?
- - - Добавлено - - -
дешево и сердито сделать так
у тебя уже есть процедура с 32 ldi
сделай вместо ldir-а call на нее
и небольшое условие
ldir-ом ~43008 тактаКод: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
этой парашей ~35422
+$4000 к BC это для 64 циклов ($40)
чтоб делать быструю проверку на no zero
без пересылания в регистр A
тк ldi не ставит нужных флагов
подкоректируй длину bc +-32 если я на глаз не попал
- - - Добавлено - - -
так же будет полезно еcли твой набор ldi будет выглядеть так
и можно будет его использовать вместо любого ldir с фиксированным числом перекидываемых данныхКод: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
ну или не с фиксированным
тк один ldi 2 байта
и если кидать много
то можно и рассчитать положение куда jp-ать
на асме...
- - - Добавлено - - -
Все вопросы к автору этой книги.
#ЯЖНЕПРОГРАММИСТ
https://zxpress.ru/book_articles.php?id=1028
https://zxpress.ru/chapters_images/kakasm/fist.gif
боже какая жесть
а чего нельзя это все таблично?
тем более все перемещение кратное 8 пикселям
- - - Добавлено - - -
кстате Я щитаю что
флеш водопад должен выглядеть не так
https://jpegshare.net/images/b3/ca/b...a3c35329b7.gif
а больше похоже на
https://jpegshare.net/images/12/82/1...c6355f1ff8.gif
и не надо call каждый раз, а сразу прописать там же цикл