Ёлы-палы, почему я раньше об этом не подумал?!
Стандартный макрос замены команды LDIR, например
для случаев BC<=000FFh вполне можно представить в видеКод:lxi b, 0000Fh push psw mov a, m stax d inx h inx d dcx b mov a, b ora c jnz $-7 pop psw
Получаем экономию 12 тактов при каждом выполнении тела цикла. В некоторых случаях можно отказаться от push/pop psw и развернуть цикл.Код:lxi b, 0000Fh push psw mov a, m stax d inx h inx d dcr c jnz $-5 pop psw
ivagor, в связи с этим новый исходник tank.asm в приложении, запакуй его, как ты это делаешь. Кое-что еще поправлено, в итоге получилось на 112 байт короче и теоретически должно быть немного пошустрее.




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