Видео по качеству так себе - но представление даст. Потом, может, пересниму :)
Ссылка Display Register
Вид для печати
Видео по качеству так себе - но представление даст. Потом, может, пересниму :)
Ссылка Display Register
Ещё шаг вперёд
XM и VM пока не хотят...Код:@S
HX 2.2 RT-11 Cold boot..
HX DSK/TTY multiplexer v3.3 2016
RT-11SB (S) V05.07
.R MSCPCK
.SHO CONF
RT-11SB (S) V05.07
Booted from HX0:RT11SB
USR is set SWAP
EXIT is set SWAP
KMON is set NOIND
MODE is set NOSJ
TT is set NOQUIET
ERROR is set ERROR
SL is set OFF
EDIT is set KED
FORTRAN is set FORTRA
KMON nesting depth is 3
Global .SCCA flag is disabled
CLI is set DCL, CCL, UCL, NO UCF
PDP 11/34 Processor
128KB of memory
Extended Instruction Set (EIS)
Memory Management Unit
50 Hertz System Clock
Memory parity support
SB timer support
Global .SCCA support
FPU support
Extended unit support
.
- - - Добавлено - - -
А, да, забыл написать - параллельно идёт ещё война с ПДП. Как то неустойчиво работает - то да, то нет. Видимо, где то ещё не стыковка по снятию сигналов при записи в память. Пробую варианты.
Ещё шаг
Вроде как сделал (ТТТ) работоспособным ПДП при наличии ДП.Код:000042 000000 000000 000000
@DK1
DZQUD-E 21-JUL-76 RKDP - XXDP RK11 MONITOR 28K
RESTART ADDR:152522
BOOTED VIA UNIT#: 1
TO ABORT THE FOLLOWING HELP MESSAGE TYPE CTRL C (^C)
TYPE:
F<CR> TO SET CONSOLE FILL COUNT
D<CR> FOR DIRECTORY ON CONSOLE, OR
D/F<CR> FOR SHORT DIRECTORY ON CONSOLE, OR
D/L<CR> FOR DIRECTORY ON LINE PRINTER, OR
D/L/F<CR> FOR SHORT DIRECTORY ON LINE PRINTER,
R COPY<CR> TO RUN COPY PROGRAM,
R FILENAME<CR> TO RUN ANY OTHER PROGRAM.
L FILENAME<CR> TO LOAD A PROGRAM ONLY
S<CR> TO START THE PROGRAM JUST LOADED,
S ADDR<CR> TO START THE PROGRAM AT SPECIFIC ADDRESS
C FILENAME<CR> TO RUN A CHAIN,
C FILENAME/QV<CR> TO RUN A CHAIN IN QUICK VERIFY MODE.
REFER TO XXDP USER MANUAL MD-11-DZQXA FOR ADDITIONAL HELP.
.
000042 153400 152412 152556
@DK0
RT-11SB (S) V05.07
?KMON-F-File not found DK:STRTSB.COM
.SHO CONF
RT-11SB (S) V05.07
Booted from RK0:RT11SB
USR is set SWAP
EXIT is set SWAP
KMON is set NOIND
MODE is set NOSJ
TT is set NOQUIET
ERROR is set ERROR
SL is set OFF
EDIT is set KED
FORTRAN is set FORTRA
KMON nesting depth is 3
Global .SCCA flag is disabled
CLI is set DCL, CCL, UCL, NO UCF
PDP 11/34 Processor
128KB of memory
Extended Instruction Set (EIS)
Memory Management Unit
50 Hertz System Clock
Device I/O time-out support
SB timer support
Global .SCCA support
Extended unit support
.BOO RK3:
RT-11SB (S) V05.07
?KMON-F-File not found DK:STRTSB.COM
.COP/DEV/VER RK3: RK:
RK0:/Copy; Are you sure? Y
.
XM по прежнему не работает, но теперь можно запускать тесты (XXDP), обнаружил, что есть проблема с выполнением команды MFPI. В принципе - вполне возможна, ибо она работает только когда есть ДП, а поскольку его до сих пор не было - никто и не проверял. Теперь будет посмотреть.
Пока тестирование идёт с прицелом на PDP-11/34, так что режим супервизора и ID не проверялись. Кроме того, сейчас ДП с поддержкой 22 бит и известно наличие ошибки, если сделать 18-ти битный режим ДП. Точнее - на прошлых проверках ошибка была, но с того времени сильно изменён набор и логика сигналов, так что сейчас - не знаю, есть она или нет. Будет проверяться позже, когда будет проходить тест от PDP-11/34 - Basic Instruction Test - там проверяются и инструкции работы через ДП - типа MFPI
Когда они показывают числа - они показывают их именно как восьмеричные.
Но бегущие огни через восьмеричное представление - так себе выглядят ;)
- - - Добавлено - - -
Как пример - у меня сделан по-микро-шаговый режим работы - и на них я отлично вижу номера выполняющихся микрошагов - только что использовал для того, что бы понять, на каком микрошаге я накосячил :)
- - - Добавлено - - -
И ещё шаг :) Тест, который выловил ошибку в MFPI (и аналогичную в MTPI и, если бы они были, то в MFPD/MTPD), теперь проходит.
Смотрю тесты дальше
- - - Добавлено - - -Код:000042 000000 000000 000000
@DK1
DZQUD-E 21-JUL-76 RKDP - XXDP RK11 MONITOR 28K
RESTART ADDR:152522
BOOTED VIA UNIT#: 1
TO ABORT THE FOLLOWING HELP MESSAGE TYPE CTRL C (^C)
TYPE:
F<CR> TO SET CONSOLE FILL COUNT
D<CR> FOR DIRECTORY ON CONSOLE, OR
D/F<CR> FOR SHORT DIRECTORY ON CONSOLE, OR
D/L<CR> FOR DIRECTORY ON LINE PRINTER, OR
D/L/F<CR> FOR SHORT DIRECTORY ON LINE PRINTER,
R COPY<CR> TO RUN COPY PROGRAM,
R FILENAME<CR> TO RUN ANY OTHER PROGRAM.
L FILENAME<CR> TO LOAD A PROGRAM ONLY
S<CR> TO START THE PROGRAM JUST LOADED,
S ADDR<CR> TO START THE PROGRAM AT SPECIFIC ADDRESS
C FILENAME<CR> TO RUN A CHAIN,
C FILENAME/QV<CR> TO RUN A CHAIN IN QUICK VERIFY MODE.
REFER TO XXDP USER MANUAL MD-11-DZQXA FOR ADDITIONAL HELP.
.R FKAA??
END OF DFKAA-B
END OF DFKAA-B
END OF DFKAA-B
END OF DFKAA-B
END OF DFKAA-B
END OF DFKAA-B
END OF DFKAA-B
000042 026002 000500 000000
@
FKAB?? - сбой, FKAC проходит. Смотрю, что в FKAB..
- - - Добавлено - - -
Хм. Проблема выглядит посложней и связана с обработкой прерываний... А может и нет - потому как в прошлый раз (без ДП) этот тест проходил...
Кстати, RT11XM по прежнему не грузится, но - уже выдаёт информацию о том, какой монитор загружается.
Встраиваю куски теста FKAA прямо в прошивку FPGA - тесты можно будет запускать сразу после прошивки, без загрузки XXDP :)
- - - Добавлено - - -
И ещё шаг :)
Но непосредственно с RK2011 XM пока грузиться не хочет. И попытка запустить VRUN MACRO TEST=TEST тоже окончилась остановом. Так же как и попытки использовать VM:Код:000042 002000 157316 160000
@L 10000
@D 12706
@D 10000
....
@D 4715
@D 4715
@D 5007
@L 10000
@S
HX 2.2 RT-11 Cold boot..
HX DSK/TTY multiplexer v3.3 2016
RT-11SB (S) V05.07
.R MSCPCK
.BOO RT11XM
HX DSK/TTY multiplexer v3.3 2016
RT-11XM (S) V05.07
.TYPE V5USER.TXT
RT-11 V5.7
Installation of RT-11 Version 5.7 is complete and you are now running
RT-11 from your system volume.
.......
You should read the file V5NOTE.TXT, which you can TYPE or PRINT. Also,
read the Introduction to RT-11, and the Installation Guide which
contain much of the information you need to use RT-11 Version 5.7.
.R MSCPCK
.SHO ALL
RT-11XM (S) V05.07
Booted from HX0:RT11XM
USR is set NOSWAP
EXIT is set SWAP
KMON is set NOIND
RUN is set NOVBGEXE
MODE is set NOSJ
TT is set NOQUIET
ERROR is set ERROR
SL is set OFF
EDIT is set KEX
FORTRAN is set FORTRA
KMON nesting depth is 3
Global .SCCA flag is disabled
CLI is set DCL, CCL, UCL, NO UCF
PDP 11/34 Processor
128KB of memory
Extended Instruction Set (EIS)
Memory Management Unit
50 Hertz System Clock
Memory parity support
Global .SCCA support
FPU support
Extended unit support
UNIBUS mapping unavailable
Device Status CSR Vector(s)
------ ------ --- ---------
RK Installed 177400 220
DL Not installed 174400 160
DU Not installed 172150 154
HX Resident 177560 000
ZA Not installed 161014 350
ZB Not installed 161054 354
ZC Not installed 161114 360
ZD Not installed 161154 364
ZE Not installed 161214 370
ZF Not installed 161254 374
WQ Not installed 177134 204
WS Not installed 177134 204
LD Installed 000000 000
VM Not installed 177572 000
MU Not installed 174500 260
NL Installed 000000 000
SL Installed 000000 000
NQ Not installed 174440 120
TT (Resident)
HX (Resident)
HX0 = DK , SY
MQ (Resident)
LD
SL
RK
NL
21 free slots
Job Name Console Level State Low High Impure
--- ---- ------- ----- ----- --- ---- ------
0 RESORC 0 0 Run 000000 104076 120510
No multi-terminal support
------- Extended Memory --------
Address Module Words Type
------- ------ ----- ----
17760000 IOPAGE 4096. PRM HDW BYP
00400000 MEMTOP
00173600 ...... 33856.
00161200 SL 2688. PVT
00160000 MCA 320. PRM
00000000 KERNEL 28672. PRM HDW
------ Low Memory -------
Address Module Words
------- ------ -----
156170 HX 452.
116142 RMON 8203.
104100 USR 2577.
001000 ..BG.. 17184.
No LD units mounted
.SET SL ON
.SHO MEM
------- Extended Memory --------
Address Module Words Type
------- ------ ----- ----
17760000 IOPAGE 4096. PRM HDW BYP
00400000 MEMTOP
00173600 ...... 33856.
00161200 SL 2688. PVT
00160000 MCA 320. PRM
00000000 KERNEL 28672. PRM HDW
------ Low Memory -------
Address Module Words
------- ------ -----
156170 HX 452.
116142 RMON 8203.
113676 SL 594.
101632 USR 2578.
001000 ..BG.. 16589.
.
Работаю дальше...
- - - Добавлено - - -
RT11XM и запись на RK - пока не дружат :)
- - - Добавлено - - -
А фот хрен :D Загрузка XM монитора с RK11 и запись под ним на RK11 - это не мой косяк :) Это как то связано с драйвером RK, ибо:
- - - Добавлено - - -Код:000042 000000 133524 000170
@DK7
RT-11SB (S) V05.07
?KMON-F-File not found DK:STRTSB.COM
.BOO RT11XM
RT-11XM (S) V05.07
.RUN SY:TD3E
?KMON-F-File not found SY:TD3E.SAV
.BOO RT11XM
RT-11XM (S) V05.07
.RUN SY:TD3E
?KMON-F-File not found SY:TD3E.SAV
.DIR RK*.SYS
RK .SYS 3 20-Mar-2020 RKX .SYS 3 20-Mar-2020
2 Files, 6 Blocks
832 Free blocks
.COP/DEV/VER RK3: RK:
RK0:/Copy; Are you sure? Y
.SHO CONF
RT-11XM (S) V05.07
Booted from RK7:RT11XM
USR is set NOSWAP
EXIT is set SWAP
KMON is set NOIND
RUN is set NOVBGEXE
MODE is set NOSJ
TT is set NOQUIET
ERROR is set ERROR
SL is set OFF
EDIT is set KEX
FORTRAN is set FORTRA
KMON nesting depth is 3
Global .SCCA flag is disabled
CLI is set DCL, CCL, UCL, NO UCF
PDP 11/34 Processor
128KB of memory
Extended Instruction Set (EIS)
Memory Management Unit
50 Hertz System Clock
Device I/O time-out support
Global .SCCA support
Extended unit support
UNIBUS mapping unavailable
.SHO MEM
------- Extended Memory --------
Address Module Words Type
------- ------ ----- ----
17760000 IOPAGE 4096. PRM HDW BYP
00400000 MEMTOP
00173600 ...... 33856.
00161200 SL 2688. PVT
00160000 MCA 320. PRM
00000000 KERNEL 28672. PRM HDW
------ Low Memory -------
Address Module Words
------- ------ -----
157274 RK 162.
120054 RMON 8008.
106012 USR 2577.
001000 ..BG.. 17669.
.COP/BOO RT11XM SY:
.
000042 123012 157240 122206
@rk
@DK7
RT-11XM (S) V05.07
.RUN SY:TD3E
?KMON-F-File not found SY:TD3E.SAV
.
Всё оказалось проще. Битые файлы мониторов XB и XM :) Когда воевал с ДП, а потом и с ПДП - вполне могло при копировании дать ошибки..
Теперь грузятся все 4 - SB, FB, XB, XM :)
- - - Добавлено - - -
Ещё один тест - SYSGEN, теперь под XM монитором - прошёл вполне успешно :)
Время генерации двух мониторов (SB и FB) под SB монитором - 2:14
Время генерации двух мониторов (SB и FB) под XM монитором - 8:41
Вот что значит - больший объём доступной памяти :)
SPEED3 на SB:
SPEED3 на XM:Код:.RUN HX7:SPEED3
Тест быстродействия (кэш, если он есть, выключен)
R1 := M 8 319 880 оп./сек
R1 := M0 8 319 880 оп./сек
R1 := M1 8 319 880 оп./сек
R1+R0 classic 14 263 348 оп./сек
R1+R0 classic 14 263 348 оп./сек
R0(23456.)+R0(12345.) empty 5 545 962 оп./сек
R1(23456.)+R0(12345.) 3 993 273 оп./сек -> 14 263 345 оп./сек
R1+@R0 classic 11 094 426 оп./сек
R1(23456.)+@R0(M-12345.) empty 5 545 962 оп./сек
R1(23456.)+@R0(M-12345.) 3 697 587 оп./сек -> 11 094 435 оп./сек
R0*R0 classic 8 321 286 оп./сек
11.*12. empty 5 545 962 оп./сек
11.*12. 3 328 362 оп./сек -> 8 323 849 оп./сек
R2/R0 classic 3 566 609 оп./сек
R2-R3(34567.)/R1(321.) empty 4 159 999 оп./сек
R2-R3(34567.)/R1(321.) 1 920 513 оп./сек -> 3 567 484 оп./сек
MOV 8 word 1 empty 3 701 935 оп./сек
MOV 8 word 1 557 895 оп./сек -> 656 890 оп./сек
MOV 8 word 2 empty 3 697 308 оп./сек
MOV 8 word 2 628 283 оп./сек -> 756 903 оп./сек
#4+R0(2000) empty 11 105 808 оп./сек
#4+R0(2000) 5 545 962 оп./сек -> 11 078 074 оп./сек
CMP (R0)+,(R0)+ empty 11 091 925 оп./сек
CMP (R0)+,(R0)+ 4 341 127 оп./сек -> 7 132 705 оп./сек
#2+R0(2000) empty 11 091 925 оп./сек
#2+R0(2000) 5 545 962 оп./сек -> 11 091 923 оп./сек
INC R0 INC R0 empty 11 091 925 оп./сек
INC R0 INC R0 4 753 988 оп./сек -> 8 319 880 оп./сек
TST (R0)+ empty 11 091 925 оп./сек
TST (R0)+ 5 254 755 оп./сек -> 9 985 206 оп./сек
Код:.RUN HX7:SPEED3
Тест быстродействия (кэш, если он есть, выключен)
R1 := M 8 318 784 оп./сек
R1 := M0 8 318 784 оп./сек
R1 := M1 8 318 784 оп./сек
R1+R0 classic 14 261 734 оп./сек
R1+R0 classic 14 261 734 оп./сек
R0(23456.)+R0(12345.) empty 5 544 990 оп./сек
R1(23456.)+R0(12345.) 3 992 642 оп./сек -> 14 261 724 оп./сек
R1+@R0 classic 10 624 329 оп./сек
R1(23456.)+@R0(M-12345.) empty 5 544 990 оп./сек
R1(23456.)+@R0(M-12345.) 3 697 045 оп./сек -> 11 093 445 оп./сек
R0*R0 classic 8 320 737 оп./сек
11.*12. empty 5 544 990 оп./сек
11.*12. 3 327 513 оп./сек -> 8 320 729 оп./сек
R2/R0 classic 3 566 509 оп./сек
R2-R3(34567.)/R1(321.) empty 4 158 905 оп./сек
R2-R3(34567.)/R1(321.) 1 919 996 оп./сек -> 3 566 505 оп./сек
MOV 8 word 1 empty 3 701 286 оп./сек
MOV 8 word 1 557 875 оп./сек -> 656 883 оп./сек
MOV 8 word 2 empty 3 696 659 оп./сек
MOV 8 word 2 628 027 оп./сек -> 756 559 оп./сек
#4+R0(2000) empty 11 103 860 оп./сек
#4+R0(2000) 5 544 990 оп./сек -> 11 076 134 оп./сек
CMP (R0)+,(R0)+ empty 11 089 980 оп./сек
CMP (R0)+,(R0)+ 4 340 679 оп./сек -> 7 132 300 оп./сек
#2+R0(2000) empty 11 089 980 оп./сек
#2+R0(2000) 5 544 990 оп./сек -> 11 089 980 оп./сек
INC R0 INC R0 empty 11 089 980 оп./сек
INC R0 INC R0 4 753 274 оп./сек -> 8 318 787 оп./сек
TST (R0)+ empty 11 089 980 оп./сек
TST (R0)+ 5 254 099 оп./сек -> 9 984 414 оп./сек
.
Добавил последние два бита в PDR (доступ к странице на запись, обращение к страницы с отслеживаемым видом доступа - так называемый Trapped).
Начались некоторые проблемы при выводе на экран (я такое раньше наблюдал, когда на шине выплывали лишние биты или наоборот - биты терялись).
Попробую ещё одно решение и спать. Не получится - буду с утра думать :)
Из не добавленного остались только UMR. В принципе, модуль UMR есть и хочется его как внешний модуль прикрутить - без встраивания в ДП, но... посмотрим, насколько просто это получится. Ещё надо и 18-ти битную шину для устройств с ПДП придумать как прикрутить к модулю корзины...
RK11 пока работает по принципу - пишем только в пределах 248 кб. Пока хватает. Но, поскольку ДП уже задышал - начинает поднимать голову модуль SDRAM :) А так будет несколько больше памяти, чем 248 кб :)
- - - Добавлено - - -
Надо прошерстить модуль ДП - всё ли в нем (кроме UMR) реализовано.
Кроме того, автор PDP2011 в более новых релизах что то добавил для F11 - надо глянуть и тоже добавить.
- - - Добавлено - - -
Не получилось.. Надо больше думать... И спать :)
Бит W в PDR-ах вроде заработал.
XXDP, RT11SB и RT11XM грузятся, SYSGEN проходит
Хотя по прежнему (ещё не занимался) не работают VM: и VRUN
И перестал работать ZQMC... тоже надо глянуть - чего там...
И обнаружились другие не соответствия тесту FKAB.
В содержимое ОЗУ после прошивки начал добавлять тесты из FKAB (там проверяются, как работают прерывания от ДП)
- - - Добавлено - - -
Зараза... обнаружил ещё одно несоответствие оригиналу в поведении бита W. Поправил. Но пока воюю с другим расхождением (не понятна пока причина), проверять буду вместе
Недочёт бита W поправил. С ошибкой продолжаю воевать. Забавный глюк загрузчика (ов) из ПЗУ от автора - он не делает reset перед началом загрузки первичного загрузчика, из за чего ничего не грузится, когда работает ДП (надо смотреть, в чём проблема). Стоит сделать сброс, как всё нормализуется (ДП выключается). Учитывая, что сейчас постоянно играюсь с ДП (блин, все адреса уже выучил наизусть) - уже много много раз налетал :)
- - - Добавлено - - -
Добрался до тестов ДП от PDP-11/34. С ходу запускать не получится - они думают, ДП 18-ти разрядный, а у меня сейчас 22-ух, а 18-ти разрядный вариант с ошибкой.. Придётся всё отложить и чинить эту ошибку..
- - - Добавлено - - -
Уф.. нашёл, где накосячил с 18-ти битным ДП. Посмотрим, что будет после синтеза :)
Ааааа, круть :):)
18-ти битный режим заработал :) Даже программа тестирования памяти его заюзала (до этого висла)Код:000042 000476 000600 000404
@DK1
DZQUD-E 21-JUL-76 RKDP - XXDP RK11 MONITOR 28K
RESTART ADDR:152522
BOOTED VIA UNIT#: 1
TO ABORT THE FOLLOWING HELP MESSAGE TYPE CTRL C (^C)
TYPE:
F<CR> TO SET CONSOLE FILL COUNT
D<CR> FOR DIRECTORY ON CONSOLE, OR
D/F<CR> FOR SHORT DIRECTORY ON CONSOLE, OR
D/L<CR> FOR DIRECTORY ON LINE PRINTER, OR
D/L/F<CR> FOR SHORT DIRECTORY ON LINE PRINTER,
R COPY<CR> TO RUN COPY PROGRAM,
R FILENAME<CR> TO RUN ANY OTHER PROGRAM.
L FILENAME<CR> TO LOAD A PROGRAM ONLY
S<CR> TO START THE PROGRAM JUST LOADED,
S ADDR<CR> TO START THE PROGRAM AT SPECIFIC ADDRESS
C FILENAME<CR> TO RUN A CHAIN,
C FILENAME/QV<CR> TO RUN A CHAIN IN QUICK VERIFY MODE.
REFER TO XXDP USER MANUAL MD-11-DZQXA FOR ADDITIONAL HELP.
.R ZQMC??
MAINDEC-11-DZQMC-B
KT11 (MEMORY MANAGEMENT) AVAILABLE
MEMORY MAP:
FROM 000000 TO 377777
NO PARITY REGISTERS FOUND
PROGRAM RELOCATED TO 340000##
PROGRAM RELOCATED TO 000000##
END PASS # 1##
PROGRAM RELOCATED TO 340000##
- - - Добавлено - - -
Хм.. FKTH говорит - ошибочка в maintenance mode...