Цитата Сообщение от hippiman Посмотреть сообщение
Движок dizzySE написан на nedolang от AloneCoder в котором есть графические процедуры для рисования спрайтов и тайлов. Эти процедуры изначально были достаточно прожорливы для памяти, а памяти мне для dizzySE нужно было как можно больше. Я попросил влепить костыль, чтобы освободить одну страницу.
ничего там не освобождено, два экрана занимают память на два экрана

Цитата Сообщение от hippiman Посмотреть сообщение
В итоге остался экран в пятой (куда сначала грузится рамка) и буфер для рисовки в 7й (куда рисуются тайлы, спрайты и прочая нечисть и который копируется в игровую область).
наоборот, не отображается в игре экран из 5 страницы

Цитата Сообщение от hippiman Посмотреть сообщение
Я пробовал перемещать буфер напрямую в 5ю но это выглядело реально стремно т.к. там происходят всякие восстановления фона и пр. прямо на глазах у игрока.
это называется "рисовать в экран напрямую", а не "перемещать буфер"
и зачем "стрёмно рисовать" лишь в один из них, когда их два?

Цитата Сообщение от hippiman Посмотреть сообщение
Почему копирование происходит так меня не спрашивайте, не знаю.
не, вопрос в том, почему оно вообще происходит

Цитата Сообщение от hippiman Посмотреть сообщение
Как заметил Sayman, я реально плохо знаю асм. Максимум могу написать простенькую процедурку или оптимизировать компилированный с С код (за время разработки и оптимизации движка немного поднатаскался в асме, но тем не менее).
а тут не асм надо было знать, а просто обдумать потоки данных

Цитата Сообщение от hippiman Посмотреть сообщение
Но если Alone Coder намеренно сделал так, то значит так оно и надо ибо в этом плане я ему полностью доверяю.
ахахшта? так это алоний накосорезил?

Цитата Сообщение от hippiman Посмотреть сообщение
Если считаете, что копировать можно как-то быстрее, просто дайте этот кусок кода и куда его вставить. Я пересоберу движок и проверим так ли это.
ящитаю, что вообще копировать не надо, а надо рисовать попеременно в оба экрана и переключать их по прерыванию
даже если у тебя все тайлы в других страницах, тупо каждый раз перегонять их сквозь вторую по одному всё равно выгоднее переброски всего экрана
но это уже не просто заменить два лдира цепочкой лди, а нужно смотреть исходник видеочасти с описанием структуры видеоданных