https://github.com/wiilink24/wii-no-ma-patches
Patches for the Wii no Ma (Wii Room) Channel
https://github.com/wiilink24/wii-no-ma-patches
Last synced: 2 months ago
JSON representation
Patches for the Wii no Ma (Wii Room) Channel
- Host: GitHub
- URL: https://github.com/wiilink24/wii-no-ma-patches
- Owner: WiiLink24
- License: mit
- Created: 2024-04-19T02:21:26.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-15T20:24:22.000Z (about 1 year ago)
- Last Synced: 2024-05-16T07:34:58.585Z (about 1 year ago)
- Language: C++
- Size: 18.6 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Wii no Ma Patches
Patches for the Wii no Ma channel to allow for localization.I decided to write the patches in C++ for transparency as well as have a better visual representation of what is actually happening. Prior to this, all patches were ASM inserted into specific instructions.
## How it works
We can call on symboled functions from inside the DOL. After compiling, we can use `powerpc-eabi-objcopy` to create the binary blob which will be inserted at the end of the DOL.First we modify the DOL header to add a data region to store the binary blob. We then modify the function at `0x80006560` to copy the binary blob to `0x80001800` (Unused exception handler region). This is required as BSS memory is allocated in the region we originally inserted the binary blob into.