diff options
| author | Derek Hensley <hensley.derek58@gmail.com> | 2024-02-29 05:15:04 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-29 14:15:04 +0100 |
| commit | 1b60dcf6dd198fe8b29e33053ecefc62c5233c42 (patch) | |
| tree | 38e51f128933e363a22feff1ecc83d904f8134c1 /src/code | |
| parent | 7a2c46d4eb4f3f0d12cae4f41df0e55342a42fd3 (diff) | |
Use Romfile in place of vromStart and vromEnd in structs (#1742)
* KaleidoMgrOverlay
* GameStateOverlay
* ActorOverlay
* EffectSsOverlay
* MapMarkDataOverlay
* Missed DEFINE_ACTOR_UNSET
* ROM_FILE_UNSET
* DEFINE_OBJECT_EMPTY
* DmaEntry
* ACTOR_UNSET
* romfile.h
* newline
* Format
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/object_table.c | 10 | ||||
| -rw-r--r-- | src/code/z_DLF.c | 2 | ||||
| -rw-r--r-- | src/code/z_actor.c | 4 | ||||
| -rw-r--r-- | src/code/z_actor_dlftbls.c | 57 | ||||
| -rw-r--r-- | src/code/z_effect_soft_sprite.c | 13 | ||||
| -rw-r--r-- | src/code/z_effect_soft_sprite_dlftbls.c | 17 | ||||
| -rw-r--r-- | src/code/z_game_dlftbls.c | 32 | ||||
| -rw-r--r-- | src/code/z_kaleido_manager.c | 9 | ||||
| -rw-r--r-- | src/code/z_map_mark.c | 13 |
9 files changed, 79 insertions, 78 deletions
diff --git a/src/code/object_table.c b/src/code/object_table.c index dc32b4435..d0f9e936d 100644 --- a/src/code/object_table.c +++ b/src/code/object_table.c @@ -6,24 +6,24 @@ u32 gObjectTableSize = ARRAY_COUNT(gObjectTable); // Object linker symbol declarations (used in the table below) #define DEFINE_OBJECT(name, _1) DECLARE_ROM_SEGMENT(name) -#define DEFINE_OBJECT_NULL(_0, _1) +#define DEFINE_OBJECT_EMPTY(_0, _1) #define DEFINE_OBJECT_UNSET(_0) #include "tables/object_table.h" #undef DEFINE_OBJECT -#undef DEFINE_OBJECT_NULL +#undef DEFINE_OBJECT_EMPTY #undef DEFINE_OBJECT_UNSET // Object Table definition #define DEFINE_OBJECT(name, _1) ROM_FILE(name), -#define DEFINE_OBJECT_NULL(name, _1) ROM_FILE_EMPTY(name), -#define DEFINE_OBJECT_UNSET(_0) { 0 }, +#define DEFINE_OBJECT_EMPTY(name, _1) ROM_FILE_EMPTY(name), +#define DEFINE_OBJECT_UNSET(_0) ROM_FILE_UNSET, RomFile gObjectTable[] = { #include "tables/object_table.h" }; #undef DEFINE_OBJECT -#undef DEFINE_OBJECT_NULL +#undef DEFINE_OBJECT_EMPTY #undef DEFINE_OBJECT_UNSET diff --git a/src/code/z_DLF.c b/src/code/z_DLF.c index 8c144a1cd..42fbc4b47 100644 --- a/src/code/z_DLF.c +++ b/src/code/z_DLF.c @@ -10,7 +10,7 @@ void Overlay_LoadGameState(GameStateOverlay* overlayEntry) { if (overlayEntry->vramStart == NULL) { overlayEntry->unk_28 = 0; } else { - overlayEntry->loadedRamAddr = Overlay_AllocateAndLoad(overlayEntry->vromStart, overlayEntry->vromEnd, + overlayEntry->loadedRamAddr = Overlay_AllocateAndLoad(overlayEntry->file.vromStart, overlayEntry->file.vromEnd, overlayEntry->vramStart, overlayEntry->vramEnd); if (overlayEntry->loadedRamAddr == NULL) { diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 86afb147c..96d8244d9 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -2877,8 +2877,8 @@ Actor* Actor_Spawn(ActorContext* actorCtx, PlayState* play, s16 actorId, f32 pos return NULL; } - Overlay_Load(overlayEntry->vromStart, overlayEntry->vromEnd, overlayEntry->vramStart, overlayEntry->vramEnd, - overlayEntry->loadedRamAddr); + Overlay_Load(overlayEntry->file.vromStart, overlayEntry->file.vromEnd, overlayEntry->vramStart, + overlayEntry->vramEnd, overlayEntry->loadedRamAddr); PRINTF(VT_FGCOL(GREEN)); PRINTF("OVL(a):Seg:%08x-%08x Ram:%08x-%08x Off:%08x %s\n", overlayEntry->vramStart, overlayEntry->vramEnd, diff --git a/src/code/z_actor_dlftbls.c b/src/code/z_actor_dlftbls.c index 0dd90d335..4a6ce2567 100644 --- a/src/code/z_actor_dlftbls.c +++ b/src/code/z_actor_dlftbls.c @@ -26,34 +26,41 @@ #if OOT_DEBUG #define DEFINE_ACTOR(name, _1, allocType, nameString) \ - { (uintptr_t)_ovl_##name##SegmentRomStart, \ - (uintptr_t)_ovl_##name##SegmentRomEnd, \ - _ovl_##name##SegmentStart, \ - _ovl_##name##SegmentEnd, \ - NULL, \ - &name##_InitVars, \ - nameString, \ - allocType, \ - 0 }, - -#define DEFINE_ACTOR_INTERNAL(name, _1, allocType, nameString) \ - { 0, 0, NULL, NULL, NULL, &name##_InitVars, nameString, allocType, 0 }, + { \ + ROM_FILE(ovl_##name), \ + _ovl_##name##SegmentStart, \ + _ovl_##name##SegmentEnd, \ + NULL, \ + &name##_InitVars, \ + nameString, \ + allocType, \ + 0, \ + }, + +#define DEFINE_ACTOR_INTERNAL(name, _1, allocType, nameString) \ + { \ + ROM_FILE_UNSET, NULL, NULL, NULL, &name##_InitVars, nameString, allocType, 0, \ + }, #else // Actor name is set to NULL in retail builds -#define DEFINE_ACTOR(name, _1, allocType, _3) \ - { (uintptr_t)_ovl_##name##SegmentRomStart, \ - (uintptr_t)_ovl_##name##SegmentRomEnd, \ - _ovl_##name##SegmentStart, \ - _ovl_##name##SegmentEnd, \ - NULL, \ - &name##_InitVars, \ - NULL, \ - allocType, \ - 0 }, - -#define DEFINE_ACTOR_INTERNAL(name, _1, allocType, _3) { 0, 0, NULL, NULL, NULL, &name##_InitVars, NULL, allocType, 0 }, +#define DEFINE_ACTOR(name, _1, allocType, _3) \ + { \ + ROM_FILE(ovl_##name), \ + _ovl_##name##SegmentStart, \ + _ovl_##name##SegmentEnd, \ + NULL, \ + &name##_InitVars, \ + NULL, \ + allocType, \ + 0, \ + }, + +#define DEFINE_ACTOR_INTERNAL(name, _1, allocType, _3) \ + { \ + ROM_FILE_UNSET, NULL, NULL, NULL, &name##_InitVars, NULL, allocType, 0, \ + }, #endif @@ -80,7 +87,7 @@ void ActorOverlayTable_LogPrint(void) { PRINTF("RomStart RomEnd SegStart SegEnd allocp profile segname\n"); for (i = 0, overlayEntry = &gActorOverlayTable[0]; i < (u32)gMaxActorId; i++, overlayEntry++) { - PRINTF("%08x %08x %08x %08x %08x %08x %s\n", overlayEntry->vromStart, overlayEntry->vromEnd, + PRINTF("%08x %08x %08x %08x %08x %08x %s\n", overlayEntry->file.vromStart, overlayEntry->file.vromEnd, overlayEntry->vramStart, overlayEntry->vramEnd, overlayEntry->loadedRamAddr, &overlayEntry->initInfo->id, overlayEntry->name != NULL ? overlayEntry->name : "?"); } diff --git a/src/code/z_effect_soft_sprite.c b/src/code/z_effect_soft_sprite.c index c1ef1bb7a..2fddd8270 100644 --- a/src/code/z_effect_soft_sprite.c +++ b/src/code/z_effect_soft_sprite.c @@ -12,7 +12,8 @@ void EffectSs_InitInfo(PlayState* play, s32 tableSize) { for (i = 0; i < ARRAY_COUNT(gEffectSsOverlayTable); i++) { overlay = &gEffectSsOverlayTable[i]; PRINTF("effect index %3d:size=%6dbyte romsize=%6dbyte\n", i, - (uintptr_t)overlay->vramEnd - (uintptr_t)overlay->vramStart, overlay->vromEnd - overlay->vromStart); + (uintptr_t)overlay->vramEnd - (uintptr_t)overlay->vramStart, + overlay->file.vromEnd - overlay->file.vromStart); } #endif @@ -205,13 +206,13 @@ void EffectSs_Spawn(PlayState* play, s32 type, s32 priority, void* initParams) { return; } - Overlay_Load(overlayEntry->vromStart, overlayEntry->vromEnd, overlayEntry->vramStart, overlayEntry->vramEnd, - overlayEntry->loadedRamAddr); + Overlay_Load(overlayEntry->file.vromStart, overlayEntry->file.vromEnd, overlayEntry->vramStart, + overlayEntry->vramEnd, overlayEntry->loadedRamAddr); PRINTF(VT_FGCOL(GREEN)); - PRINTF("EFFECT SS OVL:SegRom %08x %08x, Seg %08x %08x, RamStart %08x, type: %d\n", overlayEntry->vromStart, - overlayEntry->vromEnd, overlayEntry->vramStart, overlayEntry->vramEnd, overlayEntry->loadedRamAddr, - type); + PRINTF("EFFECT SS OVL:SegRom %08x %08x, Seg %08x %08x, RamStart %08x, type: %d\n", + overlayEntry->file.vromStart, overlayEntry->file.vromEnd, overlayEntry->vramStart, + overlayEntry->vramEnd, overlayEntry->loadedRamAddr, type); PRINTF(VT_RST); } diff --git a/src/code/z_effect_soft_sprite_dlftbls.c b/src/code/z_effect_soft_sprite_dlftbls.c index e8e2f9280..3fb498b33 100644 --- a/src/code/z_effect_soft_sprite_dlftbls.c +++ b/src/code/z_effect_soft_sprite_dlftbls.c @@ -19,18 +19,15 @@ #undef DEFINE_EFFECT_SS_UNSET // Effect SS Overlay Table definition -#define DEFINE_EFFECT_SS(name, _1) \ - { \ - (uintptr_t)_ovl_##name##SegmentRomStart, \ - (uintptr_t)_ovl_##name##SegmentRomEnd, \ - _ovl_##name##SegmentStart, \ - _ovl_##name##SegmentEnd, \ - NULL, \ - &name##_InitVars, \ - 1, \ +#define DEFINE_EFFECT_SS(name, _1) \ + { \ + ROM_FILE(ovl_##name), _ovl_##name##SegmentStart, _ovl_##name##SegmentEnd, NULL, &name##_InitVars, 1, \ }, -#define DEFINE_EFFECT_SS_UNSET(_0) { 0 }, +#define DEFINE_EFFECT_SS_UNSET(_0) \ + { \ + ROM_FILE_UNSET, NULL, NULL, NULL, NULL, 0, \ + }, EffectSsOverlay gEffectSsOverlayTable[] = { #include "tables/effect_ss_table.h" diff --git a/src/code/z_game_dlftbls.c b/src/code/z_game_dlftbls.c index 8e9f00fec..2cad84089 100644 --- a/src/code/z_game_dlftbls.c +++ b/src/code/z_game_dlftbls.c @@ -10,22 +10,26 @@ #undef DEFINE_GAMESTATE_INTERNAL // Gamestate Overlay Table definition -#define DEFINE_GAMESTATE_INTERNAL(typeName, enumName) \ - { NULL, 0, 0, NULL, NULL, NULL, typeName##_Init, typeName##_Destroy, NULL, NULL, 0, sizeof(typeName##State) }, +#define DEFINE_GAMESTATE_INTERNAL(typeName, enumName) \ + { \ + NULL, ROM_FILE_UNSET, NULL, NULL, NULL, typeName##_Init, typeName##_Destroy, NULL, NULL, \ + 0, sizeof(typeName##State), \ + }, #define DEFINE_GAMESTATE(typeName, enumName, name) \ - { NULL, \ - (uintptr_t)_ovl_##name##SegmentRomStart, \ - (uintptr_t)_ovl_##name##SegmentRomEnd, \ - _ovl_##name##SegmentStart, \ - _ovl_##name##SegmentEnd, \ - NULL, \ - typeName##_Init, \ - typeName##_Destroy, \ - NULL, \ - NULL, \ - 0, \ - sizeof(typeName##State) }, + { \ + NULL, \ + ROM_FILE(ovl_##name), \ + _ovl_##name##SegmentStart, \ + _ovl_##name##SegmentEnd, \ + NULL, \ + typeName##_Init, \ + typeName##_Destroy, \ + NULL, \ + NULL, \ + 0, \ + sizeof(typeName##State), \ + }, GameStateOverlay gGameStateOverlayTable[] = { #include "tables/gamestate_table.h" diff --git a/src/code/z_kaleido_manager.c b/src/code/z_kaleido_manager.c index 6792b34f9..954cbcf3f 100644 --- a/src/code/z_kaleido_manager.c +++ b/src/code/z_kaleido_manager.c @@ -1,11 +1,8 @@ #include "global.h" #include "terminal.h" -#define KALEIDO_OVERLAY(name, nameString) \ - { \ - NULL, (uintptr_t)_ovl_##name##SegmentRomStart, (uintptr_t)_ovl_##name##SegmentRomEnd, \ - _ovl_##name##SegmentStart, _ovl_##name##SegmentEnd, 0, nameString, \ - } +#define KALEIDO_OVERLAY(name, nameString) \ + { NULL, ROM_FILE(ovl_##name), _ovl_##name##SegmentStart, _ovl_##name##SegmentEnd, 0, nameString, } KaleidoMgrOverlay gKaleidoMgrOverlayTable[] = { KALEIDO_OVERLAY(kaleido_scope, "kaleido_scope"), @@ -20,7 +17,7 @@ void KaleidoManager_LoadOvl(KaleidoMgrOverlay* ovl) { LOG_UTILS_CHECK_NULL_POINTER("KaleidoArea_allocp", sKaleidoAreaPtr, "../z_kaleido_manager.c", 99); ovl->loadedRamAddr = sKaleidoAreaPtr; - Overlay_Load(ovl->vromStart, ovl->vromEnd, ovl->vramStart, ovl->vramEnd, ovl->loadedRamAddr); + Overlay_Load(ovl->file.vromStart, ovl->file.vromEnd, ovl->vramStart, ovl->vramEnd, ovl->loadedRamAddr); PRINTF(VT_FGCOL(GREEN)); PRINTF("OVL(k):Seg:%08x-%08x Ram:%08x-%08x Off:%08x %s\n", ovl->vramStart, ovl->vramEnd, ovl->loadedRamAddr, diff --git a/src/code/z_map_mark.c b/src/code/z_map_mark.c index 31d9f93ad..f6cc28833 100644 --- a/src/code/z_map_mark.c +++ b/src/code/z_map_mark.c @@ -16,8 +16,7 @@ typedef struct { typedef struct { /* 0x00 */ void* loadedRamAddr; // original name: "allocp" - /* 0x04 */ uintptr_t vromStart; - /* 0x08 */ uintptr_t vromEnd; + /* 0x04 */ RomFile file; /* 0x0C */ void* vramStart; /* 0x10 */ void* vramEnd; /* 0x14 */ void* vramTable; @@ -43,12 +42,7 @@ static MapMarkInfo sMapMarkInfoTable[] = { }; static MapMarkDataOverlay sMapMarkDataOvl = { - NULL, - (uintptr_t)_ovl_map_mark_dataSegmentRomStart, - (uintptr_t)_ovl_map_mark_dataSegmentRomEnd, - _ovl_map_mark_dataSegmentStart, - _ovl_map_mark_dataSegmentEnd, - gMapMarkDataTable, + NULL, ROM_FILE(ovl_map_mark_data), _ovl_map_mark_dataSegmentStart, _ovl_map_mark_dataSegmentEnd, gMapMarkDataTable, }; static MapMarkData** sLoadedMarkDataTable; @@ -60,7 +54,8 @@ void MapMark_Init(PlayState* play) { overlay->loadedRamAddr = GAME_STATE_ALLOC(&play->state, overlaySize, "../z_map_mark.c", 235); LOG_UTILS_CHECK_NULL_POINTER("dlftbl->allocp", overlay->loadedRamAddr, "../z_map_mark.c", 236); - Overlay_Load(overlay->vromStart, overlay->vromEnd, overlay->vramStart, overlay->vramEnd, overlay->loadedRamAddr); + Overlay_Load(overlay->file.vromStart, overlay->file.vromEnd, overlay->vramStart, overlay->vramEnd, + overlay->loadedRamAddr); sLoadedMarkDataTable = gMapMarkDataTable; sLoadedMarkDataTable = |
