Closed joncampbell123 closed 3 years ago
These tests will exist as executable DOS programs.
They will be written to run on real hardware and within DOSBox-X.
They will interact with a testing framework by returning pass or fail, ideally with output that can be written to a log file indicating what if anything went wrong.
If anyone wants to write or contribute test programs, they are welcome to do so.
Test cases not finished by the end of Feburary 2019 will be carried over to the next issue to be created for March 2019 to May 2019.
They will be expected to run:
Secondary testing, where the code may fail:
CPU test ideas, pure ASM code, to run just before BIOS POST at startup. Remember the function I added to load a blob of executable code in dosbox.conf just before BIOS POST?
Basic CPU tests listed above will be carefully confined to pre-boot environments since, if the instructions do not follow the basic behavior expected, neither will they behave properly when running through the C runtime of a typical EXE nor the DOS kernel.
Timer tests:
Timer, PC-98 BIOS functions INT 1Ch:
Timer test questions (not sure yet):
Reminder to self:
Specific programs to use while testing:
A20 gate: For each test the 64KB memory region at the 1MB barrier (FFFF:0000) will be compared against the bottom of memory (0000:0000) to determine A20 status
Less certain:
Mouse:
Test, not sure:
Interrupt controller:
Not sure:
Keyboard:
Not sure:
Real test cases:
Video:
Test ideas to try:
Hack ideas to try:
Video:
Questions:
Real test cases:
286+ reset vector tests:
General reset tests:
Real world test cases:
Is your feature request related to a problem? Please describe. I'm going to slow development of DOSBox-X for a bit (leave it to bug fixes) and focus on developing DOS programs to run both within DOSBox-X and on real hardware as a way to validate that emulation is as accurate as possible.
You may remember in July 2018 when I wrote a program to run through the various INT 10h video modes to test that the modes acted as expected and that various basic tweaks to the VGA hardware acted as expected.
The idea is to do the same with other parts of the hardware, though not yet as comprehensive.
These test programs will exist for both IBM PC and NEC PC-98 platforms.
I have my own list to start with, anyone else here is welcome to suggest additional tests.
Some tests will be written to talk to hardware in the same manner as some games or programs are observed to do.