Хотя живое значение SR0 у ВМ3 "отстаёт на одно обращение" - при очищении SR0 там "замораживается" то же значение с номером страницы регистра SR0, что и у 11/83.
Хотя живое значение SR0 у ВМ3 "отстаёт на одно обращение" - при очищении SR0 там "замораживается" то же значение с номером страницы регистра SR0, что и у 11/83.
Только с чем его сравнивать?В битах страница 0 - адрес командыКод:010000/ MOV (R2), R3 ; R3/000001
В битах страница 7 - адрес (R2)...Код:010000/ MOV (R2), R3 ; R3/000017
Поэтому наверное и написано в доке, что значения имеют смысл только на момент заморозки - тогда они точно соответствуют обращению которое вызвало сбой...А тут видим то самое несоответствие MMR2 адресу инструкции. Но опять таки оно незаморожено установкой старших битов SR0... Да и значения особого не имеет без реализации MMR1 :)Код:010002/ MOV (R4), R5 ; R5/010004
Так что скорее разница в источнике информации, а это видимо зависит от реализации выборки команды и последующей ее обработки...
- - - Добавлено - - -
Так традиционных и нету без заморозки - для 11/83 дока оговаривает только то, что заморожено - оба варианта правильные, один вы согласии с операндом, второй с PC. Все дело в алгоритме работы видимо - так же как с известным Rx,(Rx)+...
А есть ли оно правильное? Ведь значение регистра интересно опять таки при заморозке в момент ошибки, а оно насколько я помню в точности совпадало по тому же MMU.SAV... Оговаривается ли его значение без заморозки на всез вариантах - надо смотреть - вроде где-то было написано про различия...
- - - Добавлено - - -
Специально вернулся назад - результат совпадает на 11/83 и на ВМ3. При заморозке результата (что и является значимым).
- - - Добавлено - - -
Видимо ВМ3 так дергает регистр предвыборкой следующей команды, на 11/83 же предвыборка идет несколько иначе. Ради интереса можно конечно переткнуть проц в первый слот, а память на место проца в третий, но в теории это скорее должно дать тот результат который и так есть :)
Тест на плате М6.
Код:.SR0
Live SR0 & SR2 test.
MOV #0177572, R2
MOV #0177576, R4
CLR (R2)
010000/ MOV (R2), R3 ; R3/000000
010002/ MOV (R4), R5 ; R5/010002
MOV #1,(R2)
010000/ MOV (R2), R3 ; R3/000017
010002/ MOV (R4), R5 ; R5/010002
CLR (R2)
020000/ MOV (R2), R3 ; R3/000016
020002/ MOV (R4), R5 ; R5/020002
MOV #1,(R2)
020000/ MOV (R2), R3 ; R3/000017
020002/ MOV (R4), R5 ; R5/020002
Program completed.