
Сообщение от
gid
А тогда у IRQ3 какой вектор? Вроде бы у него было как раз 270.
И если вектора одинаковые, как теперь узнать, откуда пришло прерывание? Может где-то флаги дополнительные введены?
Повторю свой немного отредактированный пост с ч/б форума для всех:
Да, пока 270 - это значение вытащенное по результатам реверса. Но тест проходит гладко - таймер генерирует прерывание, оно попадает на матрицу приоритетного шифратор, матрица вектор не вырабатывает, она вырабатывает 4-х битный индекс для таблички. Табличка (генератор векторов и адресов) содержит 13 констант, они все известны -
160002, 160006, 160012, 177716, 000004, 000010, 000014, 000020, 000024, 000030, 000034, 000100 и 000270. То есть никакого нового вектора в ВМ1Г не добавлено, я табличку векторов в ВМ1Г специально перепроверял, может что и просмотрел, но вероятность небольшая.
Также матрица вырабатывает 3-битный индекс для сброса запроса - и этот сброс точно попадает на запрос таймера, вероятность что неправильно разобрана матрица тоже небольшая.
Но - да, для того чтобы окончательно убедиться, надо перепроверить на реальном процессоре, мне пока негде - нету платы с ВМ1Г.
Мой тест, запустить и посмотреть куда улетит:
Код:
TLIM = 177706
TCNT = 177710
TCSR = 177712
.word 0
.word 0
.word 0
stack:
entry:
mov #stack, SP
mov #0, @#TCSR
mov #2, @#TLIM
mov #24, @#TCSR
mtps #0
wait
br entry
Флагов никаких дополнительных не обнаружено, увы. А IRQ3 где-то используется? В БК-0011М выходит на внешние разъемы, какие из внешних модулей с IRQ3 работают? В МС1201.01 также через перемычку выходит на шину и все.

Сообщение от
MM
И такой тоже трапует по 10-му вектору :

Оп-па, получается что пять точек - это непонятно что. Может быть какая специальная приемка, но не ВМ1 с микропрограммой умножения. И дата выпуска 9102, может быть еще какое изменение ТУ вышло.