6502TestPrograms

From VisualChips

(Difference between revisions)
Jump to: navigation, search
(add Ruud's rom)
(Ruud's ROM updated, notes on AllSuiteA, notes on other approaches.)
Line 5: Line 5:
Self-testing (6502 ROMs and programs):
Self-testing (6502 ROMs and programs):
* [http://www.modelb.bbcmicro.com/testsuite-2.15.tar.gz Wolfgang Lorenz' C64 suite] exhaustive, excluding decimal mode, uses C64 facilities to chain each program ([http://www.softwolves.com/arkiv/cbm-hackers/7/7114.html stubbing instructions here] by Christer Palm) (testsuite on Tom Seddon's site) (11kbyte total) ([http://plus4world.powweb.com/software/Test_Suite some description])
* [http://www.modelb.bbcmicro.com/testsuite-2.15.tar.gz Wolfgang Lorenz' C64 suite] exhaustive, excluding decimal mode, uses C64 facilities to chain each program ([http://www.softwolves.com/arkiv/cbm-hackers/7/7114.html stubbing instructions here] by Christer Palm) (testsuite on Tom Seddon's site) (11kbyte total) ([http://plus4world.powweb.com/software/Test_Suite some description])
-
* Ruud Baltissen's 8k test ROM from his [http://www.baltissen.org/zip/rb65-10.zip VHDL 6502 core] (includes source, presently off-air)
+
* Ruud Baltissen's 8k test ROM from his [http://www.baltissen.org/zip/rb65-11.zip VHDL 6502 core] (includes source, but only a subset of files found in the [http://www.baltissen.org/zip/rb65-10.zip previous version])
* [http://www.qmtpro.com/~nes/misc/nestest.txt NES test] [http://nickmass.com/images/nestest.nes rom] by Kevin Horton (24kbyte) (haven't found source for this, he says he hasn't got clean source to release)
* [http://www.qmtpro.com/~nes/misc/nestest.txt NES test] [http://nickmass.com/images/nestest.nes rom] by Kevin Horton (24kbyte) (haven't found source for this, he says he hasn't got clean source to release)
-
* [http://code.google.com/p/hmc-6502/source/browse/trunk/emu/testvectors/AllSuiteA.asm AllSuiteA.asm] from the hcm-6502 (verilog) project. ROM available.
+
* [http://code.google.com/p/hmc-6502/source/browse/trunk/emu/testvectors/AllSuiteA.asm AllSuiteA.asm] from the hcm-6502 (verilog) project. ROM available. Load at and reset to 0xf000 and set irq vector to 0xf5a4.
-
* [http://www.6502.org/tutorials/decimal_mode.html Decimal mode tests by Bruce Clark] ADC/SBC
+
* [http://www.6502.org/tutorials/decimal_mode.html Decimal mode tests by Bruce Clark] ADC/SBC (tests C but not N, V or Z flags.) Other [[6502DecimalMode|Decimal tests here]].
* Test code supplied with [http://web.archive.org/web/20070707064155/http://www.birdcomputer.ca/Projects/Prj6502/bc6502_page.html Rob Finch's 6502 core] (archive.org) (1500 bytes)
* Test code supplied with [http://web.archive.org/web/20070707064155/http://www.birdcomputer.ca/Projects/Prj6502/bc6502_page.html Rob Finch's 6502 core] (archive.org) (1500 bytes)
Test harnesses:
Test harnesses:
* [https://github.com/mnaberez/py65/tree/master/src/py65/tests/devices py65 tests] by Mike Naberezny (python)
* [https://github.com/mnaberez/py65/tree/master/src/py65/tests/devices py65 tests] by Mike Naberezny (python)
 +
 +
It can also be useful to run a monitor or BASIC interpreter, although the test coverage isn't very high and the run time is.  Favourites are: Apple 1 monitor, Apple 1 integer BASIC, C64 BASIC, BBC OS and BASIC.
References:
References:

Revision as of 20:16, 14 December 2010

There are a number of test suites for 6502, each with their own intentions and peculiarities.

For the most part they aim to test emulators, which are subject to different bugs than CPU implementations, and therefore the effective coverage may not be as good as expected. Such tests are generally self-checking - there is no golden results file of bus activity - and generally assume some specific platform's I/O facilities.

Self-testing (6502 ROMs and programs):

Test harnesses:

It can also be useful to run a monitor or BASIC interpreter, although the test coverage isn't very high and the run time is. Favourites are: Apple 1 monitor, Apple 1 integer BASIC, C64 BASIC, BBC OS and BASIC.

References:

Personal tools