Game: Spider-Man 3 etc. (see below, all games are developed by Vicarious Visions)
Music does not play. Foobar2000 will skip the song when played (i.e. silence).
Technical Background
The Vicarious Visions game runs the division function implemented for ARM on IWRAM, but Gaxtapper skips the original memory transfer procedure and calls GAX, so the code reaches an uninitialized memory address and crashes. The function to be called is as follows.
The __udivdi3 function for THUMB, which is often used in other games, resides at 0x8041AE8. However, this function also calls 0x8000254, so changing the trampoline jump destination to 0x8041AE8 will not work.
Any Solution?
Semi-manual ripping...? 🤔
Even if it is difficult to fix the problem automatically, it would be easier to diagnose the problem if it could be detected.
Games that have this problem
Finding Nemo
Shark Tale
Madagascar
Spider-Man 3
Shrek The Third
Over the Hedge
Tony Hawk's American Sk8land
Ultimate Spider-Man
X-Men 2 - Wolverines Revenge
Jet Grind Radio
Disney's Extreme Skate Adventure
Disney's Lion King
Tony Hawk's Underground
Spongebob Squarepants: Battle for Bikini Bottom
Disney's Brother Bear
Crash Nitro Kart
Shrek 2
Crash Bandicoot Purple: Ripto's Rampage and Spyro Orange - The Cortex Conspiracy
Music does not play. Foobar2000 will skip the song when played (i.e. silence).
Technical Background
The Vicarious Visions game runs the division function implemented for ARM on IWRAM, but Gaxtapper skips the original memory transfer procedure and calls GAX, so the code reaches an uninitialized memory address and crashes. The function to be called is as follows.
The __udivdi3 function for THUMB, which is often used in other games, resides at 0x8041AE8. However, this function also calls 0x8000254, so changing the trampoline jump destination to 0x8041AE8 will not work.
Any Solution?
Semi-manual ripping...? 🤔
Even if it is difficult to fix the problem automatically, it would be easier to diagnose the problem if it could be detected.
Games that have this problem