Add support for games with overlapping VRAM addresses for executable sections
AngheloAlf opened this issue · 1 comments
Currently the recompiler tool doesn't have proper support for this kind of games.
This can produce warnings like [Warn] Potential jal resolution ambiguity
Game with overlapping executable include (but not limited to):
- Paper Mario
- Pokémon Snap
- Starfox 64
The current plan to implement this is the following according to Wiseguy:
And more specifically, there's actually no need to call LOOKUP_FUNCTION for most cases with overlapping addresses. For example if a jal is in section 3 and the one of the target functions is also in section 3, then the recompiler just has to emit the function call to that function in section 3 since it's unambiguous. It's a very small change, I'm just in the middle of a refactor to clean up the instruction handling at the moment so it'll probably have to wait until after that's done.
(from #77 (comment))