Да. Там для каждого случая свой раздел. Вывод слева по 1,2,3,4,5 столбиков, то же для правой части. И сверху-снизу тоже часть умеет выводить. Адреса хранятся для каждой пары строк. Высота 21 строка - значит 11 адресов на спрайт.
Вот так я писал:
Спрайт занимает 126 байт, 6 байт ширина, 21 высота, занимаемое место округляется до 128
Выводится в таком порядке байт:
01 03 05 07 09 11
00 02 04 06 08 10
13 15 17
12 14 16 18...
А последняя строчка по порядку 120 121 122 123 124 125.
Причём нули пропускаются, не выводятся. Поэтому не надо маски.
Вот переделывать формат спрайтов мне меньше всего охота было )
При быстром выводе через ld (NN),hl хитрый формат спрайта почти не влияет на скорость. Там по строчкам выводится всё равно.
А тут да, очень криво выходит.





Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
Ответить с цитированием