Denn, т.е. вариант с отсечением сохранения данных при выходе за пределы размера в том же цикле не учитывается? Ну да ладно, не мой проект, не мне и решать, как писать код.
Denn, т.е. вариант с отсечением сохранения данных при выходе за пределы размера в том же цикле не учитывается? Ну да ладно, не мой проект, не мне и решать, как писать код.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Это получается, что в цикле нужно делать две проверки (работать будет медленнее). А по фатку проверки будет четыре, т.к. байты вычитываются из двух разных портов по очереди (тобишь объём кода ощутимо возрастёт). Одни минусы.
Вот причинный участок кода:
В [HL] адрес в ОЗУ куда складываем байты, в [B] номер страницы ОЗУ, в [DE] длина хвоста, регистр [C] используется для передачи записываемого байта процедуре записи в произвольную банку.Код:LDHDAT6: IN PT_IDE_DATL MOV C,A MOV A,B CALL SVBYTE INX H DCX D MOV A,D ORA E JZ LDHDAT7 IN PT_IDE_DATH MOV C,A MOV A,B CALL SVBYTE INX H DCX D MOV A,D ORA E JNZ LDHDAT6 LDHDAT7: ; ПРИНУДИТЕЛЬНОЕ ЗАВЕРШЕНИЕ ОПЕРАЦИИ MVI A,0E4h CALL SetCMD XRA A CALL SetCMD XRA A RET
Последний раз редактировалось Denn; 27.03.2018 в 14:07.
Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)