dolphin/Source/DSPSpy
Mai M f7f47d3cd0
Merge pull request #10692 from Pokechu22/dsp-manual-set40-and-write-backlog
docs/DSP: Add sections on 16-bit and 40-bit modes and on main and extended opcode writing to the same register
2022-06-02 20:26:31 -04:00
..
templates tstaxh SR 2009-08-13 16:13:49 +00:00
tests DSPSpy: Add 40-bit mode tests 2022-06-01 22:25:59 -07:00
util dspspy: fix a bug with ConsoleHelper 2009-08-16 00:37:01 +00:00
.gitignore DSPSpy: Create .gitignore 2021-08-21 17:07:14 -07:00
ConsoleHelper.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
dsp_interface.cpp treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
dsp_interface.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
dspregs.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
DSPSpy.vcproj DSPSpy: Remove unused stubs 2019-12-30 13:33:43 +01:00
DSPSpy.vcxproj msbuild: use default Project attrs 2022-04-27 15:26:43 -07:00
DSPSpy.vcxproj.filters msbuild: use default Project attrs 2022-04-27 15:26:43 -07:00
gba.txt DSPSpy: save and restore $sr properly 2020-06-08 04:21:41 +01:00
main_spy.cpp DSPSpy: Fix incomplete result dumps 2022-06-01 21:55:56 -07:00
Makefile DSPSpy: Remove build.sh and sbuild.sh 2021-08-21 17:07:14 -07:00
mem_dump.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
README.md DSPSpy: Create README.md 2021-08-21 17:07:14 -07:00
real_dsp.cpp treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02:00
real_dsp.h treewide: convert GPLv2+ license info to SPDX tags 2021-07-05 04:35:56 +02: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.