Fix MSVC compiler and linker errors

- Fix struct/class forward declaration mismatches (JAIAudience, JASTrack) causing different MSVC mangled names and unresolved symbols
- Add jsystem_stubs.cpp with stubs for JASHeap, JASVoiceBank, J3DShapeTable, JAUSection, JHICommBuf, HIO/HIO2, JOR
This commit is contained in:
Lurs
2026-02-13 23:28:47 +01:00
parent 292724920c
commit 3b742025db
60 changed files with 2780 additions and 815 deletions
+5 -3
View File
@@ -25,9 +25,10 @@ elseif (MSVC)
add_compile_options(/bigobj)
add_compile_options(/Zc:strictStrings-)
endif ()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error -Wno-c++11-narrowing")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error -Wno-c++11-narrowing")
if (NOT MSVC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-error -Wno-c++11-narrowing")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error -Wno-c++11-narrowing")
endif ()
add_subdirectory(extern/aurora EXCLUDE_FROM_ALL)
set(DOLZEL_FILES
@@ -1353,6 +1354,7 @@ set(DUSK_FILES
src/dusk/mtx.cpp
src/dusk/J3DTransforms_C.cpp
src/dusk/m_Do_ext_dusk.cpp
src/dusk/jsystem_stubs.cpp
)
source_group("dolzel" FILES ${DOLZEL_FILES} ${Z2AUDIOLIB_FILES} ${SSYSTEM_FILES} ${JSYSTEM_FILES} ${REL_FILES})
+26
View File
@@ -526,6 +526,32 @@ inline f32 J2DHermiteInterpolation(__REGISTER f32 pp1, __REGISTER s16* pp2, __RE
fsubs fout, fout, ff0
}
// clang-format on
return fout;
#else
f32 time1 = (f32)*pp2;
f32 value1 = (f32)*pp3;
f32 tangent1 = (f32)*pp4;
f32 time2 = (f32)*pp5;
f32 value2 = (f32)*pp6;
f32 tangent2 = (f32)*pp7;
f32 duration = time2 - time1;
f32 t = (pp1 - time1) / duration;
f32 t2 = t * t;
f32 dv = value2 - value1;
f32 ff4 = dv - duration * tangent1;
f32 ff0 = tangent2 * duration + value1;
ff0 = ff0 - value2;
ff0 = ff0 - ff4;
ff0 = t2 * ff0;
f32 fout = duration * tangent1 + ff0;
fout = fout * t + value1;
fout = ff4 * t2 + fout;
fout = fout - ff0;
return fout;
#endif
}
@@ -1,7 +1,7 @@
#ifndef J3DSHAPETABLE_H
#define J3DSHAPETABLE_H
#include "JSystem/JUtility/JUTAssert.h"
#include "JSystem/J3DAssert.h"
class J3DVertexData;
struct J3DDrawMtxData;
@@ -26,6 +26,8 @@ inline f32 J3DCalcZValue(__REGISTER MtxP m, __REGISTER Vec v) {
// clang-format on
return out;
#else
return m[2][0] * v.x + m[2][1] * v.y + m[2][2] * v.z + m[2][3];
#endif
}
+11 -6
View File
@@ -1,14 +1,19 @@
#ifndef J3DUD_H
#define J3DUD_H
#include <dolphin/types.h>
#include "dolphin/types.h"
#ifndef __MWERKS__
#include <math.h>
#endif
namespace J3DUD {
inline f32 JMAAbs(f32 x) {
#ifdef __MWERKS__
return __fabsf(x);
#endif
}
inline f32 JMAAbs(f32 x) {
#ifdef __MWERKS__
return __fabsf(x);
#else
return fabsf(x);
#endif
}
} // namespace J3DUD
#endif /* J3DUD_H */
+2 -2
View File
@@ -68,7 +68,7 @@ public:
} id_;
};
class JASTrack;
struct JASTrack;
/**
* @ingroup jsystem-jaudio
@@ -250,7 +250,7 @@ public:
class JAISoundHandle;
class JAIAudible;
class JAIAudience;
struct JAIAudience;
class JAISe;
class JAISeq;
class JAISoundChild;
+1 -1
View File
@@ -3,7 +3,7 @@
#include "JSystem/JSupport/JSUList.h"
class JASTrack;
struct JASTrack;
/**
* @ingroup jsystem-jaudio
+1 -1
View File
@@ -147,7 +147,7 @@ namespace JASKernel { JKRHeap* getSystemHeap(); };
*
*/
template<u32 ChunkSize, template<typename> class T>
class JASMemChunkPool : public T<JASMemChunkPool<ChunkSize, T> >::ObjectLevelLockable {
class JASMemChunkPool : public T<JASMemChunkPool<ChunkSize, T> > {
struct MemoryChunk {
MemoryChunk(MemoryChunk* nextChunk) {
mNextChunk = nextChunk;
+1 -1
View File
@@ -3,7 +3,7 @@
#include "JSystem/JAudio2/JASSeqReader.h"
class JASTrack;
struct JASTrack;
class JASSeqParser;
/**
+1 -1
View File
@@ -3,7 +3,7 @@
#include <dolphin/types.h>
class JASTrack;
struct JASTrack;
/**
* @ingroup jsystem-jaudio
+5 -1
View File
@@ -9,7 +9,11 @@
namespace JGadget {
namespace search {
template <typename T>
struct TExpandStride_ {};
struct TExpandStride_ {
#ifdef _MSC_VER
static T get(T n) { return n << 3; }
#endif
};
template <>
struct TExpandStride_<s32> {
+9 -5
View File
@@ -6,13 +6,9 @@
#include "JSystem/JMath/JMath.h"
#ifndef __MWERKS__
#ifdef _MSVC_LANG
#include <float.h>
#else
#include<limits>
#include <limits>
#define FLT_EPSILON std::numeric_limits<float>::epsilon()
#endif
#endif
namespace JGeometry {
@@ -50,6 +46,10 @@ struct TUtil<f32> {
f32 root = __frsqrte(x);
root = 0.5f * root * (3.0f - x * (root * root));
return root;
#else
if (x <= 0.0f)
return x;
return 1.0f / std::sqrt(x);
#endif
}
@@ -62,6 +62,10 @@ struct TUtil<f32> {
f32 root = __frsqrte(x);
root = 0.5f * root * (3.0f - x * (root * root));
return x * root;
#else
if (x <= 0.0f)
return x;
return std::sqrt(x);
#endif
}
};
+95 -37
View File
@@ -1,7 +1,7 @@
#ifndef JMATH_H
#define JMATH_H
#include <dolphin/mtx.h>
#include "dolphin/mtx.h"
#include <cmath>
void JMAMTXApplyScale(const Mtx, Mtx, f32, f32, f32);
@@ -14,18 +14,24 @@ void JMAVECScaleAdd(__REGISTER const Vec* vec1, __REGISTER const Vec* vec2, __RE
inline int JMAAbs(int value) {
#ifdef __MWERKS__
return __abs(value);
#else
return abs(value);
#endif
}
inline f32 JMAAbs(f32 x) {
#ifdef __MWERKS__
return __fabsf(x);
#else
return fabsf(x);
#endif
}
inline f32 JMAFastReciprocal(f32 value) {
#ifdef __MWERKS__
return __fres(value);
#else
return 1.0f / value;
#endif
}
@@ -40,6 +46,8 @@ inline float __frsqrtes(__REGISTER double f) {
// clang-format on
return out;
#else
return 1.0f / sqrtf(f);
#endif
}
@@ -54,6 +62,8 @@ inline f32 JMAFastSqrt(__REGISTER const f32 input) {
} else {
return input;
}
#else
return sqrt(input);
#endif
}
@@ -87,6 +97,15 @@ inline f32 JMAHermiteInterpolation(__REGISTER f32 p1, __REGISTER f32 p2, __REGIS
}
// clang-format on
return ff25;
#else
f32 t = (p1 - p2) / (p5 - p2);
f32 t2 = t * t;
f32 t3 = t2 * t;
f32 h1 = 2.0f * t3 - 3.0f * t2 + 1.0f;
f32 h2 = -2.0f * t3 + 3.0f * t2;
f32 h3 = t3 - 2.0f * t2 + t;
f32 h4 = t3 - t2;
return h1 * p4 + h2 * p7 + h3 * (p3 - p4) + h4 * (p6 - p3);
#endif
}
@@ -115,6 +134,12 @@ inline void gekko_ps_copy3(__REGISTER void* dst, __REGISTER const void* src) {
psq_st src0, 0(dst), 0, 0
stfs src1, 8(dst)
};
#else
f32* fsrc = (f32*)src;
f32* fdst = (f32*)dst;
fdst[0] = fsrc[0];
fdst[1] = fsrc[1];
fdst[2] = fsrc[2];
#endif
}
@@ -131,6 +156,15 @@ inline void gekko_ps_copy6(__REGISTER void* dst, __REGISTER const void* src) {
psq_st src1, 8(dst), 0, 0
psq_st src2, 16(dst), 0, 0
};
#else
f32* fsrc = (f32*)src;
f32* fdst = (f32*)dst;
fdst[0] = fsrc[0];
fdst[1] = fsrc[1];
fdst[2] = fsrc[2];
fdst[3] = fsrc[3];
fdst[4] = fsrc[4];
fdst[5] = fsrc[5];
#endif
}
@@ -156,6 +190,12 @@ inline void gekko_ps_copy12(__REGISTER void* dst, __REGISTER const void* src) {
psq_st src4, 32(dst), 0, 0
psq_st src5, 40(dst), 0, 0
};
#else
f32* fsrc = (f32*)src;
f32* fdst = (f32*)dst;
for (int i = 0; i < 12; i++) {
fdst[i] = fsrc[i];
}
#endif
}
@@ -187,13 +227,19 @@ inline void gekko_ps_copy16(__REGISTER void* dst, __REGISTER const void* src) {
psq_st src6, 48(dst), 0, 0
psq_st src7, 56(dst), 0, 0
};
#else
f32* fsrc = (f32*)src;
f32* fdst = (f32*)dst;
for (int i = 0; i < 16; i++) {
fdst[i] = fsrc[i];
}
#endif
}
}; // namespace JMath
namespace JMathInlineVEC {
inline void C_VECAdd(__REGISTER const Vec* a, __REGISTER const Vec* b, __REGISTER Vec* ab) {
inline void C_VECAdd(__REGISTER const Vec* a, __REGISTER const Vec* b, __REGISTER Vec* ab) {
#ifdef __MWERKS__
__REGISTER f32 axy;
__REGISTER f32 bxy;
@@ -211,17 +257,21 @@ namespace JMathInlineVEC {
ps_add sumz, az, bz
psq_st sumz, 8(ab), 1, 0
}
#else
ab->x = a->x + b->x;
ab->y = a->y + b->y;
ab->z = a->z + b->z;
#endif
}
}
inline void C_VECSubtract(__REGISTER const Vec* a, __REGISTER const Vec* b, __REGISTER Vec* ab) {
#ifdef __MWERKS__
__REGISTER f32 axy;
__REGISTER f32 bxy;
__REGISTER f32 az;
__REGISTER f32 subz;
__REGISTER f32 bz;
asm {
inline void C_VECSubtract(__REGISTER const Vec* a, __REGISTER const Vec* b, __REGISTER Vec* ab) {
#ifdef __MWERKS__
__REGISTER f32 axy;
__REGISTER f32 bxy;
__REGISTER f32 az;
__REGISTER f32 subz;
__REGISTER f32 bz;
asm {
psq_l axy, 0(a), 0, 0
psq_l bxy, 0(b), 0, 0
ps_sub bxy, axy, bxy
@@ -230,35 +280,41 @@ namespace JMathInlineVEC {
psq_l bz, 8(b), 1, 0
ps_sub subz, az, bz
psq_st subz, 8(ab), 1, 0
}
#endif
}
#else
ab->x = a->x - b->x;
ab->y = a->y - b->y;
ab->z = a->z - b->z;
#endif
}
inline f32 C_VECSquareMag(__REGISTER const Vec* v) {
#ifdef __MWERKS__
__REGISTER f32 x_y;
__REGISTER f32 z;
__REGISTER f32 res;
asm {
inline f32 C_VECSquareMag(__REGISTER const Vec* v) {
#ifdef __MWERKS__
__REGISTER f32 x_y;
__REGISTER f32 z;
__REGISTER f32 res;
asm {
psq_l x_y, 0(v), 0, 0
ps_mul x_y, x_y, x_y
lfs z, 8(v)
ps_madd res, z, z, x_y
ps_sum0 res, res, x_y, x_y
}
return res;
#endif
}
return res;
#else
return (v->x * v->x) + (v->y * v->y) + (v->z * v->z);
#endif
}
inline f32 C_VECDotProduct(__REGISTER const Vec *a, __REGISTER const Vec *b) {
#ifdef __MWERKS__
__REGISTER f32 res;
__REGISTER f32 thisyz;
__REGISTER f32 otheryz;
__REGISTER f32 otherxy;
__REGISTER f32 thisxy;
asm {
inline f32 C_VECDotProduct(__REGISTER const Vec* a, __REGISTER const Vec* b) {
#ifdef __MWERKS__
__REGISTER f32 res;
__REGISTER f32 thisyz;
__REGISTER f32 otheryz;
__REGISTER f32 otherxy;
__REGISTER f32 thisxy;
asm {
psq_l thisyz, 4(a), 0, 0
psq_l otheryz, 4(b), 0, 0
ps_mul thisyz, thisyz, otheryz
@@ -266,13 +322,15 @@ namespace JMathInlineVEC {
psq_l otherxy, 0(b), 0, 0
ps_madd otheryz, thisxy, otherxy, thisyz
ps_sum0 res, otheryz, thisyz, thisyz
};
return res;
#endif
}
};
};
return res;
#else
return (a->x * b->x) + (a->y * b->y) + (a->z * b->z);
#endif
}
}; // namespace JMathInlineVEC
template<typename T>
template <typename T>
inline T JMAMax(T param_0, T param_1) {
T ret;
if (param_0 > param_1) {
@@ -333,7 +333,11 @@ public:
return r1.pf_ == r2.pf_;
}
#ifdef __MWERKS__
f32 operator*() {
#else
f32 operator*() const {
#endif
// this guard is required - removing it breaks float regalloc in std::upper_bound
#if DEBUG
JUT_ASSERT(947, pf_!=NULL);
@@ -444,7 +448,11 @@ public:
return r1.pf_ == r2.pf_;
}
#ifdef __MWERKS__
f32 operator*() {
#else
f32 operator*() const {
#endif
#if DEBUG
JUT_ASSERT(1098, pf_!=NULL);
#endif
+2
View File
@@ -332,8 +332,10 @@ private:
/* 0x2EDC */ dMsgFlow_c mMsgFlow;
};
#ifdef __MWERKS__
cXyz daB_DS_c::getHandPosR() { return mHandPos[1]; }
cXyz daB_DS_c::getHandPosL() { return mHandPos[0]; }
#endif
STATIC_ASSERT(sizeof(daB_DS_c) == 0x2F28);
+49 -9
View File
@@ -45,7 +45,9 @@ typedef u32 OSTick;
#include <dolphin/os/OSLC.h>
#include <dolphin/os/OSL2.h>
#include <dolphin/os/OSReboot.h>
#ifdef __MWERKS__
#include <dolphin/os/OSExec.h>
#endif
#include <dolphin/os/OSMemory.h>
#include <dolphin/os/OSSemaphore.h>
#include <dolphin/os/OSUtf.h>
@@ -54,6 +56,18 @@ typedef u32 OSTick;
// private macro, maybe shouldn't be defined here?
#define OFFSET(addr, align) (((u32)(addr) & ((align)-1)))
#ifndef __MWERKS__
typedef struct {
BOOL valid;
u32 restartCode;
u32 bootDol;
void* regionStart;
void* regionEnd;
int argsUseDefault;
void* argsAddr;
} OSExecParams;
#endif
#define DOLPHIN_ALIGNMENT 32
// Upper words of the masks, since UIMM is only 16 bits
@@ -80,9 +94,9 @@ OSThread* __gUnkThread1 AT_ADDRESS(OS_BASE_CACHED | 0x00D8);
int __gUnknown800030C0[2] AT_ADDRESS(OS_BASE_CACHED | 0x30C0);
u8 __gUnknown800030E3 AT_ADDRESS(OS_BASE_CACHED | 0x30E3);
#else
#define __OSBusClock (*(u32 *)(OS_BASE_CACHED | 0x00F8))
#define __OSCoreClock (*(u32 *)(OS_BASE_CACHED | 0x00FC))
#endif
#define __OSBusClock 486000000
#define __OSCoreClock (486000000 / 4)
#endif // __MWERKS__
#define OS_BUS_CLOCK __OSBusClock
#define OS_CORE_CLOCK __OSCoreClock
@@ -210,7 +224,6 @@ DECL_WEAK void OSReportDisable(void);
DECL_WEAK void OSReportEnable(void);
DECL_WEAK void OSReportForceEnableOff(void);
DECL_WEAK void OSReportForceEnableOn(void);
DECL_WEAK void OSVReport(const char* format, va_list list);
#if DEBUG
#define OS_REPORT(...) OSReport(__VA_ARGS__)
@@ -233,6 +246,29 @@ extern u8 __OSReport_enable;
#define OSRoundUp32B(x) (((u32)(x) + 32 - 1) & ~(32 - 1))
#define OSRoundDown32B(x) (((u32)(x)) & ~(32 - 1))
#ifndef __MWERKS__
static inline void* OSPhysicalToCached(u32 paddr) {
return reinterpret_cast<void*>(static_cast<uintptr_t>(paddr));
}
static inline void* OSPhysicalToUncached(u32 paddr) {
return reinterpret_cast<void*>(static_cast<uintptr_t>(paddr));
}
static inline u32 OSCachedToPhysical(void* caddr) {
return static_cast<u32>(reinterpret_cast<uintptr_t>(caddr));
}
static inline u32 OSUncachedToPhysical(void* ucaddr) {
return static_cast<u32>(reinterpret_cast<uintptr_t>(ucaddr));
}
static inline void* OSCachedToUncached(void* caddr) {
return caddr;
}
static inline void* OSUncachedToCached(void* ucaddr) {
return ucaddr;
}
#else
void* OSPhysicalToCached(u32 paddr);
void* OSPhysicalToUncached(u32 paddr);
u32 OSCachedToPhysical(void* caddr);
@@ -240,7 +276,9 @@ u32 OSUncachedToPhysical(void* ucaddr);
void* OSCachedToUncached(void* caddr);
void* OSUncachedToCached(void* ucaddr);
#if !DEBUG
#endif
#if !DEBUG && defined(__MWERKS__)
#define OSPhysicalToCached(paddr) ((void*) ((u32)(OS_BASE_CACHED + (u32)(paddr))))
#define OSPhysicalToUncached(paddr) ((void*) ((u32)(OS_BASE_UNCACHED + (u32)(paddr))))
#define OSCachedToPhysical(caddr) ((u32) ((u32)(caddr) - OS_BASE_CACHED))
@@ -257,6 +295,10 @@ extern OSTime __OSStartTime;
extern int __OSInIPL;
// helper for assert line numbers in different revisions
#ifndef SDK_REVISION
#define SDK_REVISION 0
#endif
#if SDK_REVISION < 1
#define LINE(l0, l1, l2) (l0)
#elif SDK_REVISION < 2
@@ -275,7 +317,6 @@ extern int __OSInIPL;
// This is dumb but we dont have a Metrowerks way to do variadic macros in the macro to make this done in a not scrubby way.
#define ASSERTMSG1LINE(line, cond, msg, arg1) \
((cond) || (OSPanic(__FILE__, line, msg, arg1), 0))
#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) \
((cond) || (OSPanic(__FILE__, line, msg, arg1, arg2), 0))
@@ -289,7 +330,6 @@ extern int __OSInIPL;
#define ASSERTMSG2LINE(line, cond, msg, arg1, arg2) (void)0
#define ASSERTMSGLINEV(line, cond, ...) (void)0
#endif
#define ASSERT(cond) ASSERTLINE(__LINE__, cond)
inline s16 __OSf32tos16(__REGISTER f32 inF) {
@@ -357,5 +397,5 @@ static inline void OSInitFastCast(void) {
}
#endif
#endif
#endif
#endif // __REVOLUTION_SDK__
#endif // _DOLPHIN_OS_H_
+2
View File
@@ -5,8 +5,10 @@
extern "C" {
#endif
#ifndef _MSC_VER
int strnicmp(const char* str1, const char* str2, int n);
int stricmp(const char* str1, const char* str2);
#endif
#ifdef __cplusplus
}
+1 -1
View File
@@ -12,7 +12,7 @@ struct scene_method_class {
};
typedef struct scene_process_profile_definition {
/* 0x00 */ node_process_profile_definition nase;
/* 0x00 */ node_process_profile_definition base;
/* 0x20 */ scene_method_class* submethod; // Subclass methods
/* 0x24 */ u32 unk_0x24; // padding?
} scene_process_profile_definition;
+805
View File
@@ -3,6 +3,16 @@
#include "f_pc/f_pc_profile.h"
#ifndef __MWERKS__
#include "f_op/f_op_actor.h"
#include "f_op/f_op_camera.h"
#include "f_op/f_op_kankyo.h"
#include "f_op/f_op_msg_mng.h"
#include "f_op/f_op_overlap.h"
#include "f_op/f_op_scene.h"
#endif
#ifdef __MWERKS__
extern process_profile_definition g_profile_ALINK;
extern process_profile_definition g_profile_NO_CHG_ROOM;
extern process_profile_definition g_profile_ITEM;
@@ -795,6 +805,801 @@ extern process_profile_definition g_profile_TALK;
extern process_profile_definition g_profile_TBOX_SW;
extern process_profile_definition g_profile_TITLE;
extern process_profile_definition g_profile_WarpBug;
#else
extern actor_process_profile_definition g_profile_ALINK;
extern actor_process_profile_definition g_profile_NO_CHG_ROOM;
extern actor_process_profile_definition g_profile_ITEM;
extern camera_process_profile_definition g_profile_CAMERA;
extern camera_process_profile_definition g_profile_CAMERA2;
extern kankyo_process_profile_definition g_profile_ENVSE;
extern msg_process_profile_definition g_profile_GAMEOVER;
extern kankyo_process_profile_definition g_profile_KANKYO;
extern kankyo_process_profile_definition g_profile_KYEFF;
extern kankyo_process_profile_definition g_profile_KYEFF2;
extern kankyo_process_profile_definition g_profile_KY_THUNDER;
extern msg_process_profile_definition g_profile_MENUWINDOW;
extern msg_process_profile_definition g_profile_METER2;
extern msg_process_profile_definition g_profile_MSG_OBJECT;
extern overlap_process_profile_definition g_profile_OVERLAP0;
extern overlap_process_profile_definition g_profile_OVERLAP1;
extern overlap_process_profile_definition g_profile_OVERLAP6;
extern overlap_process_profile_definition g_profile_OVERLAP7;
extern overlap_process_profile_definition g_profile_OVERLAP8;
extern overlap_process_profile_definition g_profile_OVERLAP9;
extern overlap_process_profile_definition g_profile_OVERLAP10;
extern overlap_process_profile_definition g_profile_OVERLAP11;
extern overlap_process_profile_definition g_profile_OVERLAP2;
extern overlap_process_profile_definition g_profile_OVERLAP3;
extern scene_process_profile_definition g_profile_LOGO_SCENE;
extern scene_process_profile_definition g_profile_MENU_SCENE;
extern scene_process_profile_definition g_profile_NAME_SCENE;
extern scene_process_profile_definition g_profile_NAMEEX_SCENE;
extern scene_process_profile_definition g_profile_PLAY_SCENE;
extern scene_process_profile_definition g_profile_OPENING_SCENE;
extern scene_process_profile_definition g_profile_ROOM_SCENE;
extern scene_process_profile_definition g_profile_WARNING_SCENE;
extern scene_process_profile_definition g_profile_WARNING2_SCENE;
extern msg_process_profile_definition g_profile_TIMER;
extern kankyo_process_profile_definition g_profile_WMARK;
extern kankyo_process_profile_definition g_profile_WPILLAR;
extern actor_process_profile_definition g_profile_ANDSW;
extern actor_process_profile_definition2 g_profile_BG;
extern actor_process_profile_definition g_profile_BG_OBJ;
extern actor_process_profile_definition g_profile_DMIDNA;
extern actor_process_profile_definition g_profile_DBDOOR;
extern actor_process_profile_definition g_profile_KNOB20;
extern actor_process_profile_definition g_profile_DOOR20;
extern actor_process_profile_definition g_profile_SPIRAL_DOOR;
extern actor_process_profile_definition2 g_profile_DSHUTTER;
extern actor_process_profile_definition g_profile_EP;
extern actor_process_profile_definition g_profile_HITOBJ;
extern actor_process_profile_definition g_profile_KYTAG00;
extern actor_process_profile_definition g_profile_KYTAG04;
extern actor_process_profile_definition g_profile_KYTAG17;
extern actor_process_profile_definition g_profile_OBJ_BEF;
extern actor_process_profile_definition g_profile_Obj_BurnBox;
extern actor_process_profile_definition g_profile_Obj_Carry;
extern actor_process_profile_definition g_profile_OBJ_ITO;
extern actor_process_profile_definition g_profile_Obj_Movebox;
extern actor_process_profile_definition g_profile_Obj_Swpush;
extern actor_process_profile_definition g_profile_Obj_Timer;
extern actor_process_profile_definition2 g_profile_PATH_LINE;
extern actor_process_profile_definition2 g_profile_SCENE_EXIT;
extern actor_process_profile_definition g_profile_SET_BG_OBJ;
extern actor_process_profile_definition g_profile_SWHIT0;
extern actor_process_profile_definition g_profile_TAG_ALLMATO;
extern actor_process_profile_definition g_profile_TAG_CAMERA;
extern actor_process_profile_definition g_profile_TAG_CHKPOINT;
extern actor_process_profile_definition g_profile_TAG_EVENT;
extern actor_process_profile_definition g_profile_TAG_EVT;
extern actor_process_profile_definition g_profile_TAG_EVTAREA;
extern actor_process_profile_definition g_profile_TAG_EVTMSG;
extern actor_process_profile_definition g_profile_TAG_HOWL;
extern actor_process_profile_definition g_profile_TAG_KMSG;
extern actor_process_profile_definition g_profile_TAG_LANTERN;
extern actor_process_profile_definition g_profile_Tag_Mist;
extern actor_process_profile_definition g_profile_TAG_MSG;
extern actor_process_profile_definition g_profile_TAG_PUSH;
extern actor_process_profile_definition g_profile_TAG_TELOP;
extern actor_process_profile_definition g_profile_TBOX;
extern actor_process_profile_definition g_profile_TBOX2;
extern actor_process_profile_definition g_profile_VRBOX;
extern actor_process_profile_definition g_profile_VRBOX2;
extern actor_process_profile_definition g_profile_ARROW;
extern actor_process_profile_definition g_profile_BOOMERANG;
extern actor_process_profile_definition g_profile_CROD;
extern actor_process_profile_definition g_profile_DEMO00;
extern actor_process_profile_definition g_profile_DISAPPEAR;
extern actor_process_profile_definition g_profile_MG_ROD;
extern actor_process_profile_definition g_profile_MIDNA;
extern actor_process_profile_definition g_profile_NBOMB;
extern actor_process_profile_definition g_profile_Obj_LifeContainer;
extern actor_process_profile_definition g_profile_Obj_Yousei;
extern actor_process_profile_definition g_profile_SPINNER;
extern actor_process_profile_definition g_profile_SUSPEND;
extern actor_process_profile_definition g_profile_Tag_Attp;
extern actor_process_profile_definition g_profile_ALLDIE;
extern actor_process_profile_definition g_profile_ANDSW2;
extern actor_process_profile_definition g_profile_BD;
extern actor_process_profile_definition g_profile_CANOE;
extern actor_process_profile_definition g_profile_CSTAF;
extern actor_process_profile_definition g_profile_Demo_Item;
extern actor_process_profile_definition g_profile_L1BOSS_DOOR;
extern actor_process_profile_definition g_profile_E_DN;
extern actor_process_profile_definition g_profile_E_FM;
extern actor_process_profile_definition g_profile_E_GA;
extern actor_process_profile_definition g_profile_E_HB;
extern actor_process_profile_definition g_profile_E_NEST;
extern actor_process_profile_definition g_profile_E_RD;
extern actor_process_profile_definition g_profile_ECONT;
extern actor_process_profile_definition g_profile_FR;
extern actor_process_profile_definition g_profile_GRASS;
extern actor_process_profile_definition g_profile_KYTAG05;
extern actor_process_profile_definition g_profile_KYTAG10;
extern actor_process_profile_definition g_profile_KYTAG11;
extern actor_process_profile_definition g_profile_KYTAG14;
extern actor_process_profile_definition g_profile_MG_FISH;
extern actor_process_profile_definition g_profile_NPC_BESU;
extern actor_process_profile_definition g_profile_NPC_FAIRY_SEIREI;
extern actor_process_profile_definition g_profile_NPC_FISH;
extern actor_process_profile_definition g_profile_NPC_HENNA;
extern actor_process_profile_definition g_profile_NPC_KAKASHI;
extern actor_process_profile_definition g_profile_NPC_KKRI;
extern actor_process_profile_definition g_profile_NPC_KOLIN;
extern actor_process_profile_definition g_profile_NPC_MARO;
extern actor_process_profile_definition g_profile_NPC_TARO;
extern actor_process_profile_definition g_profile_NPC_TKJ;
extern actor_process_profile_definition g_profile_Obj_BHASHI;
extern actor_process_profile_definition g_profile_Obj_BkDoor;
extern actor_process_profile_definition g_profile_Obj_BossWarp;
extern actor_process_profile_definition g_profile_Obj_Cboard;
extern actor_process_profile_definition g_profile_Obj_Digpl;
extern actor_process_profile_definition g_profile_Obj_Eff;
extern actor_process_profile_definition g_profile_OBJ_FMOBJ;
extern actor_process_profile_definition g_profile_Obj_GpTaru;
extern actor_process_profile_definition g_profile_Obj_HHASHI;
extern actor_process_profile_definition g_profile_OBJ_KANBAN2;
extern actor_process_profile_definition g_profile_OBJ_KBACKET;
extern actor_process_profile_definition g_profile_Obj_KkrGate;
extern actor_process_profile_definition g_profile_Obj_KLift00;
extern actor_process_profile_definition g_profile_Tag_KtOnFire;
extern actor_process_profile_definition g_profile_Obj_Ladder;
extern actor_process_profile_definition g_profile_Obj_Lv2Candle;
extern actor_process_profile_definition g_profile_Obj_MagneArm;
extern actor_process_profile_definition g_profile_Obj_MetalBox;
extern actor_process_profile_definition g_profile_Obj_MGate;
extern actor_process_profile_definition g_profile_Obj_NamePlate;
extern actor_process_profile_definition g_profile_Obj_OnCloth;
extern actor_process_profile_definition g_profile_Obj_RopeBridge;
extern actor_process_profile_definition g_profile_Obj_SwallShutter;
extern actor_process_profile_definition g_profile_OBJ_STICK;
extern actor_process_profile_definition g_profile_Obj_StoneMark;
extern actor_process_profile_definition g_profile_Obj_Swpropeller;
extern actor_process_profile_definition g_profile_Obj_Swpush5;
extern actor_process_profile_definition g_profile_Obj_Yobikusa;
extern actor_process_profile_definition g_profile_SCENE_EXIT2;
extern actor_process_profile_definition g_profile_ShopItem;
extern actor_process_profile_definition g_profile_SQ;
extern actor_process_profile_definition g_profile_SWC00;
extern actor_process_profile_definition g_profile_Tag_CstaSw;
extern actor_process_profile_definition g_profile_Tag_AJnot;
extern actor_process_profile_definition g_profile_Tag_AttackItem;
extern actor_process_profile_definition g_profile_Tag_Gstart;
extern actor_process_profile_definition g_profile_Tag_Hinit;
extern actor_process_profile_definition g_profile_Tag_Hjump;
extern actor_process_profile_definition g_profile_Tag_Hstop;
extern actor_process_profile_definition g_profile_Tag_Lv2PrChk;
extern actor_process_profile_definition g_profile_Tag_Magne;
extern actor_process_profile_definition g_profile_Tag_Mhint;
extern actor_process_profile_definition g_profile_Tag_Mstop;
extern actor_process_profile_definition g_profile_Tag_Spring;
extern actor_process_profile_definition g_profile_Tag_Statue;
extern actor_process_profile_definition g_profile_Ykgr;
extern actor_process_profile_definition g_profile_DR;
extern actor_process_profile_definition g_profile_L7lowDr;
extern actor_process_profile_definition g_profile_L7ODR;
extern actor_process_profile_definition g_profile_B_BH;
extern actor_process_profile_definition g_profile_B_BQ;
extern actor_process_profile_definition g_profile_B_DR;
extern actor_process_profile_definition g_profile_B_DRE;
extern actor_process_profile_definition g_profile_B_DS;
extern actor_process_profile_definition g_profile_B_GG;
extern actor_process_profile_definition g_profile_B_GM;
extern actor_process_profile_definition g_profile_B_GND;
extern actor_process_profile_definition g_profile_B_GO;
extern actor_process_profile_definition g_profile_B_GOS;
extern actor_process_profile_definition g_profile_B_MGN;
extern actor_process_profile_definition g_profile_B_OB;
extern actor_process_profile_definition g_profile_B_OH;
extern actor_process_profile_definition g_profile_B_OH2;
extern actor_process_profile_definition g_profile_B_TN;
extern actor_process_profile_definition g_profile_B_YO;
extern actor_process_profile_definition g_profile_B_YOI;
extern actor_process_profile_definition g_profile_B_ZANT;
extern actor_process_profile_definition g_profile_B_ZANTM;
extern actor_process_profile_definition g_profile_B_ZANTZ;
extern actor_process_profile_definition g_profile_B_ZANTS;
extern actor_process_profile_definition g_profile_BALLOON2D;
extern actor_process_profile_definition g_profile_BULLET;
extern actor_process_profile_definition g_profile_COACH2D;
extern actor_process_profile_definition g_profile_COACH_FIRE;
extern actor_process_profile_definition g_profile_COW;
extern actor_process_profile_definition g_profile_CSTATUE;
extern actor_process_profile_definition g_profile_DO;
extern actor_process_profile_definition g_profile_BOSS_DOOR;
extern actor_process_profile_definition g_profile_L5BOSS_DOOR;
extern actor_process_profile_definition g_profile_L1MBOSS_DOOR;
extern actor_process_profile_definition g_profile_PushDoor;
extern actor_process_profile_definition g_profile_E_AI;
extern actor_process_profile_definition g_profile_E_ARROW;
extern actor_process_profile_definition g_profile_E_BA;
extern actor_process_profile_definition g_profile_E_BEE;
extern actor_process_profile_definition g_profile_E_BG;
extern actor_process_profile_definition g_profile_E_BI;
extern actor_process_profile_definition g_profile_E_BI_LEAF;
extern actor_process_profile_definition g_profile_E_BS;
extern actor_process_profile_definition g_profile_E_BU;
extern actor_process_profile_definition g_profile_E_BUG;
extern actor_process_profile_definition g_profile_E_CR;
extern actor_process_profile_definition g_profile_E_CR_EGG;
extern actor_process_profile_definition g_profile_E_DB;
extern actor_process_profile_definition g_profile_E_DB_LEAF;
extern actor_process_profile_definition g_profile_E_DD;
extern actor_process_profile_definition g_profile_E_DF;
extern actor_process_profile_definition g_profile_E_DK;
extern actor_process_profile_definition g_profile_E_DT;
extern actor_process_profile_definition g_profile_E_FB;
extern actor_process_profile_definition g_profile_E_FK;
extern actor_process_profile_definition g_profile_E_FS;
extern actor_process_profile_definition g_profile_E_FZ;
extern actor_process_profile_definition g_profile_E_GB;
extern actor_process_profile_definition g_profile_E_GE;
extern actor_process_profile_definition g_profile_E_GI;
extern actor_process_profile_definition g_profile_E_GM;
extern actor_process_profile_definition g_profile_E_GOB;
extern actor_process_profile_definition g_profile_E_GS;
extern actor_process_profile_definition g_profile_E_HB_LEAF;
extern actor_process_profile_definition g_profile_E_HM;
extern actor_process_profile_definition g_profile_E_HP;
extern actor_process_profile_definition g_profile_E_HZ;
extern actor_process_profile_definition g_profile_E_HZELDA;
extern actor_process_profile_definition g_profile_E_IS;
extern actor_process_profile_definition g_profile_E_KG;
extern actor_process_profile_definition g_profile_E_KK;
extern actor_process_profile_definition g_profile_E_KR;
extern actor_process_profile_definition g_profile_E_MB;
extern actor_process_profile_definition g_profile_E_MD;
extern actor_process_profile_definition g_profile_E_MF;
extern actor_process_profile_definition g_profile_E_MK;
extern actor_process_profile_definition g_profile_E_MK_BO;
extern actor_process_profile_definition g_profile_E_MM;
extern actor_process_profile_definition g_profile_E_MM_MT;
extern actor_process_profile_definition g_profile_E_MS;
extern actor_process_profile_definition g_profile_E_NZ;
extern actor_process_profile_definition g_profile_E_OC;
extern actor_process_profile_definition g_profile_E_OctBg;
extern actor_process_profile_definition g_profile_E_OT;
extern actor_process_profile_definition g_profile_E_PH;
extern actor_process_profile_definition g_profile_E_PM;
extern actor_process_profile_definition g_profile_E_PO;
extern actor_process_profile_definition g_profile_E_PZ;
extern actor_process_profile_definition g_profile_E_RB;
extern actor_process_profile_definition g_profile_E_RDB;
extern actor_process_profile_definition g_profile_E_RDY;
extern actor_process_profile_definition g_profile_E_S1;
extern actor_process_profile_definition g_profile_E_SB;
extern actor_process_profile_definition g_profile_E_SF;
extern actor_process_profile_definition g_profile_E_SG;
extern actor_process_profile_definition g_profile_E_SH;
extern actor_process_profile_definition g_profile_E_SM;
extern actor_process_profile_definition g_profile_E_SM2;
extern actor_process_profile_definition g_profile_E_ST;
extern actor_process_profile_definition g_profile_E_ST_LINE;
extern actor_process_profile_definition g_profile_E_SW;
extern actor_process_profile_definition g_profile_E_TH;
extern actor_process_profile_definition g_profile_E_TH_BALL;
extern actor_process_profile_definition g_profile_E_TK;
extern actor_process_profile_definition g_profile_E_TK2;
extern actor_process_profile_definition g_profile_E_TK_BALL;
extern actor_process_profile_definition g_profile_E_TT;
extern actor_process_profile_definition g_profile_E_VT;
extern actor_process_profile_definition g_profile_E_WAP;
extern actor_process_profile_definition g_profile_E_WB;
extern actor_process_profile_definition g_profile_E_WS;
extern actor_process_profile_definition g_profile_E_WW;
extern actor_process_profile_definition g_profile_E_YC;
extern actor_process_profile_definition g_profile_E_YD;
extern actor_process_profile_definition g_profile_E_YD_LEAF;
extern actor_process_profile_definition g_profile_E_YG;
extern actor_process_profile_definition g_profile_E_YH;
extern actor_process_profile_definition g_profile_E_YK;
extern actor_process_profile_definition g_profile_E_YM;
extern actor_process_profile_definition g_profile_E_YM_TAG;
extern actor_process_profile_definition g_profile_E_YMB;
extern actor_process_profile_definition g_profile_E_YR;
extern actor_process_profile_definition g_profile_E_ZH;
extern actor_process_profile_definition g_profile_E_ZM;
extern actor_process_profile_definition g_profile_E_ZS;
extern actor_process_profile_definition g_profile_FORMATION_MNG;
extern actor_process_profile_definition g_profile_GUARD_MNG;
extern actor_process_profile_definition g_profile_HORSE;
extern actor_process_profile_definition g_profile_HOZELDA;
extern actor_process_profile_definition g_profile_Izumi_Gate;
extern actor_process_profile_definition g_profile_KAGO;
extern actor_process_profile_definition g_profile_KYTAG01;
extern actor_process_profile_definition g_profile_KYTAG02;
extern actor_process_profile_definition g_profile_KYTAG03;
extern actor_process_profile_definition g_profile_KYTAG06;
extern actor_process_profile_definition g_profile_KYTAG07;
extern actor_process_profile_definition g_profile_KYTAG08;
extern actor_process_profile_definition g_profile_KYTAG09;
extern actor_process_profile_definition g_profile_KYTAG12;
extern actor_process_profile_definition g_profile_KYTAG13;
extern actor_process_profile_definition g_profile_KYTAG15;
extern actor_process_profile_definition g_profile_KYTAG16;
extern actor_process_profile_definition g_profile_MANT;
extern actor_process_profile_definition g_profile_FSHOP;
extern actor_process_profile_definition g_profile_MIRROR;
extern actor_process_profile_definition g_profile_MOVIE_PLAYER;
extern actor_process_profile_definition g_profile_MYNA;
extern actor_process_profile_definition g_profile_NI;
extern actor_process_profile_definition g_profile_NPC_ARU;
extern actor_process_profile_definition g_profile_NPC_ASH;
extern actor_process_profile_definition g_profile_NPC_ASHB;
extern actor_process_profile_definition g_profile_NPC_BANS;
extern actor_process_profile_definition g_profile_NPC_BLUENS;
extern actor_process_profile_definition g_profile_NPC_BOU;
extern actor_process_profile_definition g_profile_NPC_BOU_S;
extern actor_process_profile_definition g_profile_NPC_CD3;
extern actor_process_profile_definition g_profile_NPC_CHAT;
extern actor_process_profile_definition g_profile_NPC_CHIN;
extern actor_process_profile_definition g_profile_NPC_CLERKA;
extern actor_process_profile_definition g_profile_NPC_CLERKB;
extern actor_process_profile_definition g_profile_NPC_CLERKT;
extern actor_process_profile_definition g_profile_NPC_COACH;
extern actor_process_profile_definition g_profile_NPC_DF;
extern actor_process_profile_definition g_profile_NPC_DOC;
extern actor_process_profile_definition g_profile_NPC_DOORBOY;
extern actor_process_profile_definition g_profile_NPC_DRSOL;
extern actor_process_profile_definition g_profile_NPC_DU;
extern actor_process_profile_definition g_profile_NPC_FAIRY;
extern actor_process_profile_definition g_profile_NPC_FGUARD;
extern actor_process_profile_definition g_profile_NPC_GND;
extern actor_process_profile_definition g_profile_NPC_GRA;
extern actor_process_profile_definition g_profile_NPC_GRC;
extern actor_process_profile_definition g_profile_NPC_GRD;
extern actor_process_profile_definition g_profile_NPC_GRM;
extern actor_process_profile_definition g_profile_NPC_GRMC;
extern actor_process_profile_definition g_profile_NPC_GRO;
extern actor_process_profile_definition g_profile_NPC_GRR;
extern actor_process_profile_definition g_profile_NPC_GRS;
extern actor_process_profile_definition g_profile_NPC_GRZ;
extern actor_process_profile_definition g_profile_NPC_GUARD;
extern actor_process_profile_definition g_profile_NPC_GWOLF;
extern actor_process_profile_definition g_profile_NPC_HANJO;
extern actor_process_profile_definition g_profile_NPC_HENNA0;
extern actor_process_profile_definition g_profile_NPC_HOZ;
extern actor_process_profile_definition g_profile_NPC_IMPAL;
extern actor_process_profile_definition g_profile_NPC_INKO;
extern actor_process_profile_definition g_profile_NPC_INS;
extern actor_process_profile_definition g_profile_NPC_JAGAR;
extern actor_process_profile_definition g_profile_NPC_KASIHANA;
extern actor_process_profile_definition g_profile_NPC_KASIKYU;
extern actor_process_profile_definition g_profile_NPC_KASIMICH;
extern actor_process_profile_definition g_profile_NPC_KDK;
extern actor_process_profile_definition g_profile_NPC_KN;
extern actor_process_profile_definition g_profile_NPC_KNJ;
extern actor_process_profile_definition g_profile_NPC_KOLINB;
extern actor_process_profile_definition g_profile_NPC_KS;
extern actor_process_profile_definition g_profile_NPC_KYURY;
extern actor_process_profile_definition g_profile_NPC_LEN;
extern actor_process_profile_definition g_profile_NPC_LF;
extern actor_process_profile_definition g_profile_NPC_LUD;
extern actor_process_profile_definition g_profile_NPC_MIDP;
extern actor_process_profile_definition g_profile_NPC_MK;
extern actor_process_profile_definition g_profile_NPC_MOI;
extern actor_process_profile_definition g_profile_NPC_MOIR;
extern actor_process_profile_definition g_profile_MYNA2;
extern actor_process_profile_definition g_profile_NPC_NE;
extern actor_process_profile_definition g_profile_NPC_P2;
extern actor_process_profile_definition g_profile_NPC_PACHI_BESU;
extern actor_process_profile_definition g_profile_NPC_PACHI_MARO;
extern actor_process_profile_definition g_profile_NPC_PACHI_TARO;
extern actor_process_profile_definition g_profile_NPC_PASSER;
extern actor_process_profile_definition g_profile_NPC_PASSER2;
extern actor_process_profile_definition g_profile_NPC_POST;
extern actor_process_profile_definition g_profile_NPC_POUYA;
extern actor_process_profile_definition g_profile_NPC_PRAYER;
extern actor_process_profile_definition g_profile_NPC_RACA;
extern actor_process_profile_definition g_profile_NPC_RAFREL;
extern actor_process_profile_definition g_profile_NPC_SARU;
extern actor_process_profile_definition g_profile_NPC_SEIB;
extern actor_process_profile_definition g_profile_NPC_SEIC;
extern actor_process_profile_definition g_profile_NPC_SEID;
extern actor_process_profile_definition g_profile_NPC_SEIRA;
extern actor_process_profile_definition g_profile_NPC_SERA2;
extern actor_process_profile_definition g_profile_NPC_SEIREI;
extern actor_process_profile_definition g_profile_NPC_SHAD;
extern actor_process_profile_definition g_profile_NPC_SHAMAN;
extern actor_process_profile_definition g_profile_NPC_SHOE;
extern actor_process_profile_definition g_profile_NPC_SHOP0;
extern actor_process_profile_definition g_profile_NPC_SMARO;
extern actor_process_profile_definition g_profile_NPC_SOLA;
extern actor_process_profile_definition g_profile_NPC_SOLDIERa;
extern actor_process_profile_definition g_profile_NPC_SOLDIERb;
extern actor_process_profile_definition g_profile_NPC_SQ;
extern actor_process_profile_definition g_profile_NPC_THE;
extern actor_process_profile_definition g_profile_NPC_THEB;
extern actor_process_profile_definition g_profile_NPC_TK;
extern actor_process_profile_definition g_profile_NPC_TKC;
extern actor_process_profile_definition g_profile_NPC_TKJ2;
extern actor_process_profile_definition g_profile_NPC_TKS;
extern actor_process_profile_definition g_profile_NPC_TOBY;
extern actor_process_profile_definition g_profile_NPC_TR;
extern actor_process_profile_definition g_profile_NPC_URI;
extern actor_process_profile_definition g_profile_NPC_WORM;
extern actor_process_profile_definition g_profile_NPC_WRESTLER;
extern actor_process_profile_definition g_profile_NPC_YAMID;
extern actor_process_profile_definition g_profile_NPC_YAMIS;
extern actor_process_profile_definition g_profile_NPC_YAMIT;
extern actor_process_profile_definition g_profile_NPC_YELIA;
extern actor_process_profile_definition g_profile_NPC_YKM;
extern actor_process_profile_definition g_profile_NPC_YKW;
extern actor_process_profile_definition g_profile_NPC_ZANB;
extern actor_process_profile_definition g_profile_NPC_ZANT;
extern actor_process_profile_definition g_profile_NPC_ZELR;
extern actor_process_profile_definition g_profile_NPC_ZELRO;
extern actor_process_profile_definition g_profile_NPC_ZELDA;
extern actor_process_profile_definition g_profile_NPC_ZRA;
extern actor_process_profile_definition g_profile_NPC_ZRC;
extern actor_process_profile_definition g_profile_NPC_ZRZ;
extern actor_process_profile_definition g_profile_Obj_Lv5Key;
extern actor_process_profile_definition g_profile_Obj_Turara;
extern actor_process_profile_definition g_profile_Obj_TvCdlst;
extern actor_process_profile_definition g_profile_Obj_Ytaihou;
extern actor_process_profile_definition g_profile_Obj_AmiShutter;
extern actor_process_profile_definition g_profile_Obj_Ari;
extern actor_process_profile_definition g_profile_OBJ_AUTOMATA;
extern actor_process_profile_definition g_profile_Obj_Avalanche;
extern actor_process_profile_definition g_profile_OBJ_BALLOON;
extern actor_process_profile_definition g_profile_Obj_BarDesk;
extern actor_process_profile_definition g_profile_Obj_Batta;
extern actor_process_profile_definition g_profile_Obj_BBox;
extern actor_process_profile_definition g_profile_OBJ_BED;
extern actor_process_profile_definition g_profile_Obj_Bemos;
extern actor_process_profile_definition g_profile_Obj_Bhbridge;
extern actor_process_profile_definition g_profile_Obj_BkLeaf;
extern actor_process_profile_definition g_profile_BkyRock;
extern actor_process_profile_definition g_profile_Obj_BmWindow;
extern actor_process_profile_definition g_profile_Obj_BoomShutter;
extern actor_process_profile_definition g_profile_Obj_Bombf;
extern actor_process_profile_definition g_profile_OBJ_BOUMATO;
extern actor_process_profile_definition g_profile_OBJ_BRG;
extern actor_process_profile_definition g_profile_Obj_BsGate;
extern actor_process_profile_definition g_profile_Obj_awaPlar;
extern actor_process_profile_definition g_profile_Obj_CatDoor;
extern actor_process_profile_definition g_profile_OBJ_CB;
extern actor_process_profile_definition g_profile_Obj_ChainBlock;
extern actor_process_profile_definition g_profile_Obj_Cdoor;
extern actor_process_profile_definition g_profile_Obj_Chandelier;
extern actor_process_profile_definition g_profile_Obj_Chest;
extern actor_process_profile_definition g_profile_Obj_Cho;
extern actor_process_profile_definition g_profile_Obj_Cowdoor;
extern actor_process_profile_definition g_profile_Obj_Crope;
extern actor_process_profile_definition g_profile_Obj_CRVFENCE;
extern actor_process_profile_definition g_profile_Obj_CRVGATE;
extern actor_process_profile_definition g_profile_Obj_CRVHAHEN;
extern actor_process_profile_definition g_profile_Obj_CRVLH_DW;
extern actor_process_profile_definition g_profile_Obj_CRVLH_UP;
extern actor_process_profile_definition g_profile_Obj_CRVSTEEL;
extern actor_process_profile_definition g_profile_Obj_Crystal;
extern actor_process_profile_definition g_profile_Obj_ChainWall;
extern actor_process_profile_definition g_profile_Obj_DamCps;
extern actor_process_profile_definition g_profile_Obj_Dan;
extern actor_process_profile_definition g_profile_Obj_Digholl;
extern actor_process_profile_definition g_profile_Obj_DigSnow;
extern actor_process_profile_definition g_profile_Obj_Elevator;
extern actor_process_profile_definition g_profile_Obj_Drop;
extern actor_process_profile_definition g_profile_Obj_DUST;
extern actor_process_profile_definition g_profile_Obj_E_CREATE;
extern actor_process_profile_definition g_profile_Obj_FallObj;
extern actor_process_profile_definition g_profile_Obj_Fan;
extern actor_process_profile_definition g_profile_Obj_Fchain;
extern actor_process_profile_definition g_profile_Obj_FireWood;
extern actor_process_profile_definition g_profile_Obj_FireWood2;
extern actor_process_profile_definition g_profile_Obj_FirePillar;
extern actor_process_profile_definition g_profile_Obj_FirePillar2;
extern actor_process_profile_definition g_profile_Obj_Flag;
extern actor_process_profile_definition g_profile_Obj_Flag2;
extern actor_process_profile_definition g_profile_Obj_Flag3;
extern actor_process_profile_definition g_profile_OBJ_FOOD;
extern actor_process_profile_definition g_profile_OBJ_FW;
extern actor_process_profile_definition g_profile_OBJ_GADGET;
extern actor_process_profile_definition g_profile_Obj_GanonWall;
extern actor_process_profile_definition g_profile_Obj_GanonWall2;
extern actor_process_profile_definition g_profile_OBJ_GB;
extern actor_process_profile_definition g_profile_Obj_Geyser;
extern actor_process_profile_definition g_profile_Obj_glowSphere;
extern actor_process_profile_definition g_profile_OBJ_GM;
extern actor_process_profile_definition g_profile_Obj_GoGate;
extern actor_process_profile_definition g_profile_Obj_GOMIKABE;
extern actor_process_profile_definition g_profile_OBJ_GRA;
extern actor_process_profile_definition g_profile_GRA_WALL;
extern actor_process_profile_definition g_profile_Obj_GraRock;
extern actor_process_profile_definition g_profile_Obj_GraveStone;
extern actor_process_profile_definition g_profile_GRDWATER;
extern actor_process_profile_definition g_profile_Obj_GrzRock;
extern actor_process_profile_definition g_profile_Obj_H_Saku;
extern actor_process_profile_definition g_profile_Obj_HBarrel;
extern actor_process_profile_definition g_profile_Obj_HFtr;
extern actor_process_profile_definition g_profile_Obj_MHasu;
extern actor_process_profile_definition g_profile_Obj_Hata;
extern actor_process_profile_definition g_profile_OBJ_HB;
extern actor_process_profile_definition g_profile_Obj_HBombkoya;
extern actor_process_profile_definition g_profile_Obj_HeavySw;
extern actor_process_profile_definition g_profile_Obj_Hfuta;
extern actor_process_profile_definition g_profile_Obj_HsTarget;
extern actor_process_profile_definition g_profile_Obj_Ice_l;
extern actor_process_profile_definition g_profile_Obj_Ice_s;
extern actor_process_profile_definition g_profile_Obj_IceBlock;
extern actor_process_profile_definition g_profile_Obj_IceLeaf;
extern actor_process_profile_definition g_profile_OBJ_IHASI;
extern actor_process_profile_definition g_profile_Obj_Ikada;
extern actor_process_profile_definition g_profile_Obj_InoBone;
extern actor_process_profile_definition g_profile_Obj_ITA;
extern actor_process_profile_definition g_profile_OBJ_ITAMATO;
extern actor_process_profile_definition g_profile_Obj_Kabuto;
extern actor_process_profile_definition g_profile_Obj_Kag;
extern actor_process_profile_definition g_profile_OBJ_KAGE;
extern actor_process_profile_definition g_profile_OBJ_KAGO;
extern actor_process_profile_definition g_profile_Obj_Kaisou;
extern actor_process_profile_definition g_profile_Obj_Kam;
extern actor_process_profile_definition g_profile_Obj_Kantera;
extern actor_process_profile_definition g_profile_Obj_Kat;
extern actor_process_profile_definition g_profile_Obj_KazeNeko;
extern actor_process_profile_definition g_profile_OBJ_KBOX;
extern actor_process_profile_definition g_profile_OBJ_KEY;
extern actor_process_profile_definition g_profile_OBJ_KEYHOLE;
extern actor_process_profile_definition g_profile_OBJ_KI;
extern actor_process_profile_definition g_profile_Obj_KiPot;
extern actor_process_profile_definition g_profile_OBJ_KITA;
extern actor_process_profile_definition g_profile_Obj_KJgjs;
extern actor_process_profile_definition g_profile_Obj_KKanban;
extern actor_process_profile_definition g_profile_KN_BULLET;
extern actor_process_profile_definition g_profile_Obj_Kshutter;
extern actor_process_profile_definition g_profile_Obj_Kuw;
extern actor_process_profile_definition g_profile_Obj_KWheel00;
extern actor_process_profile_definition g_profile_Obj_KWheel01;
extern actor_process_profile_definition g_profile_Obj_KznkArm;
extern actor_process_profile_definition g_profile_Obj_Laundry;
extern actor_process_profile_definition g_profile_Obj_LndRope;
extern actor_process_profile_definition g_profile_OBJ_LBOX;
extern actor_process_profile_definition g_profile_OBJ_LP;
extern actor_process_profile_definition g_profile_Obj_Lv1Cdl00;
extern actor_process_profile_definition g_profile_Obj_Lv1Cdl01;
extern actor_process_profile_definition g_profile_Obj_Lv3Candle;
extern actor_process_profile_definition g_profile_Obj_Lv3Water;
extern actor_process_profile_definition g_profile_Obj_Lv3Water2;
extern actor_process_profile_definition g_profile_OBJ_LV3WATERB;
extern actor_process_profile_definition g_profile_Obj_Lv3R10Saka;
extern actor_process_profile_definition g_profile_Obj_WaterEff;
extern actor_process_profile_definition g_profile_Tag_Lv4CandleDm;
extern actor_process_profile_definition g_profile_Tag_Lv4Candle;
extern actor_process_profile_definition g_profile_Obj_Lv4EdShutter;
extern actor_process_profile_definition g_profile_Obj_Lv4Gate;
extern actor_process_profile_definition g_profile_Obj_Lv4HsTarget;
extern actor_process_profile_definition g_profile_Obj_Lv4PoGate;
extern actor_process_profile_definition g_profile_Obj_Lv4RailWall;
extern actor_process_profile_definition g_profile_Obj_Lv4SlideWall;
extern actor_process_profile_definition g_profile_Obj_Lv4Bridge;
extern actor_process_profile_definition g_profile_Obj_Lv4Chan;
extern actor_process_profile_definition g_profile_Obj_Lv4DigSand;
extern actor_process_profile_definition g_profile_Obj_Lv4Floor;
extern actor_process_profile_definition g_profile_Obj_Lv4Gear;
extern actor_process_profile_definition g_profile_Obj_PRElvtr;
extern actor_process_profile_definition g_profile_Obj_Lv4PRwall;
extern actor_process_profile_definition g_profile_Obj_Lv4Sand;
extern actor_process_profile_definition g_profile_Obj_Lv5FBoard;
extern actor_process_profile_definition g_profile_Obj_IceWall;
extern actor_process_profile_definition g_profile_Obj_Lv5SwIce;
extern actor_process_profile_definition g_profile_Obj_Ychndlr;
extern actor_process_profile_definition g_profile_Obj_YIblltray;
extern actor_process_profile_definition g_profile_Obj_Lv6ChgGate;
extern actor_process_profile_definition g_profile_Obj_Lv6FuriTrap;
extern actor_process_profile_definition g_profile_Obj_Lv6Lblock;
extern actor_process_profile_definition g_profile_Obj_Lv6SwGate;
extern actor_process_profile_definition g_profile_Obj_Lv6SzGate;
extern actor_process_profile_definition g_profile_Obj_Lv6Tenbin;
extern actor_process_profile_definition g_profile_Obj_Lv6TogeRoll;
extern actor_process_profile_definition g_profile_Obj_Lv6TogeTrap;
extern actor_process_profile_definition g_profile_Obj_Lv6bemos;
extern actor_process_profile_definition g_profile_Obj_Lv6bemos2;
extern actor_process_profile_definition g_profile_Obj_Lv6EGate;
extern actor_process_profile_definition g_profile_Obj_Lv6ElevtA;
extern actor_process_profile_definition g_profile_Obj_Lv6SwTurn;
extern actor_process_profile_definition g_profile_Obj_Lv7BsGate;
extern actor_process_profile_definition g_profile_Obj_Lv7PropY;
extern actor_process_profile_definition g_profile_Obj_Lv7Bridge;
extern actor_process_profile_definition g_profile_Obj_Lv8KekkaiTrap;
extern actor_process_profile_definition g_profile_Obj_Lv8Lift;
extern actor_process_profile_definition g_profile_Obj_Lv8OptiLift;
extern actor_process_profile_definition g_profile_Obj_Lv8UdFloor;
extern actor_process_profile_definition g_profile_Obj_Lv9SwShutter;
extern actor_process_profile_definition g_profile_Obj_MagLift;
extern actor_process_profile_definition g_profile_Obj_MagLiftRot;
extern actor_process_profile_definition g_profile_OBJ_MAKI;
extern actor_process_profile_definition g_profile_Obj_MasterSword;
extern actor_process_profile_definition g_profile_Obj_Mato;
extern actor_process_profile_definition g_profile_Obj_MHole;
extern actor_process_profile_definition g_profile_OBJ_MIE;
extern actor_process_profile_definition g_profile_Obj_Mirror6Pole;
extern actor_process_profile_definition g_profile_Obj_MirrorChain;
extern actor_process_profile_definition g_profile_Obj_MirrorSand;
extern actor_process_profile_definition g_profile_Obj_MirrorScrew;
extern actor_process_profile_definition g_profile_Obj_MirrorTable;
extern actor_process_profile_definition g_profile_OBJ_MSIMA;
extern actor_process_profile_definition g_profile_Obj_MvStair;
extern actor_process_profile_definition g_profile_OBJ_MYOGAN;
extern actor_process_profile_definition g_profile_Obj_Nagaisu;
extern actor_process_profile_definition g_profile_Obj_Nan;
extern actor_process_profile_definition g_profile_OBJ_NDOOR;
extern actor_process_profile_definition g_profile_OBJ_NOUGU;
extern actor_process_profile_definition g_profile_OCTHASHI;
extern actor_process_profile_definition g_profile_OBJ_OILTUBO;
extern actor_process_profile_definition g_profile_Obj_Onsen;
extern actor_process_profile_definition g_profile_OBJ_ONSEN_FIRE;
extern actor_process_profile_definition g_profile_Obj_OnsenTaru;
extern actor_process_profile_definition g_profile_Obj_PushDoor;
extern actor_process_profile_definition g_profile_Obj_PDtile;
extern actor_process_profile_definition g_profile_Obj_PDwall;
extern actor_process_profile_definition g_profile_Obj_Picture;
extern actor_process_profile_definition g_profile_Obj_Pillar;
extern actor_process_profile_definition g_profile_OBJ_PLEAF;
extern actor_process_profile_definition g_profile_Obj_poCandle;
extern actor_process_profile_definition g_profile_Obj_poFire;
extern actor_process_profile_definition g_profile_Obj_poTbox;
extern actor_process_profile_definition g_profile_Obj_Prop;
extern actor_process_profile_definition g_profile_OBJ_PUMPKIN;
extern actor_process_profile_definition g_profile_Obj_RCircle;
extern actor_process_profile_definition g_profile_Obj_RfHole;
extern actor_process_profile_definition g_profile_Obj_RiderGate;
extern actor_process_profile_definition g_profile_Obj_RIVERROCK;
extern actor_process_profile_definition g_profile_OBJ_ROCK;
extern actor_process_profile_definition g_profile_Obj_RotBridge;
extern actor_process_profile_definition g_profile_Obj_RotTrap;
extern actor_process_profile_definition g_profile_OBJ_ROTEN;
extern actor_process_profile_definition g_profile_Obj_RotStair;
extern actor_process_profile_definition g_profile_OBJ_RW;
extern actor_process_profile_definition g_profile_Obj_Saidan;
extern actor_process_profile_definition g_profile_Obj_Sakuita;
extern actor_process_profile_definition g_profile_Obj_ItaRope;
extern actor_process_profile_definition g_profile_Obj_SCannon;
extern actor_process_profile_definition g_profile_Obj_SCannonCrs;
extern actor_process_profile_definition g_profile_Obj_SCannonTen;
extern actor_process_profile_definition g_profile_OBJ_SEKIDOOR;
extern actor_process_profile_definition g_profile_OBJ_SEKIZO;
extern actor_process_profile_definition g_profile_OBJ_SEKIZOA;
extern actor_process_profile_definition g_profile_Obj_Shield;
extern actor_process_profile_definition g_profile_Obj_SM_DOOR;
extern actor_process_profile_definition g_profile_Obj_SmallKey;
extern actor_process_profile_definition g_profile_Obj_SmgDoor;
extern actor_process_profile_definition g_profile_Obj_Smoke;
extern actor_process_profile_definition g_profile_OBJ_SMTILE;
extern actor_process_profile_definition g_profile_Obj_SmWStone;
extern actor_process_profile_definition g_profile_Tag_SnowEff;
extern actor_process_profile_definition g_profile_Obj_SnowSoup;
extern actor_process_profile_definition g_profile_OBJ_SO;
extern actor_process_profile_definition g_profile_Obj_SpinLift;
extern actor_process_profile_definition g_profile_OBJ_SSDRINK;
extern actor_process_profile_definition g_profile_OBJ_SSITEM;
extern actor_process_profile_definition g_profile_Obj_StairBlock;
extern actor_process_profile_definition g_profile_Obj_Stone;
extern actor_process_profile_definition g_profile_Obj_Stopper;
extern actor_process_profile_definition g_profile_Obj_Stopper2;
extern actor_process_profile_definition g_profile_OBJ_SUISYA;
extern actor_process_profile_definition g_profile_OBJ_SW;
extern actor_process_profile_definition g_profile_Obj_SwBallA;
extern actor_process_profile_definition g_profile_Obj_SwBallB;
extern actor_process_profile_definition g_profile_Obj_SwBallC;
extern actor_process_profile_definition g_profile_Obj_SwLight;
extern actor_process_profile_definition g_profile_Obj_SwChain;
extern actor_process_profile_definition g_profile_Obj_SwHang;
extern actor_process_profile_definition g_profile_Obj_Sword;
extern actor_process_profile_definition g_profile_Obj_Swpush2;
extern actor_process_profile_definition g_profile_Obj_SwSpinner;
extern actor_process_profile_definition g_profile_Obj_SwTurn;
extern actor_process_profile_definition g_profile_Obj_SyRock;
extern actor_process_profile_definition g_profile_Obj_SZbridge;
extern actor_process_profile_definition g_profile_Obj_TaFence;
extern actor_process_profile_definition g_profile_Obj_Table;
extern actor_process_profile_definition g_profile_Obj_TakaraDai;
extern actor_process_profile_definition g_profile_OBJ_TATIGI;
extern actor_process_profile_definition g_profile_Obj_Ten;
extern actor_process_profile_definition g_profile_Obj_TestCube;
extern actor_process_profile_definition g_profile_Obj_Gake;
extern actor_process_profile_definition g_profile_Obj_THASHI;
extern actor_process_profile_definition g_profile_Obj_TDoor;
extern actor_process_profile_definition g_profile_Obj_TimeFire;
extern actor_process_profile_definition g_profile_OBJ_TKS;
extern actor_process_profile_definition g_profile_Obj_TMoon;
extern actor_process_profile_definition g_profile_Obj_ToaruMaki;
extern actor_process_profile_definition g_profile_OBJ_TOBY;
extern actor_process_profile_definition g_profile_Obj_TobyHouse;
extern actor_process_profile_definition g_profile_Obj_TogeTrap;
extern actor_process_profile_definition g_profile_Obj_Tombo;
extern actor_process_profile_definition g_profile_Obj_Tornado;
extern actor_process_profile_definition g_profile_Obj_Tornado2;
extern actor_process_profile_definition g_profile_OBJ_TP;
extern actor_process_profile_definition g_profile_TREESH;
extern actor_process_profile_definition g_profile_Obj_TwGate;
extern actor_process_profile_definition g_profile_OBJ_UDOOR;
extern actor_process_profile_definition g_profile_OBJ_USAKU;
extern actor_process_profile_definition g_profile_Obj_VolcGnd;
extern actor_process_profile_definition g_profile_Obj_VolcanicBall;
extern actor_process_profile_definition g_profile_Obj_VolcanicBomb;
extern actor_process_profile_definition g_profile_Obj_KakarikoBrg;
extern actor_process_profile_definition g_profile_Obj_OrdinBrg;
extern actor_process_profile_definition g_profile_Obj_WtGate;
extern actor_process_profile_definition g_profile_Obj_WaterPillar;
extern actor_process_profile_definition g_profile_Obj_WaterFall;
extern actor_process_profile_definition g_profile_Obj_Wchain;
extern actor_process_profile_definition g_profile_Obj_WdStick;
extern actor_process_profile_definition g_profile_OBJ_WEB0;
extern actor_process_profile_definition g_profile_OBJ_WEB1;
extern actor_process_profile_definition g_profile_Obj_WellCover;
extern actor_process_profile_definition g_profile_OBJ_WFLAG;
extern actor_process_profile_definition g_profile_Obj_WindStone;
extern actor_process_profile_definition g_profile_Obj_Window;
extern actor_process_profile_definition g_profile_Obj_WoodPendulum;
extern actor_process_profile_definition g_profile_Obj_WoodStatue;
extern actor_process_profile_definition g_profile_Obj_WoodenSword;
extern actor_process_profile_definition g_profile_OBJ_YBAG;
extern actor_process_profile_definition g_profile_OBJ_YSTONE;
extern actor_process_profile_definition g_profile_Obj_ZoraCloth;
extern actor_process_profile_definition g_profile_Obj_ZDoor;
extern actor_process_profile_definition g_profile_Obj_zrTurara;
extern actor_process_profile_definition g_profile_Obj_zrTuraraRc;
extern actor_process_profile_definition g_profile_ZRA_MARK;
extern actor_process_profile_definition g_profile_OBJ_ZRAFREEZE;
extern actor_process_profile_definition g_profile_Obj_ZraRock;
extern actor_process_profile_definition g_profile_PASSER_MNG;
extern actor_process_profile_definition g_profile_PERU;
extern actor_process_profile_definition g_profile_PPolamp;
extern actor_process_profile_definition g_profile_SKIP2D;
extern actor_process_profile_definition g_profile_START_AND_GOAL;
extern actor_process_profile_definition g_profile_SwBall;
extern actor_process_profile_definition g_profile_SwLBall;
extern actor_process_profile_definition g_profile_SwTime;
extern actor_process_profile_definition g_profile_Tag_Lv6Gate;
extern actor_process_profile_definition g_profile_Tag_Lv7Gate;
extern actor_process_profile_definition g_profile_Tag_Lv8Gate;
extern actor_process_profile_definition g_profile_Tag_TWGate;
extern actor_process_profile_definition g_profile_Tag_Arena;
extern actor_process_profile_definition g_profile_Tag_Assist;
extern actor_process_profile_definition g_profile_TAG_BTLITM;
extern actor_process_profile_definition g_profile_Tag_ChgRestart;
extern actor_process_profile_definition g_profile_TAG_CSW;
extern actor_process_profile_definition g_profile_Tag_Escape;
extern actor_process_profile_definition g_profile_Tag_FWall;
extern actor_process_profile_definition g_profile_TAG_GRA;
extern actor_process_profile_definition g_profile_TAG_GUARD;
extern actor_process_profile_definition g_profile_Tag_Instruction;
extern actor_process_profile_definition g_profile_Tag_KagoFall;
extern actor_process_profile_definition g_profile_Tag_LightBall;
extern actor_process_profile_definition g_profile_TAG_LV5SOUP;
extern actor_process_profile_definition g_profile_Tag_Lv6CstaSw;
extern actor_process_profile_definition g_profile_Tag_Mmsg;
extern actor_process_profile_definition g_profile_Tag_Mwait;
extern actor_process_profile_definition g_profile_TAG_MYNA2;
extern actor_process_profile_definition g_profile_TAG_MNLIGHT;
extern actor_process_profile_definition g_profile_TAG_PATI;
extern actor_process_profile_definition g_profile_Tag_poFire;
extern actor_process_profile_definition g_profile_TAG_QS;
extern actor_process_profile_definition g_profile_Tag_RetRoom;
extern actor_process_profile_definition g_profile_Tag_RiverBack;
extern actor_process_profile_definition g_profile_Tag_RmbitSw;
extern actor_process_profile_definition g_profile_Tag_Schedule;
extern actor_process_profile_definition g_profile_Tag_SetBall;
extern actor_process_profile_definition g_profile_Tag_Restart;
extern actor_process_profile_definition g_profile_TAG_SHOPCAM;
extern actor_process_profile_definition g_profile_TAG_SHOPITM;
extern actor_process_profile_definition g_profile_Tag_SmkEmt;
extern actor_process_profile_definition g_profile_Tag_Spinner;
extern actor_process_profile_definition g_profile_Tag_Sppath;
extern actor_process_profile_definition g_profile_TAG_SSDRINK;
extern actor_process_profile_definition g_profile_Tag_Stream;
extern actor_process_profile_definition g_profile_Tag_TheBHint;
extern actor_process_profile_definition g_profile_Tag_WaraHowl;
extern actor_process_profile_definition g_profile_Tag_WatchGe;
extern actor_process_profile_definition g_profile_Tag_WaterFall;
extern actor_process_profile_definition g_profile_Tag_Wljump;
extern actor_process_profile_definition g_profile_TAG_YAMI;
extern actor_process_profile_definition g_profile_TALK;
extern actor_process_profile_definition g_profile_TBOX_SW;
extern actor_process_profile_definition g_profile_TITLE;
extern actor_process_profile_definition g_profile_WarpBug;
#endif
extern process_profile_definition* g_fpcPfLst_ProfileList[];
@@ -178,7 +178,11 @@ J2DMaterial* J2DMaterialFactory::create(J2DMaterial* param_0, int index, u32 par
}
JUtility::TColor J2DMaterialFactory::newMatColor(int param_0, int param_1) const {
#ifdef __MWERKS__
JUtility::TColor local_20 = (GXColor){0xff,0xff,0xff,0xff};
#else
JUtility::TColor local_20 = GXColor{0xff,0xff,0xff,0xff};
#endif
J2DMaterialInitData* iVar2 = &field_0x4[field_0x8[param_0]];
if (iVar2->field_0x8[param_1] != 0xffff) {
return field_0x10[iVar2->field_0x8[param_1]];
@@ -552,6 +552,32 @@ inline f32 J3DHermiteInterpolation(__REGISTER f32 pp1, __REGISTER s16 const* pp2
fsubs fout, fout, ff0
}
// clang-format on
return fout;
#else
f32 time1 = (f32)*pp2;
f32 value1 = (f32)*pp3;
f32 tangent1 = (f32)*pp4;
f32 time2 = (f32)*pp5;
f32 value2 = (f32)*pp6;
f32 tangent2 = (f32)*pp7;
f32 duration = time2 - time1;
f32 t = (pp1 - time1) / duration;
f32 t2 = t * t;
f32 dv = value2 - value1;
f32 ff4 = dv - duration * tangent1;
f32 ff0 = tangent2 * duration + value1;
ff0 = ff0 - value2;
ff0 = ff0 - ff4;
ff0 = t2 * ff0;
f32 fout = duration * tangent1 + ff0;
fout = fout * t + value1;
fout = ff4 * t2 + fout;
fout = fout - ff0;
return fout;
#endif
}
@@ -15,11 +15,11 @@ Mtx* J3DMtxBuffer::sNoUseDrawMtxPtr = &J3DMtxBuffer::sNoUseDrawMtx;
Mtx33* J3DMtxBuffer::sNoUseNrmMtxPtr = &J3DMtxBuffer::sNoUseNrmMtx;
// force .sdata2 order
f32 dummy1() {
static f32 dummy1() {
return 1.0f;
}
f32 dummy0() {
static f32 dummy0() {
return 0.0f;
}
@@ -464,7 +464,11 @@ u32 J3DMaterialFactory::calcSizeLockedMaterial(J3DMaterial* i_material, int i_id
}
J3DGXColor J3DMaterialFactory::newMatColor(int i_idx, int i_no) const {
#ifdef __MWERKS__
J3DGXColor dflt = (GXColor){0xff, 0xff, 0xff, 0xff};
#else
J3DGXColor dflt = GXColor{0xff, 0xff, 0xff, 0xff};
#endif
J3DMaterialInitData* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]];
if (mtl_init_data->mMatColorIdx[i_no] != 0xffff) {
return mpMatColor[mtl_init_data->mMatColorIdx[i_no]];
@@ -493,7 +497,11 @@ J3DColorChan J3DMaterialFactory::newColorChan(int i_idx, int i_no) const {
}
J3DGXColor J3DMaterialFactory::newAmbColor(int i_idx, int i_no) const {
#ifdef __MWERKS__
J3DGXColor dflt = (GXColor){0x32, 0x32, 0x32, 0x32};
#else
J3DGXColor dflt = GXColor{0x32, 0x32, 0x32, 0x32};
#endif
J3DMaterialInitData* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]];
if (mtl_init_data->mAmbColorIdx[i_no] != 0xffff) {
return mpAmbColor[mtl_init_data->mAmbColorIdx[i_no]];
@@ -570,7 +578,11 @@ J3DGXColorS10 J3DMaterialFactory::newTevColor(int i_idx, int i_no) const {
}
J3DGXColor J3DMaterialFactory::newTevKColor(int i_idx, int i_no) const {
#ifdef __MWERKS__
J3DGXColor dflt = (GXColor){0xff, 0xff, 0xff, 0xff};
#else
J3DGXColor dflt = GXColor{0xff, 0xff, 0xff, 0xff};
#endif
J3DMaterialInitData* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]];
if (mtl_init_data->mTevKColorIdx[i_no] != 0xffff) {
return mpTevKColor[mtl_init_data->mTevKColorIdx[i_no]];
@@ -167,7 +167,11 @@ J3DMaterial* J3DMaterialFactory_v21::create(J3DMaterial* i_material, int i_idx,
}
J3DGXColor J3DMaterialFactory_v21::newMatColor(int i_idx, int i_no) const {
#ifdef __MWERKS__
J3DGXColor defaultColor = (GXColor){0xff, 0xff, 0xff, 0xff};
#else
J3DGXColor defaultColor = GXColor{0xff, 0xff, 0xff, 0xff};
#endif
J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]];
if (mtl_init_data->mMatColorIdx[i_no] != 0xffff) {
return J3DGXColor(mpMatColor[mtl_init_data->mMatColorIdx[i_no]]);
@@ -262,7 +266,11 @@ J3DGXColorS10 J3DMaterialFactory_v21::newTevColor(int i_idx, int i_no) const {
}
J3DGXColor J3DMaterialFactory_v21::newTevKColor(int i_idx, int param_1) const {
#ifdef __MWERKS__
J3DGXColor defaultColor = (GXColor){0xff, 0xff, 0xff, 0xff};
#else
J3DGXColor defaultColor = GXColor{0xff, 0xff, 0xff, 0xff};
#endif
J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]];
if (mtl_init_data->mTevKColorIdx[param_1] != 0xffff) {
return J3DGXColor(mpTevKColor[mtl_init_data->mTevKColorIdx[param_1]]);
+10 -6
View File
@@ -7,12 +7,16 @@
extern void mDoGph_BlankingON();
extern void mDoGph_BlankingOFF();
extern void mDoGph_BeforeOfDraw();
extern void mDoGph_AfterOfDraw();
extern void mDoGph_Painter();
extern void mDoGph_Create();
extern int mDoGph_BeforeOfDraw();
extern int mDoGph_AfterOfDraw();
extern int mDoGph_Painter();
extern int mDoGph_Create();
cAPI_Interface g_cAPI_Interface = {
mDoGph_Create, mDoGph_BeforeOfDraw, mDoGph_AfterOfDraw,
mDoGph_Painter, mDoGph_BlankingON, mDoGph_BlankingOFF,
(cAPIGph_Mthd)mDoGph_Create,
(cAPIGph_Mthd)mDoGph_BeforeOfDraw,
(cAPIGph_Mthd)mDoGph_AfterOfDraw,
(cAPIGph_Mthd)mDoGph_Painter,
mDoGph_BlankingON,
mDoGph_BlankingOFF,
};
+2 -2
View File
@@ -1246,7 +1246,7 @@ void daAlink_c::setWolfDigEffect() {
} else if (field_0x3198 == 7) {
var_r29 = 0;
var_r28 = ID_ZI_J_DASHWTRA_C;
setEmitterPolyColor(&field_0x32cc, ID_ZI_J_DASHWTRA_A, mPolyInfo2, &field_0x37d4, &sp18);
setEmitterPolyColor((u32*)&field_0x32cc, ID_ZI_J_DASHWTRA_A, mPolyInfo2, &field_0x37d4, &sp18);
setEmitterPolyColor(&field_0x31bc, ID_ZI_J_DASHWTRA_B, mPolyInfo2, &field_0x37d4, &sp18);
} else {
var_r29 = 0;
@@ -1281,7 +1281,7 @@ void daAlink_c::setWolfSwimEndEffect(JPABaseEmitter** param_0, JPABaseEmitter**
var_r30 = 1;
}
*param_0 = setEmitterColor(&field_0x32cc, name0[var_r30], &field_0x37c8, &shape_angle);
*param_0 = setEmitterColor((u32*)&field_0x32cc, name0[var_r30], &field_0x37c8, &shape_angle);
if (var_r30 != 0) {
*param_1 = setEmitterColor(&field_0x31bc, name1[var_r30], &field_0x37c8, &shape_angle);
+3
View File
@@ -5703,4 +5703,7 @@ actor_process_profile_definition g_profile_B_DS = {
fopAc_CULLBOX_CUSTOM_e,
};
cXyz daB_DS_c::getHandPosR() { return mHandPos[1]; }
cXyz daB_DS_c::getHandPosL() { return mHandPos[0]; }
AUDIO_INSTANCES;
+1 -1
View File
@@ -336,7 +336,7 @@ static BOOL way_bg_check(e_dd_class* i_this, f32 param_2) {
return FALSE;
}
u8 hio_set;
static u8 hio_set;
static daE_DD_HIO_c l_HIO;
+7 -7
View File
@@ -354,13 +354,13 @@ static BOOL other_bg_check2(e_dn_class* i_this, cXyz* i_pos) {
return FALSE;
}
u8 hio_set;
static u8 hio_set;
daE_DN_HIO_c l_HIO;
static daE_DN_HIO_c l_HIO;
fopAc_ac_c* target_info[10];
static fopAc_ac_c* target_info[10];
int target_info_count;
static int target_info_count;
static void* s_b_sub(void* i_actor, void* i_data) {
if (fopAcM_IsActor(i_actor) && dBomb_c::checkBombActor((fopAc_ac_c*)i_actor) && !((dBomb_c*)i_actor)->checkStateExplode() && target_info_count < 10) {
@@ -2978,7 +2978,7 @@ static void anm_se_set(e_dn_class* i_this) {
}
}
int c_start;
static int c_start;
static int daE_DN_Execute(e_dn_class* i_this) {
if (i_this->status != 0) {
@@ -3298,9 +3298,9 @@ static int daE_DN_Delete(e_dn_class* i_this) {
return 1;
}
Vec jv_offset = { 0.0f, 0.0f, 0.0f };
static Vec jv_offset = { 0.0f, 0.0f, 0.0f };
dJntColData_c jc_data[12] = {
static dJntColData_c jc_data[12] = {
{0, 1, 2, 40.0f, &jv_offset}, {0, 1, 3, 30.0f, &jv_offset},
{0, 1, 22, 40.0f, &jv_offset}, {0, 1, 11, 15.0f, &jv_offset},
{0, 1, 12, 10.0f, &jv_offset}, {0, 1, 17, 15.0f, &jv_offset},
+1 -1
View File
@@ -127,7 +127,7 @@ static f32 dummy_117095() {
}
#endif
bool hio_set;
static bool hio_set;
static daE_FB_HIO_c l_HIO;
+7 -7
View File
@@ -289,13 +289,13 @@ static BOOL other_bg_check2(e_mf_class* i_this, cXyz* param_2) {
return FALSE;
}
u8 hio_set;
static u8 hio_set;
daE_MF_HIO_c l_HIO;
static daE_MF_HIO_c l_HIO;
fopAc_ac_c* target_info[10];
static fopAc_ac_c* target_info[10];
int target_info_count;
static int target_info_count;
static void* s_b_sub(void* i_actor, void* i_data) {
if (fopAcM_IsActor(i_actor) && dBomb_c::checkBombActor((fopAc_ac_c*)i_actor) && !((dBomb_c*)i_actor)->checkStateExplode() && target_info_count < 10) {
@@ -2773,7 +2773,7 @@ static void anm_se_set(e_mf_class* i_this) {
}
}
int c_start;
static int c_start;
static int daE_MF_Execute(e_mf_class* i_this) {
fopEn_enemy_c* a_this = (fopEn_enemy_c*)&i_this->actor;
@@ -3085,9 +3085,9 @@ static int daE_MF_Delete(e_mf_class* i_this) {
return 1;
}
Vec jv_offset = { 0.0f, 0.0f, 0.0f };
static Vec jv_offset = { 0.0f, 0.0f, 0.0f };
dJntColData_c jc_data[12] = {
static dJntColData_c jc_data[12] = {
{0, 1, 2, 40.0f, &jv_offset}, {0, 1, 3, 30.0f, &jv_offset},
{0, 1, 22, 40.0f, &jv_offset}, {0, 1, 11, 15.0f, &jv_offset},
{0, 1, 12, 10.0f, &jv_offset}, {0, 1, 17, 15.0f, &jv_offset},
+1 -1
View File
@@ -137,7 +137,7 @@ static cXyz STAGE_CENTER_POS;
static s16 STAGE_ANGLE_Y;
u8 hio_set;
static u8 hio_set;
static daE_MK_HIO_c l_HIO;
+1 -1
View File
@@ -129,7 +129,7 @@ static int daE_NZ_Draw(e_nz_class* i_this) {
return 1;
}
bool hio_set;
static bool hio_set;
static daE_NZ_HIO_c l_HIO;
+1 -1
View File
@@ -873,7 +873,7 @@ void daE_VA_c::setFireEffect(int param_0) {
dComIfGp_particle_set(field_0x10f80[idx + 2], 0x3AE, &field_0x1140[param_0], NULL, &scale);
}
f32 dummy() {
static f32 dummy() {
return 3.2f;
}
+1 -1
View File
@@ -1716,7 +1716,7 @@ static void e_yr_su_wait_move(e_yr_class* i_this) {
}
}
f32 dummy() {
static f32 dummy() {
return -50.0f;
}
+1 -1
View File
@@ -16,7 +16,7 @@ static int l_bmdData[1][2] = {
{11, 1},
};
daNpcT_evtData_c l_evtList[11] = {
static daNpcT_evtData_c l_evtList[11] = {
{"", 0},
{"NO_RESPONSE", 0},
{"WILDGOAT", 2},
+1 -1
View File
@@ -192,7 +192,7 @@ enum Mode {
static NPC_GRO_HIO_CLASS l_HIO;
daNpc_Maro_c::actionFunc dummy_lit_3931() {
static daNpc_Maro_c::actionFunc dummy_lit_3931() {
return &daNpc_Maro_c::choccai;
}
+1 -1
View File
@@ -941,7 +941,7 @@ int daNpcKasiMich_c::getWolfPathNearIdx() {
return rv;
}
void dummy() {
static void dummy() {
daNpcKasiMich_c::actionFunc temp;
temp = &daNpcKasiMich_c::wait;
temp = &daNpcKasiMich_c::wait;
+1 -1
View File
@@ -116,7 +116,7 @@ static int l_bmdData[2][2] = {
{11, 1}, {5, 2},
};
daNpcT_evtData_c l_evtList[15] = {
static daNpcT_evtData_c l_evtList[15] = {
{"", 0},
{"DEFAULT_GETITEM", 0},
{"NO_RESPONSE", 0},
+1 -1
View File
@@ -20,7 +20,7 @@
#include "f_op/f_op_camera_mng.h"
#include <dolphin/types.h>
daNpc_Maro_c::actionFunc dummy_lit_3931() {
static daNpc_Maro_c::actionFunc dummy_lit_3931() {
return &daNpc_Maro_c::choccai;
}
+1 -1
View File
@@ -141,7 +141,7 @@ u32 bef_brk[2] = {
10,
};
int useHeapInit(fopAc_ac_c* i_this) {
static int useHeapInit(fopAc_ac_c* i_this) {
obj_brakeeff_class* a_this = static_cast<obj_brakeeff_class*>(i_this);
J3DModelData* modelData =
+1 -1
View File
@@ -14,7 +14,7 @@
#include "d/d_s_play.h"
#include <cmath>
f32 dummyLiteral() {
static f32 dummyLiteral() {
return 0.0f;
}
+2 -2
View File
@@ -149,11 +149,11 @@ static int daObjKAT_Delete(daObjKAT_c* i_this) {
return 1;
}
f32 dummy0() {
static f32 dummy0() {
return 0.0f;
}
f32 dummy1() {
static f32 dummy1() {
return 0.4f;
}
+1 -1
View File
@@ -109,7 +109,7 @@ static const int l_dzbidx[] = {9};
#endif
// force dCcD_Sph::~dCcD_Sph to be emitted earlier than it otherwise would
void dummy() {
static void dummy() {
delete (dCcD_Sph*)NULL;
delete (dCcD_Cyl*)NULL;
}
+1 -1
View File
@@ -146,7 +146,7 @@ int daObj_Maki_Delete(obj_maki_class* i_this) {
return 1;
}
int useHeapInit(fopAc_ac_c* i_this) {
static int useHeapInit(fopAc_ac_c* i_this) {
obj_maki_class* a_this = (obj_maki_class*)i_this;
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("Obj_maki", 4);
+1 -1
View File
@@ -89,7 +89,7 @@ void daObjSakuita_c::setBaseMtx() {
cMtx_copy(mDoMtx_stack_c::get(), mMtx);
}
f32 dummyLiteral() { return 0.5f; }
static f32 dummyLiteral() { return 0.5f; }
void daObjSakuita_c::setPlatePos() {
cXyz cStack_24;
+1 -1
View File
@@ -216,7 +216,7 @@ static int daObjTrnd_Create(daObjTrnd_c* i_this) {
return i_this->create();
}
void dummyString() {
static void dummyString() {
DEAD_STRING("");
}
+1 -1
View File
@@ -435,7 +435,7 @@ void daWdStick_c::mode_proc_roll() {
bgCheck();
}
f32 dummyLiteral() { return 100.0f; }
static f32 dummyLiteral() { return 100.0f; }
BOOL daWdStick_c::chkWaterLineIn() {
return mAcch.m_wtr.GetHeight() > current.pos.y + 40.0f;
+5
View File
@@ -58,8 +58,13 @@ int daPPolamp_c::draw() {
g_env_light.setLightTevColorType_MAJI(mModel1, &tevStr);
mDoExt_modelUpdateDL(mModel1);
g_env_light.setLightTevColorType_MAJI(mModel2, &tevStr);
#ifdef __MWERKS__
static J3DGXColorS10 TEV_COLOR_1 = (GXColorS10){0x48, 0x85, 0xff, 0xff};
static J3DGXColorS10 TEV_COLOR_2 = (GXColorS10){0, 0, 0xff, 0xff};
#else
static J3DGXColorS10 TEV_COLOR_1 = GXColorS10 {0x48, 0x85, 0xff, 0xff};
static J3DGXColorS10 TEV_COLOR_2 = GXColorS10 {0, 0, 0xff, 0xff};
#endif
J3DModelData* modelData = mModel2->getModelData();
for (u16 i = 0; i < modelData->getMaterialNum(); i++)
{
+1 -1
View File
@@ -264,7 +264,7 @@ void daTag_Msg_HIO_c::genMessage(JORMContext* ctx) {
}
#endif
void dummyString() {
static void dummyString() {
DEAD_STRING("Timer");
}
+2
View File
@@ -246,9 +246,11 @@ static int daTag_SSDrink_IsDelete(void* i_this) {
daTag_SSDrink_c::~daTag_SSDrink_c() {}
#ifdef __MWERKS__
void daObj_SSBase_c::setSoldOut() {
/* empty function */
}
#endif
static actor_method_class daTag_SSDrink_MethodTable = {
(process_method_func)daTag_SSDrink_Create, (process_method_func)daTag_SSDrink_Delete,
+4 -2
View File
@@ -694,14 +694,16 @@ GXColor* renderingAmap_c::getLineColor(int param_0, int param_1) {
if (param_1 == 4) {
switch (field_0x3c) {
case 0:
case 0: {
static const GXColor borderColor0 = {0xB4, 0x00, 0x00, 0x00};
*color = borderColor0;
break;
case 1:
}
case 1: {
static const GXColor borderColor1 = {0xB8, 0x00, 0x00, 0x00};
*color = borderColor1;
break;
}
default:
JUT_ASSERT(1636, FALSE);
break;
+2 -1
View File
@@ -1,9 +1,9 @@
#include "dusk/extras.h"
#include <ctype.h>
#include <string.h>
#include <strings.h>
#include <stdint.h>
#ifndef _MSC_VER
int stricmp(const char* str1, const char* str2) {
char a_var;
char b_var;
@@ -46,6 +46,7 @@ int strnicmp(const char* str1, const char* str2, int n) {
return 0;
}
#endif
void *_memcpy(void* dest, void const* src, int n) {
+9
View File
@@ -1,6 +1,9 @@
// C++ Mangled version of extras.c
#include <cstring>
#include <cstdint>
#ifdef _MSC_VER
#include <intrin.h>
#endif
void *__memcpy(void* dest, void const* src, int n) {
return memcpy(dest, src, n);
@@ -14,5 +17,11 @@ void __dcbz(void* addr, int offset) {
int __cntlzw(unsigned int val) {
if (val == 0) return 32; // PowerPC returns 32 if the input is 0
#ifdef _MSC_VER
unsigned long idx;
_BitScanReverse(&idx, val);
return 31 - (int)idx;
#else
return __builtin_clz(val);
#endif
}
+5
View File
@@ -12,5 +12,10 @@ u32 __OSFpscrEnableBits;
GDLObj* __GDCurrentDL;
// DSP
#include <dolphin/dsp.h>
DSPTaskInfo* __DSP_first_task;
DSPTaskInfo* __DSP_curr_task;
// mDo_dvd
#include <m_Do/m_Do_dvd_thread.h>
u8 mDoDvdThd::DVDLogoMode;
+144
View File
@@ -0,0 +1,144 @@
#include <cstdio>
#include <cstring>
#pragma mark J3DShapeTable
#include "JSystem/J3DGraphAnimator/J3DShapeTable.h"
void J3DShapeTable::initShapeNodes(J3DDrawMtxData* mtxData, J3DVertexData* vtxData) {
puts("J3DShapeTable::initShapeNodes is a stub");
}
// JAISe::JAISeMgr_startID_, JAISeq::JAISeqMgr_startID_, JAIStream::JAIStreamMgr_startID_
// are compiled from their real source files (JAISe.obj, JAISeq.obj, JAIStream.obj)
#pragma mark JAUSection
#include "JSystem/JAudio2/JAUSectionHeap.h"
JAUSoundTable* JAUSection::newSoundTable(void const* data, u32 size, bool flag) {
puts("JAUSection::newSoundTable is a stub");
return nullptr;
}
JAUSoundNameTable* JAUSection::newSoundNameTable(void const* data, u32 size, bool flag) {
puts("JAUSection::newSoundNameTable is a stub");
return nullptr;
}
JAIStreamDataMgr* JAUSection::newStreamFileTable(void const* data, bool flag) {
puts("JAUSection::newStreamFileTable is a stub");
return nullptr;
}
#pragma mark JASHeap
#include "JSystem/JAudio2/JASHeapCtrl.h"
JASHeap::JASHeap(JASDisposer* disposer)
: mTree(this), mDisposer(disposer), mBase(nullptr), mSize(0), field_0x40(nullptr) {
OSInitMutex(&mMutex);
}
#pragma mark JASVoiceBank
#include "JSystem/JAudio2/JASVoiceBank.h"
bool JASVoiceBank::getInstParam(int a, int b, int c, JASInstParam* param) const {
puts("JASVoiceBank::getInstParam is a stub");
return false;
}
// JASSeqParser::sCallBackFunc is compiled from JASSeqParser.obj
#pragma mark JHICommBuf
#include "JSystem/JHostIO/JHIComm.h"
void JHICommBufHeader::init() {
puts("JHICommBufHeader::init is a stub");
}
int JHICommBufHeader::load() {
puts("JHICommBufHeader::load is a stub");
return -1;
}
int JHICommBufReader::readBegin() {
puts("JHICommBufReader::readBegin is a stub");
return -1;
}
void JHICommBufReader::readEnd() {
puts("JHICommBufReader::readEnd is a stub");
}
int JHICommBufReader::read(void* buf, int size) {
puts("JHICommBufReader::read is a stub");
return 0;
}
u32 JHICommBufReader::Header::getReadableSize() const {
puts("JHICommBufReader::Header::getReadableSize is a stub");
return 0;
}
int JHICommBufWriter::writeBegin() {
puts("JHICommBufWriter::writeBegin is a stub");
return -1;
}
void JHICommBufWriter::writeEnd() {
puts("JHICommBufWriter::writeEnd is a stub");
}
int JHICommBufWriter::write(void* buf, int size) {
puts("JHICommBufWriter::write is a stub");
return 0;
}
#pragma mark HIO / HIO2
#include <dolphin/hio.h>
#include <revolution/hio2.h>
extern "C" {
BOOL HIORead(u32 addr, void* buffer, s32 size) {
puts("HIORead is a stub");
return FALSE;
}
BOOL HIOWrite(u32 addr, void* buffer, s32 size) {
puts("HIOWrite is a stub");
return FALSE;
}
BOOL HIO2Init(void) {
puts("HIO2Init is a stub");
return FALSE;
}
BOOL HIO2EnumDevices(HIO2EnumCallback callback) {
puts("HIO2EnumDevices is a stub");
return FALSE;
}
s32 HIO2Open(HIO2DeviceType type, HIO2UnkCallback exiCb, HIO2DisconnectCallback disconnectCb) {
puts("HIO2Open is a stub");
return -1;
}
BOOL HIO2Close(s32 handle) {
puts("HIO2Close is a stub");
return FALSE;
}
} // extern "C"
#pragma mark JOR
#include "JSystem/JHostIO/JORServer.h"
int JOREventCallbackListNode::JORAct(u32 eventID, const char* eventName) {
puts("JOREventCallbackListNode::JORAct is a stub");
return 0;
}
#pragma mark J3DPSMtxArrayConcat
void J3DPSMtxArrayConcat(float (*a)[4], float (*b)[4], float (*out)[4], unsigned long count) {
puts("J3DPSMtxArrayConcat is a stub");
}
+670 -696
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -248,7 +248,7 @@ u8 fopMsgM_itemNumIdx(u8 i_no) {
return itemicon[i_no] & 0xFF;
}
f32 dummy() {
static f32 dummy() {
J2DPane* dummyPlane = NULL;
dummyPlane->getAlpha();
dummyPlane->getHeight();
+9
View File
@@ -5,7 +5,16 @@
#include "f_pc/f_pc_profile.h"
#ifndef __MWERKS__
// Forward declare the static list from f_pc_profile_lst.cpp
extern process_profile_definition* g_fpcPfLst_ProfileList[];
// On PC: Direct pointer to static array
process_profile_definition** g_fpcPf_ProfileList_p = g_fpcPfLst_ProfileList;
#else
// On Console: Pointer initialized by REL module prolog
process_profile_definition** g_fpcPf_ProfileList_p;
#endif
process_profile_definition* fpcPf_Get(s16 i_profname) {
int index = i_profname;
+800 -1
View File
@@ -5,6 +5,8 @@
#include "f_pc/f_pc_profile_lst.h"
#ifdef __MWERKS__
process_profile_definition* g_fpcPfLst_ProfileList[] = {
&g_profile_OVERLAP0,
&g_profile_OVERLAP1,
@@ -800,7 +802,6 @@ process_profile_definition* g_fpcPfLst_ProfileList[] = {
&g_profile_GAMEOVER,
NULL,
};
extern "C" void ModuleProlog() {
g_fpcPf_ProfileList_p = g_fpcPfLst_ProfileList;
}
@@ -808,3 +809,801 @@ extern "C" void ModuleProlog() {
extern "C" void ModuleEpilog() {
g_fpcPf_ProfileList_p = NULL;
}
#else
process_profile_definition* g_fpcPfLst_ProfileList[] = {
&g_profile_OVERLAP0.base.base,
&g_profile_OVERLAP1.base.base,
&g_profile_OVERLAP3.base.base,
&g_profile_OVERLAP6.base.base,
&g_profile_OVERLAP7.base.base,
&g_profile_OVERLAP8.base.base,
&g_profile_OVERLAP9.base.base,
&g_profile_OVERLAP10.base.base,
&g_profile_OVERLAP11.base.base,
&g_profile_LOGO_SCENE.base.base,
&g_profile_MENU_SCENE.base.base,
&g_profile_PLAY_SCENE.base.base,
&g_profile_OPENING_SCENE.base.base,
&g_profile_NAME_SCENE.base.base,
&g_profile_NAMEEX_SCENE.base.base,
&g_profile_WARNING_SCENE.base.base,
&g_profile_WARNING2_SCENE.base.base,
&g_profile_OVERLAP2.base.base,
&g_profile_ROOM_SCENE.base.base,
&g_profile_KANKYO.base.base,
&g_profile_ALLDIE.base.base,
&g_profile_ENVSE.base.base,
&g_profile_Obj_Swpush.base.base,
&g_profile_Obj_Swpush2.base.base,
&g_profile_Obj_Swpush5.base.base,
&g_profile_Tag_Gstart.base.base,
&g_profile_NO_CHG_ROOM.base.base,
&g_profile_Obj_Lv6ElevtA.base.base,
&g_profile_OBJ_SO.base.base,
&g_profile_Obj_Movebox.base.base,
&g_profile_Obj_SwTurn.base.base,
&g_profile_Obj_Lv6SwTurn.base.base,
&g_profile_OBJ_SEKIZOA.base.base,
&g_profile_OBJ_GRA.base.base,
&g_profile_TAG_GRA.base.base,
&g_profile_TAG_YAMI.base.base,
&g_profile_Obj_Ladder.base.base,
&g_profile_OBJ_BEF.base.base,
&g_profile_OBJ_FMOBJ.base.base,
&g_profile_OBJ_LBOX.base.base,
&g_profile_OBJ_WEB0.base.base,
&g_profile_OBJ_WEB1.base.base,
&g_profile_OBJ_CB.base.base,
&g_profile_OBJ_MAKI.base.base,
&g_profile_OBJ_BRG.base.base,
&g_profile_OBJ_GB.base.base,
&g_profile_OBJ_GM.base.base,
&g_profile_OBJ_TOBY.base.base,
&g_profile_OBJ_TP.base.base,
&g_profile_TREESH.base.base,
&g_profile_Obj_ZDoor.base.base,
&g_profile_Obj_Pillar.base.base,
&g_profile_Obj_Cdoor.base.base,
&g_profile_GRDWATER.base.base,
&g_profile_Obj_RotBridge.base.base,
&g_profile_Obj_MagLift.base.base,
&g_profile_Obj_MagLiftRot.base.base,
&g_profile_Obj_Lv1Cdl00.base.base,
&g_profile_Obj_Lv1Cdl01.base.base,
&g_profile_Obj_TvCdlst.base.base,
&g_profile_Obj_HsTarget.base.base,
&g_profile_Obj_HeavySw.base.base,
&g_profile_Obj_GoGate.base.base,
&g_profile_Obj_TaFence.base.base,
&g_profile_Obj_Saidan.base.base,
&g_profile_Obj_SpinLift.base.base,
&g_profile_Obj_BmWindow.base.base,
&g_profile_Obj_RfHole.base.base,
&g_profile_Obj_WaterPillar.base.base,
&g_profile_Obj_SyRock.base.base,
&g_profile_Obj_BsGate.base.base,
&g_profile_Obj_AmiShutter.base.base,
&g_profile_Obj_WtGate.base.base,
&g_profile_Obj_Lv2Candle.base.base,
&g_profile_Obj_TogeTrap.base.base,
&g_profile_Obj_RotTrap.base.base,
&g_profile_Obj_SwallShutter.base.base,
&g_profile_Obj_IceWall.base.base,
&g_profile_Obj_Lv5SwIce.base.base,
&g_profile_Obj_Lv5FBoard.base.base,
&g_profile_Obj_Turara.base.base,
&g_profile_Obj_TwGate.base.base,
&g_profile_Obj_Digholl.base.base,
&g_profile_Obj_Digpl.base.base,
&g_profile_Obj_TestCube.base.base,
&g_profile_Obj_Kshutter.base.base,
&g_profile_NPC_COACH.base.base,
&g_profile_NPC_THEB.base.base,
&g_profile_COACH_FIRE.base.base,
&g_profile_COACH2D.base.base,
&g_profile_BALLOON2D.base.base,
&g_profile_SKIP2D.base.base,
&g_profile_Obj_MvStair.base.base,
&g_profile_Obj_Cowdoor.base.base,
&g_profile_Obj_Swpropeller.base.base,
&g_profile_Obj_BoomShutter.base.base,
&g_profile_NPC_KS.base.base,
&g_profile_Obj_Hfuta.base.base,
&g_profile_Obj_BkDoor.base.base,
&g_profile_Obj_Cboard.base.base,
&g_profile_Obj_MGate.base.base,
&g_profile_Obj_Ikada.base.base,
&g_profile_Obj_Ice_l.base.base,
&g_profile_Obj_Ice_s.base.base,
&g_profile_Obj_E_CREATE.base.base,
&g_profile_Obj_Bhbridge.base.base,
&g_profile_Obj_Kaisou.base.base,
&g_profile_Obj_HHASHI.base.base,
&g_profile_Obj_BHASHI.base.base,
&g_profile_OCTHASHI.base.base,
&g_profile_Obj_THASHI.base.base,
&g_profile_Obj_CRVGATE.base.base,
&g_profile_Obj_CRVFENCE.base.base,
&g_profile_Obj_CRVHAHEN.base.base,
&g_profile_Obj_CRVSTEEL.base.base,
&g_profile_Obj_CRVLH_UP.base.base,
&g_profile_Obj_CRVLH_DW.base.base,
&g_profile_Obj_RIVERROCK.base.base,
&g_profile_Obj_DUST.base.base,
&g_profile_Obj_ITA.base.base,
&g_profile_Obj_Window.base.base,
&g_profile_Obj_MetalBox.base.base,
&g_profile_Obj_BBox.base.base,
&g_profile_OBJ_MSIMA.base.base,
&g_profile_OBJ_MYOGAN.base.base,
&g_profile_B_ZANTS.base.base,
&g_profile_Obj_ChainBlock.base.base,
&g_profile_Obj_ChainWall.base.base,
&g_profile_Obj_KkrGate.base.base,
&g_profile_Obj_RiderGate.base.base,
&g_profile_Obj_Onsen.base.base,
&g_profile_Obj_Chest.base.base,
&g_profile_Obj_Bemos.base.base,
&g_profile_Obj_RopeBridge.base.base,
&g_profile_Obj_WellCover.base.base,
&g_profile_Obj_GraveStone.base.base,
&g_profile_Obj_ZraRock.base.base,
&g_profile_Obj_GraRock.base.base,
&g_profile_Obj_GrzRock.base.base,
&g_profile_GRA_WALL.base.base,
&g_profile_OBJ_ONSEN_FIRE.base.base,
&g_profile_Obj_Lv6bemos.base.base,
&g_profile_Obj_Lv6bemos2.base.base,
&g_profile_Obj_BarDesk.base.base,
&g_profile_Obj_DigSnow.base.base,
&g_profile_Obj_Ytaihou.base.base,
&g_profile_Obj_Elevator.base.base,
&g_profile_Obj_Lv6TogeRoll.base.base,
&g_profile_Obj_Lv6TogeTrap.base.base,
&g_profile_Obj_Lv6Tenbin.base.base,
&g_profile_Obj_Lv6SwGate.base.base,
&g_profile_Obj_Lv6Lblock.base.base,
&g_profile_Obj_Lv6ChgGate.base.base,
&g_profile_Obj_Lv6FuriTrap.base.base,
&g_profile_Obj_Lv6SzGate.base.base,
&g_profile_Obj_Lv4EdShutter.base.base,
&g_profile_Obj_Lv4Gate.base.base,
&g_profile_Obj_Lv4PoGate.base.base,
&g_profile_Obj_Lv4SlideWall.base.base,
&g_profile_Obj_Lv4HsTarget.base.base,
&g_profile_Obj_Lv7PropY.base.base,
&g_profile_Obj_Lv7BsGate.base.base,
&g_profile_Obj_Lv8OptiLift.base.base,
&g_profile_Obj_Lv8KekkaiTrap.base.base,
&g_profile_Obj_Lv8Lift.base.base,
&g_profile_Obj_Lv8UdFloor.base.base,
&g_profile_Obj_Lv9SwShutter.base.base,
&g_profile_Obj_TobyHouse.base.base,
&g_profile_Obj_poCandle.base.base,
&g_profile_Obj_Lv4DigSand.base.base,
&g_profile_Obj_FallObj.base.base,
&g_profile_Obj_SmgDoor.base.base,
&g_profile_Obj_SwLight.base.base,
&g_profile_Obj_Avalanche.base.base,
&g_profile_Obj_MirrorScrew.base.base,
&g_profile_Obj_MirrorSand.base.base,
&g_profile_Obj_MirrorTable.base.base,
&g_profile_Obj_MirrorChain.base.base,
&g_profile_Obj_Mirror6Pole.base.base,
&g_profile_Obj_SwSpinner.base.base,
&g_profile_Obj_TDoor.base.base,
&g_profile_Obj_Lv7Bridge.base.base,
&g_profile_Obj_zrTurara.base.base,
&g_profile_Obj_TakaraDai.base.base,
&g_profile_Obj_Table.base.base,
&g_profile_Obj_CatDoor.base.base,
&g_profile_Obj_Gake.base.base,
&g_profile_CSTAF.base.base,
&g_profile_Obj_Lv4RailWall.base.base,
&g_profile_Obj_Lv4Sand.base.base,
&g_profile_Obj_PushDoor.base.base,
&g_profile_PushDoor.base.base,
&g_profile_Obj_GanonWall2.base.base,
&g_profile_Obj_Lv4Bridge.base.base,
&g_profile_Obj_Lv4Floor.base.base,
&g_profile_Tag_Spinner.base.base,
&g_profile_Obj_SwHang.base.base,
&g_profile_Obj_RotStair.base.base,
&g_profile_Obj_MagneArm.base.base,
&g_profile_Obj_KWheel00.base.base,
&g_profile_Obj_KWheel01.base.base,
&g_profile_Obj_Ychndlr.base.base,
&g_profile_Obj_PRElvtr.base.base,
&g_profile_Obj_MHasu.base.base,
&g_profile_Obj_YIblltray.base.base,
&g_profile_Obj_Lv6EGate.base.base,
&g_profile_Obj_PDtile.base.base,
&g_profile_Obj_PDwall.base.base,
&g_profile_Obj_Lv4PRwall.base.base,
&g_profile_Obj_KLift00.base.base,
&g_profile_B_OH.base.base,
&g_profile_Obj_Lv4Chan.base.base,
&g_profile_Obj_Lv3R10Saka.base.base,
&g_profile_Obj_Lv3Water.base.base,
&g_profile_Obj_Lv3Water2.base.base,
&g_profile_OBJ_LV3WATERB.base.base,
&g_profile_Obj_HBombkoya.base.base,
&g_profile_Obj_SZbridge.base.base,
&g_profile_Obj_KakarikoBrg.base.base,
&g_profile_Obj_OrdinBrg.base.base,
&g_profile_Obj_BurnBox.base.base,
&g_profile_Obj_KJgjs.base.base,
&g_profile_OBJ_IHASI.base.base,
&g_profile_Obj_IceBlock.base.base,
&g_profile_Obj_VolcanicBall.base.base,
&g_profile_Obj_VolcanicBomb.base.base,
&g_profile_Obj_VolcGnd.base.base,
&g_profile_Obj_KKanban.base.base,
&g_profile_E_PH.base.base,
&g_profile_NPC_ZRA.base.base,
&g_profile_Obj_Chandelier.base.base,
&g_profile_Obj_Stopper2.base.base,
&g_profile_DOOR20.base.base,
&g_profile_Tag_Hinit.base.base,
&g_profile_Tag_Hjump.base.base,
&g_profile_Tag_AJnot.base.base,
&g_profile_Tag_Hstop.base.base,
&g_profile_CANOE.base.base,
&g_profile_HORSE.base.base,
&g_profile_E_WB.base.base,
&g_profile_OBJ_ITO.base.base,
&g_profile_OBJ_SW.base.base,
&g_profile_SPINNER.base.base,
&g_profile_B_OB.base.base,
&g_profile_KAGO.base.base,
&g_profile_E_YC.base.base,
&g_profile_B_DS.base.base,
&g_profile_B_DR.base.base,
&g_profile_B_ZANTZ.base.base,
&g_profile_B_ZANT.base.base,
&g_profile_B_ZANTM.base.base,
&g_profile_TBOX.base.base,
&g_profile_TBOX2.base.base,
&g_profile_ALINK.base.base,
&g_profile_BOOMERANG.base.base,
&g_profile_MIDNA.base.base,
&g_profile_NPC_TK.base.base,
&g_profile_NPC_WORM.base.base,
&g_profile_PPolamp.base.base,
&g_profile_BkyRock.base.base,
&g_profile_HITOBJ.base.base,
&g_profile_EP.base.base,
&g_profile_COW.base.base,
&g_profile_PERU.base.base,
&g_profile_NI.base.base,
&g_profile_NPC_TKJ2.base.base,
&g_profile_SQ.base.base,
&g_profile_NPC_SQ.base.base,
&g_profile_DO.base.base,
&g_profile_NPC_NE.base.base,
&g_profile_NPC_TR.base.base,
&g_profile_NPC_LF.base.base,
&g_profile_OBJ_FOOD.base.base,
&g_profile_OBJ_KI.base.base,
&g_profile_OBJ_KITA.base.base,
&g_profile_OBJ_KEY.base.base,
&g_profile_OBJ_KEYHOLE.base.base,
&g_profile_Obj_Lv5Key.base.base,
&g_profile_OBJ_LP.base.base,
&g_profile_OBJ_TATIGI.base.base,
&g_profile_OBJ_ROCK.base.base,
&g_profile_OBJ_WFLAG.base.base,
&g_profile_OBJ_KAGE.base.base,
&g_profile_OBJ_KANBAN2.base.base,
&g_profile_OBJ_BALLOON.base.base,
&g_profile_OBJ_SUISYA.base.base,
&g_profile_OBJ_OILTUBO.base.base,
&g_profile_OBJ_ROTEN.base.base,
&g_profile_OBJ_SSDRINK.base.base,
&g_profile_OBJ_SSITEM.base.base,
&g_profile_TAG_SSDRINK.base.base,
&g_profile_TAG_BTLITM.base.base,
&g_profile_TAG_LV5SOUP.base.base,
&g_profile_TAG_MNLIGHT.base.base,
&g_profile_TAG_SHOPCAM.base.base,
&g_profile_TAG_SHOPITM.base.base,
&g_profile_OBJ_NDOOR.base.base,
&g_profile_OBJ_UDOOR.base.base,
&g_profile_OBJ_USAKU.base.base,
&g_profile_Obj_SM_DOOR.base.base,
&g_profile_OBJ_BED.base.base,
&g_profile_OBJ_BOUMATO.base.base,
&g_profile_OBJ_ITAMATO.base.base,
&g_profile_OBJ_NOUGU.base.base,
&g_profile_OBJ_STICK.base.base,
&g_profile_OBJ_MIE.base.base,
&g_profile_OBJ_SEKIDOOR.base.base,
&g_profile_OBJ_SEKIZO.base.base,
&g_profile_OBJ_SMTILE.base.base,
&g_profile_NPC_FISH.base.base,
&g_profile_MG_FISH.base.base,
&g_profile_FSHOP.base.base,
&g_profile_NPC_DU.base.base,
&g_profile_DISAPPEAR.base.base,
&g_profile_Obj_Mato.base.base,
&g_profile_Obj_Flag.base.base,
&g_profile_Obj_Flag2.base.base,
&g_profile_Obj_Flag3.base.base,
&g_profile_Obj_GOMIKABE.base.base,
&g_profile_Obj_Yousei.base.base,
&g_profile_Obj_Kabuto.base.base,
&g_profile_Obj_Cho.base.base,
&g_profile_Obj_Kuw.base.base,
&g_profile_Obj_Nan.base.base,
&g_profile_Obj_Dan.base.base,
&g_profile_Obj_Kam.base.base,
&g_profile_Obj_Ten.base.base,
&g_profile_Obj_Ari.base.base,
&g_profile_Obj_Kag.base.base,
&g_profile_Obj_Batta.base.base,
&g_profile_Obj_Tombo.base.base,
&g_profile_Obj_Kat.base.base,
&g_profile_Obj_H_Saku.base.base,
&g_profile_Obj_Yobikusa.base.base,
&g_profile_Obj_KazeNeko.base.base,
&g_profile_Obj_KznkArm.base.base,
&g_profile_Obj_NamePlate.base.base,
&g_profile_Obj_OnCloth.base.base,
&g_profile_Obj_LndRope.base.base,
&g_profile_Obj_ItaRope.base.base,
&g_profile_Obj_Sakuita.base.base,
&g_profile_Obj_Laundry.base.base,
&g_profile_WarpBug.base.base,
&g_profile_Izumi_Gate.base.base,
&g_profile_Obj_Fchain.base.base,
&g_profile_Obj_Wchain.base.base,
&g_profile_Tag_Attp.base.base,
&g_profile_Obj_Tornado.base.base,
&g_profile_Obj_Tornado2.base.base,
&g_profile_Obj_FirePillar.base.base,
&g_profile_Obj_FirePillar2.base.base,
&g_profile_Obj_InoBone.base.base,
&g_profile_Obj_Stopper.base.base,
&g_profile_Obj_MHole.base.base,
&g_profile_Tag_Magne.base.base,
&g_profile_Obj_BossWarp.base.base,
&g_profile_Obj_WoodPendulum.base.base,
&g_profile_Obj_WdStick.base.base,
&g_profile_Obj_StairBlock.base.base,
&g_profile_Obj_Geyser.base.base,
&g_profile_Tag_KtOnFire.base.base,
&g_profile_Obj_FireWood.base.base,
&g_profile_Obj_FireWood2.base.base,
&g_profile_Obj_GpTaru.base.base,
&g_profile_Obj_OnsenTaru.base.base,
&g_profile_Obj_KiPot.base.base,
&g_profile_TBOX_SW.base.base,
&g_profile_Obj_SwChain.base.base,
&g_profile_Obj_WoodenSword.base.base,
&g_profile_Obj_StoneMark.base.base,
&g_profile_Obj_Lv3Candle.base.base,
&g_profile_Tag_Lv4Candle.base.base,
&g_profile_Tag_Lv4CandleDm.base.base,
&g_profile_Obj_DamCps.base.base,
&g_profile_Obj_Smoke.base.base,
&g_profile_Obj_WaterFall.base.base,
&g_profile_Obj_ZoraCloth.base.base,
&g_profile_Obj_poFire.base.base,
&g_profile_Tag_poFire.base.base,
&g_profile_Obj_glowSphere.base.base,
&g_profile_Tag_LightBall.base.base,
&g_profile_SwLBall.base.base,
&g_profile_SwBall.base.base,
&g_profile_Obj_WaterEff.base.base,
&g_profile_Tag_RiverBack.base.base,
&g_profile_Tag_KagoFall.base.base,
&g_profile_Tag_Lv2PrChk.base.base,
&g_profile_Obj_Lv4Gear.base.base,
&g_profile_Obj_MasterSword.base.base,
&g_profile_Obj_WoodStatue.base.base,
&g_profile_Obj_Fan.base.base,
&g_profile_Obj_IceLeaf.base.base,
&g_profile_Obj_zrTuraraRc.base.base,
&g_profile_Tag_RetRoom.base.base,
&g_profile_Obj_WindStone.base.base,
&g_profile_Tag_WaraHowl.base.base,
&g_profile_Obj_SCannon.base.base,
&g_profile_Obj_SmWStone.base.base,
&g_profile_Obj_SCannonCrs.base.base,
&g_profile_Tag_SnowEff.base.base,
&g_profile_Tag_CstaSw.base.base,
&g_profile_Tag_Lv6CstaSw.base.base,
&g_profile_Obj_awaPlar.base.base,
&g_profile_Obj_poTbox.base.base,
&g_profile_Obj_TimeFire.base.base,
&g_profile_Obj_TMoon.base.base,
&g_profile_Obj_GanonWall.base.base,
&g_profile_Obj_Prop.base.base,
&g_profile_CSTATUE.base.base,
&g_profile_Obj_SwBallA.base.base,
&g_profile_Obj_SwBallB.base.base,
&g_profile_Obj_SnowSoup.base.base,
&g_profile_Obj_Nagaisu.base.base,
&g_profile_Obj_RCircle.base.base,
&g_profile_Obj_Picture.base.base,
&g_profile_Tag_SetBall.base.base,
&g_profile_Tag_SmkEmt.base.base,
&g_profile_SwTime.base.base,
&g_profile_Obj_HFtr.base.base,
&g_profile_Obj_HBarrel.base.base,
&g_profile_Obj_Crystal.base.base,
&g_profile_Obj_SCannonTen.base.base,
&g_profile_Obj_SwBallC.base.base,
&g_profile_SCENE_EXIT2.base.base,
&g_profile_Obj_Hata.base.base,
&g_profile_Obj_ToaruMaki.base.base,
&g_profile_Tag_AttackItem.base.base,
&g_profile_Tag_RmbitSw.base.base,
&g_profile_Obj_Sword.base.base,
&g_profile_Tag_Spring.base.base,
&g_profile_Tag_Statue.base.base,
&g_profile_E_AI.base.base,
&g_profile_E_GS.base.base,
&g_profile_E_GOB.base.base,
&g_profile_E_DD.base.base,
&g_profile_E_DN.base.base,
&g_profile_E_S1.base.base,
&g_profile_E_MF.base.base,
&g_profile_E_SG.base.base,
&g_profile_E_BS.base.base,
&g_profile_E_SF.base.base,
&g_profile_E_SH.base.base,
&g_profile_E_DF.base.base,
&g_profile_E_GM.base.base,
&g_profile_E_MD.base.base,
&g_profile_E_SM.base.base,
&g_profile_E_SM2.base.base,
&g_profile_E_ST.base.base,
&g_profile_E_ST_LINE.base.base,
&g_profile_E_SB.base.base,
&g_profile_E_TH.base.base,
&g_profile_E_CR.base.base,
&g_profile_E_CR_EGG.base.base,
&g_profile_E_DB.base.base,
&g_profile_E_DB_LEAF.base.base,
&g_profile_E_GA.base.base,
&g_profile_E_GB.base.base,
&g_profile_E_HB.base.base,
&g_profile_E_HB_LEAF.base.base,
&g_profile_E_HZELDA.base.base,
&g_profile_E_YD.base.base,
&g_profile_E_YH.base.base,
&g_profile_E_YD_LEAF.base.base,
&g_profile_E_HM.base.base,
&g_profile_E_TK.base.base,
&g_profile_E_TK2.base.base,
&g_profile_E_TK_BALL.base.base,
&g_profile_E_RB.base.base,
&g_profile_E_RD.base.base,
&g_profile_E_RDB.base.base,
&g_profile_E_RDY.base.base,
&g_profile_E_FM.base.base,
&g_profile_E_FS.base.base,
&g_profile_E_PM.base.base,
&g_profile_E_PO.base.base,
&g_profile_E_MB.base.base,
&g_profile_E_MK.base.base,
&g_profile_E_MM.base.base,
&g_profile_E_FZ.base.base,
&g_profile_E_ZS.base.base,
&g_profile_E_KK.base.base,
&g_profile_E_HP.base.base,
&g_profile_E_ZH.base.base,
&g_profile_E_ZM.base.base,
&g_profile_E_PZ.base.base,
&g_profile_E_FB.base.base,
&g_profile_E_FK.base.base,
&g_profile_E_MS.base.base,
&g_profile_E_NEST.base.base,
&g_profile_E_NZ.base.base,
&g_profile_E_BA.base.base,
&g_profile_E_BU.base.base,
&g_profile_E_BUG.base.base,
&g_profile_E_BEE.base.base,
&g_profile_E_IS.base.base,
&g_profile_E_KG.base.base,
&g_profile_E_KR.base.base,
&g_profile_E_SW.base.base,
&g_profile_E_GE.base.base,
&g_profile_Tag_WatchGe.base.base,
&g_profile_E_YM.base.base,
&g_profile_E_YM_TAG.base.base,
&g_profile_E_YMB.base.base,
&g_profile_Tag_FWall.base.base,
&g_profile_Tag_WaterFall.base.base,
&g_profile_E_YK.base.base,
&g_profile_E_YR.base.base,
&g_profile_E_YG.base.base,
&g_profile_E_HZ.base.base,
&g_profile_E_WS.base.base,
&g_profile_E_OC.base.base,
&g_profile_E_OT.base.base,
&g_profile_E_DT.base.base,
&g_profile_E_BG.base.base,
&g_profile_E_OctBg.base.base,
&g_profile_DR.base.base,
&g_profile_L7lowDr.base.base,
&g_profile_L7ODR.base.base,
&g_profile_E_TT.base.base,
&g_profile_E_DK.base.base,
&g_profile_E_VT.base.base,
&g_profile_E_WW.base.base,
&g_profile_E_GI.base.base,
&g_profile_B_BH.base.base,
&g_profile_B_BQ.base.base,
&g_profile_B_GM.base.base,
&g_profile_B_GND.base.base,
&g_profile_B_GO.base.base,
&g_profile_B_OH2.base.base,
&g_profile_B_YO.base.base,
&g_profile_B_YOI.base.base,
&g_profile_B_TN.base.base,
&g_profile_B_GG.base.base,
&g_profile_B_DRE.base.base,
&g_profile_B_MGN.base.base,
&g_profile_E_WAP.base.base,
&g_profile_ITEM.base.base,
&g_profile_Obj_SmallKey.base.base,
&g_profile_Obj_Kantera.base.base,
&g_profile_Obj_LifeContainer.base.base,
&g_profile_Obj_Shield.base.base,
&g_profile_Demo_Item.base.base,
&g_profile_ShopItem.base.base,
&g_profile_Obj_Drop.base.base,
&g_profile_OBJ_RW.base.base,
&g_profile_NBOMB.base.base,
&g_profile_TAG_CSW.base.base,
&g_profile_TAG_QS.base.base,
&g_profile_HOZELDA.base.base,
&g_profile_SWC00.base.base,
&g_profile_KNOB20.base.base,
&g_profile_DBDOOR.base.base,
&g_profile_BOSS_DOOR.base.base,
&g_profile_L1BOSS_DOOR.base.base,
&g_profile_L1MBOSS_DOOR.base.base,
&g_profile_L5BOSS_DOOR.base.base,
&g_profile_DSHUTTER.base.base.base,
&g_profile_SPIRAL_DOOR.base.base,
&g_profile_Tag_ChgRestart.base.base,
&g_profile_Tag_Restart.base.base,
&g_profile_ANDSW.base.base,
&g_profile_ANDSW2.base.base,
&g_profile_MYNA.base.base,
&g_profile_NPC_GND.base.base,
&g_profile_NPC_GRA.base.base,
&g_profile_NPC_GRC.base.base,
&g_profile_NPC_GRD.base.base,
&g_profile_NPC_GRM.base.base,
&g_profile_NPC_GRMC.base.base,
&g_profile_NPC_GRO.base.base,
&g_profile_NPC_GRR.base.base,
&g_profile_NPC_GRS.base.base,
&g_profile_NPC_GRZ.base.base,
&g_profile_NPC_YAMID.base.base,
&g_profile_NPC_YAMIT.base.base,
&g_profile_NPC_YAMIS.base.base,
&g_profile_NPC_BLUENS.base.base,
&g_profile_NPC_KAKASHI.base.base,
&g_profile_NPC_KDK.base.base,
&g_profile_NPC_ARU.base.base,
&g_profile_NPC_BANS.base.base,
&g_profile_NPC_BESU.base.base,
&g_profile_NPC_BOU.base.base,
&g_profile_NPC_BOU_S.base.base,
&g_profile_NPC_CLERKA.base.base,
&g_profile_NPC_CLERKB.base.base,
&g_profile_NPC_CLERKT.base.base,
&g_profile_NPC_WRESTLER.base.base,
&g_profile_Tag_Arena.base.base,
&g_profile_Tag_Instruction.base.base,
&g_profile_NPC_DOC.base.base,
&g_profile_NPC_GWOLF.base.base,
&g_profile_NPC_LEN.base.base,
&g_profile_NPC_LUD.base.base,
&g_profile_NPC_FAIRY_SEIREI.base.base,
&g_profile_NPC_FAIRY.base.base,
&g_profile_NPC_HANJO.base.base,
&g_profile_NPC_HENNA.base.base,
&g_profile_NPC_HENNA0.base.base,
&g_profile_NPC_HOZ.base.base,
&g_profile_NPC_JAGAR.base.base,
&g_profile_NPC_KKRI.base.base,
&g_profile_NPC_KN.base.base,
&g_profile_KN_BULLET.base.base,
&g_profile_NPC_KNJ.base.base,
&g_profile_NPC_KOLIN.base.base,
&g_profile_NPC_KOLINB.base.base,
&g_profile_NPC_KYURY.base.base,
&g_profile_NPC_MARO.base.base,
&g_profile_NPC_MIDP.base.base,
&g_profile_NPC_MOI.base.base,
&g_profile_NPC_RACA.base.base,
&g_profile_NPC_SARU.base.base,
&g_profile_NPC_SEIB.base.base,
&g_profile_NPC_SEIC.base.base,
&g_profile_NPC_SEID.base.base,
&g_profile_NPC_SEIRA.base.base,
&g_profile_NPC_SERA2.base.base,
&g_profile_NPC_SEIREI.base.base,
&g_profile_NPC_SHAMAN.base.base,
&g_profile_NPC_SMARO.base.base,
&g_profile_NPC_SOLA.base.base,
&g_profile_NPC_TARO.base.base,
&g_profile_NPC_PACHI_BESU.base.base,
&g_profile_NPC_PACHI_TARO.base.base,
&g_profile_NPC_PACHI_MARO.base.base,
&g_profile_TAG_PATI.base.base,
&g_profile_NPC_THE.base.base,
&g_profile_NPC_TKJ.base.base,
&g_profile_NPC_TKS.base.base,
&g_profile_NPC_TKC.base.base,
&g_profile_OBJ_TKS.base.base,
&g_profile_NPC_TOBY.base.base,
&g_profile_NPC_URI.base.base,
&g_profile_NPC_YELIA.base.base,
&g_profile_NPC_YKM.base.base,
&g_profile_NPC_YKW.base.base,
&g_profile_NPC_ZANB.base.base,
&g_profile_NPC_ZANT.base.base,
&g_profile_NPC_ZELDA.base.base,
&g_profile_NPC_ZELR.base.base,
&g_profile_NPC_ZELRO.base.base,
&g_profile_OBJ_ZRAFREEZE.base.base,
&g_profile_NPC_ZRC.base.base,
&g_profile_NPC_ZRZ.base.base,
&g_profile_ZRA_MARK.base.base,
&g_profile_MYNA2.base.base,
&g_profile_TAG_MYNA2.base.base,
&g_profile_NPC_CD3.base.base,
&g_profile_Tag_Schedule.base.base,
&g_profile_Tag_Escape.base.base,
&g_profile_NPC_CHAT.base.base,
&g_profile_NPC_SOLDIERa.base.base,
&g_profile_NPC_SOLDIERb.base.base,
&g_profile_PASSER_MNG.base.base,
&g_profile_NPC_PASSER.base.base,
&g_profile_NPC_PASSER2.base.base,
&g_profile_NPC_POST.base.base,
&g_profile_NPC_POUYA.base.base,
&g_profile_FORMATION_MNG.base.base,
&g_profile_NPC_FGUARD.base.base,
&g_profile_GUARD_MNG.base.base,
&g_profile_TAG_GUARD.base.base,
&g_profile_NPC_GUARD.base.base,
&g_profile_NPC_ASH.base.base,
&g_profile_NPC_ASHB.base.base,
&g_profile_NPC_SHAD.base.base,
&g_profile_NPC_RAFREL.base.base,
&g_profile_NPC_MOIR.base.base,
&g_profile_NPC_IMPAL.base.base,
&g_profile_NPC_SHOE.base.base,
&g_profile_NPC_DOORBOY.base.base,
&g_profile_NPC_PRAYER.base.base,
&g_profile_NPC_KASIHANA.base.base,
&g_profile_NPC_KASIKYU.base.base,
&g_profile_NPC_KASIMICH.base.base,
&g_profile_NPC_DRSOL.base.base,
&g_profile_NPC_CHIN.base.base,
&g_profile_NPC_INS.base.base,
&g_profile_NPC_SHOP0.base.base,
&g_profile_NPC_MK.base.base,
&g_profile_NPC_P2.base.base,
&g_profile_KYTAG00.base.base,
&g_profile_KYTAG01.base.base,
&g_profile_KYTAG02.base.base,
&g_profile_KYTAG03.base.base,
&g_profile_KYTAG04.base.base,
&g_profile_KYTAG05.base.base,
&g_profile_KYTAG06.base.base,
&g_profile_KYTAG07.base.base,
&g_profile_KYTAG08.base.base,
&g_profile_KYTAG09.base.base,
&g_profile_KYTAG10.base.base,
&g_profile_KYTAG11.base.base,
&g_profile_KYTAG12.base.base,
&g_profile_KYTAG13.base.base,
&g_profile_KYTAG14.base.base,
&g_profile_KYTAG15.base.base,
&g_profile_KYTAG16.base.base,
&g_profile_KYTAG17.base.base,
&g_profile_Ykgr.base.base,
&g_profile_TALK.base.base,
&g_profile_Obj_Crope.base.base,
&g_profile_Obj_Bombf.base.base,
&g_profile_Obj_BkLeaf.base.base,
&g_profile_Tag_Mhint.base.base,
&g_profile_Tag_Mmsg.base.base,
&g_profile_Tag_Mwait.base.base,
&g_profile_Tag_Mstop.base.base,
&g_profile_Tag_Stream.base.base,
&g_profile_Tag_Sppath.base.base,
&g_profile_Tag_Wljump.base.base,
&g_profile_Tag_TWGate.base.base,
&g_profile_Tag_Lv6Gate.base.base,
&g_profile_Tag_Lv7Gate.base.base,
&g_profile_Tag_Lv8Gate.base.base,
&g_profile_Tag_TheBHint.base.base,
&g_profile_Tag_Assist.base.base,
&g_profile_DEMO00.base.base,
&g_profile_TAG_CAMERA.base.base,
&g_profile_TAG_CHKPOINT.base.base,
&g_profile_TAG_EVENT.base.base,
&g_profile_TAG_EVT.base.base,
&g_profile_TAG_TELOP.base.base,
&g_profile_TAG_HOWL.base.base,
&g_profile_TAG_MSG.base.base,
&g_profile_TAG_LANTERN.base.base,
&g_profile_Tag_Mist.base.base,
&g_profile_DMIDNA.base.base,
&g_profile_KY_THUNDER.base.base,
&g_profile_VRBOX.base.base,
&g_profile_VRBOX2.base.base,
&g_profile_BG.base.base.base,
&g_profile_SET_BG_OBJ.base.base,
&g_profile_BG_OBJ.base.base,
&g_profile_MIRROR.base.base,
&g_profile_MOVIE_PLAYER.base.base,
&g_profile_TITLE.base.base,
&g_profile_FR.base.base,
&g_profile_ECONT.base.base,
&g_profile_MG_ROD.base.base,
&g_profile_E_ARROW.base.base,
&g_profile_BULLET.base.base,
&g_profile_SWHIT0.base.base,
&g_profile_E_TH_BALL.base.base,
&g_profile_TAG_EVTAREA.base.base,
&g_profile_TAG_EVTMSG.base.base,
&g_profile_TAG_KMSG.base.base,
&g_profile_TAG_PUSH.base.base,
&g_profile_E_MK_BO.base.base,
&g_profile_E_MM_MT.base.base,
&g_profile_OBJ_KBOX.base.base,
&g_profile_OBJ_FW.base.base,
&g_profile_B_GOS.base.base,
&g_profile_OBJ_YSTONE.base.base,
&g_profile_MANT.base.base,
&g_profile_CROD.base.base,
&g_profile_OBJ_PLEAF.base.base,
&g_profile_OBJ_KBACKET.base.base,
&g_profile_OBJ_YBAG.base.base,
&g_profile_OBJ_PUMPKIN.base.base,
&g_profile_OBJ_AUTOMATA.base.base,
&g_profile_OBJ_GADGET.base.base,
&g_profile_OBJ_KAGO.base.base,
&g_profile_Obj_Carry.base.base,
&g_profile_Obj_Stone.base.base,
&g_profile_OBJ_HB.base.base,
&g_profile_NPC_INKO.base.base,
&g_profile_BD.base.base,
&g_profile_Obj_Eff.base.base,
&g_profile_WPILLAR.base.base,
&g_profile_WMARK.base.base,
&g_profile_E_BI.base.base,
&g_profile_E_BI_LEAF.base.base,
&g_profile_START_AND_GOAL.base.base,
&g_profile_NPC_DF.base.base,
&g_profile_ARROW.base.base,
&g_profile_PATH_LINE.base.base.base,
&g_profile_TAG_ALLMATO.base.base,
&g_profile_Obj_Timer.base.base,
&g_profile_SCENE_EXIT.base.base.base,
&g_profile_CAMERA.base.base.base,
&g_profile_CAMERA2.base.base.base,
&g_profile_SUSPEND.base.base,
&g_profile_GRASS.base.base,
&g_profile_KYEFF.base.base,
&g_profile_KYEFF2.base.base,
&g_profile_MSG_OBJECT.base.base,
&g_profile_MENUWINDOW.base.base,
&g_profile_TIMER.base.base,
&g_profile_METER2.base.base,
&g_profile_GAMEOVER.base.base,
NULL,
};
#endif