1
0
mirror of https://github.com/nzeemin/bkbtl-doc.git synced 2025-04-18 05:44:04 +03:00
..
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00
2015-03-27 21:39:03 +03:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

791404 Тест прерываний
791323 Тест памяти
791401 Основной тест команд


http://bk0010.org/forum/?id=3716&page=

? anonymous - 11.12.2009 23:39
Первые два - из комплекта сдаточных тестов ВМ1, тест инструкций процессора и тест прерываний, третий - расширенный тест ОЗУ. Они обругают, если что-то не так съемулировано. Загружаются с адреса 0, диагностику выводят на учительскую машину через блок ИРПС. ИРПС эмулировать не сложно, там 4 регистра, перемычкой их адрес задается 0176560..0176567 для школьного бейсика и 0177560..0177567 для школьного фокала, последний вариант - стандартные адреса терминала в pdp11, на этих адресах и следует добавить эмуляцию с выводом в соседнее, например, окно, или в файл. В *560м регистре имеются два бита, 6й и 7й. 7 бит *560го регистра устанавливается, если во входной регистр *562 поступил новый байт, а если перед приемом байтов установить в 1 6й бит *560го регистра, то произойдет прерывание с вектором, адрес которого читается из регистра *566. *562й регистр - буфер приемника, оттуда считывается последний принятый байт, по записи регистр ничего не делает. В регистре *564 имеются тоже два бита, 6й и 7й, с тем же назначением, что и у приемника, 7й бит устанавливается в 0, когда процессор пишет байт в буфер передатчика, *566, и устанавливается в 1, когда заканчивается передача, т.е. когда буфер готов к приему следующего байта. Если при установке 7го бита был установлен 6й, то по готовности передатчика возникает прерывание с вектором, на 4 бОльшим, чем считываемое из регистра *566 значение. Регистр *566 - по записи - буфер передатчика, по чтению - регистр вектора прерывания, при установке адресов 0176560..0176567 вектор считывается 0360, приемник прерывает работу по 0360му вектору, а передатчик - по 0364му, при установке адресов 0177560..0177567 - адрес вектора 060 для приемника и 064 для передатчика.
По команде процессора reset все биты в регистрах приемника обнуляются, а в регистре передатчика устанавливается бит 7 - готовности к передаче.
? anonymous - 11.12.2009 23:44
тесты (расширение .256 у них от программатора осталось, т.к. я их в пзу жег)
http://qbus.narod.ru/791401.256
http://qbus.narod.ru/791401.256
http://qbus.narod.ru/791323.256