Цитата Сообщение от AFZ Посмотреть сообщение
СА сидит на магистрали ЦП. Поэтому для загрузки по сети ПП высылает через DMA в память ЦП программу-загрузчик и запускает ее. Кажется с адреса 10000, но точно не помню. Всё остальное делается этой программой. Вот ее и надо отдизасмить, если это еще не сделано.
Да, примерно так все и выглядит:

Код:
; Обработка пункта меню ЗАГРУЗКА [сеть]
162440$:	JSR 	R4,163006$ 	; Вывод "* ЗАГРУЗКА ИЗ СЕТИ *"
		 .WORD 	163573$ ; Адрес надписи
 		JSR 	R5,162522$ 	; Перекачка загрузчика и его запуск
 		.WORD 	164160$,210,0

; Обработка команды "Т" пультового монитора (тест локальной сети)
162460$:	JSR 	R5,162522$ 	; Перекачка программы теста и ее запуск
		.WORD 	164600$,360,0

; Обработка пункта меню ЗАГРУЗКА [стык С2]
162472$:	JSR 	R5,162522$ 	; Перекачка загрузчика и его запуск
		.WORD 	165540$,25,0

; Обработка пункта меню ЗАГРУЗКА [магнитофон]
162504$:	JSR 	R5,162522$ 	; Перекачка загрузчика и его запуск
		.WORD 	163774$,44,164130$,14,0

; Подпрограмма перекачки загрузчика из сист. ОЗУ и его запуск
162522$:	MOV 	#1000,R0 	; R0 = адрес, куда перекачивается загрузчик
162526$:	MOV 	(R5)+,R1 	; R1 = адрес загрузчика в сист. ОЗУ
		BEQ 	162542$ 	; Конец перекачки
		MOV 	(R5)+,R2 	; R2 = размер загрузчика в словах
162534$:	MOV 	(R1)+,(R0)+ ; Цикл перекачки
		SOB 	R2,162534$
		BR 	162526$
162542$:	CALL 	161236$ 	; Перевод ЦП в режим USER
		MOV 	#200,R0 	; Копия ССП = 200 (прерывания запрещены)
		$MTPS$
		MOV 	#1000,R0 	; Копия СК = 1000 (адрес загрузчика)
		$MTPC$
		MOV 	#1000,SP
		MOV 	R3,R0 		; R0 = номер устройства (диска или кассеты ПЗУ)
		$RUN$ 				; Запуск загрузчика
162572$:	RETURN