Оптимизировал копирование со скрытого экрана на видимый — развернул цикл копирования и сделал самомодифицирующийся код этого самого цикла по совету Manwe Sands. В зависимости от ширины копируемого куска, исполняется нужное количество итераций цикла. Код sob r2 как раз и изменяю:
Для теста просто запустил секундомер и пробежал три экрана на старой версии и на новой. Выигрыш 1 секунда 🙂
Вообще надо попробовать обойтись без копирования — переключать экраны. Сейчас просто пустой экран используется как чистый фон, но есть мысль как от этого избавиться: раз копирование у меня все равно в одном месте сделано, то что мешает в этом месте тупо переключить экраны, раз уже все выведено и подготовлено к копированию? А восстанавливать фон на втором экране уже. Завтра попробую.
Свежие комментарии