Как настроить тесты процессора TomHarte

В настоящее время я тестирую свой 6510 и решил использовать тесты TomHarte для большей точности. У меня есть пара вопросов по этой теме;

  1. Нужно ли нам читать двоичные файлы файлов .json?
  2. Если бы мы это сделали, как бы выглядела функция, читающая это? Будет ли это похоже на что-то вроде AllSuiteA (который проверяет значение ПК и 0x0210 для 0xFF, чтобы определить, прошел ли эмулятор).
  3. Нужно ли нам выполнять каждый тест отдельно в файлах .json? Или есть способ сделать все вместе одновременно?

Это репо

1 ответ

Здесь есть хорошее объяснение формата JSON.

https://github.com/TomHarte/ProcessorTests/blob/main/6502/README.md

  1. Что вам нужно сделать, так это проанализировать JSON как стандартный файл JSON, инициализировать свой процессор с помощью регистра и флагов из дочерних значений исходного ключа (PC, s, a, x, y, p). А затем запишите все значения памяти в заданные места в массиве оперативной памяти . А затем выполните код. Значение ПК уже указано в исходном ключе.
  2. Когда выполнение будет завершено, вам необходимо сравнить фактические регистры, флаги и ячейки памяти вашего процессора с окончательным ключом. Так вы определите, пройден ли тест.
  3. Все тесты должны быть индивидуальными. Вам необходимо перезагрузить процессор и память и выполнить тест, чтобы убедиться, что ничто из предыдущего теста каким-либо образом не влияет на тесты, что маловероятно, но возможно.
Другие вопросы по тегам