Merge branch 'master' into audio_synthesis

This commit is contained in:
zelda2774
2021-08-30 22:04:32 +02:00
35 changed files with 2348 additions and 5532 deletions
+6 -6
View File
@@ -1047,7 +1047,7 @@ UnkHeapEntry* func_800E06CC(u32 size) {
s32 index;
s32 i;
UnkHeapEntry* ret;
AudioStruct0D68* thing;
AudioStruct0D68* item;
UnkPool* unkPool;
u8* start;
u8* end;
@@ -1070,10 +1070,10 @@ UnkHeapEntry* func_800E06CC(u32 size) {
index = -1;
for (i = 0; i < gAudioContext.unk_176C; i++) {
thing = &gAudioContext.unk_0D54[i + 1];
if (thing->unk_10 == 0) {
start = thing->unk_08;
end = thing->unk_08 + thing->sample->size - 1;
item = &gAudioContext.unk_0D68[i];
if (item->isFree == false) {
start = item->ramAddr;
end = item->ramAddr + item->sample->size - 1;
if (end < allocBefore && start < allocBefore) {
continue;
@@ -1083,7 +1083,7 @@ UnkHeapEntry* func_800E06CC(u32 size) {
}
// Overlap
thing->unk_10 = 1;
item->isFree = true;
}
}
+53 -59
View File
@@ -25,9 +25,9 @@ void func_800E2BCC(u32 devAddr, u8* addr, u32 size, s32 handleType);
s32 Audio_DMA(OSIoMesg* mesg, u32 priority, s32 direction, u32 devAddr, void* ramAddr, u32 size, OSMesgQueue* reqQueue,
s32 handleType, const char* dmaFuncType);
void* Audio_AsyncLoadInner(s32 tableType, s32 arg1, s32 arg2, s32 arg3, OSMesgQueue* retQueue);
AsyncLoadReq* func_800E3A44(s32 arg0, s32 devAddr, void* ramAddr, s32 size, s32 arg4, s32 nChunks,
AsyncLoadReq* func_800E3A44(s32 arg0, u32 devAddr, void* ramAddr, s32 size, s32 arg4, s32 nChunks,
OSMesgQueue* retQueue, s32 retMsg);
AsyncLoadReq* Audio_InitAsyncReq(s32 devAddr, void* ramAddr, s32 size, s32 arg3, s32 nChunks, OSMesgQueue* retQueue,
AsyncLoadReq* Audio_InitAsyncReq(u32 devAddr, void* ramAddr, u32 size, s32 arg3, s32 nChunks, OSMesgQueue* retQueue,
s32 retMsg);
void func_800E3FB4(AsyncLoadReq* req, u32 size);
void func_800E4044(u32 devAddr, void* ramAddr, u32 size, s16 arg3);
@@ -649,18 +649,18 @@ void* Audio_GetLoadTable(s32 tableType) {
#ifdef NON_MATCHING
void func_800E283C(s32 arg0, unk_ldr* arg1, RelocInfo* arg2) {
s32 sp50;
s32 temp_v1_3;
s32 temp_s5;
s32 temp_a3;
void* reloc;
s32 i;
Drum* drum;
AudioBankSound* sfx;
Instrument* inst;
Instrument** end;
Instrument** instIt;
Drum** drums;
s32 temp_a3;
s32 sp50;
s32 temp_s5;
s32 i;
temp_a3 = gAudioContext.ctlEntries[arg0].numDrums;
sp50 = gAudioContext.ctlEntries[arg0].numInstruments;
@@ -809,12 +809,12 @@ void func_800E2CC0(u32 tableType, u32 bankId) {
}
void* Audio_AsyncLoadInner(s32 tableType, s32 arg1, s32 arg2, s32 arg3, OSMesgQueue* retQueue) {
u32 sp54;
u32 size;
AudioTable* sp50;
void* sp4C;
s32 sp48;
s8 temp_a1;
u32 sp40;
u32 devAddr;
s32 sp3C;
u32 temp_v0;
u32 sp34;
@@ -844,35 +844,35 @@ void* Audio_AsyncLoadInner(s32 tableType, s32 arg1, s32 arg2, s32 arg3, OSMesgQu
osSendMesg(retQueue, arg3 << 0x18, 0);
} else {
sp50 = Audio_GetLoadTable(tableType);
sp54 = sp50->entries[sp34].size;
sp54 = ALIGN16(sp54);
size = sp50->entries[sp34].size;
size = ALIGN16(size);
sp48 = sp50->entries[arg1].unk_08;
temp_a1 = sp50->entries[arg1].unk_09;
sp40 = sp50->entries[sp34].romAddr;
devAddr = sp50->entries[sp34].romAddr;
sp3C = 2;
switch (temp_a1) {
case 0:
sp4C = func_800E0540(tableType, sp34, sp54);
sp4C = func_800E0540(tableType, sp34, size);
if (sp4C == NULL) {
return sp4C;
}
sp3C = 5;
break;
case 1:
sp4C = Audio_AllocBankOrSeq(tableType, sp54, 1, sp34);
sp4C = Audio_AllocBankOrSeq(tableType, size, 1, sp34);
if (sp4C == NULL) {
return sp4C;
}
break;
case 2:
sp4C = Audio_AllocBankOrSeq(tableType, sp54, 0, sp34);
sp4C = Audio_AllocBankOrSeq(tableType, size, 0, sp34);
if (sp4C == NULL) {
return sp4C;
}
break;
case 3:
case 4:
sp4C = Audio_AllocBankOrSeq(tableType, sp54, 2, sp34);
sp4C = Audio_AllocBankOrSeq(tableType, size, 2, sp34);
if (sp4C == NULL) {
return sp4C;
}
@@ -880,10 +880,10 @@ void* Audio_AsyncLoadInner(s32 tableType, s32 arg1, s32 arg2, s32 arg3, OSMesgQu
}
if (sp48 == 1) {
func_800E3A44((s16)sp50->header.unk_02, sp40, sp4C, sp54, sp48, arg2, retQueue,
func_800E3A44((s16)sp50->header.unk_02, devAddr, sp4C, size, sp48, arg2, retQueue,
(arg3 << 0x18) | (tableType << 0x10) | (arg1 << 8) | sp3C);
} else {
Audio_InitAsyncReq(sp40, sp4C, sp54, sp48, arg2, retQueue, MK_ASYNC_MSG(arg3, tableType, sp34, sp3C));
Audio_InitAsyncReq(devAddr, sp4C, size, sp48, arg2, retQueue, MK_ASYNC_MSG(arg3, tableType, sp34, sp3C));
}
sp3C = 1;
}
@@ -1238,7 +1238,7 @@ void Audio_AsyncLoadReqInit(void) {
}
}
AsyncLoadReq* func_800E3A44(s32 arg0, s32 devAddr, void* ramAddr, s32 size, s32 arg4, s32 nChunks,
AsyncLoadReq* func_800E3A44(s32 arg0, u32 devAddr, void* ramAddr, s32 size, s32 arg4, s32 nChunks,
OSMesgQueue* retQueue, s32 retMsg) {
AsyncLoadReq* loadReq;
@@ -1253,7 +1253,7 @@ AsyncLoadReq* func_800E3A44(s32 arg0, s32 devAddr, void* ramAddr, s32 size, s32
return loadReq;
}
AsyncLoadReq* Audio_InitAsyncReq(s32 devAddr, void* ramAddr, s32 size, s32 arg3, s32 nChunks, OSMesgQueue* retQueue,
AsyncLoadReq* Audio_InitAsyncReq(u32 devAddr, void* ramAddr, u32 size, s32 arg3, s32 nChunks, OSMesgQueue* retQueue,
s32 retMsg) {
AsyncLoadReq* loadReq;
s32 i;
@@ -1281,7 +1281,7 @@ AsyncLoadReq* Audio_InitAsyncReq(s32 devAddr, void* ramAddr, s32 size, s32 arg3,
} else if (nChunks == 1) {
loadReq->chunkSize = size;
} else {
loadReq->chunkSize = ((size / nChunks) + 0xFF) & ~0xFF;
loadReq->chunkSize = (((s32)size / nChunks) + 0xFF) & ~0xFF;
if (loadReq->chunkSize < 0x100) {
loadReq->chunkSize = 0x100;
}
@@ -1454,68 +1454,62 @@ void Audio_SampleReloc(AudioBankSound* sound, u32 arg1, RelocInfo* arg2) {
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_load/func_800E4198.s")
#ifdef NON_MATCHING
s32 func_800E4590(s32 resetStatus) {
AudioBankSample* sample;
AudioStruct0D68* item;
u32 sp4C;
AudioBankSample* temp_v0_3;
AudioStruct0D68* temp_v1_2;
s32 temp_a0_2;
s32 temp_v0_2;
u32 temp_a0;
u32 temp_a0_3;
u32 temp_a2_2;
u32 temp_t0;
u8* temp_s0;
AudioStruct0D68* temp_a2;
AudioBankSample* temp_v0;
AudioStruct0D68* temp_v1;
u32 key;
u32 unk;
s32 pad;
if (gAudioContext.unk_176C > 0) {
if (resetStatus != 0) {
osRecvMesg(&gAudioContext.unk_1E78, &sp4C, 0);
osRecvMesg(&gAudioContext.unk_1E78, (OSMesg*)&sp4C, OS_MESG_NOBLOCK);
gAudioContext.unk_176C = 0;
return 0;
}
if (osRecvMesg(&gAudioContext.unk_1E78, &sp4C, 0) == -1) {
if (osRecvMesg(&gAudioContext.unk_1E78, (OSMesg*)&sp4C, OS_MESG_NOBLOCK) == -1) {
return 0;
}
sp4C >>= 0x18;
sp4C >>= 24;
item = &gAudioContext.unk_0D68[sp4C];
if (gAudioContext.unk_0D54[sp4C + 1].unk_10 == 0) {
if ((temp_v0_3->sampleAddr + temp_v0_3->size + temp_v0_3->medium) ==
gAudioContext.unk_0D54[sp4C + 1].unk_00) {
temp_v0_3->medium = 0;
temp_v0_3->sampleAddr = temp_v0_3->loop;
if (item->isFree == false) {
sample = item->sample;
key = (u32)sample->sampleAddr + sample->size + sample->medium;
if (key == item->endAndMediumKey) {
sample->sampleAddr = item->ramAddr;
sample->medium = 0;
}
gAudioContext.unk_0D54[sp4C + 1].unk_10 = 1;
item->isFree = true;
}
while (gAudioContext.unk_176C > 0) {
if (gAudioContext.unk_0D54[gAudioContext.unk_176C].unk_10 == 1) {
for (;;) {
if (gAudioContext.unk_176C <= 0) {
break;
}
item = &gAudioContext.unk_0D68[gAudioContext.unk_176C - 1];
if (item->isFree == true) {
gAudioContext.unk_176C--;
continue;
}
sample = item->sample;
unk = (sample->size >> 12) + 1;
key = (u32)sample->sampleAddr + sample->size + sample->medium;
if (key != item->endAndMediumKey) {
item->isFree = true;
gAudioContext.unk_176C--;
} else {
temp_v0_3 = gAudioContext.unk_0D54[gAudioContext.unk_176C].sample;
if (&temp_v0_3->sampleAddr[temp_v0_3->size + temp_v0_3->medium] !=
gAudioContext.unk_0D54[gAudioContext.unk_176C].unk_00) {
gAudioContext.unk_0D54[gAudioContext.unk_176C].unk_10 = 1;
gAudioContext.unk_176C--;
continue;
} else {
Audio_InitAsyncReq(temp_v0_3->sampleAddr, gAudioContext.unk_0D54[gAudioContext.unk_176C].unk_08,
temp_v0_3->size, temp_v0_3->medium, (temp_a2_2 >> 0xC) + 1,
&gAudioContext.unk_1E78, gAudioContext.unk_0D54[gAudioContext.unk_176C].pad);
break;
}
Audio_InitAsyncReq((u32)sample->sampleAddr, item->ramAddr, sample->size, sample->medium, unk,
&gAudioContext.unk_1E78, item->encodedInfo);
break;
}
}
}
return 1;
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/audio_load/func_800E4590.s")
#endif
s32 func_800E4744(AudioBankSample* sample, s32 sampleCnt, AudioBankSample** sampleList) {
s32 i;
+40 -481
View File
@@ -1,492 +1,51 @@
#include "global.h"
#include "initvars.h"
#define ACTOR_OVERLAY(name, allocType) \
{ \
(u32) _ovl_##name##SegmentRomStart, (u32)_ovl_##name##SegmentRomEnd, _ovl_##name##SegmentStart, \
_ovl_##name##SegmentEnd, NULL, &name##_InitVars, #name, allocType, 0 \
}
// Linker symbol declarations (used in the table below)
#define DEFINE_ACTOR(name, _1, _2) DECLARE_OVERLAY_SEGMENT(name)
#define DEFINE_ACTOR_INTERNAL(_0, _1, _2)
#define DEFINE_ACTOR_UNSET(_0)
#define ACTOR_OVERLAY_INTERNAL(name, allocType) \
{ 0, 0, NULL, NULL, NULL, &name##_InitVars, #name, allocType, 0 }
#include "tables/actor_table.h"
#define ACTOR_OVERLAY_UNSET \
{ 0 }
#undef DEFINE_ACTOR
#undef DEFINE_ACTOR_INTERNAL
#undef DEFINE_ACTOR_UNSET
// Init Vars declarations (also used in the table below)
#define DEFINE_ACTOR(name, _1, _2) extern ActorInit name##_InitVars;
#define DEFINE_ACTOR_INTERNAL(name, _1, _2) extern ActorInit name##_InitVars;
#define DEFINE_ACTOR_UNSET(_0)
#include "tables/actor_table.h"
#undef DEFINE_ACTOR
#undef DEFINE_ACTOR_INTERNAL
#undef DEFINE_ACTOR_UNSET
// Actor Overlay Table definition
#define DEFINE_ACTOR(name, _1, allocType) \
{ (u32)_ovl_##name##SegmentRomStart, \
(u32)_ovl_##name##SegmentRomEnd, \
_ovl_##name##SegmentStart, \
_ovl_##name##SegmentEnd, \
NULL, \
&name##_InitVars, \
#name, \
allocType, \
0 },
#define DEFINE_ACTOR_INTERNAL(name, _1, allocType) { 0, 0, NULL, NULL, NULL, &name##_InitVars, #name, allocType, 0 },
#define DEFINE_ACTOR_UNSET(_0) { 0 },
ActorOverlay gActorOverlayTable[] = {
ACTOR_OVERLAY_INTERNAL(Player, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Test, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_GirlA, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Part, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Light, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Door, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_Box, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Dy_Yoseizo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Firewall, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Poh, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Okuta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ydan_Sp, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bom, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_Wallmas, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dodongo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Firefly, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_INTERNAL(En_Item00, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Arrow, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Elf, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Niw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Tite, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Reeba, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Peehat, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Butte, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Insect, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fish, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Holl, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_Scene_Change, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zf, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Hata, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Dodongo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Goma, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zl1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Viewer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Goma, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Pushbox, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bubble, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Shutter, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_Dodojr, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bdfire, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Boom, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_Torch2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bili, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tp, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_St, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_INTERNAL(En_A_Obj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Eiyer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_River_Sound, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse_Normal, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ossan, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Treemouth, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Dodoago, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Dalm, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Hrock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse_Ganon, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Rock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Rsekizou, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Sekizou, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Sima, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Syoku, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Xc, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Curtain, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot00_Hanebasi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Mb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bombf, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zl2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Fslift, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_OE2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ydan_Hasi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ydan_Maruta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Ganondrof, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Am, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dekubaba, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_M_Fire1, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_M_Thunder, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(Bg_Ddan_Jd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Breakwall, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Jj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse_Zelda, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ddan_Kd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Warp1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Syokudai, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Item_B_Heart, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dekunuts, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Menkuri_Kaiten, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Menkuri_Eye, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Vali, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mizu_Movebg, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mizu_Water, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Arms_Hook, ALLOCTYPE_PERMANENT),
ACTOR_OVERLAY(En_fHG, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Hineri, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Toki_Hikari, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Yukabyun, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Toki_Swd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fhg_Fire, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mjin, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Kousi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Toki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Hamstep, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bird, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Wood02, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Lightbox, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Pu_box, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Trap, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Arow_Trap, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Vase, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Ta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tk, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Bigst, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Elevator, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Kaitenkabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Rakkatenjo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Vm, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Effect, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Kankyo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Hidan_Fwbig, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Floormas, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Heishi1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Rd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Po_Sisters, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Heavy_Block, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Po_Event, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Mure, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Sw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Fd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Object_Kankyo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Du, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse_Link_Child, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Ana, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot02_Objects, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Magic_Wind, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Magic_Fire, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Ru1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Fd2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fd_Fire, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dh, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dha, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Rl, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Encount1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Du, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Im, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Tre_Lgt, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Vb_Sima, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Vb_Ball, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Megane, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_MeganeBG, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Ship, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Sgami, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Heishi2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Encount2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fire_Rock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Brob, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Mir_Ray, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot09_Obj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot18_Obj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Va, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Tubo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Trap, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Huta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Zou, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot17_Funen, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Syateki_Itm, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Syateki_Man, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tana, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Nb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Mo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Sb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bigokuta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Karebaba, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Bdan_Objects, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Sa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Go, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_In, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tr, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot16_Bombstone, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Bg_Hidan_Kowarerukabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Bombwall, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot08_Iceblock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ru2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Dekujr, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mizu_Uzu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot06_Objects, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ice_Objects, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Water, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Ma2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bom_Chu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Horse_Game_Check, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Tw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Rr, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ba, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bx, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Anubice, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Anubice_Fire, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Hashigo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Hashira4, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mori_Idomizu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot16_Doughnut, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Bdan_Switch, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ma1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Ganon, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Sst, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Ny, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fr, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Item_Shield, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ice_Shelter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ice_Hono, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Item_Ocarina, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Magic_Dark, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Demo_6K, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Anubice_Tag, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Haka_Gate, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot15_Saku, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Goroiwa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Zurerukabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Bg_Jya_Cobra, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Kanaami, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Fishing, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Oshihiki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gate_Shutter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Eff_Dust, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot01_Fusya, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot01_Idohashira, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot01_Idomizu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Po_Syokudai, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ganon_Otyuka, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot15_Rrbox, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Umajump, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Arrow_Fire, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Arrow_Ice, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Arrow_Light, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Item_Etcetera, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Kibako, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Tsubo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Wonder_Item, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ik, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Ik, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Skj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Skjneedle, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_G_Switch, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Ext, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Shd, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dns, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Elf_Msg, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Honotrap, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tubo_Trap, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Ice_Poly, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot03_Taki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot07_Taki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fz, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Po_Relay, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Relay_Objects, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Diving_Game, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kusa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Bean, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Bombiwa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Obj_Switch, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Elevator, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Lift, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Hsblock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Okarina_Tag, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Yabusame_Mark, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Goroiwa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ex_Ruppy, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Toryo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Daiku, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Nwc, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Blkobj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Item_Inbox, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ge1, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Blockstop, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Sda, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Clear_Tag, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Niw_Lady, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Gm, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ms, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Hs, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ingate, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kanban, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Heishi3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Syateki_Niw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Attack_Niw, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot01_Idosoko, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Sa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Wonder_Talk, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gjyo_Bridge, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ds, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Mk, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bom_Bowl_Man, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Bom_Bowl_Pit, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Owl, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ishi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Hana, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Lightswitch, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Mure2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Go, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Fu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Changer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Megami, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Lift, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Bigmirror, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Bombchuiwa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Amishutter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Bombiwa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot18_Basket, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Ganon_Organ, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Siofuki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Stream, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Mm, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ko, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kz, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Weather_Tag, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Sst_Floor, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ani, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ex_Item, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Ironobj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Js, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Jsjutan, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Cs, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Md, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Hy, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ganon_Mant, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Okarina_Effect, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Mag, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Gerudo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Elf_Msg2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Gt, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Po_Field, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Efc_Erupc, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Zg, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Heishi4, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zl3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Boss_Ganon2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kakasi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Takara_Man, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Makeoshihiki, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Oceff_Spot, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(End_Title, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(En_Torch, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Ec, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Shot_Sun, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dy_Extra, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Wonder_Talk2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ge2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Roomtimer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ssh, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Sth, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Oceff_Wipe, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Oceff_Storm, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(En_Weiyer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot05_Soko, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_1flift, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Haheniron, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot12_Gate, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot12_Saku, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Hintnuts, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Nutsball, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot00_Break, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Shopnuts, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_It, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_GeldB, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Oceff_Wipe2, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(Oceff_Wipe3, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(En_Niw_Girl, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dog, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Si, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot01_Objects2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Comb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot11_Bakudankabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Kibako2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dnt_Demo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dnt_Jiji, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Dnt_Nomal, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Guest, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Bom_Guard, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Hs2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Kekkai, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot08_Bakudankabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot17_Bakudankabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY_UNSET,
ACTOR_OVERLAY(Obj_Mure3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Tg, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Mu, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Go2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Wf, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Skb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Gj, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Demo_Geff, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gnd_Firemeiro, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gnd_Darkmeiro, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gnd_Soulmeiro, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gnd_Nisekabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Gnd_Iceblock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Gb, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Gs, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mizu_Bwall, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Mizu_Shutter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Daiku_Kakariko, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Bowl_Wall, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Wall_Tubo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Po_Desert, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Crow, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Door_Killer, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot11_Oasis, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot18_Futa, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Spot18_Shutter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ma3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Cow, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ice_Turara, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Ice_Shutter, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kakasi2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Kakasi3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Oceff_Wipe4, ALLOCTYPE_ABSOLUTE),
ACTOR_OVERLAY(En_Eg, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Menkuri_Nisekabe, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zo, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Makekinsuta, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Ge3, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Timeblock, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Hamishi, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Zl4, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(En_Mm2, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Bg_Jya_Block, ALLOCTYPE_NORMAL),
ACTOR_OVERLAY(Obj_Warp2block, ALLOCTYPE_NORMAL),
#include "tables/actor_table.h"
};
#undef DEFINE_ACTOR
#undef DEFINE_ACTOR_INTERNAL
#undef DEFINE_ACTOR_UNSET
s32 gMaxActorId = 0;
static FaultClient sFaultClient;
+33 -47
View File
@@ -1,54 +1,40 @@
#include "global.h"
#include "initvars.h"
#define EFFECT_SS_OVERLAY(name) \
{ \
(u32) _ovl_##name##SegmentRomStart, (u32)_ovl_##name##SegmentRomEnd, _ovl_##name##SegmentStart, \
_ovl_##name##SegmentEnd, NULL, &name##_InitVars, 1, \
}
// Linker symbol declarations (used in the table below)
#define DEFINE_EFFECT_SS(name, _1) DECLARE_OVERLAY_SEGMENT(name)
#define DEFINE_EFFECT_SS_UNSET(_0)
#define EFFECT_SS_OVERLAY_INTERNAL(name) \
{ 0, 0, NULL, NULL, NULL, &name##_InitVars, 1 }
#include "tables/effect_ss_table.h"
#define EFFECT_SS_OVERLAY_UNSET \
{ 0 }
#undef DEFINE_EFFECT_SS
#undef DEFINE_EFFECT_SS_UNSET
// Init Vars declarations (also used in the table below)
#define DEFINE_EFFECT_SS(name, _1) extern EffectSsInit name##_InitVars;
#define DEFINE_EFFECT_SS_UNSET(_0)
#include "tables/effect_ss_table.h"
#undef DEFINE_EFFECT_SS
#undef DEFINE_EFFECT_SS_UNSET
// Effect SS Overlay Table definition
#define DEFINE_EFFECT_SS(name, _1) \
{ \
(u32)_ovl_##name##SegmentRomStart, \
(u32)_ovl_##name##SegmentRomEnd, \
_ovl_##name##SegmentStart, \
_ovl_##name##SegmentEnd, \
NULL, \
&name##_InitVars, \
1, \
},
#define DEFINE_EFFECT_SS_UNSET(_0) { 0 },
EffectSsOverlay gEffectSsOverlayTable[] = {
EFFECT_SS_OVERLAY(Effect_Ss_Dust),
EFFECT_SS_OVERLAY(Effect_Ss_KiraKira),
EFFECT_SS_OVERLAY(Effect_Ss_Bomb),
EFFECT_SS_OVERLAY(Effect_Ss_Bomb2),
EFFECT_SS_OVERLAY(Effect_Ss_Blast),
EFFECT_SS_OVERLAY(Effect_Ss_G_Spk),
EFFECT_SS_OVERLAY(Effect_Ss_D_Fire),
EFFECT_SS_OVERLAY(Effect_Ss_Bubble),
EFFECT_SS_OVERLAY_UNSET,
EFFECT_SS_OVERLAY(Effect_Ss_G_Ripple),
EFFECT_SS_OVERLAY(Effect_Ss_G_Splash),
EFFECT_SS_OVERLAY(Effect_Ss_G_Magma),
EFFECT_SS_OVERLAY(Effect_Ss_G_Fire),
EFFECT_SS_OVERLAY(Effect_Ss_Lightning),
EFFECT_SS_OVERLAY(Effect_Ss_Dt_Bubble),
EFFECT_SS_OVERLAY(Effect_Ss_Hahen),
EFFECT_SS_OVERLAY(Effect_Ss_Stick),
EFFECT_SS_OVERLAY(Effect_Ss_Sibuki),
EFFECT_SS_OVERLAY(Effect_Ss_Sibuki2),
EFFECT_SS_OVERLAY(Effect_Ss_G_Magma2),
EFFECT_SS_OVERLAY(Effect_Ss_Stone1),
EFFECT_SS_OVERLAY(Effect_Ss_HitMark),
EFFECT_SS_OVERLAY(Effect_Ss_Fhg_Flash),
EFFECT_SS_OVERLAY(Effect_Ss_K_Fire),
EFFECT_SS_OVERLAY(Effect_Ss_Solder_Srch_Ball),
EFFECT_SS_OVERLAY(Effect_Ss_Kakera),
EFFECT_SS_OVERLAY(Effect_Ss_Ice_Piece),
EFFECT_SS_OVERLAY(Effect_Ss_En_Ice),
EFFECT_SS_OVERLAY(Effect_Ss_Fire_Tail),
EFFECT_SS_OVERLAY(Effect_Ss_En_Fire),
EFFECT_SS_OVERLAY(Effect_Ss_Extra),
EFFECT_SS_OVERLAY(Effect_Ss_Fcircle),
EFFECT_SS_OVERLAY(Effect_Ss_Dead_Db),
EFFECT_SS_OVERLAY(Effect_Ss_Dead_Dd),
EFFECT_SS_OVERLAY(Effect_Ss_Dead_Ds),
EFFECT_SS_OVERLAY(Effect_Ss_Dead_Sound),
EFFECT_SS_OVERLAY(Effect_Ss_Ice_Smoke),
#include "tables/effect_ss_table.h"
};
#undef DEFINE_EFFECT_SS
#undef DEFINE_EFFECT_SS_UNSET
+23 -404
View File
@@ -60,7 +60,7 @@ void Object_InitBank(GlobalContext* globalCtx, ObjectContext* objectCtx) {
objectCtx->mainKeepIndex = objectCtx->subKeepIndex = 0;
for (i = 0; i < OBJECT_EXCHANGE_BANK_MAX; i++) {
objectCtx->status[i].id = 0;
objectCtx->status[i].id = OBJECT_INVALID;
}
osSyncPrintf(VT_FGCOL(GREEN));
@@ -276,7 +276,7 @@ void func_8009899C(GlobalContext* globalCtx, SceneCmd* cmd) {
if (status->id != *objectEntry) {
status2 = &globalCtx->objectCtx.status[i];
for (j = i; j < globalCtx->objectCtx.num; j++) {
status2->id = 0;
status2->id = OBJECT_INVALID;
status2++;
}
globalCtx->objectCtx.num = i;
@@ -519,407 +519,26 @@ s16 gLinkObjectIds[] = { OBJECT_LINK_BOY, OBJECT_LINK_CHILD };
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_UNSET(_0)
#include "tables/object_table.h"
#undef DEFINE_OBJECT
#undef DEFINE_OBJECT_NULL
#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 },
RomFile gObjectTable[] = {
ROM_FILE_UNSET,
ROM_FILE(gameplay_keep),
ROM_FILE(gameplay_field_keep),
ROM_FILE(gameplay_dangeon_keep),
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE(object_human),
ROM_FILE(object_okuta),
ROM_FILE(object_crow),
ROM_FILE(object_poh),
ROM_FILE(object_dy_obj),
ROM_FILE(object_wallmaster),
ROM_FILE(object_dodongo),
ROM_FILE(object_firefly),
ROM_FILE(object_box),
ROM_FILE(object_fire),
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE(object_bubble),
ROM_FILE(object_niw),
ROM_FILE(object_link_boy),
ROM_FILE(object_link_child),
ROM_FILE(object_tite),
ROM_FILE(object_reeba),
ROM_FILE(object_peehat),
ROM_FILE(object_kingdodongo),
ROM_FILE(object_horse),
ROM_FILE(object_zf),
ROM_FILE(object_goma),
ROM_FILE(object_zl1),
ROM_FILE(object_gol),
ROM_FILE(object_dodojr),
ROM_FILE(object_torch2),
ROM_FILE(object_bl),
ROM_FILE(object_tp),
ROM_FILE(object_oA1),
ROM_FILE(object_st),
ROM_FILE(object_bw),
ROM_FILE(object_ei),
ROM_FILE(object_horse_normal),
ROM_FILE(object_oB1),
ROM_FILE(object_o_anime),
ROM_FILE(object_spot04_objects),
ROM_FILE(object_ddan_objects),
ROM_FILE(object_hidan_objects),
ROM_FILE(object_horse_ganon),
ROM_FILE(object_oA2),
ROM_FILE(object_spot00_objects),
ROM_FILE(object_mb),
ROM_FILE(object_bombf),
ROM_FILE(object_sk2),
ROM_FILE(object_oE1),
ROM_FILE(object_oE_anime),
ROM_FILE(object_oE2),
ROM_FILE(object_ydan_objects),
ROM_FILE(object_gnd),
ROM_FILE(object_am),
ROM_FILE(object_dekubaba),
ROM_FILE_UNSET,
ROM_FILE(object_oA3),
ROM_FILE(object_oA4),
ROM_FILE(object_oA5),
ROM_FILE(object_oA6),
ROM_FILE(object_oA7),
ROM_FILE(object_jj),
ROM_FILE(object_oA8),
ROM_FILE(object_oA9),
ROM_FILE(object_oB2),
ROM_FILE(object_oB3),
ROM_FILE(object_oB4),
ROM_FILE(object_horse_zelda),
ROM_FILE(object_opening_demo1),
ROM_FILE(object_warp1),
ROM_FILE(object_b_heart),
ROM_FILE(object_dekunuts),
ROM_FILE(object_oE3),
ROM_FILE(object_oE4),
ROM_FILE(object_menkuri_objects),
ROM_FILE(object_oE5),
ROM_FILE(object_oE6),
ROM_FILE(object_oE7),
ROM_FILE(object_oE8),
ROM_FILE(object_oE9),
ROM_FILE(object_oE10),
ROM_FILE(object_oE11),
ROM_FILE(object_oE12),
ROM_FILE(object_vali),
ROM_FILE(object_oA10),
ROM_FILE(object_oA11),
ROM_FILE(object_mizu_objects),
ROM_FILE(object_fhg),
ROM_FILE(object_ossan),
ROM_FILE(object_mori_hineri1),
ROM_FILE(object_Bb),
ROM_FILE(object_toki_objects),
ROM_FILE(object_yukabyun),
ROM_FILE(object_zl2),
ROM_FILE(object_mjin),
ROM_FILE(object_mjin_flash),
ROM_FILE(object_mjin_dark),
ROM_FILE(object_mjin_flame),
ROM_FILE(object_mjin_ice),
ROM_FILE(object_mjin_soul),
ROM_FILE(object_mjin_wind),
ROM_FILE(object_mjin_oka),
ROM_FILE(object_haka_objects),
ROM_FILE(object_spot06_objects),
ROM_FILE(object_ice_objects),
ROM_FILE(object_relay_objects),
ROM_FILE(object_po_field),
ROM_FILE(object_po_composer),
ROM_FILE(object_mori_hineri1a),
ROM_FILE(object_mori_hineri2),
ROM_FILE(object_mori_hineri2a),
ROM_FILE(object_mori_objects),
ROM_FILE(object_mori_tex),
ROM_FILE(object_spot08_obj),
ROM_FILE(object_warp2),
ROM_FILE(object_hata),
ROM_FILE(object_bird),
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE(object_wood02),
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE(object_lightbox),
ROM_FILE(object_pu_box),
ROM_FILE_UNSET,
ROM_FILE_UNSET,
ROM_FILE(object_trap),
ROM_FILE(object_vase),
ROM_FILE(object_im),
ROM_FILE(object_ta),
ROM_FILE(object_tk),
ROM_FILE(object_xc),
ROM_FILE(object_vm),
ROM_FILE(object_bv),
ROM_FILE(object_hakach_objects),
ROM_FILE(object_efc_crystal_light),
ROM_FILE(object_efc_fire_ball),
ROM_FILE(object_efc_flash),
ROM_FILE(object_efc_lgt_shower),
ROM_FILE(object_efc_star_field),
ROM_FILE(object_god_lgt),
ROM_FILE(object_light_ring),
ROM_FILE(object_triforce_spot),
ROM_FILE(object_bdan_objects),
ROM_FILE(object_sd),
ROM_FILE(object_rd),
ROM_FILE(object_po_sisters),
ROM_FILE(object_heavy_object),
ROM_FILE(object_gndd),
ROM_FILE(object_fd),
ROM_FILE(object_du),
ROM_FILE(object_fw),
ROM_FILE(object_medal),
ROM_FILE(object_horse_link_child),
ROM_FILE(object_spot02_objects),
ROM_FILE(object_haka),
ROM_FILE(object_ru1),
ROM_FILE(object_syokudai),
ROM_FILE(object_fd2),
ROM_FILE(object_dh),
ROM_FILE(object_rl),
ROM_FILE(object_efc_tw),
ROM_FILE(object_demo_tre_lgt),
ROM_FILE(object_gi_key),
ROM_FILE(object_mir_ray),
ROM_FILE(object_brob),
ROM_FILE(object_gi_jewel),
ROM_FILE(object_spot09_obj),
ROM_FILE(object_spot18_obj),
ROM_FILE(object_bdoor),
ROM_FILE(object_spot17_obj),
ROM_FILE(object_shop_dungen),
ROM_FILE(object_nb),
ROM_FILE(object_mo),
ROM_FILE(object_sb),
ROM_FILE(object_gi_melody),
ROM_FILE(object_gi_heart),
ROM_FILE(object_gi_compass),
ROM_FILE(object_gi_bosskey),
ROM_FILE(object_gi_medal),
ROM_FILE(object_gi_nuts),
ROM_FILE(object_sa),
ROM_FILE(object_gi_hearts),
ROM_FILE(object_gi_arrowcase),
ROM_FILE(object_gi_bombpouch),
ROM_FILE(object_in),
ROM_FILE(object_tr),
ROM_FILE(object_spot16_obj),
ROM_FILE(object_oE1s),
ROM_FILE(object_oE4s),
ROM_FILE(object_os_anime),
ROM_FILE(object_gi_bottle),
ROM_FILE(object_gi_stick),
ROM_FILE(object_gi_map),
ROM_FILE(object_oF1d_map),
ROM_FILE(object_ru2),
ROM_FILE(object_gi_shield_1),
ROM_FILE(object_dekujr),
ROM_FILE(object_gi_magicpot),
ROM_FILE(object_gi_bomb_1),
ROM_FILE(object_oF1s),
ROM_FILE(object_ma2),
ROM_FILE(object_gi_purse),
ROM_FILE(object_hni),
ROM_FILE(object_tw),
ROM_FILE(object_rr),
ROM_FILE(object_bxa),
ROM_FILE(object_anubice),
ROM_FILE(object_gi_gerudo),
ROM_FILE(object_gi_arrow),
ROM_FILE(object_gi_bomb_2),
ROM_FILE(object_gi_egg),
ROM_FILE(object_gi_scale),
ROM_FILE(object_gi_shield_2),
ROM_FILE(object_gi_hookshot),
ROM_FILE(object_gi_ocarina),
ROM_FILE(object_gi_milk),
ROM_FILE(object_ma1),
ROM_FILE(object_ganon),
ROM_FILE(object_sst),
ROM_FILE_EMPTY(object_ny), // unused duplicate with size 0
ROM_FILE_UNSET,
ROM_FILE(object_ny),
ROM_FILE(object_fr),
ROM_FILE(object_gi_pachinko),
ROM_FILE(object_gi_boomerang),
ROM_FILE(object_gi_bow),
ROM_FILE(object_gi_glasses),
ROM_FILE(object_gi_liquid),
ROM_FILE(object_ani),
ROM_FILE(object_demo_6k),
ROM_FILE(object_gi_shield_3),
ROM_FILE(object_gi_letter),
ROM_FILE(object_spot15_obj),
ROM_FILE(object_jya_obj),
ROM_FILE(object_gi_clothes),
ROM_FILE(object_gi_bean),
ROM_FILE(object_gi_fish),
ROM_FILE(object_gi_saw),
ROM_FILE(object_gi_hammer),
ROM_FILE(object_gi_grass),
ROM_FILE(object_gi_longsword),
ROM_FILE(object_spot01_objects),
ROM_FILE_EMPTY(object_md), // unused duplicate with size 0
ROM_FILE(object_md),
ROM_FILE(object_km1),
ROM_FILE(object_kw1),
ROM_FILE(object_zo),
ROM_FILE(object_kz),
ROM_FILE(object_umajump),
ROM_FILE(object_masterkokiri),
ROM_FILE(object_masterkokirihead),
ROM_FILE(object_mastergolon),
ROM_FILE(object_masterzoora),
ROM_FILE(object_aob),
ROM_FILE(object_ik),
ROM_FILE(object_ahg),
ROM_FILE(object_cne),
ROM_FILE(object_gi_niwatori),
ROM_FILE(object_skj),
ROM_FILE(object_gi_bottle_letter),
ROM_FILE(object_bji),
ROM_FILE(object_bba),
ROM_FILE(object_gi_ocarina_0),
ROM_FILE(object_ds),
ROM_FILE(object_ane),
ROM_FILE(object_boj),
ROM_FILE(object_spot03_object),
ROM_FILE(object_spot07_object),
ROM_FILE(object_fz),
ROM_FILE(object_bob),
ROM_FILE(object_ge1),
ROM_FILE(object_yabusame_point),
ROM_FILE(object_gi_boots_2),
ROM_FILE(object_gi_seed),
ROM_FILE(object_gnd_magic),
ROM_FILE(object_d_elevator),
ROM_FILE(object_d_hsblock),
ROM_FILE(object_d_lift),
ROM_FILE(object_mamenoki),
ROM_FILE(object_goroiwa),
ROM_FILE_UNSET,
ROM_FILE(object_toryo),
ROM_FILE(object_daiku),
ROM_FILE_UNSET,
ROM_FILE(object_nwc),
ROM_FILE(object_blkobj),
ROM_FILE(object_gm),
ROM_FILE(object_ms),
ROM_FILE(object_hs),
ROM_FILE(object_ingate),
ROM_FILE(object_lightswitch),
ROM_FILE(object_kusa),
ROM_FILE(object_tsubo),
ROM_FILE(object_gi_gloves),
ROM_FILE(object_gi_coin),
ROM_FILE(object_kanban),
ROM_FILE(object_gjyo_objects),
ROM_FILE(object_owl),
ROM_FILE(object_mk),
ROM_FILE(object_fu),
ROM_FILE(object_gi_ki_tan_mask),
ROM_FILE(object_gi_redead_mask),
ROM_FILE(object_gi_skj_mask),
ROM_FILE(object_gi_rabit_mask),
ROM_FILE(object_gi_truth_mask),
ROM_FILE(object_ganon_objects),
ROM_FILE(object_siofuki),
ROM_FILE(object_stream),
ROM_FILE(object_mm),
ROM_FILE(object_fa),
ROM_FILE(object_os),
ROM_FILE(object_gi_eye_lotion),
ROM_FILE(object_gi_powder),
ROM_FILE(object_gi_mushroom),
ROM_FILE(object_gi_ticketstone),
ROM_FILE(object_gi_brokensword),
ROM_FILE(object_js),
ROM_FILE(object_cs),
ROM_FILE(object_gi_prescription),
ROM_FILE(object_gi_bracelet),
ROM_FILE(object_gi_soldout),
ROM_FILE(object_gi_frog),
ROM_FILE(object_mag),
ROM_FILE(object_door_gerudo),
ROM_FILE(object_gt),
ROM_FILE(object_efc_erupc),
ROM_FILE(object_zl2_anime1),
ROM_FILE(object_zl2_anime2),
ROM_FILE(object_gi_golonmask),
ROM_FILE(object_gi_zoramask),
ROM_FILE(object_gi_gerudomask),
ROM_FILE(object_ganon2),
ROM_FILE(object_ka),
ROM_FILE(object_ts),
ROM_FILE(object_zg),
ROM_FILE(object_gi_hoverboots),
ROM_FILE(object_gi_m_arrow),
ROM_FILE(object_ds2),
ROM_FILE(object_ec),
ROM_FILE(object_fish),
ROM_FILE(object_gi_sutaru),
ROM_FILE(object_gi_goddess),
ROM_FILE(object_ssh),
ROM_FILE(object_bigokuta),
ROM_FILE(object_bg),
ROM_FILE(object_spot05_objects),
ROM_FILE(object_spot12_obj),
ROM_FILE(object_bombiwa),
ROM_FILE(object_hintnuts),
ROM_FILE(object_rs),
ROM_FILE(object_spot00_break),
ROM_FILE(object_gla),
ROM_FILE(object_shopnuts),
ROM_FILE(object_geldb),
ROM_FILE(object_gr),
ROM_FILE(object_dog),
ROM_FILE(object_jya_iron),
ROM_FILE(object_jya_door),
ROM_FILE_UNSET,
ROM_FILE(object_spot11_obj),
ROM_FILE(object_kibako2),
ROM_FILE(object_dns),
ROM_FILE(object_dnk),
ROM_FILE(object_gi_fire),
ROM_FILE(object_gi_insect),
ROM_FILE(object_gi_butterfly),
ROM_FILE(object_gi_ghost),
ROM_FILE(object_gi_soul),
ROM_FILE(object_bowl),
ROM_FILE(object_demo_kekkai),
ROM_FILE(object_efc_doughnut),
ROM_FILE(object_gi_dekupouch),
ROM_FILE(object_ganon_anime1),
ROM_FILE(object_ganon_anime2),
ROM_FILE(object_ganon_anime3),
ROM_FILE(object_gi_rupy),
ROM_FILE(object_spot01_matoya),
ROM_FILE(object_spot01_matoyab),
ROM_FILE(object_mu),
ROM_FILE(object_wf),
ROM_FILE(object_skb),
ROM_FILE(object_gj),
ROM_FILE(object_geff),
ROM_FILE(object_haka_door),
ROM_FILE(object_gs),
ROM_FILE(object_ps),
ROM_FILE(object_bwall),
ROM_FILE(object_cow),
ROM_FILE(object_cob),
ROM_FILE(object_gi_sword_1),
ROM_FILE(object_door_killer),
ROM_FILE(object_ouke_haka),
ROM_FILE(object_timeblock),
ROM_FILE(object_zl4),
#include "tables/object_table.h"
};
#undef DEFINE_OBJECT
#undef DEFINE_OBJECT_NULL
#undef DEFINE_OBJECT_UNSET