Вложений: 5
Тест - количество тактов между прерываниями.
Цитата:
Сообщение от
AHTuXPuCT
Лас, а можешь сделать тест чтоб он еще и количество тактов показывал?
буду очень признателен :)
АХТуКСПуЦТ, сделано.
Тест - подсчет количества тактов между прерываниями:
(Этот тест прошивается и работает в ПЗУ)
Наличие ОЗУ не обязательно - оперативная память может отсутствовать вовсе или быть повреждена. На работоспособность теста это не повлияет. :)
Диапазон измерения:10...655350 тактов.
Погрешность: может достигать 10 тактов.
Как работает тест:
При запуске начинает циклически тестировать количество тактов за 1 прерывание - только в ПЗУ.
Если нажать пробел, то, кроме теста в ПЗУ, начинает производиться тестирование количества тактов за 1 прерывание при работе с ОЗУ. Тестирование проводится в 3-х различных сегментах ОЗУ, что позволяет оценить производительность Спектрумов с раздельным полем памяти.
Адреса начала сегментов ОЗУ, в которых производится тестирование - указаны на экране. При тестировании в ОЗУ - используемая там память для тестов (лишь по 2 байта на каждый из 3х сегментов ОЗУ, т.е. всего 6 байт) проверяется на исправность, и, если какая-либо часть памяти неисправна, то тестирование данного сегмента не производится, а результатом тестирования этой части памяти будет 000000.
Необходимые уточнения:
- тест начинает работать сразу после сброса;
- при работе не используется стек и не используется ни одной ячейки ОЗУ, кроме вывода в видеопамять (адреса 4000h...5affh) (до нажатия пробела, см.ниже);
- все необходимые для работы данные находятся только в ПЗУ и хранятся в регистрах процессора.
- после нажатия пробела для тестирования в исправных сегментах ОЗУ используется по 2 байта памяти в каждом из 3х сегментов ОЗУ.
test_int.rom.zip - образ для прошивки, стандартного размера 16к;
test_int4k.rom.zip - образ для прошивки, размером 4к (не знаю зачем :), но может пригодиться);
testDEMO.trd.zip - образ диска, для запуска теста без прошивки в ПЗУ (работает только на Скорпионе и KAY);
testDEMO.szx.zip - снэпшот, сделанный в эмуляторе Spectaculator (в режиме эмуляции Скорпиона).
Вот, для примера, прилагаю снимок экрана с работающим тестом в эмуляторе Spectaculator в режиме эмуляции оригинального Спектрума с 16Кб ОЗУ.
На снимке видно, что общая производительность в ПЗУ выше производительности в "медленном" сегменте ОЗУ "фирменного" 16K ZX Spectrum, и видно, что верхние 32к ОЗУ отсутствуют.