Vincent Pelletier 556d18f865 DSPSpy: Unhide stack registers
The screen real-estate is already reserved, the values are dumped and
restored by the on-DSP code, why not make something out of these values ?
Allows following:
- where exactly send_back was called from ($st1)
- the boundaries and progress of the innermost BLOOP{,I} ($st0, 2 and 3)
  up to send_back's call
2022-09-30 11:07:41 +00:00
..
2009-08-13 16:13:49 +00:00
2009-08-16 00:37:01 +00:00
2021-08-21 17:07:14 -07:00
2019-12-30 13:33:43 +01:00
2020-06-08 04:21:41 +01:00
2022-09-30 11:07:41 +00:00
2021-08-21 17:07:14 -07:00
2021-08-21 17:07:14 -07:00

DSPSpy

DSPSpy is a homebrew tool for experimenting with the GameCube/Wii DSP. It can also be used to dump the DSP ROMs.

Building

DSPSpy is built using devkitPPC; see the devkitPro getting started page for more information. DSPSpy also requires DSPTool to be built.

First, run DSPTool to generate dsp_code.h, for instance from tests/dsp_test.ds. The following commands assume an x64 Windows setup running in the DSPSpy directory:

../../Binary/x64/DSPTool.exe -h dsp_code tests/dsp_test.ds

To use the ROM-dumping code, run this:

../../Binary/x64/DSPTool.exe -h dsp_code util/dump_roms.ds

DSPTool can also generate a header for multiple DSP programs at the same time. First, create a file (in this example, it was named file_list.txt) with the following contents:

tests/dsp_test.ds
tests/mul_test.ds
tests/neg_test.ds

Then run:

../../Binary/x64/DSPTool.exe -h dsp_code -m file_list.txt

After dsp_code.h has been generated, simply run make to generate dspspy_wii.dol, which can be loaded by normal means.

Dumping DSP ROMs

Build DSPSpy with util/dump_roms.ds. When launched, DSPSpy will automatically create files dsp_rom.bin and dsp_coef.bin on the SD card (only SD cards are supported); DSPSpy can be exited immediately afterwards.