С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
Если ещё актуально, то вот:
На ВМ3
Код:.T4REG Register Autoincrement TRAP4 test #1. MOV #160020,R2 TST (R2)+ >>> Trap to 004 <<< ; R2/160020 CLR (R2)+ >>> Trap to 004 <<< ; R2/160020 CMP R0,(R2)+ >>> Trap to 004 <<< ; R2/160020 MOV R0,(R2)+ >>> Trap to 004 <<< ; R2/160020 TST -(R2) >>> Trap to 004 <<< ; R2/160016 CLR -(R2) >>> Trap to 004 <<< ; R2/160014 CMP R0,-(R2) >>> Trap to 004 <<< ; R2/160012 MOV R0,-(R2) >>> Trap to 004 <<< ; R2/160010 Program completed. .T4REG2 Register Autoincrement TRAP4 test #2. MOV #160020,R2 TST @(R2)+ >>> Trap to 004 <<< ; R2/160020 CLR @(R2)+ >>> Trap to 004 <<< ; R2/160020 CMP R0,@(R2)+ >>> Trap to 004 <<< ; R2/160020 MOV R0,@(R2)+ >>> Trap to 004 <<< ; R2/160020 TST @-(R2) >>> Trap to 004 <<< ; R2/160016 CLR @-(R2) >>> Trap to 004 <<< ; R2/160014 CMP R0,@-(R2) >>> Trap to 004 <<< ; R2/160012 MOV R0,@-(R2) >>> Trap to 004 <<< ; R2/160010 Program completed. .T4REG3 Register Autoincrement TRAP4 test #3. MOV #311,R2 TST (R2)+ >>> Trap to 004 <<< ; R2/000311 CLR (R2)+ >>> Trap to 004 <<< ; R2/000311 CMP R0,(R2)+ >>> Trap to 004 <<< ; R2/000311 MOV R0,(R2)+ >>> Trap to 004 <<< ; R2/000311 TST -(R2) >>> Trap to 004 <<< ; R2/000307 CLR -(R2) >>> Trap to 004 <<< ; R2/000305 CMP R0,-(R2) >>> Trap to 004 <<< ; R2/000303 MOV R0,-(R2) >>> Trap to 004 <<< ; R2/000301 Program completed. .T4PC PC Autoincrement TRAP4 test. 001112/ INC PC 001114/ >>> Trap to 004 <<< ; PC/001115 JMP @#160000 >>> Trap to 004 <<< ; PC/160000 157776/ TST (PC)+ >>> Trap to 004 <<< ; PC/160000 157776/ MOV R0,(PC)+ >>> Trap to 004 <<< ; PC/160000 157776/ MOV R0,@(PC)+ >>> Trap to 004 <<< ; PC/160000 157776/ MOV R0,240(PC) >>> Trap to 004 <<< ; PC/160000 157776/ MOV R0,@240(PC) >>> Trap to 004 <<< ; PC/160000 Program completed. .TIPC 001036 TST @#160000 ;PC=001042 001134 MOV #160000,PC ;PC=160000
Кстати еще тест для СМ1420 и ВМ3.
- - - Добавлено - - -Код:.RU MFPS UISDR7=077406, PSW=140016, MFPS R0, R0=000016 UISDR7=077400, PSW=140016, MFPS R0, R0=000016 .
И вот такой тест еще интересно прогнать на ВМ3 и СМ1420...Код:.RU MVPS ;PSW=170000, @#177776=123456 MFPS R1 ;R1=000000 MTPS #17 ;PSW=170017, @#177776=123456 .
Последний раз редактировалось form; 03.02.2016 в 04:49.
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
.
Новый тест: YT4A.SAV - проверяет YELLOW STACK TRAP для команд CMP -(SP),-(SP) и CMP @-(SP),@-(SP).
Запускать можно на любых машинах. На эмулируемой ДВК-2 результат такой :
Код:.RU YT4A Yellow Stack Trap test #1 SP/000400 CMP -(SP),-(SP) SP/000374 SP/000400 CMP @-(SP),@-(SP) SP/000374 Program completed. .
На некоторых (11/70) ограничение стека настраивается регистром 17777774.
- - - Добавлено - - -Код:.VDT VDT V05.07 *177766/000130 0 */000000 ^C .RU YT4A Yellow Stack Trap test #1 SP/000400 CMP -(SP),-(SP) >>> Trap to 004 <<< SP/000374 SP/000400 CMP @-(SP),@-(SP) >>> Trap to 004 <<< SP/000374 Program completed. .VDT VDT V05.07 *177766/000010
По идее результат однозначен - на то он и yellow, чтобы команда сама по себе отработала. Вот ежели в стек уже ничего положить нельзя - тогда где суппортится будет RSA (SP=4, 1777766 |= 4, trap to 4)
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
.
Не так давно мы удивлялись, почему в HALT-моде команда MFPI SP пишет в стек не USP, а KSP.
Но чему удивляться, если регистр SP предыдущей моды задаётся битом 13 в PSW, а при входе в HALT-моду этот бит обнуляется.
Новый вариант теста при входе в пульт корректно устанавливает предыдущую моду в PSW :
- - - Добавлено - - -Код:.ASect . = 0 Jmp @#Next // Точка входа пульта. . = 24 .Word Start // Адрес старта. .Word 340 Start: Mov #140340, @#177776 // Установить USER-моду Mov #4444, SP // Стек USER-моды Mov #340, @#177776 // Установить KERNEL-моду Mov #2222, SP // Стек KERNEL-моды HALT // Установить HALT-моду Wait Next: MFPI SP // Запись KSP в стек Mov #30340, @#177776 // Установить PrevMode=USER MFPI SP // Запись USP в стек Nop Wait
Новый тест: MFPI.SAV - проверяет работу команды MFPI SP в режиме MMU16 для всех комбинаций текущей и предыдущей моды.
Запускать на машинах с диспетчером памяти. На эмулируемой ДВК-3 результат такой :
Код:.RU MFPI MFPI SP command test. MOV #140340,@#177776 MOV #44444, SP MOV #000340,@#177776 MOV #22222, SP MFPI SP 022220/022222 MOV #030340,@#177776 MFPI SP 022216/044444 MOV #140340,@#177776 MFPI SP 022214/000000 044442/022216 MOV #170340,@#177776 MFPI SP 022212/000000 044440/044442 Program completed. .
Последний раз редактировалось Patron; 03.02.2016 в 16:14.
Когда уже первая бета будет?
- - - Добавлено - - -
На ВМ3:Интересный результат получился. То есть получается, что бит C устанавливается в PSW всегда по MTPS, а потом команда уже выполняет байтовую запись по виртуальному 177776. Ну и читает опять таки с виртуального адреса (в данном случае 160000 отмаплен в физические 40000 для усер моды).Код:.RU MVPS ;PSW=170000, @#177776=123456 MFPS R1 ;R1=000056 MTPS #17 ;PSW=170001, @#177776=123417 .
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
.
Новый тест: PSW1.SAV - проверяет байтовую запись в PSW по адресу 177776.
Запускать на машинах с диспетчером памяти.
- - - Добавлено - - -Код:.RU MFPI MFPI SP command test. MOV #140340,@#177776 MOV #44444, SP MOV #000340,@#177776 MOV #22222, SP MFPI SP 022220/022222 MOV #030340,@#177776 MFPI SP 022216/044444 MOV #140340,@#177776 MFPI SP 022214/000000 044442/022216 MOV #170340,@#177776 MFPI SP 022212/000000 044440/044442 Program completed. .
Инетерсно все варианты битов перебрать как в CM так и в PM на ВМ3 - какая реакция будет.
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
Эту тему просматривают: 3 (пользователей: 0 , гостей: 3)