С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ну дык и у MegaLZ тоже:
распаковка - 3 518 299 тактов
копирование командой монитора T - 3 151 860
Хотя в мониторе команда Т немного не оптимальна, на каждый байт дважды делает CALL.
Я имею ввиду линейное копирование методом типа LDI )
---------- Post added at 17:17 ---------- Previous post was at 17:12 ----------
На других программах, разница не так заметна, байт 400-500. Но все равно ощутима. Так что если места во флешке под завязку, то лучше выбрать тот пакер, который архивирует лучше. А если не под завязку, то тот, что быстрее распаковывает)
Загрузчик, конечно, прикольный, но преимуществ перед тем, что был предложен ранее нет. Наоборот, лишние некрасивости в параметрах запуска.
Если загрузчик располагается по диагонали, как и было предложено, то, что там диагональ была занята, что здесь - один фиг. А диагональ эта всего лишь 256 байт, т.к. у нас не квадрат, а прямоугольник со стороной 8 бит. Если же располагать его по диагонали эксклюзивно, не поверх массива программ, то это уменьшит емкость флешки уже не на 256 байт, а на несколько килобайт, что тоже в минус, нежели в плюс.
Я выделил жирным часть, отвечающую за пропуск. Две команды из 14. Переход происходит с вероятностью 1/128, поэтому его можно и не считать. Даже не 14, а еще расходы на CALL. Да и LD (N), A выполняется в 3 раза дольше CP 0. Итого замедление не более 10%.
LD A, D
LD (0EE02h), A
LD A, E
CP 0
JP Z, IGNOREBYTE
LD (0EE01h), A
LD A, 0
LD (0EE02h), A
LD A, 1
LD (0EE01h), A
LD A, (0EE00h)
INC E
INC E
RET
---------- Post added at 23:15 ---------- Previous post was at 22:00 ----------
Строки столбцы перепутаны. Или строки и столбцы защелкиваются одновременно. Пытаюсь из твоего конфига убрать символ ~. Пока только хуже стало.
Последний раз редактировалось vinxru; 25.11.2011 в 00:09.
Исправил конфигурацию эмулятора. Вроде бы работает.
А разве row это младшие биты адреса?
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)