Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aldelaro5/ghidra-gekko-broadway-lang
Ghidra language definition for the Gekko and Broadway CPU variant used in the Nintendo GameCube and Nintendo Wii respectively
https://github.com/aldelaro5/ghidra-gekko-broadway-lang
gamecube ghidra reverse-engineering wii
Last synced: about 1 month ago
JSON representation
Ghidra language definition for the Gekko and Broadway CPU variant used in the Nintendo GameCube and Nintendo Wii respectively
- Host: GitHub
- URL: https://github.com/aldelaro5/ghidra-gekko-broadway-lang
- Owner: aldelaro5
- License: other
- Created: 2019-03-12T22:46:38.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2022-02-09T14:57:36.000Z (almost 3 years ago)
- Last Synced: 2024-12-16T00:45:54.873Z (about 1 month ago)
- Topics: gamecube, ghidra, reverse-engineering, wii
- Homepage:
- Size: 63.5 KB
- Stars: 127
- Watchers: 11
- Forks: 16
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
NOTE: this got integrated into https://github.com/Cuyler36/Ghidra-GameCube-Loader which is where maintenance will be done from now on.
# ghidra-gekko-broadway-lang
Language definition for the Gekko and Broadway CPU variant used in the Nintendo GameCube and Nintendo Wii respectively.Supports the disassembly and decompilation of the paired singles instructions and the dcbz_l instruction.
For quantizations, two new PCode operations are defined like so:
quantize(PS, type, scale)
dequantize(EA, type, scale)Where PS is a ps register, EA is the effective address of the load, type is the GQR type setting (4 = U8, 5 = U16, 6 = S8 and 7 = S16) and scale is the GQR scale setting. For clean decompilation output, consider setting the GQR values so it can properly assume their contents as most games will set them without changing them after. You might see warnings in the decompiler window about unreachable code for the psq instructions if you do so; this is normal as the decompiler will optimise out quantizations that won't happen.
# Installation
Copy all the files from the `data/languages` folder to `Ghidra/Processors/PowerPC/data/languages` of your Ghidra installation. To use the language, select it in the language selection menu which is PowerPC 32 bit big endian Gekko/Broadway variant. Upon using the language, the .sla file should be compiled automatically.