Universal MEMORY tester v2.3
Supported:
1.Spectrum 128
2.Pentagon 1024/512
3.Scorpion1024/256
4.KAY 1024
5.KAY 2048 (Phoenix)
6.Profi1024/512
7.ATM4.5 (1024/512)
8.ATM7.1 (1024)
9.PentEvo (TSConf)
10.Sprinter (4096)
Алгоритмы тестирования памяти:
1. быстрое тестирование памяти, проверяется записью одного и тогоже байта в страницу.
- Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
(проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы) - Затем идёт проверка самих страниц. Если страница в порядке то она помечается ярко-зелёным квадратом!
(вначале страница заполняется кодом #00 и проверяется, затем заполняется кодом #FF и опять же проверяется. То же самое повторяется с кодами #55 и #AA)
- Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
(проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы) - Затем начинается двухпроходный тест. Вначале во все страницы пишутся случайные числа, пройденные страницы помечаются ярко-циановым цветом. Потом начинается второй проход - проверка сгенерированных данных. Страницы в которых всё нормально помечаются ярко-зелёным цветом, сбойные страницы - ярко-красным!
- Вначале проверяется наличие всех страниц 8(128kb)-256(4mb). Если хоть одна страница не совпала - выводит мессадж: "WRONG PAGING!!!".
(проверяется записью номера страницы в её начало и затем проверки оного после записи кодов во все страницы) - В начале, с помощью ГПСЧ, создаётся паттерн размером 2кб (находится прямо в экране). Этот блок данных размножается на всю память, следом запускается сам тест. Вначале сверяем память по паттерну, потом сдвигаем всю память на 1 бит, и заново запускаем сверку с паттерном, но так же сдвинутым на 1 бит. Продолжаем в цикле... Соответственно данные в память кидаются только 1 раз, а далее просто сдвигаются (модифицируются), с последующей проверкой.
Исходник: UMT 2.3.ASM + FONT32.C