Цитата Сообщение от Manwe Посмотреть сообщение
Это говорит о неверных таймингах, некоторые команды слишком заторможены. У тебя есть уникальная возможность сделать более правильный эмулятор!
В http://gid.pdp-11.ru такие тайминги:

БЕЗОПЕРАНДНЫЕ КОМАНДЫ

68 HALT
12 WAIT
40 RTI
16 Bxx
16 BR
32 RTS
56 MARK
64 TRAP
64 EMT
20 SOB
40 INT
12 Sxx
12 Cxx
104 BPT
104 IOT
-----------------------------------------------

ОДНООПЕРАНДНЫЕ КОМАНДЫ

TST

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
12 24 24 36 28 40 36 48 Число тактов
-----------------------------------------------

SWAB, CLR, COM, INC, DEC, NEG, ADC, SBC, ROR, ROL, ASR, ASL, SXT, MFPS

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
12 28 28 40 32 44 40 52 Число тактов
-----------------------------------------------

MTPS

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
24 32 32 44 36 48 44 56 Число тактов
-----------------------------------------------

XOR

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
12 32 32 44 32 44 44 56 Число тактов
-----------------------------------------------

JMP

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
08 20 24 32 24 32 32 44 Число тактов
-----------------------------------------------

JSR

00 10 20 30 40 50 60 70 Метод адресации приемника
----------------------------
08 32 36 40 36 40 40 52 Число тактов
-----------------------------------------------

ДВУХОПЕРАНДНЫЕ КОМАНДЫ

MOV

Метод адресации приемника
00 10 20 30 40 50 60 70
---------------------------- Метод адресации источника
12 32 36 44 36 44 44 56 | 00
28 40 40 48 40 48 48 60 | 10
28 40 40 48 40 48 48 60 | 20
40 52 52 60 52 60 60 72 | 30
28 44 44 52 44 52 52 64 | 40
40 56 56 64 56 64 64 76 | 50
40 52 52 60 52 60 60 72 | 60
52 64 64 72 64 72 72 84 | 70
-----------------------------------------------

CMP, BIT

Метод адресации приемника
00 10 20 30 40 50 60 70
---------------------------- Метод адресации источника
12 32 32 44 32 44 44 56 | 00
28 36 36 48 36 48 48 60 | 10
28 36 36 48 36 48 48 60 | 20
40 48 48 60 48 60 60 72 | 30
28 40 40 52 40 52 52 64 | 40
40 52 52 64 52 64 64 76 | 50
40 48 48 60 48 60 60 72 | 60
52 60 60 72 60 72 72 84 | 70
-----------------------------------------------

BIC, BIS, ADD, SUB

Метод адресации приемника
00 10 20 30 40 50 60 70
---------------------------- Метод адресации источника
12 36 36 48 36 48 48 60 | 00
28 40 40 52 40 52 52 64 | 10
28 40 40 52 40 52 52 64 | 20
40 52 52 64 52 64 64 76 | 30
28 44 44 56 44 56 56 68 | 40
40 56 56 68 56 68 68 80 | 50
40 52 52 64 52 64 64 76 | 60
52 64 64 76 64 76 76 88 | 70
-----------------------------------------------

В исходниках это прописано таблицами, т.ч. поменять значения в таблицах не проблема.
Но у меня возникает несколько вопросов:
1. Команды условных переходов выполняются одинаковое время вне зависимости от того происходит переход или нет?
2. Будут ли инструкции выполнятся всегда одно и то же время в разных комбинациях сочитания с другими инструкциями? Ведь циклы выборки чтения видео ОЗУ будут по разному синхронизироваться с разным потоком инструкций?
В общем если будет четкое представление о том как это все работает, можно будет сделать точные тайминги.