Написал простой тест проверки стабильность шины данных в момент подтверждения прерывания на фоне переключения страниц ОЗУ: im2test.zip
Если шина данных стабильно = #FF на момент прерывания, тест работает бесконечно, выводя в верхней трети экрана произвольные атрибуты, и мигая черно/белым в остальной части экрана. Если шина данных нестабильна, тест, если он был запущен после USR 0, выйдет в бейсик с сообщением DATA BUS ERROR, если из меню 128, сбросится. В процессе работы тест постоянно переключает страницы ОЗУ, и копирует 256 байтов из ПЗУ в текущую верхнюю страницу.
upd: Тест можно запускать и на 48к моделях - если тест "висит" без каких-либо признаков жизни, шина данных в порядке, если выходит в бейсик с сообщением, шина нестабильна.
upd: Тест не вполне подойдет для машин с более точной дешифрацией порта #7FFD, в частности, для Скорпиона - он будет работать, но без переключения страниц и видеоэффектов, просто будет висеть, как и на 48к моделях. Но если шина данных нестабильна и без переключений страниц, тест на Скорпионе закончится заполнением экрана упорядоченным фиолетовым "матрасом".
upd. Для +2А/+3 он не подойдет вообще.
Листинг ассемблера привожу.
org #6000
// иниц. IM2
DI
LD (SAVESP),SP
LD HL, #5B00
LD A,H
L1 LD (HL),#60
INC HL
BIT 2,H
JR Z,L1
LD (HL),#61
LD I,A
IM 2
EI
// основной бесконечный цикл
L3 XOR A
LD H,A
LD L,A
L2 OUT (#FD),A
LD DE,#D800
LD BC,256
LDIR
INC A
CP 32
JR NZ,L2
JR L3
// обработка некорректного прерывания - выход в бейсик 48
ORG #6060
LD SP,0
SAVESP EQU $-2
LD BC,#7FFD
LD A,#10
OUT (C),A
IM 1
EI
RET
// обработка корректного прерывания
ORG #6160
EI
RET
- - - Добавлено - - -
Portos13 запустил этот тест на своей машине, и у него он выдал "DATA BUS ERROR". Моё предположение, из-за чего у него не работает дема EyeAche2, оказалось верным. Возможно, тест будет полезен кому-то ещё.
Тест также полезен в том плане, что он более полно тестирует железо по сравнению с существующими тестами на ту же тему - т.к. проверка стабильности шины данных происходит на фоне переключения страниц. В частности, обычные тесты стабильности шины у Portos13 отрабатывали без вопросов, включая тест INT`a от Ковалевского