Ну да, слышал про этот способ. Поэтому я добавил функцию в Screen Optimizer=) а у Tommy Gun есть другие способы создания маски.
Вид для печати
Ну да, слышал про этот способ. Поэтому я добавил функцию в Screen Optimizer=) а у Tommy Gun есть другие способы создания маски.
newart,
ты выводишь спрайт шириной 1 2 3 ... много
если твой спрайт надо урезать справа или слева. то просто задаешь уменьшеную ширину а указатель смещаешь вправо (если надо)
Круто! Получается, при выводе спрайта, для перехода на следующую строку графики, нужно просто инкрементировать старший байт.
А если произошло переполнение (или обнуление), значит банка закончилась, подключаем следующую банку со спрайтами (продолжение ковра), ставим в старший байт #c0 и продолжаем читать спрайт.
А как этот способ увязать с выводом на экран? Затягивать в буфер в среднюю память (#8000), если надо, зеркалить, затем переключать верхнюю память (#c000) на экранную банку и туда уже выводить с применением таблицы скролла?
SaNchez, а можно попросить экземпл в исходнике, демонстрирующий обвязку к этим процедурам и метод хранения данных?Цитата:
удалось максимально оптимизировать вывод спрайтов любой ширины, со сдвигом от 1 до 7, через таблицу длинной 3584 (#0e00) байт
он не ответит
https://github.com/Jerri1977/___core48
здесь посмотри
Ещё пример вывода спрайта, но когда памяти мало :)
https://zx-pk.ru/threads/23544-vyvod...ta-po-x-y.html