Цитата Сообщение от Ynicky Посмотреть сообщение
Как вариант, могу предположить, что у меня в проекте БК1610 что-то не правильно сделано.
Кажется я понял корни Вашей проблемы.

Реальный PDP-11 при байтовом обмене ожидает байт на его месте (то есть младший всегда по битам 7..0, старший - по битам 15..9) и выбор нужного (грубо говоря - увод его в биты 7..0 делается в процессоре (очень условно, просто для понимания).

Автор PDP-2011 поступил своебразно. У него эту операцию делает MMU - то есть если взять ТОЛЬКО модуль CPU из PDP-2011 (Вы же взяли только модуль CPU?) - то по идее как раз и вылезет ошибка в байтовых операциях.

И судя по тому, как Вы её решили - причина проблема действительно в этом.

Я сейчас гоняю (в том числе) модуль процессора из PDP-2011, но из за немного другого подхода к соединению модулей мне ПРИШЛОСЬ взять и MMU, но поскольку я на очень раннем этапе своего тестирования и модуль CPU мне нужен для другого, да и процессор у меня не предполагает полноценный MMU - я MMU порезал, оставив только нужные мне функционал. И там осталась авторская перестановка байт, так что у меня всё нормально работает.

- - - Добавлено - - -

Блин, и похоже этот создаст проблемы и мне...

- - - Добавлено - - -

Хотя нет, в ZeroMMU переставляется в обеих направлениях