cadmic
cadmic
For codewarrior 1.1 (compiler version 2.3.3 build 137) the map format looks like this: ``` Starting Virtual address Size address ----------------------- 00000000 000864 800055a0 1 .text xlCoreGCN.o 00000000 000000 800055a0...
Strategies used: * Declaring some variables in header vs only in the .c file. In -g3 it seems like the block number is assigned the first time a variable is...
I tried to split this into nice commits for easier review, since some of the matches are a bit sketchy. ~~The only function left is `Camera_Battle1`~~ (EDIT: now hackily matched)....
Found with check_ordering.py. Surely there's a more principled way to handle `gGameOverTimer` in z_message_PAL.c?
Fix the following gc-eu-mq padding/alignment problems, with help from the [zelda64_compare spreadsheet](https://docs.google.com/spreadsheets/d/17yPD3DqqH5lZeR7c_QmJfgxWgVyYkGgTLZoKcvLTwtw/edit#gid=204902945): * The VRAM address of `code` was wrong; it should be 80010f00 but it was assigned address 80010ef0....
gzinject is pretty useful for unpacking non-OOT wads too. Unfortunately trying to re-pack them fails with a segfault, since gzinject tries to open a non-existent content5.app file. This is kind...
Implement **pause when playback ends** to pause when a macro completes, and **start/stop timer automatically** so that the timer will start and stop and the beginning and end of macro...
For me the "camera" mode is purely a desync footgun. Is there a reason why it's the default?
Some bad baseroms will fail to decompress, so catch these early. We also check the hash after decompression too, just in case.
Cygwin does not play nice with Rust (no Python wheels and no native rust compiler support) and seems to be rarely used these days