Цитата Сообщение от 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 Посмотреть сообщение
требование на чтение не выставляется