VDP timing analysis tool for MSX
Pedro Gimeno 1e34257333 Remove stray line, minor changes | 2 years ago | |
---|---|---|
test_asc2cld | 2 years ago | |
.gitattributes | 5 years ago | |
.gitignore | 5 years ago | |
LICENSE.md | 5 years ago | |
Makefile | 4 years ago | |
README.md | 4 years ago | |
RESULTS.txt | 4 years ago | |
USAGE.txt | 4 years ago | |
asc2cas.py | 2 years ago | |
asc2cld.py | 2 years ago | |
blank1.dsk.gz | 5 years ago | |
blank2.dsk.gz | 5 years ago | |
cld2cas.py | 4 years ago | |
frametime.bss.asm | 4 years ago | |
frametime.code.asm | 4 years ago | |
im2setup.code.asm | 4 years ago | |
im2setup.equ.asm | 5 years ago | |
loadertpl.py | 4 years ago | |
main.bss.asm | 5 years ago | |
main.code.asm | 4 years ago | |
raw2bin.py | 5 years ago | |
raw2cas.py | 2 years ago | |
syncvint.code.asm | 4 years ago | |
sysdefs.equ.asm | 4 years ago | |
test-ack-timing.bss.asm | 4 years ago | |
test-ack-timing.code.asm | 3 years ago | |
test-vram-timing.bss.asm | 4 years ago | |
test-vram-timing.code.asm | 4 years ago | |
vdptest.asm | 4 years ago |
This program is designed to test the intricacies and fine details of how the VDP interacts with the CPU, especially in areas of possible interest to emulator authors, and also to MSX/MSX2/MSX2+/TR coders that want to make the most out of the VDP to e.g. squeeze as many transfers as possible in the shortest time.
It's currently work in progress.
An important detail is that it's designed to run on MSX machines with synced CPU/VDP clocks, not separate. This makes things hard for a particular VDP, the Toshiba T6950, at least in PAL machines which need a 22.168 MHz crystal that is not compatible with the regular CPU timings, and therefore always includes separate crystals for CPU and VDP. That leaves several popular Sony machines basically untestable with any degree of reliability.
It's also designed to run on machines with Z80 at 3.579545 MHz and with one M1 wait state, i.e. normal models with no turbo and no R800 mode. It uses ports 98h/99h, it does not read the port number from the BIOS, therefore it will only work in machines that use these ports.
Requires at least 32K to run, and a BASIC ROM (no CBIOS).
See the Releases page for pre-built binaries. Read USAGE.txt for more information.
The license for this code is the Expat license. See the file LICENSE.md for details.