00342fd1aa05590083cbfcfc907cbff3d328c7b5
# Voodoo 2 (TMU) MemTest
This tool is an attempt to help troubleshooting Voodoo² TMU’s issues.
TMU system can be very hard to fix because there are so many connexions.
## TMU0 Memory test
Here is a simplified data flow diagram:
┌────────────┐ 3 ┌───────────┐
│ ┼─────► │
│ TMU0 │ │ TMU0 RAM │
│ ◄─────┼ │
└──▲──────┬──┘ └───────────┘
│ │ 4
│ │
2 │ │ 5
│ │
┌──┼──────▼──┐ 6 ┌───────────┐
│ ┼─────► │
│ FBI │ │ FBI RAM │
│ ◄─────┼ │
└──▲───────┬─┘ 7 └───────────┘
│ │
│ │
1 │ │ 7
│ │
┌──┼───────▼─┐
│ │
│ CPU │
│ │
└────────────┘
- 1 : CPU configure texture base address and write data to the FBI
- 2 : The FBI streams the texture to the TMU
- 3 : The TMU writes the texture into his private memory
- 4 : The CPU sends a request to the TMU (through the FBI) to render a triangle using this texture (double the size)
- 5 : The TMU streams the rendered pixels to the FBI
- 6 : The FBI writes the pixel to the frame buffer
- 7 : The CPU requests the pixels using the Linear Frame Buffer access
- x : The CPU can compare the rendered value with the original texture
Description
Languages
C
65.9%
C++
33.9%
Makefile
0.2%