
Сообщение от
Alex_K
Так я все-таки не понял, что за режим предварительного чтения?
Это режим, в котором находится ВП1-128, когда выполняется этот код:
Код:
; Пропуск не нулей при неактивном ИНДЕКСЕ
6704$: MOV #21000.,R1 ; R1 = длина дорожки в цикле
6710$: TST @R4 ; Линия ИНДЕКС активна?
BMI 6762$ ; Да
MOV @R5,R0 ; Считанное слово равно нулю?
BEQ 7014$ ; Да
INC R0 ; Считанное слово равно 177777?
BEQ 7014$ ; Да
SOB R1,6710$ ; Цикл по пропуску не нулей
BR 6666$ ; Нет дискеты - ошибка
Хорошо видно, что программа поиска синхрозоны 21000 раз читает регистр статуса, но не проверяет там бит требования. Вместо это программа 21000 раз читает регистр данных, каждый раз предполагая, что его значение изменилось без установки бита требования.
Сам я обратил на это внимание только тогда, когда Vslav сообщил, что при переводе ВП1-128 из режима записи в режим чтения путём простого чтения регистра данных - запись мгновенно обрывается на случайном бите и начинается такое чтение, при котором

Сообщение от
Vslav
требование на чтение не выставляется