mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-19 06:27:02 -04:00
Merge pull request #9 from TakaRikka/msvc-linkfix-dev
Merged wip/linkfix branches and show first logos on MSVC
This commit is contained in:
+18
-1324
File diff suppressed because it is too large
Load Diff
Vendored
+1
-1
Submodule extern/aurora updated: 223bcf39b8...08e965bbe8
+1330
File diff suppressed because it is too large
Load Diff
@@ -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
|
||||
}
|
||||
|
||||
|
||||
@@ -16,15 +16,27 @@ inline void J3DFifoWriteXFCmdHdr(u16 addr, u8 len) {
|
||||
}
|
||||
|
||||
inline void J3DFifoLoadIndx(u8 cmd, u16 indx, u16 addr) {
|
||||
#ifdef TARGET_PC
|
||||
GXCmd1u8(cmd);
|
||||
GXCmd1u16(indx);
|
||||
GXCmd1u16(addr);
|
||||
#else
|
||||
GXWGFifo.u8 = cmd;
|
||||
GXWGFifo.u16 = indx;
|
||||
GXWGFifo.u16 = addr;
|
||||
#endif
|
||||
}
|
||||
|
||||
inline void J3DFifoWriteCPCmd(u8 cmd, u32 param) {
|
||||
#ifdef TARGET_PC
|
||||
GXCmd1u8(GX_LOAD_CP_REG);
|
||||
GXCmd1u8(cmd);
|
||||
GXCmd1u32(param);
|
||||
#else
|
||||
GXWGFifo.u8 = GX_LOAD_CP_REG;
|
||||
GXWGFifo.u8 = cmd;
|
||||
GXWGFifo.u32 = param;
|
||||
#endif
|
||||
}
|
||||
|
||||
inline void J3DFifoLoadCPCmd(u8 reg, u32 value) {
|
||||
@@ -34,9 +46,15 @@ inline void J3DFifoLoadCPCmd(u8 reg, u32 value) {
|
||||
}
|
||||
|
||||
inline void J3DFifoWriteXFCmd(u16 cmd, u16 len) {
|
||||
#ifdef TARGET_PC
|
||||
GXCmd1u8(GX_LOAD_XF_REG);
|
||||
GXCmd1u16(len - 1);
|
||||
GXCmd1u16(cmd);
|
||||
#else
|
||||
GXWGFifo.u8 = GX_LOAD_XF_REG;
|
||||
GXWGFifo.u16 = (len - 1);
|
||||
GXWGFifo.u16 = cmd;
|
||||
#endif
|
||||
}
|
||||
|
||||
inline void J3DFifoLoadXFCmdHdr(u16 addr, u8 len) {
|
||||
|
||||
@@ -100,7 +100,7 @@ protected:
|
||||
|
||||
class J3DMaterial;
|
||||
class J3DVertexData;
|
||||
class J3DDrawMtxData;
|
||||
struct J3DDrawMtxData;
|
||||
|
||||
enum J3DShpFlag {
|
||||
J3DShpFlag_Visible = 0x0001,
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include <dolphin/mtx.h>
|
||||
#include <dolphin/mtx.h>
|
||||
#include "global.h"
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-j3d
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include <dolphin/gx.h>
|
||||
#include <dolphin/mtx.h>
|
||||
#include "JSystem/J3DAssert.h"
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
|
||||
enum J3DSysDrawBuf {
|
||||
/* 0x0 */ J3DSysDrawBuf_Opa,
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define J3DTRANSFORM_H
|
||||
|
||||
#include <dolphin/mtx.h>
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
|
||||
struct J3DTextureSRTInfo;
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@ public:
|
||||
|
||||
void setFovy(f32 fovy) { mFovY = fovy; }
|
||||
void setAspect(f32 aspect) { mAspect = aspect; }
|
||||
void setNear(f32 near) { mNear = near; }
|
||||
void setFar(f32 far) { mFar = far; }
|
||||
void setNear(f32 near_) { mNear = near_; }
|
||||
void setFar(f32 far_) { mFar = far_; }
|
||||
|
||||
f32 getFar() { return mFar; }
|
||||
|
||||
|
||||
@@ -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 */
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "JSystem/JGadget/std-list.h"
|
||||
|
||||
class JAWWindow;
|
||||
class JUTGamePad;
|
||||
struct JUTGamePad;
|
||||
|
||||
namespace JAWExtSystem {
|
||||
BOOL registWindow(u32, JAWWindow*, int, int);
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#include "JSystem/JGeometry.h"
|
||||
|
||||
class JAWGraphContext;
|
||||
class JUTGamePad;
|
||||
struct JUTGamePad;
|
||||
|
||||
class JUTPoint {
|
||||
public:
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "JSystem/JHostIO/JHICommonMem.h"
|
||||
#include "JSystem/JAudio2/JAISound.h"
|
||||
|
||||
class JAISeqData;
|
||||
struct JAISeqData;
|
||||
|
||||
class JADHioReceiver : JHITag<JHICmnMem> {
|
||||
public:
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
|
||||
class JAIStreamAramMgr;
|
||||
class JAIStreamDataMgr;
|
||||
struct JAIStreamDataMgr;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
class JASChannel;
|
||||
|
||||
namespace JASDsp {
|
||||
class TChannel;
|
||||
struct TChannel;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,7 +8,7 @@ class JASInstParam;
|
||||
class JASWaveBank;
|
||||
|
||||
namespace JASDsp {
|
||||
class TChannel;
|
||||
struct TChannel;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include "JSystem/JSupport/JSUList.h"
|
||||
|
||||
class JASTrack;
|
||||
struct JASTrack;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
|
||||
@@ -33,6 +33,11 @@ public:
|
||||
static T* sInstance;
|
||||
};
|
||||
|
||||
#ifndef __MWERKS__
|
||||
template<class T>
|
||||
T* JASGlobalInstance<T>::sInstance;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
*
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include "JSystem/JAudio2/JASSeqReader.h"
|
||||
|
||||
class JASTrack;
|
||||
struct JASTrack;
|
||||
class JASSeqParser;
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JASTrack;
|
||||
struct JASTrack;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
struct JASSoundParams;
|
||||
|
||||
namespace JASDsp {
|
||||
class TChannel;
|
||||
struct TChannel;
|
||||
|
||||
extern const u32 FILTER_MODE_IIR;
|
||||
};
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
#include "JSystem/JKernel/JKRDisposer.h"
|
||||
#include <bitset>
|
||||
|
||||
class JAISeqData;
|
||||
class JAISeqDataMgr;
|
||||
class JAISeqDataUser;
|
||||
class JAIStreamDataMgr;
|
||||
struct JAISeqData;
|
||||
struct JAISeqDataMgr;
|
||||
struct JAISeqDataUser;
|
||||
struct JAIStreamDataMgr;
|
||||
class JASVoiceBank;
|
||||
class JAUBankTableLink;
|
||||
class JAUDisposer_;
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
#include "JSystem/JAudio2/JAISeqDataMgr.h"
|
||||
|
||||
class JAISeqData;
|
||||
class JAISeqDataRegion;
|
||||
struct JAISeqData;
|
||||
struct JAISeqDataRegion;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jaudio
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
#include "JSystem/JAudio2/JAISeqDataMgr.h"
|
||||
#include "JSystem/JSupport/JSUList.h"
|
||||
|
||||
class JAISeqData;
|
||||
class JAISeqDataUser;
|
||||
struct JAISeqData;
|
||||
struct JAISeqDataUser;
|
||||
class JKRArchive;
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,9 +15,11 @@ public:
|
||||
JGadget_outMessage(MessageFunc fn, const char* file, int line);
|
||||
~JGadget_outMessage();
|
||||
|
||||
#if !TARGET_PC
|
||||
JGadget_outMessage& operator<<(int param_1) { return *this << (s32)param_1; }
|
||||
JGadget_outMessage& operator<<(u16);
|
||||
JGadget_outMessage& operator<<(uint);
|
||||
#endif
|
||||
JGadget_outMessage& operator<<(u16);
|
||||
JGadget_outMessage& operator<<(u8 param_1) { return *this << (char)param_1; }
|
||||
JGadget_outMessage& operator<<(const char* str);
|
||||
JGadget_outMessage& operator<<(char);
|
||||
|
||||
@@ -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> {
|
||||
|
||||
@@ -46,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
|
||||
}
|
||||
|
||||
@@ -58,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
|
||||
}
|
||||
};
|
||||
|
||||
@@ -2,7 +2,14 @@
|
||||
#define JORMCONTEXT_H
|
||||
|
||||
#include <dolphin/dolphin.h>
|
||||
|
||||
#ifdef _MSVC_LANG
|
||||
#include <stdint.h>
|
||||
#else
|
||||
#include <stdint>
|
||||
#endif
|
||||
|
||||
#include <global.h>
|
||||
#include "JSystem/JHostIO/JORReflexible.h"
|
||||
#include "JSystem/JSupport/JSUMemoryStream.h"
|
||||
|
||||
|
||||
@@ -33,8 +33,8 @@ struct JORNodeEvent : JOREvent {
|
||||
/* 0x00 */ u32 field_0x0;
|
||||
};
|
||||
|
||||
struct JORMContext;
|
||||
struct JORServer;
|
||||
class JORMContext;
|
||||
class JORServer;
|
||||
|
||||
class JOREventListener {
|
||||
public:
|
||||
|
||||
@@ -27,8 +27,8 @@ public:
|
||||
|
||||
/* 0x40 */ s32 mTransferDirection;
|
||||
/* 0x44 */ u32 mDataLength;
|
||||
/* 0x48 */ u32 mSrc;
|
||||
/* 0x4C */ u32 mDst;
|
||||
/* 0x48 */ uintptr_t mSrc;
|
||||
/* 0x4C */ uintptr_t mDst;
|
||||
/* 0x50 */ JKRAramBlock* mAramBlock;
|
||||
/* 0x54 */ u32 field_0x54;
|
||||
/* 0x58 */ AsyncCallback mCallback;
|
||||
@@ -63,15 +63,15 @@ public:
|
||||
static JSUList<JKRAMCommand> sAramPieceCommandList;
|
||||
|
||||
public:
|
||||
static JKRAMCommand* prepareCommand(int, u32, u32, u32, JKRAramBlock*,
|
||||
static JKRAMCommand* prepareCommand(int, uintptr_t, uintptr_t, u32, JKRAramBlock*,
|
||||
JKRAMCommand::AsyncCallback);
|
||||
static void sendCommand(JKRAMCommand*);
|
||||
|
||||
static JKRAMCommand* orderAsync(int, u32, u32, u32, JKRAramBlock*, JKRAMCommand::AsyncCallback);
|
||||
static JKRAMCommand* orderAsync(int, uintptr_t, uintptr_t, u32, JKRAramBlock*, JKRAMCommand::AsyncCallback);
|
||||
static BOOL sync(JKRAMCommand*, int);
|
||||
static BOOL orderSync(int, u32, u32, u32, JKRAramBlock*);
|
||||
static BOOL orderSync(int, uintptr_t, uintptr_t, u32, JKRAramBlock*);
|
||||
static void startDMA(JKRAMCommand*);
|
||||
static void doneDMA(u32);
|
||||
static void doneDMA(uintptr_t);
|
||||
|
||||
private:
|
||||
static void lock() { OSLockMutex(&mMutex); }
|
||||
@@ -82,7 +82,7 @@ inline void JKRAramPcs_SendCommand(JKRAMCommand* command) {
|
||||
JKRAramPiece::sendCommand(command);
|
||||
}
|
||||
|
||||
inline BOOL JKRAramPcs(int direction, u32 source, u32 destination, u32 length,
|
||||
inline BOOL JKRAramPcs(int direction, uintptr_t source, uintptr_t destination, u32 length,
|
||||
JKRAramBlock* block) {
|
||||
return JKRAramPiece::orderSync(direction, source, destination, length, block);
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "JSystem/JKernel/JKRCompression.h"
|
||||
#include "JSystem/JKernel/JKRFileLoader.h"
|
||||
#include "global.h"
|
||||
#include "dusk/endian.h"
|
||||
|
||||
class JKRHeap;
|
||||
|
||||
@@ -12,14 +13,14 @@ class JKRHeap;
|
||||
*
|
||||
*/
|
||||
struct SArcHeader {
|
||||
/* 0x00 */ u32 signature;
|
||||
/* 0x04 */ u32 file_length;
|
||||
/* 0x08 */ u32 header_length;
|
||||
/* 0x0C */ u32 file_data_offset;
|
||||
/* 0x10 */ u32 file_data_length;
|
||||
/* 0x14 */ u32 field_0x14;
|
||||
/* 0x18 */ u32 field_0x18;
|
||||
/* 0x1C */ u32 field_0x1c;
|
||||
/* 0x00 */ BE(u32) signature;
|
||||
/* 0x04 */ BE(u32) file_length;
|
||||
/* 0x08 */ BE(u32) header_length;
|
||||
/* 0x0C */ BE(u32) file_data_offset;
|
||||
/* 0x10 */ BE(u32) file_data_length;
|
||||
/* 0x14 */ BE(u32) field_0x14;
|
||||
/* 0x18 */ BE(u32) field_0x18;
|
||||
/* 0x1C */ BE(u32) field_0x1c;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -27,13 +28,13 @@ struct SArcHeader {
|
||||
*
|
||||
*/
|
||||
struct SArcDataInfo {
|
||||
/* 0x00 */ u32 num_nodes;
|
||||
/* 0x04 */ u32 node_offset;
|
||||
/* 0x08 */ u32 num_file_entries;
|
||||
/* 0x0C */ u32 file_entry_offset;
|
||||
/* 0x10 */ u32 string_table_length;
|
||||
/* 0x14 */ u32 string_table_offset;
|
||||
/* 0x18 */ u16 next_free_file_id;
|
||||
/* 0x00 */ BE(u32) num_nodes;
|
||||
/* 0x04 */ BE(u32) node_offset;
|
||||
/* 0x08 */ BE(u32) num_file_entries;
|
||||
/* 0x0C */ BE(u32) file_entry_offset;
|
||||
/* 0x10 */ BE(u32) string_table_length;
|
||||
/* 0x14 */ BE(u32) string_table_offset;
|
||||
/* 0x18 */ BE(u16) next_free_file_id;
|
||||
/* 0x1A */ bool sync_file_ids_and_indices;
|
||||
/* 0x1B */ u8 field_1b[5];
|
||||
};
|
||||
@@ -50,6 +51,12 @@ inline u16 read_big_endian_u16(void* ptr) {
|
||||
|
||||
extern u32 sCurrentDirID__10JKRArchive; // JKRArchive::sCurrentDirID
|
||||
|
||||
#if TARGET_PC
|
||||
#define JKAR_DATA(entry) getFileDataPointer(entry->index)
|
||||
#else
|
||||
#define JKAR_DATA(entry) entry->data
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jkernel
|
||||
*
|
||||
@@ -64,20 +71,29 @@ public:
|
||||
};
|
||||
|
||||
struct SDIDirEntry {
|
||||
u32 type;
|
||||
u32 name_offset;
|
||||
u16 field_0x8;
|
||||
u16 num_entries;
|
||||
u32 first_file_index;
|
||||
BE(u32) type;
|
||||
BE(u32) name_offset;
|
||||
BE(u16) field_0x8;
|
||||
BE(u16) num_entries;
|
||||
BE(u32) first_file_index;
|
||||
};
|
||||
|
||||
struct SDIFileEntry {
|
||||
u16 file_id;
|
||||
u16 name_hash;
|
||||
u32 type_flags_and_name_offset;
|
||||
u32 data_offset;
|
||||
u32 data_size;
|
||||
BE(u16) file_id;
|
||||
BE(u16) name_hash;
|
||||
BE(u32) type_flags_and_name_offset;
|
||||
BE(u32) data_offset;
|
||||
BE(u32) data_size;
|
||||
#if TARGET_PC
|
||||
// Yes, they store the data pointer in the datastructure that's directly loaded from
|
||||
// archive files.
|
||||
// We can't expand this struct to fit a 64-bit pointer, so instead
|
||||
// we'll need to store this data in a separate array.
|
||||
// Store the *index* of this entry (!= file_id), so we can look up the real pointer easily.
|
||||
u32 index;
|
||||
#else
|
||||
void* data;
|
||||
#endif
|
||||
|
||||
u32 getNameOffset() const { return type_flags_and_name_offset & 0xFFFFFF; }
|
||||
u16 getNameHash() const { return name_hash; }
|
||||
@@ -130,6 +146,11 @@ protected:
|
||||
JKRArchive();
|
||||
JKRArchive(s32, EMountMode);
|
||||
|
||||
#if TARGET_PC
|
||||
void*& getFileDataPointer(int idx) const;
|
||||
void initFileDataPointers();
|
||||
#endif
|
||||
|
||||
public:
|
||||
bool getDirEntry(SDirEntry*, u32) const;
|
||||
void* getIdxResource(u32);
|
||||
@@ -188,6 +209,10 @@ public:
|
||||
/* 0x50 */ s32* mExpandedSize;
|
||||
/* 0x54 */ const char* mStringTable;
|
||||
|
||||
#if TARGET_PC
|
||||
void** mFileData;
|
||||
#endif
|
||||
|
||||
protected:
|
||||
/* 0x58 */ u32 field_0x58;
|
||||
/* 0x5C */ JKRCompression mCompression;
|
||||
|
||||
@@ -28,7 +28,7 @@ public:
|
||||
private:
|
||||
/* 0x00 */ // vtable
|
||||
/* 0x04 */ // JKRArchive
|
||||
/* 0x64 */ int field_0x64;
|
||||
/* 0x64 */ intptr_t field_0x64;
|
||||
/* 0x68 */ JKRAramBlock* mAramPart;
|
||||
/* 0x6C */ int field_0x6c;
|
||||
/* 0x70 */ JKRDvdFile* mDvdFile;
|
||||
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
CMemBlock* getNextBlock() const { return mNext; }
|
||||
u32 getSize() const { return size; }
|
||||
u8 getGroupId() const { return mGroupId; }
|
||||
static CMemBlock* getBlock(void* data) { return (CMemBlock*)((uintptr_t)data + -0x10); }
|
||||
static CMemBlock* getBlock(void* data) { return (CMemBlock*)((uintptr_t)data + -sizeof(CMemBlock)); }
|
||||
|
||||
private:
|
||||
/* 0x0 */ u16 mMagic;
|
||||
@@ -44,9 +44,17 @@ public:
|
||||
/* 0x4 */ u32 size;
|
||||
/* 0x8 */ CMemBlock* mPrev;
|
||||
/* 0xC */ CMemBlock* mNext;
|
||||
#if BIT_64
|
||||
// Ensure padded to 0x20 bytes on 64-bit
|
||||
void* _pad;
|
||||
#endif
|
||||
}; // Size: 0x10
|
||||
friend class CMemBlock;
|
||||
|
||||
#if TARGET_PC
|
||||
static_assert(sizeof(CMemBlock) == MEM_BLOCK_SIZE);
|
||||
#endif
|
||||
|
||||
protected:
|
||||
JKRExpHeap(void* data, u32 size, JKRHeap* parent, bool errorFlag);
|
||||
virtual ~JKRExpHeap();
|
||||
|
||||
@@ -16,6 +16,12 @@ extern u8 JKRValue_DEBUGFILL_DELETE;
|
||||
extern s32 fillcheck_dispcount;
|
||||
extern bool data_8074A8D0_debug;
|
||||
|
||||
#if BIT_64
|
||||
#define MEM_BLOCK_SIZE 0x20
|
||||
#else
|
||||
#define MEM_BLOCK_SIZE 0x10
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jkernel
|
||||
*
|
||||
|
||||
+102
-37
@@ -1,9 +1,16 @@
|
||||
#ifndef JMATH_H
|
||||
#define JMATH_H
|
||||
|
||||
#include <dolphin/mtx.h>
|
||||
#include "dolphin/mtx.h"
|
||||
#include <cmath>
|
||||
|
||||
typedef f32 Mtx33[3][3];
|
||||
typedef f32 Mtx23[2][3];
|
||||
typedef f32 (*Mtx3P)[3];
|
||||
typedef f32 (*MtxP)[4];
|
||||
typedef const f32 (*CMtxP)[4];
|
||||
typedef f32 QuaternionP[4];
|
||||
|
||||
void JMAMTXApplyScale(const Mtx, Mtx, f32, f32, f32);
|
||||
void JMAEulerToQuat(s16 param_0, s16 param_1, s16 param_2, Quaternion* param_3);
|
||||
void JMAQuatLerp(const Quaternion*, const Quaternion*, f32, Quaternion*);
|
||||
@@ -14,18 +21,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 +53,8 @@ inline float __frsqrtes(__REGISTER double f) {
|
||||
|
||||
// clang-format on
|
||||
return out;
|
||||
#else
|
||||
return 1.0f / sqrtf(f);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -54,6 +69,8 @@ inline f32 JMAFastSqrt(__REGISTER const f32 input) {
|
||||
} else {
|
||||
return input;
|
||||
}
|
||||
#else
|
||||
return sqrt(input);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -87,6 +104,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 +141,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 +163,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 +197,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 +234,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 +264,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 +287,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 +329,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) {
|
||||
|
||||
@@ -35,7 +35,12 @@ typedef struct str1_entry_t {
|
||||
|
||||
typedef struct str1_section_t {
|
||||
/* 0x00 */ bmg_section_t header; // section header
|
||||
#ifdef _MSVC_LANG
|
||||
str1_entry_t* __get_entries() const { return (str1_entry_t*)(this + 1); }
|
||||
__declspec(property(get = __get_entries)) str1_entry_t* entries;
|
||||
#else
|
||||
/* 0x08 */ str1_entry_t entries[0];
|
||||
#endif
|
||||
} str1_section_t;
|
||||
|
||||
#endif /* JMESSAGE_H */
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <dolphin/gx.h>
|
||||
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
class JPABaseParticle;
|
||||
class JKRHeap;
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <dolphin/gx.h>
|
||||
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
class JPABaseParticle;
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jparticle
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jparticle
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
class JPABaseParticle;
|
||||
|
||||
/**
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JKRHeap;
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
class JPABaseParticle;
|
||||
class JPAFieldBlock;
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include <dolphin/types.h>
|
||||
|
||||
class JKRHeap;
|
||||
class JPAEmitterWorkData;
|
||||
struct JPAEmitterWorkData;
|
||||
class JPABaseEmitter;
|
||||
class JPABaseParticle;
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
class J2DOrthoGraph;
|
||||
class JUTFont;
|
||||
class JUTGamePad;
|
||||
struct JUTGamePad;
|
||||
|
||||
namespace JStudio {
|
||||
class TControl;
|
||||
|
||||
@@ -18,6 +18,13 @@ public:
|
||||
s32 write(const void*, s32);
|
||||
void write(const char*);
|
||||
|
||||
#if defined(_MSVC_LANG) && defined(_WIN64)
|
||||
JSUOutputStream& operator<<(uintptr_t param_0) {
|
||||
write(¶m_0, sizeof(uintptr_t));
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
JSUOutputStream& operator<<(u32 param_0) {
|
||||
write(¶m_0, sizeof(u32));
|
||||
return *this;
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "JSystem/JUtility/TColor.h"
|
||||
#include <string>
|
||||
#include "dusk/endian.h"
|
||||
|
||||
/**
|
||||
* @ingroup jsystem-jutility
|
||||
@@ -10,54 +11,59 @@
|
||||
*/
|
||||
struct ResFONT {
|
||||
struct INF1 {
|
||||
/* 0x00 */ u32 magic;
|
||||
/* 0x04 */ u32 size;
|
||||
/* 0x08 */ u16 fontType;
|
||||
/* 0x0A */ u16 ascent;
|
||||
/* 0x0C */ u16 descent;
|
||||
/* 0x0E */ u16 width;
|
||||
/* 0x10 */ u16 leading;
|
||||
/* 0x12 */ u16 defaultCode;
|
||||
/* 0x00 */ BE(u32) magic;
|
||||
/* 0x04 */ BE(u32) size;
|
||||
/* 0x08 */ BE(u16) fontType;
|
||||
/* 0x0A */ BE(u16) ascent;
|
||||
/* 0x0C */ BE(u16) descent;
|
||||
/* 0x0E */ BE(u16) width;
|
||||
/* 0x10 */ BE(u16) leading;
|
||||
/* 0x12 */ BE(u16) defaultCode;
|
||||
};
|
||||
|
||||
struct WID1 {
|
||||
/* 0x00 */ u32 magic;
|
||||
/* 0x04 */ u32 size;
|
||||
/* 0x08 */ u16 startCode;
|
||||
/* 0x0A */ u16 endCode;
|
||||
/* 0x00 */ BE(u32) magic;
|
||||
/* 0x04 */ BE(u32) size;
|
||||
/* 0x08 */ BE(u16) startCode;
|
||||
/* 0x0A */ BE(u16) endCode;
|
||||
/* 0x0C */ u8 mChunkNum[4];
|
||||
};
|
||||
|
||||
struct MAP1 {
|
||||
/* 0x00 */ u32 magic;
|
||||
/* 0x04 */ u32 size;
|
||||
/* 0x08 */ u16 mappingMethod;
|
||||
/* 0x0A */ u16 startCode;
|
||||
/* 0x0C */ u16 endCode;
|
||||
/* 0x0E */ u16 numEntries;
|
||||
/* 0x10 */ u16 mLeading;
|
||||
/* 0x00 */ BE(u32) magic;
|
||||
/* 0x04 */ BE(u32) size;
|
||||
/* 0x08 */ BE(u16) mappingMethod;
|
||||
/* 0x0A */ BE(u16) startCode;
|
||||
/* 0x0C */ BE(u16) endCode;
|
||||
/* 0x0E */ BE(u16) numEntries;
|
||||
/* 0x10 */ BE(u16) mLeading;
|
||||
};
|
||||
|
||||
struct GLY1 {
|
||||
/* 0x00 */ u32 magic;
|
||||
/* 0x04 */ u32 size;
|
||||
/* 0x08 */ u16 startCode;
|
||||
/* 0x0A */ u16 endCode;
|
||||
/* 0x0C */ u16 cellWidth;
|
||||
/* 0x0E */ u16 cellHeight;
|
||||
/* 0x10 */ u32 textureSize;
|
||||
/* 0x14 */ u16 textureFormat;
|
||||
/* 0x16 */ u16 numRows;
|
||||
/* 0x18 */ u16 numColumns;
|
||||
/* 0x1A */ u16 textureWidth;
|
||||
/* 0x1C */ u16 textureHeight;
|
||||
/* 0x1E */ u16 padding;
|
||||
/* 0x00 */ u32 magic; // Don't mark BE (seemingly only written by code)
|
||||
/* 0x04 */ BE(u32) size;
|
||||
/* 0x08 */ BE(u16) startCode;
|
||||
/* 0x0A */ BE(u16) endCode;
|
||||
/* 0x0C */ BE(u16) cellWidth;
|
||||
/* 0x0E */ BE(u16) cellHeight;
|
||||
/* 0x10 */ BE(u32) textureSize;
|
||||
/* 0x14 */ BE(u16) textureFormat;
|
||||
/* 0x16 */ BE(u16) numRows;
|
||||
/* 0x18 */ BE(u16) numColumns;
|
||||
/* 0x1A */ BE(u16) textureWidth;
|
||||
/* 0x1C */ BE(u16) textureHeight;
|
||||
/* 0x1E */ BE(u16) padding;
|
||||
#ifdef _MSVC_LANG
|
||||
u8* __get_data() const { return (u8*)(this + 1); }
|
||||
__declspec(property(get = __get_data)) u8* data;
|
||||
#else
|
||||
/* 0x20 */ u8 data[];
|
||||
#endif
|
||||
};
|
||||
|
||||
/* 0x00 */ u64 magic;
|
||||
/* 0x08 */ u32 filesize;
|
||||
/* 0x0C */ u32 numBlocks;
|
||||
/* 0x00 */ BE(u64) magic;
|
||||
/* 0x08 */ BE(u32) filesize;
|
||||
/* 0x0C */ BE(u32) numBlocks;
|
||||
/* 0x10 */ u8 padding[0x10];
|
||||
/* 0x20 */ u8 data[];
|
||||
};
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
|
||||
#include <dolphin/gx.h>
|
||||
|
||||
#include "dusk/endian.h"
|
||||
|
||||
enum JUTTransparency { UNK0, UNK1 };
|
||||
|
||||
/**
|
||||
@@ -12,7 +14,7 @@ enum JUTTransparency { UNK0, UNK1 };
|
||||
struct ResTLUT {
|
||||
u8 format;
|
||||
u8 transparency;
|
||||
u16 numColors;
|
||||
BE(u16) numColors;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -13,8 +13,8 @@ typedef bool (*IsLeadByte_func)(int);
|
||||
*/
|
||||
struct BlockHeader {
|
||||
const BlockHeader* getNext() const { return reinterpret_cast<const BlockHeader*>(reinterpret_cast<const u8*>(this) + size); }
|
||||
u32 magic;
|
||||
u32 size;
|
||||
BE(u32) magic;
|
||||
BE(u32) size;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -50,7 +50,7 @@ public:
|
||||
void countBlock();
|
||||
void loadFont(int, _GXTexMapID, JUTFont::TWidth*);
|
||||
int getFontCode(int) const;
|
||||
int convertSjis(int, u16*) const;
|
||||
int convertSjis(int, BE(u16)*) const;
|
||||
|
||||
inline void delete_and_initialize() {
|
||||
deleteMemBlocks_ResFont();
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include <dolphin/gx.h>
|
||||
#include <stdint.h>
|
||||
#include "dusk/endian.h"
|
||||
|
||||
class JUTPalette;
|
||||
|
||||
@@ -25,7 +26,7 @@ struct ResTIMG {
|
||||
/* 0x08 */ u8 indexTexture;
|
||||
/* 0x09 */ u8 colorFormat;
|
||||
/* 0x0A */ u16 numColors;
|
||||
/* 0x0C */ uintptr_t paletteOffset;
|
||||
/* 0x0C */ u32 paletteOffset;
|
||||
/* 0x10 */ u8 mipmapEnabled;
|
||||
/* 0x11 */ u8 doEdgeLOD;
|
||||
/* 0x12 */ u8 biasClamp;
|
||||
@@ -37,7 +38,7 @@ struct ResTIMG {
|
||||
/* 0x18 */ u8 mipmapCount;
|
||||
/* 0x19 */ u8 unknown;
|
||||
/* 0x1A */ s16 LODBias;
|
||||
/* 0x1C */ uintptr_t imageOffset;
|
||||
/* 0x1C */ u32 imageOffset;
|
||||
}; // Size: 0x20
|
||||
|
||||
/**
|
||||
@@ -71,8 +72,8 @@ public:
|
||||
const ResTIMG* getTexInfo() const { return mTexInfo; }
|
||||
s32 getFormat() const { return mTexInfo->format; }
|
||||
s32 getTransparency() const { return mTexInfo->alphaEnabled; }
|
||||
s32 getWidth() const { return mTexInfo->width; }
|
||||
s32 getHeight() const { return mTexInfo->height; }
|
||||
s32 getWidth() const { return RES_U16(mTexInfo->width); }
|
||||
s32 getHeight() const { return RES_U16(mTexInfo->height); }
|
||||
void setCaptureFlag(bool flag) { mFlags &= 2 | flag; }
|
||||
bool getCaptureFlag() const { return mFlags & 1; }
|
||||
bool getEmbPaletteDelFlag() const { return mFlags & 2; }
|
||||
|
||||
@@ -12,7 +12,7 @@ class cM3dGPla;
|
||||
class cM3dGSph;
|
||||
class cM3dGTri;
|
||||
class csXyz;
|
||||
class cXyz;
|
||||
struct cXyz;
|
||||
|
||||
struct cM3d_Range {
|
||||
/* 0x0 */ f32 mMin;
|
||||
|
||||
@@ -4,6 +4,10 @@
|
||||
#include <dolphin/mtx.h>
|
||||
#include <cmath>
|
||||
|
||||
#ifdef _MSVC_LANG
|
||||
#define M_PI 3.14159265358979323846f
|
||||
#endif
|
||||
|
||||
struct cXyz : Vec {
|
||||
static const cXyz Zero;
|
||||
static const cXyz BaseX;
|
||||
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
static Z2CreatureLink* getLink() { return mLinkPtr; }
|
||||
|
||||
friend class Z2LinkSoundStarter;
|
||||
friend class Z2RideSoundStarter;
|
||||
friend struct Z2RideSoundStarter;
|
||||
|
||||
private:
|
||||
/* 0x90 Z2LinkSoundStarter */
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include "Z2AudioLib/Z2SoundHandles.h"
|
||||
#include "JSystem/JAudio2/JAUSoundAnimator.h"
|
||||
|
||||
class Z2SoundStarter;
|
||||
struct Z2SoundStarter;
|
||||
|
||||
class Z2SoundObjBase : public Z2SoundHandles
|
||||
#if DEBUG
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef Z2STATUSMGR_H
|
||||
#define Z2STATUSMGR_H
|
||||
|
||||
#include <global.h>
|
||||
#include "JSystem/JAudio2/JASGadget.h"
|
||||
#include <dolphin/mtx.h>
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include "d/d_bg_s_acch.h"
|
||||
|
||||
class dBgW;
|
||||
class msg_class;
|
||||
struct msg_class;
|
||||
|
||||
/**
|
||||
* @ingroup actors-enemies
|
||||
|
||||
@@ -626,7 +626,8 @@ public:
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames) :
|
||||
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
:
|
||||
mpFaceMotionAnmData(i_faceMotionAnmData),
|
||||
mpMotionAnmData(i_motionAnmData),
|
||||
mpEvtData(i_evtData),
|
||||
|
||||
@@ -149,8 +149,7 @@ public:
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum,
|
||||
daNpcT_evtData_c const* i_evtData,
|
||||
char** i_arcNames)
|
||||
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
|
||||
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
|
||||
i_arcNames) {
|
||||
|
||||
@@ -112,8 +112,7 @@ public:
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum,
|
||||
daNpcT_evtData_c const* i_evtData,
|
||||
char** i_arcNames)
|
||||
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
|
||||
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
|
||||
i_arcNames) {
|
||||
|
||||
@@ -86,9 +86,10 @@ public:
|
||||
int talkwithJagar(void*);
|
||||
int talk(void*);
|
||||
daNpc_Bou_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
|
||||
daNpcT_evtData_c const* param_7, char** param_8) :
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
|
||||
daNpcT_evtData_c const* param_7, char** param_8)
|
||||
:
|
||||
daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8)
|
||||
{}
|
||||
|
||||
|
||||
@@ -95,13 +95,12 @@ public:
|
||||
int tend(void*);
|
||||
int talk(void*);
|
||||
int shop(void*);
|
||||
daNpc_clerkA_c(
|
||||
daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
|
||||
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
daNpc_clerkA_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
|
||||
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
|
||||
i_arcNames) {}
|
||||
|
||||
@@ -108,13 +108,12 @@ public:
|
||||
int tend(void*);
|
||||
int talk(void*);
|
||||
int shop(void*);
|
||||
daNpc_clerkB_c(
|
||||
daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
|
||||
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
daNpc_clerkB_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
|
||||
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
|
||||
i_arcNames) {}
|
||||
|
||||
@@ -121,13 +121,12 @@ public:
|
||||
int practice(void*);
|
||||
int nurse(void*);
|
||||
int talk(void*);
|
||||
daNpc_Taro_c(
|
||||
daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
|
||||
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
daNpc_Taro_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
|
||||
daNpcT_motionAnmData_c const* i_motionAnmData,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
|
||||
int i_faceMotionStepNum,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
|
||||
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
|
||||
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
|
||||
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
|
||||
i_arcNames) {
|
||||
|
||||
@@ -1087,7 +1087,8 @@ inline void dComIfG_ct() {
|
||||
g_dComIfG_gameInfo.ct();
|
||||
}
|
||||
|
||||
int dComLbG_PhaseHandler(request_of_phase_process_class*, request_of_phase_process_fn*, void*);
|
||||
int dComLbG_PhaseHandler(request_of_phase_process_class*, request_of_phase_process_fn*,
|
||||
void*);
|
||||
BOOL dComIfG_resetToOpening(scene_class* scene);
|
||||
char* dComIfG_getRoomArcName(int roomNo);
|
||||
void* dComIfG_getStageRes(char const* i_resName);
|
||||
@@ -3920,7 +3921,8 @@ inline int dComIfGp_evmng_getMyStaffId(const char* i_staffname, fopAc_ac_c* i_ac
|
||||
return dComIfGp_getPEvtManager()->getMyStaffId(i_staffname, i_actor, i_tagId);
|
||||
}
|
||||
|
||||
inline int dComIfGp_evmng_getMyActIdx(int i_staffId, char** i_actions, int i_actionNum, BOOL param_3, BOOL param_4) {
|
||||
inline int dComIfGp_evmng_getMyActIdx(int i_staffId, char** i_actions, int i_actionNum,
|
||||
BOOL param_3, BOOL param_4) {
|
||||
return dComIfGp_getPEvtManager()->getMyActIdx(i_staffId, i_actions, i_actionNum, param_3, param_4);
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include "global.h"
|
||||
#include "f_pc/f_pc_base.h"
|
||||
|
||||
class msg_class;
|
||||
struct msg_class;
|
||||
|
||||
struct event_binary_data_header {
|
||||
/* 0x00 */ u32 eventTop; // offset to Event chunk
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "JSystem/JUtility/JUTResFont.h"
|
||||
#include "JSystem/JKernel/JKRExpHeap.h"
|
||||
|
||||
class JUTGamePad;
|
||||
struct JUTGamePad;
|
||||
|
||||
class dJcame_c {
|
||||
public:
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace JStudio {
|
||||
|
||||
class J2DOrthoGraph;
|
||||
class JKRExpHeap;
|
||||
class JUTGamePad;
|
||||
struct JUTGamePad;
|
||||
class JUTResFont;
|
||||
class tParse_;
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
class JPABaseEmitter;
|
||||
class cBgS_PolyInfo;
|
||||
class color_RGB_class;
|
||||
struct color_RGB_class;
|
||||
|
||||
struct LIGHT_INFLUENCE {
|
||||
/* 0x00 */ cXyz mPosition;
|
||||
@@ -148,12 +148,12 @@ struct LightStatus {
|
||||
}; // Size: 0xE8
|
||||
|
||||
class fopAc_ac_c;
|
||||
class dKyd_lightSchejule;
|
||||
class stage_palette_info_class;
|
||||
class stage_pselect_info_class;
|
||||
class stage_envr_info_class;
|
||||
class stage_vrboxcol_info_class;
|
||||
class stage_plight_info_class;
|
||||
struct dKyd_lightSchejule;
|
||||
struct stage_palette_info_class;
|
||||
struct stage_pselect_info_class;
|
||||
struct stage_envr_info_class;
|
||||
struct stage_vrboxcol_info_class;
|
||||
struct stage_plight_info_class;
|
||||
class kytag08_class;
|
||||
|
||||
struct dKy_pol_arg_struct {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "SSystem/SComponent/c_sxyz.h"
|
||||
#include "SSystem/SComponent/c_xyz.h"
|
||||
|
||||
class WIND_INFLUENCE;
|
||||
struct WIND_INFLUENCE;
|
||||
|
||||
void dKyw_wether_draw();
|
||||
void dKyw_wether_delete();
|
||||
|
||||
@@ -74,7 +74,12 @@ public:
|
||||
/* 0x0 */ char mStageName[8];
|
||||
/* 0x8 */ u16 mAreaName;
|
||||
/* 0xA */ u8 mCount;
|
||||
#ifdef _MSVC_LANG
|
||||
u8* __get_mRoomNos() const { return (u8*)(this + 1); }
|
||||
__declspec(property(get = __get_mRoomNos)) u8* mRoomNos;
|
||||
#else
|
||||
/* 0xB */ u8 mRoomNos[0];
|
||||
#endif
|
||||
};
|
||||
|
||||
/* 0x0 */ u8 mCount;
|
||||
|
||||
@@ -16,7 +16,7 @@ enum {
|
||||
};
|
||||
|
||||
class fopAc_ac_c;
|
||||
class msg_class;
|
||||
struct msg_class;
|
||||
|
||||
// all mesg_flow_node structs members might be wrong
|
||||
struct mesg_flow_node {
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
#ifndef D_PARTICLE_D_PARTICLE_NAME_H
|
||||
#define D_PARTICLE_D_PARTICLE_NAME_H
|
||||
|
||||
#include <dolphin/types.h>
|
||||
#include "dolphin/types.h"
|
||||
#include <global.h>
|
||||
|
||||
// Room scenes use a bit to specify an ID is from a room particle pack, not the common particle pack
|
||||
#define dPa_RM(id) (0x8000 | (id))
|
||||
|
||||
@@ -29,10 +29,11 @@ public:
|
||||
};
|
||||
|
||||
dShopSystem_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6, daNpcT_evtData_c const* param_7,
|
||||
char** param_8) : daNpcT_c(param_1,param_2,param_3,param_4,param_5,param_6,param_7,param_8) {
|
||||
OS_REPORT("|%06d:%x|dShopSystem_c -> コンストラクト\n", g_Counter.mCounter0, this);
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
|
||||
daNpcT_evtData_c const* param_7, char** param_8)
|
||||
: daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) {
|
||||
OS_REPORT("|%06d:%x|dShopSystem_c -> コンストラクト\n", g_Counter.mCounter0, this);
|
||||
initShopSystem();
|
||||
}
|
||||
|
||||
|
||||
@@ -31,14 +31,6 @@ typedef f32 (*Mtx44Ptr)[4];
|
||||
typedef f32 ROMtx[4][3];
|
||||
typedef f32 (*ROMtxPtr)[4];
|
||||
|
||||
// do these belong in the sdk?
|
||||
typedef f32 Mtx33[3][3];
|
||||
typedef f32 Mtx23[2][3];
|
||||
typedef f32 (*Mtx3P)[3];
|
||||
typedef f32 (*MtxP)[4];
|
||||
typedef const f32 (*CMtxP)[4];
|
||||
typedef f32 QuaternionP[4];
|
||||
|
||||
typedef struct {
|
||||
u32 numMtx;
|
||||
MtxPtr stackBase;
|
||||
@@ -10,7 +10,7 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef void (*ARQCallback)(u32 pointerToARQRequest);
|
||||
typedef void (*ARQCallback)(uintptr_t pointerToARQRequest);
|
||||
|
||||
struct ARQRequest {
|
||||
/* 0x00 */ struct ARQRequest *next;
|
||||
@@ -59,7 +59,7 @@ void ARClear(u32 flag);
|
||||
// ARQ
|
||||
void ARQInit(void);
|
||||
void ARQReset(void);
|
||||
void ARQPostRequest(ARQRequest* request, u32 owner, u32 type, u32 priority, u32 source, u32 dest, u32 length, ARQCallback callback);
|
||||
void ARQPostRequest(ARQRequest* request, u32 owner, u32 type, u32 priority, uintptr_t source, uintptr_t dest, u32 length, ARQCallback callback);
|
||||
void ARQRemoveRequest(ARQRequest* request);
|
||||
void ARQRemoveOwnerRequest(u32 owner);
|
||||
void ARQFlushQueue(void);
|
||||
|
||||
@@ -28,6 +28,10 @@ static inline void GXSetTexCoordGen(GXTexCoordID dst_coord, GXTexGenType func, G
|
||||
|
||||
void GXBegin(GXPrimitive type, GXVtxFmt vtxfmt, u16 nverts);
|
||||
|
||||
#ifndef TARGET_PC
|
||||
// On GameCube, GXEnd is a no-op (hardware reads FIFO directly).
|
||||
// On PC, Aurora provides an extern GXEnd() that drains the software FIFO
|
||||
// (declared in extern/aurora/include/dolphin/gx/GXVert.h).
|
||||
static inline void GXEnd(void) {
|
||||
#if DEBUG
|
||||
extern GXBool __GXinBegin;
|
||||
@@ -38,6 +42,7 @@ static inline void GXEnd(void) {
|
||||
__GXinBegin = GX_FALSE;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
void GXSetLineWidth(u8 width, GXTexOffset texOffsets);
|
||||
void GXSetPointSize(u8 pointSize, GXTexOffset texOffsets);
|
||||
|
||||
@@ -36,7 +36,11 @@ typedef struct _GXColorS10 {
|
||||
} GXColorS10;
|
||||
|
||||
typedef struct _GXTexObj {
|
||||
#ifdef TARGET_PC
|
||||
u32 dummy[22]; // Aurora's GXTexObj_ contains std::shared_ptr + many fields (~80 bytes)
|
||||
#else
|
||||
u32 dummy[8];
|
||||
#endif
|
||||
} GXTexObj;
|
||||
|
||||
typedef struct _GXLightObj {
|
||||
@@ -48,7 +52,11 @@ typedef struct _GXTexRegion {
|
||||
} GXTexRegion;
|
||||
|
||||
typedef struct _GXTlutObj {
|
||||
#ifdef TARGET_PC
|
||||
u32 dummy[4]; // Aurora's GXTlutObj_ contains std::shared_ptr (8+ bytes)
|
||||
#else
|
||||
u32 dummy[3];
|
||||
#endif
|
||||
} GXTlutObj;
|
||||
|
||||
typedef struct _GXTlutRegion {
|
||||
|
||||
@@ -3,6 +3,46 @@
|
||||
|
||||
#ifdef __REVOLUTION_SDK__
|
||||
#include <revolution/gx/GXVert.h>
|
||||
#elif defined(TARGET_PC)
|
||||
// On PC, include Aurora's GXVert for GXPosition/GXNormal/GXColor/GXTexCoord/GXEnd
|
||||
// (extern functions implemented in Aurora's GXVert.cpp, stream-based vertex buffers)
|
||||
#include "../../../extern/aurora/include/dolphin/gx/GXVert.h"
|
||||
|
||||
// Aurora's GXVert.h does not provide GXCmd, GXParam, GXMatrixIndex, or a valid
|
||||
// GXWGFifo target. J3D code uses these for low-level display list writes.
|
||||
// We declare them as extern (implemented in stubs.cpp) and provide a dummy
|
||||
// GXWGFifo that writes into a throw-away buffer so direct FIFO writes don't crash.
|
||||
|
||||
// Replace Aurora's GXWGFifo macro (pointing to 0xCC008000) with an extern variable
|
||||
#undef GXWGFifo
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
// PPCWGPipe is already typedef'd by Aurora's GXVert.h above.
|
||||
// Dummy FIFO sink: direct GXWGFifo writes in J3DFifo.h land here harmlessly.
|
||||
extern volatile PPCWGPipe GXWGFifo;
|
||||
|
||||
void GXCmd1u8(const u8 x);
|
||||
void GXCmd1u16(const u16 x);
|
||||
void GXCmd1u32(const u32 x);
|
||||
|
||||
void GXParam1u8(const u8 x);
|
||||
void GXParam1u16(const u16 x);
|
||||
void GXParam1u32(const u32 x);
|
||||
void GXParam1s8(const s8 x);
|
||||
void GXParam1s16(const s16 x);
|
||||
void GXParam1s32(const s32 x);
|
||||
void GXParam1f32(const f32 x);
|
||||
void GXParam3f32(const f32 x, const f32 y, const f32 z);
|
||||
void GXParam4f32(const f32 x, const f32 y, const f32 z, const f32 w);
|
||||
|
||||
void GXMatrixIndex1u8(const u8 x);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#else
|
||||
#include <dolphin/types.h>
|
||||
#include <dolphin/os.h>
|
||||
|
||||
+51
-13
@@ -1,17 +1,15 @@
|
||||
#ifndef _DOLPHIN_OS_H_
|
||||
#define _DOLPHIN_OS_H_
|
||||
|
||||
#ifdef __MWERKS__
|
||||
#include <cstdio>
|
||||
#else
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
#ifdef __REVOLUTION_SDK__
|
||||
#include <revolution/os.h>
|
||||
#else
|
||||
|
||||
#include <dolphin/types.h>
|
||||
#include <dolphin/gx/GXStruct.h>
|
||||
|
||||
void OSReportInit(void);
|
||||
void OSSwitchFiberEx(u32, u32, u32, u32, u32, u32);
|
||||
void OSVAttention(const char* fmt, va_list args);
|
||||
@@ -45,7 +43,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 +54,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 +92,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 +222,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 +244,29 @@ extern u8 __OSReport_enable;
|
||||
#define OSRoundUp32B(x) (((u32)(x) + 32 - 1) & ~(32 - 1))
|
||||
#define OSRoundDown32B(x) (((u32)(x)) & ~(32 - 1))
|
||||
|
||||
#ifdef TARGET_PC
|
||||
|
||||
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 // non-TARGET_PC
|
||||
|
||||
void* OSPhysicalToCached(u32 paddr);
|
||||
void* OSPhysicalToUncached(u32 paddr);
|
||||
u32 OSCachedToPhysical(void* caddr);
|
||||
@@ -240,7 +274,9 @@ u32 OSUncachedToPhysical(void* ucaddr);
|
||||
void* OSCachedToUncached(void* caddr);
|
||||
void* OSUncachedToCached(void* ucaddr);
|
||||
|
||||
#if !DEBUG
|
||||
#endif // TARGET_PC
|
||||
|
||||
#if !DEBUG && !defined(TARGET_PC)
|
||||
#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 +293,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 +315,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 +328,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 +395,5 @@ static inline void OSInitFastCast(void) {
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif
|
||||
#endif // __REVOLUTION_SDK__
|
||||
#endif // _DOLPHIN_OS_H_
|
||||
|
||||
@@ -4,12 +4,24 @@
|
||||
#ifdef __REVOLUTION_SDK__
|
||||
#include <revolution/types.h>
|
||||
#else
|
||||
|
||||
#if _WIN64 || __LP64__
|
||||
#define BIT_64 1
|
||||
#else
|
||||
#define BIT_64 0
|
||||
#endif
|
||||
|
||||
typedef signed char s8;
|
||||
typedef unsigned char u8;
|
||||
typedef signed short int s16;
|
||||
typedef unsigned short int u16;
|
||||
#if TARGET_PC
|
||||
typedef signed int s32;
|
||||
typedef unsigned int u32;
|
||||
#else
|
||||
typedef signed long s32;
|
||||
typedef unsigned long u32;
|
||||
#endif
|
||||
typedef signed long long int s64;
|
||||
typedef unsigned long long int u64;
|
||||
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
#ifndef DOLPHIN_DVD_EMU_H
|
||||
#define DOLPHIN_DVD_EMU_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include <string>
|
||||
|
||||
// PC-Emulation der DVD-Funktionen
|
||||
namespace DvdEmu {
|
||||
|
||||
// Basis-Pfad zum Datenordner (relativ zur .exe)
|
||||
void setBasePath(const char* path);
|
||||
const char* getBasePath();
|
||||
|
||||
// Konvertiert GameCube-Pfad zu PC-Pfad
|
||||
// z.B. "/res/Object/LogoUs.arc" -> "C:/Games/Dusk/data/res/Object/LogoUs.arc"
|
||||
std::string convertPath(const char* gcPath);
|
||||
|
||||
// Prüft ob Datei existiert
|
||||
bool fileExists(const char* gcPath);
|
||||
|
||||
// Lädt Datei komplett in Speicher
|
||||
// Gibt Pointer zurück, Größe wird in outSize geschrieben
|
||||
// Caller muss Speicher mit free() freigeben
|
||||
void* loadFile(const char* gcPath, u32* outSize, void* heap = nullptr);
|
||||
|
||||
// Lädt Datei in vorhandenen Buffer
|
||||
// Gibt gelesene Bytes zurück
|
||||
u32 loadFileToBuffer(const char* gcPath, void* buffer, u32 bufferSize, u32 offset = 0);
|
||||
|
||||
// Datei-Größe abfragen
|
||||
u32 getFileSize(const char* gcPath);
|
||||
|
||||
} // namespace DvdEmu
|
||||
|
||||
// Ersatz für DVDConvertPathToEntrynum
|
||||
// Gibt einen "Fake" Entry-Number zurück (Hash des Pfads) oder -1 wenn nicht gefunden
|
||||
s32 DVDConvertPathToEntrynum_Emu(const char* path);
|
||||
|
||||
// Speichert Pfad für Entry-Number (für späteres Laden)
|
||||
void DVDRegisterPath(s32 entryNum, const char* path);
|
||||
|
||||
// Holt Pfad für Entry-Number
|
||||
const char* DVDGetPathForEntry(s32 entryNum);
|
||||
|
||||
#endif // DOLPHIN_DVD_EMU_H
|
||||
@@ -0,0 +1,94 @@
|
||||
#ifndef DOLPHIN_ENDIAN_H
|
||||
#define DOLPHIN_ENDIAN_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
// Platform detection - Little Endian targets
|
||||
#if defined(_WIN32) || defined(__x86_64__) || defined(__i386__) || defined(__aarch64__) || defined(_M_X64) || defined(_M_IX86)
|
||||
#define TARGET_LITTLE_ENDIAN 1
|
||||
#else
|
||||
#define TARGET_LITTLE_ENDIAN 0
|
||||
#endif
|
||||
|
||||
#if TARGET_LITTLE_ENDIAN
|
||||
#ifdef _MSC_VER
|
||||
#include <stdlib.h>
|
||||
#define BSWAP16(x) _byteswap_ushort(x)
|
||||
#define BSWAP32(x) _byteswap_ulong(x)
|
||||
#else
|
||||
#define BSWAP16(x) __builtin_bswap16(x)
|
||||
#define BSWAP32(x) __builtin_bswap32(x)
|
||||
#endif
|
||||
#else
|
||||
#define BSWAP16(x) (x)
|
||||
#define BSWAP32(x) (x)
|
||||
#endif
|
||||
|
||||
// Big-Endian to Host conversion
|
||||
inline u16 be16(u16 val) { return BSWAP16(val); }
|
||||
inline s16 be16s(s16 val) { return (s16)BSWAP16((u16)val); }
|
||||
inline u32 be32(u32 val) { return BSWAP32(val); }
|
||||
|
||||
inline s32 be32s(s32 val) { return (s32)BSWAP32((u32)val); }
|
||||
|
||||
#ifdef TARGET_PC
|
||||
// Helper wrappers so code below reads nicely:
|
||||
static inline u16 RES_U16(u16 v) {
|
||||
return be16(v);
|
||||
}
|
||||
static inline s16 RES_S16(s16 v) {
|
||||
return be16s(v);
|
||||
}
|
||||
static inline u32 RES_U32(u32 v) {
|
||||
return be32(v);
|
||||
}
|
||||
static inline s32 RES_S32(s32 v) {
|
||||
return be32s(v);
|
||||
}
|
||||
#else
|
||||
// On GameCube host-endian == file-endian, these are no-ops (keep as macros to allow compile in
|
||||
// original code paths)
|
||||
#define RES_U16(x) (x)
|
||||
#define RES_S16(x) (x)
|
||||
#define RES_U32(x) (x)
|
||||
#define RES_S32(x) (x)
|
||||
#endif
|
||||
|
||||
#ifdef TARGET_PC
|
||||
|
||||
/*
|
||||
* Declares a big-endian integer type.
|
||||
*/
|
||||
template<class T>
|
||||
struct BE {
|
||||
T inner;
|
||||
operator T() const;
|
||||
};
|
||||
|
||||
template<>
|
||||
inline BE<u16>::operator u16() const {
|
||||
return RES_U16(inner);
|
||||
}
|
||||
|
||||
template<>
|
||||
inline BE<s16>::operator s16() const {
|
||||
return RES_S16(inner);
|
||||
}
|
||||
|
||||
template<>
|
||||
inline BE<u32>::operator u32() const {
|
||||
return RES_U32(inner);
|
||||
}
|
||||
|
||||
template<>
|
||||
inline BE<s32>::operator s32() const {
|
||||
return RES_S32(inner);
|
||||
}
|
||||
|
||||
#define BE(T) BE<T>
|
||||
#else
|
||||
#define BE(T) T
|
||||
#endif
|
||||
|
||||
|
||||
#endif // DOLPHIN_ENDIAN_H
|
||||
@@ -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
|
||||
}
|
||||
|
||||
@@ -38,12 +38,12 @@ inline void fopCamM_SetAngleY(camera_class* i_camera, s16 angle) {
|
||||
i_camera->angle.y = angle;
|
||||
}
|
||||
|
||||
inline void fopCamM_SetNear(camera_class* i_this, f32 near) {
|
||||
i_this->near = near;
|
||||
inline void fopCamM_SetNear(camera_class* i_this, f32 near_) {
|
||||
i_this->near_ = near_;
|
||||
}
|
||||
|
||||
inline void fopCamM_SetFar(camera_class* i_this, f32 far) {
|
||||
i_this->far = far;
|
||||
inline void fopCamM_SetFar(camera_class* i_this, f32 far_) {
|
||||
i_this->far_ = far_;
|
||||
}
|
||||
|
||||
inline void fopCamM_SetFovy(camera_class* i_this, f32 fovy) {
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
class JKRExpHeap;
|
||||
class JKRHeap;
|
||||
class fopAc_ac_c;
|
||||
class msg_class;
|
||||
struct msg_class;
|
||||
|
||||
struct msg_process_profile_definition {
|
||||
/* 0x00 */ leaf_process_profile_definition base;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -43,8 +43,8 @@ struct view_class {
|
||||
/* 0x000 */ leafdraw_class base;
|
||||
/* 0x0C0 */ leafdraw_method_class* sub_method;
|
||||
/* 0x0C4 */ u8 field_0xc4;
|
||||
/* 0x0C8 */ f32 near;
|
||||
/* 0x0CC */ f32 far;
|
||||
/* 0x0C8 */ f32 near_;
|
||||
/* 0x0CC */ f32 far_;
|
||||
/* 0x0D0 */ f32 fovy;
|
||||
/* 0x0D4 */ f32 aspect;
|
||||
/* 0x0D8 */ lookat_class lookat;
|
||||
|
||||
@@ -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[];
|
||||
|
||||
|
||||
@@ -83,6 +83,24 @@ extern int __abs(int);
|
||||
void* __memcpy(void*, const void*, int);
|
||||
#endif
|
||||
|
||||
#ifdef _MSVC_LANG
|
||||
inline int __builtin_clz(unsigned int v) {
|
||||
int count = 32;
|
||||
while (v != 0) {
|
||||
count--;
|
||||
v >>= 1;
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
#define COMPOUND_LITERAL(x)
|
||||
#define M_PI 3.14159265358979323846f
|
||||
#else
|
||||
|
||||
#define COMPOUND_LITERAL(x) (x)
|
||||
|
||||
#endif
|
||||
|
||||
#define FAST_DIV(x, n) (x >> (n / 2))
|
||||
|
||||
#define SQUARE(x) ((x) * (x))
|
||||
@@ -145,4 +163,23 @@ static const float INF = 2000000000.0f;
|
||||
#define UNSET_FLAG(var, flag, type) (var) &= ~(flag)
|
||||
#endif
|
||||
|
||||
#ifdef _MSVC_LANG
|
||||
template <int N>
|
||||
inline constexpr auto MultiCharLiteral(const char (&buf)[N]) {
|
||||
// static_assert(buf[0] == '\'' && buf[N - 2] == '\''); // can't constexpr strings, just pray
|
||||
constexpr int len = N - 1;
|
||||
static_assert(len >= 2 && len <= 10);
|
||||
|
||||
unsigned long long out = 0;
|
||||
for (int i = 1; i < len - 1; i++) {
|
||||
out = (out << 8) | ((unsigned long long)buf[i]);
|
||||
}
|
||||
return out;
|
||||
}
|
||||
|
||||
#define MULTI_CHAR(x) MultiCharLiteral(#x)
|
||||
#else
|
||||
#define MULTI_CHAR(x) MultiCharLiteral(#x)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -221,7 +221,7 @@ private:
|
||||
/* 0x14 */ J3DAnmCluster* mpAnm;
|
||||
};
|
||||
|
||||
class J3DTransformInfo;
|
||||
struct J3DTransformInfo;
|
||||
|
||||
class mDoExt_AnmRatioPack {
|
||||
public:
|
||||
@@ -832,7 +832,7 @@ intptr_t mDoExt_getSafeZeldaHeapSize();
|
||||
JKRHeap* mDoExt_createHostIOHeap(u32, JKRHeap*);
|
||||
#endif
|
||||
|
||||
struct JUTFont;
|
||||
class JUTFont;
|
||||
JUTFont* mDoExt_getMesgFont();
|
||||
JUTFont* mDoExt_getSubFont();
|
||||
JUTFont* mDoExt_getRubyFont();
|
||||
|
||||
@@ -93,7 +93,10 @@ public:
|
||||
}
|
||||
|
||||
static int startFadeOut(int param_0) { return JFWDisplay::getManager()->startFadeOut(param_0); }
|
||||
static int startFadeIn(int param_0) { return JFWDisplay::getManager()->startFadeIn(param_0); }
|
||||
static int startFadeIn(int param_0) {
|
||||
printf("[DIAG] mDoGph_gInf_c::startFadeIn START\n");
|
||||
fflush(stdout);
|
||||
return JFWDisplay::getManager()->startFadeIn(param_0); }
|
||||
static void setFadeColor(JUtility::TColor& color) { mFader->setColor(color); }
|
||||
static void setClearColor(JUtility::TColor color) { JFWDisplay::getManager()->setClearColor(color); }
|
||||
static void setBackColor(GXColor& color) { mBackColor = color; }
|
||||
|
||||
@@ -11,8 +11,8 @@ struct ResTIMG;
|
||||
struct mDoLib_clipper {
|
||||
static void setup(f32, f32, f32, f32);
|
||||
|
||||
static void changeFar(f32 far) {
|
||||
mClipper.setFar(far);
|
||||
static void changeFar(f32 far_) {
|
||||
mClipper.setFar(far_);
|
||||
mClipper.calcViewFrustum();
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "SSystem/SComponent/c_sxyz.h"
|
||||
#include "SSystem/SComponent/c_xyz.h"
|
||||
#include <dolphin/mtx.h>
|
||||
#include "JSystem/JMath/JMath.h"
|
||||
|
||||
extern u8 g_printCurrentHeapDebug;
|
||||
extern u8 g_printOtherHeapDebug;
|
||||
|
||||
@@ -5,8 +5,13 @@ typedef signed char s8;
|
||||
typedef unsigned char u8;
|
||||
typedef signed short int s16;
|
||||
typedef unsigned short int u16;
|
||||
#if TARGET_PC
|
||||
typedef signed int s32;
|
||||
typedef unsigned int u32;
|
||||
#else
|
||||
typedef signed long s32;
|
||||
typedef unsigned long u32;
|
||||
#endif
|
||||
typedef signed long long int s64;
|
||||
typedef unsigned long long int u64;
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user