посмотрел сорец на свежую голову
...и смотрю что какой то херни я наплел...
...
вот те мой вариант этой чистилки буфера
Код:RenderBackground lxi hl, NOBATTY+1 lxi de, BALLBUF mvi b, 32 call Copy_B_Bytes_From_HL_To_DE ret
например
только нужно позабодтится чтобы буфера не пересекали границу 256 байтКод:RenderBackground lxi hl, NOBATTY+1 lxi de, BALLBUF mvi b, 32 RenderBackground_1 mov a, m stax de inc l inc e dcr b jnz RenderBackground_1 ret
я бы написал вообще так
только не говорите что вам жалко 128 байт для этого
посчитайте по тактам разницуКод:RenderBackground lxi hl, NOBATTY+1 lxi de, BALLBUF dup 31 ;повторить 4 строки ниже 31 раз mov a, m stax de inc l inc e edup mov a, m stax de ret
- - - Добавлено - - -
Помоему у вас сильно много оптимизации по памяти
каждый пол пчиха
у вас call туда call сюда
а там по 2 команді и jp еще куда то...
в итоге вместо полезного кода
выполняются одни call-ы и jp-ы...




Ответить с цитированием