mirror of https://github.com/zeldaret/mm.git
parent
9e5382076a
commit
1d7e721cb7
|
@ -88,33 +88,27 @@ GameStateOverlay* Graph_GetNextGameState(GameState* gameState) {
|
|||
return NULL;
|
||||
}
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Regalloc differences
|
||||
void* Graph_FaultAddrConvFunc(void* address, void* param) {
|
||||
u32 addr = address;
|
||||
GameStateOverlay* gamestateOvl;
|
||||
u32 ramConv;
|
||||
u32 ramStart;
|
||||
u32 diff;
|
||||
uintptr_t addr = address;
|
||||
GameStateOverlay* gamestateOvl = &gGameStateOverlayTable[0];
|
||||
uintptr_t ramConv;
|
||||
void* ramStart;
|
||||
uintptr_t diff;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < graphNumGameStates; i++) {
|
||||
gamestateOvl = &gGameStateOverlayTable[i];
|
||||
for (i = 0; i < graphNumGameStates; i++, gamestateOvl++) {
|
||||
diff = (uintptr_t)gamestateOvl->vramEnd - (uintptr_t)gamestateOvl->vramStart;
|
||||
ramStart = gamestateOvl->loadedRamAddr;
|
||||
diff = (u32)gamestateOvl->vramEnd - (u32)gamestateOvl->vramStart;
|
||||
ramConv = (u32)gamestateOvl->vramStart - ramStart;
|
||||
ramConv = (uintptr_t)gamestateOvl->vramStart - (uintptr_t)ramStart;
|
||||
|
||||
if (gamestateOvl->loadedRamAddr != NULL) {
|
||||
if (addr >= ramStart && addr < ramStart + diff) {
|
||||
if (ramStart != NULL) {
|
||||
if (addr >= (uintptr_t)ramStart && addr < (uintptr_t)ramStart + diff) {
|
||||
return addr + ramConv;
|
||||
}
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
#else
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/graph/Graph_FaultAddrConvFunc.s")
|
||||
#endif
|
||||
|
||||
void Graph_Init(GraphicsContext* gfxCtx) {
|
||||
bzero(gfxCtx, sizeof(GraphicsContext));
|
||||
|
|
Loading…
Reference in New Issue