mirror of
https://github.com/zeldaret/ss
synced 2026-09-09 19:51:39 -04:00
Merge remote-tracking branch 'upstream/main' into d_a_obj_boomerang
This commit is contained in:
@@ -16,8 +16,8 @@
|
||||
#include "nw4r/ut/ut_Color.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "toBeSorted/actor_event.h"
|
||||
#include "toBeSorted/dowsing_target.h"
|
||||
#include "toBeSorted/d_emitter.h"
|
||||
#include "toBeSorted/dowsing_target.h"
|
||||
|
||||
class dAcItem_0xB34 {
|
||||
public:
|
||||
@@ -46,6 +46,8 @@ public:
|
||||
|
||||
static void spawnItem(u16 item, u32 room, const mVec3_c &pos, const mAng3_c &rot, u32 params, u32 arg);
|
||||
static void spawnDrop(u16 item, u32 room, const mVec3_c &pos, const mAng3_c &rot);
|
||||
static void giveItem22(ITEM_ID, s32, s32);
|
||||
static void giveItem(ITEM_ID, s32, s32);
|
||||
static u32 checkFlag(u32 flag);
|
||||
static bool hasItem(u32 flag) {
|
||||
return checkFlag(flag);
|
||||
|
||||
@@ -1,22 +1,80 @@
|
||||
#ifndef D_A_OBJ_CHEST_H
|
||||
#define D_A_OBJ_CHEST_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/col/bg/d_bg_w.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
#include "toBeSorted/actor_event.h"
|
||||
#include "toBeSorted/attention.h"
|
||||
#include "toBeSorted/d_d3d.h"
|
||||
#include "toBeSorted/dowsing_target.h"
|
||||
|
||||
class dAcOChest_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOChest_c() : mStateMgr(*this, sStateID::null) {}
|
||||
dAcOChest_c()
|
||||
: mStateMgr(*this, sStateID::null), mEvent(*this, nullptr), mDowsingTarget(this, DowsingTarget::SLOT_NONE) {}
|
||||
virtual ~dAcOChest_c() {}
|
||||
|
||||
static void changeStateOpenCallback(dAcOChest_c *);
|
||||
static void changeStateWaitCallback(dAcOChest_c *);
|
||||
static void changeStateFailCallback(dAcOChest_c *);
|
||||
static void changeStateWait2Callback(dAcOChest_c *);
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int draw() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOChest_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOChest_c, OpenEvent);
|
||||
STATE_FUNC_DECLARE(dAcOChest_c, FailEvent);
|
||||
STATE_FUNC_DECLARE(dAcOChest_c, OrderOpenEventAfter);
|
||||
|
||||
virtual void doInteraction(s32) override;
|
||||
|
||||
void fn_326_C90();
|
||||
void changeStateOpen();
|
||||
void changeStateWait();
|
||||
void changeStateFail();
|
||||
void changeStateWait2();
|
||||
char *getName();
|
||||
char *getSubtypeName();
|
||||
char *getModelName();
|
||||
char *getOpenOrClose(u8);
|
||||
char *getDzbPlcName();
|
||||
s32 getSubtype();
|
||||
bool hasBeenOpened();
|
||||
void stateOpenUpdate2();
|
||||
void stateOpenEventEnter2();
|
||||
void fn_326_1440();
|
||||
bool hasInsideModel();
|
||||
void fn_326_1470();
|
||||
void fn_326_14A0();
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOChest_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ d3d::AnmMdlWrapper mAnmMdl;
|
||||
/* 0x3A4 */ m3d::smdl_c mInsideMdl;
|
||||
/* 0x3C0 */ dBgW mBgW;
|
||||
/* 0x5D0 */ STATE_MGR_DECLARE(dAcOChest_c);
|
||||
/* 0x60C */ ActorEventRelated mEvent;
|
||||
/* 0x65C */ bool mGaveItem;
|
||||
/* 0x65D */ bool mField_0x65D;
|
||||
/* 0x65E */ bool mHasInsideModel;
|
||||
/* 0x65F */ bool mIsLinksCloset;
|
||||
/* 0x660 */ DowsingTarget mDowsingTarget;
|
||||
|
||||
static const f32 OPEN_WARDROBE_INTERACTION_FIELD_0x24;
|
||||
static const char *CHEST_OPEN;
|
||||
static const char *CHEST_OPEN_AFTER;
|
||||
static const char *CHEST_FAIL;
|
||||
static InteractionTargetDef OPEN_WARDROBE_INTERACTION;
|
||||
static char *INSIDE_MODEL_NAMES[4];
|
||||
static const u32 unused;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,19 +2,41 @@
|
||||
#define D_A_OBJ_CLOUD_DIVE_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/col/cc/d_cc_d.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
class dAcOcloudDive_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOcloudDive_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOcloudDive_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
bool fn_350_6F0();
|
||||
bool fn_350_760();
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOcloudDive_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOcloudDive_c, Dead);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOcloudDive_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ dCcD_Cyl mCollider;
|
||||
/* 0x4A0 */ STATE_MGR_DECLARE(dAcOcloudDive_c);
|
||||
/* 0x4DC */ u8 field_0x4DC;
|
||||
/* 0x4DD */ u8 mItemID;
|
||||
/* 0x4E0 */ f32 mRadius;
|
||||
|
||||
static const f32 mRadius1;
|
||||
static const f32 mRadius2;
|
||||
static const f32 height;
|
||||
static dCcD_SrcCyl sCylSrc;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
#define D_A_OBJ_DECOB_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "m/m_angle.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
@@ -10,10 +13,23 @@ public:
|
||||
dAcODecoB_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcODecoB_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcODecoB_c, Wait);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcODecoB_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ STATE_MGR_DECLARE(dAcODecoB_c);
|
||||
/* 0x38C */ u16 padding_0x38C;
|
||||
/* 0x38E */ mAng field_0x38E;
|
||||
|
||||
static f32 lbl_611_data_34;
|
||||
static const f32 lbl_611_rodata_30;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,13 +2,28 @@
|
||||
#define D_A_OBJ_DESERT_DEBRIS_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/col/bg/d_bg_w.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
|
||||
class dAcOdesertDebris_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOdesertDebris_c() {}
|
||||
virtual ~dAcOdesertDebris_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
private:
|
||||
bool checkStoryFlag() const;
|
||||
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ dBgW mBgW;
|
||||
/* 0x560 */ u16 mStoryFlag;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,6 +2,9 @@
|
||||
#define D_A_OBJ_HOLE_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/col/bg/d_bg_s_acch.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
@@ -10,10 +13,22 @@ public:
|
||||
dAcOhole_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOhole_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOhole_c, Wait);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOhole_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ STATE_MGR_DECLARE(dAcOhole_c);
|
||||
/* 0x38C */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x3E8 */ dBgS_ObjAcch mObjAcch;
|
||||
/* 0x798 */ u8 field_0x798;
|
||||
/* 0x799 */ u8 field_0x799;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,18 +2,36 @@
|
||||
#define D_A_OBJ_OCT_GRASS_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
class dAcOOctGrass_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOOctGrass_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOOctGrass_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
void spawnOcGrsL();
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOOctGrass_c, Wait);
|
||||
|
||||
void executeState() {
|
||||
mStateMgr.executeState();
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOOctGrass_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ STATE_MGR_DECLARE(dAcOOctGrass_c);
|
||||
|
||||
static const char *GRASS_OARCS[4];
|
||||
static const char *GRASS_CUT_MODELS[4];
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,19 +2,38 @@
|
||||
#define D_A_OBJ_STOPPING_ROPE_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/col/bg/d_bg_w.h"
|
||||
#include "d/col/cc/d_cc_d.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
#include "s/s_StateInterfaces.hpp"
|
||||
|
||||
class dAcOStoppingRope_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOStoppingRope_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOStoppingRope_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
void changeState(const sStateIDIf_c &value) {
|
||||
mStateMgr.changeState(value);
|
||||
}
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOStoppingRope_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOStoppingRope_c, SwitchOn);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOStoppingRope_c);
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ dBgW mBgW;
|
||||
/* 0x360 */ dCcD_Sph mCollider;
|
||||
/* 0x6B0 */ STATE_MGR_DECLARE(dAcOStoppingRope_c);
|
||||
/* 0x6EC */ u8 padding_0x6EC[16];
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,13 +2,28 @@
|
||||
#define D_A_OBJ_UNDER_CLOUD_H
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "m/m3d/m_anmtexsrt.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "nw4r/g3d/res/g3d_resfile.h"
|
||||
#include "toBeSorted/actor_event.h"
|
||||
|
||||
class dAcOunderCloud_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcOunderCloud_c() {}
|
||||
dAcOunderCloud_c() : mEvent(*this, nullptr) {}
|
||||
virtual ~dAcOunderCloud_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int actorExecuteInEvent() override;
|
||||
virtual int draw() override;
|
||||
|
||||
private:
|
||||
/* 0x330 */ nw4r::g3d::ResFile mResFile;
|
||||
/* 0x334 */ m3d::smdl_c mMdl;
|
||||
/* 0x350 */ m3d::anmTexSrt_c mAnm;
|
||||
/* 0x37C */ ActorEventRelated mEvent;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -11,9 +11,9 @@
|
||||
#include "s/s_StateID.hpp"
|
||||
#include "toBeSorted/d_emitter.h"
|
||||
|
||||
struct CsGameConfigMaybe {
|
||||
CsGameConfigMaybe();
|
||||
virtual ~CsGameConfigMaybe() {}
|
||||
struct dCsGame_HIO_c {
|
||||
dCsGame_HIO_c();
|
||||
virtual ~dCsGame_HIO_c() {}
|
||||
|
||||
/* 0x04 */ f32 field_0x04;
|
||||
/* 0x08 */ f32 field_0x08;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#ifndef D_TEXTUNK_H
|
||||
#define D_TEXTUNK_H
|
||||
#ifndef D_LYT_HIO_H
|
||||
#define D_LYT_HIO_H
|
||||
|
||||
#include "common.h"
|
||||
#include "libms/flowfile.h"
|
||||
@@ -14,10 +14,10 @@
|
||||
* for overriding the text and flow files being accessed. The actual
|
||||
* implementation appears to have been stripped out though.
|
||||
*/
|
||||
class UnkTextThing {
|
||||
class dLyt_HIO_c {
|
||||
public:
|
||||
UnkTextThing();
|
||||
virtual ~UnkTextThing() {}
|
||||
dLyt_HIO_c();
|
||||
virtual ~dLyt_HIO_c() {}
|
||||
|
||||
void destroy();
|
||||
|
||||
@@ -149,7 +149,7 @@ public:
|
||||
return 0;
|
||||
}
|
||||
|
||||
static UnkTextThing *getInstance() {
|
||||
static dLyt_HIO_c *getInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ public:
|
||||
void destroyUnk(void *thing);
|
||||
|
||||
private:
|
||||
static UnkTextThing *sInstance;
|
||||
static dLyt_HIO_c *sInstance;
|
||||
|
||||
void destroyFlow(MsbfInfo *flow);
|
||||
void destroyMsg(MsbtInfo *msg);
|
||||
@@ -1,14 +1,14 @@
|
||||
#ifndef D_LYT_METER_CONFIGURATION
|
||||
#define D_LYT_METER_CONFIGURATION
|
||||
#ifndef D_LYT_METER_HIO_H
|
||||
#define D_LYT_METER_HIO_H
|
||||
|
||||
#include "common.h"
|
||||
|
||||
class dLytMeterConfiguration_c {
|
||||
class dLytMeter_HIO_c {
|
||||
public:
|
||||
dLytMeterConfiguration_c();
|
||||
virtual ~dLytMeterConfiguration_c();
|
||||
dLytMeter_HIO_c();
|
||||
virtual ~dLytMeter_HIO_c();
|
||||
|
||||
static const dLytMeterConfiguration_c *GetInstance() {
|
||||
static const dLytMeter_HIO_c *GetInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
}
|
||||
|
||||
|
||||
static dLytMeterConfiguration_c *sInstance;
|
||||
static dLytMeter_HIO_c *sInstance;
|
||||
|
||||
/* 0x004 */ u8 field_0x004;
|
||||
/* 0x005 */ u8 field_0x005;
|
||||
@@ -24,7 +24,7 @@ public:
|
||||
ExpHeap(MEMiHeapHead *heapHead);
|
||||
static ExpHeap *create(void *block, size_t size, u16 attr);
|
||||
static ExpHeap *create(size_t size, Heap *heap, u16 attr);
|
||||
void setGroupID(u16 groupId);
|
||||
void setAllocMode(u16 allocMode);
|
||||
static u32 getSizeForMBlock(const void *block);
|
||||
|
||||
// Placement new for ::create
|
||||
|
||||
@@ -6,9 +6,6 @@
|
||||
#include "rvl/GX.h" // IWYU pragma: export
|
||||
#include "rvl/VI.h" // IWYU pragma: export
|
||||
|
||||
|
||||
extern "C" GXRenderModeObj lbl_8055FC64;
|
||||
|
||||
namespace EGG {
|
||||
|
||||
class Video {
|
||||
@@ -32,7 +29,7 @@ public:
|
||||
|
||||
const GXRenderModeObj *getCurrentOrFallbackRenderModeObj() const {
|
||||
if (pRenderMode == nullptr) {
|
||||
return &lbl_8055FC64;
|
||||
return &GXNtsc480Int;
|
||||
}
|
||||
return pRenderMode;
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ private:
|
||||
void internalDrawStandard(u16);
|
||||
void internalDrawLite(u16);
|
||||
|
||||
void afterDraw(u16 x, u16 y, u16 width, u16 height);
|
||||
void allocAndCaptureBlurBuffer(u16 x, u16 y, u16 width, u16 height);
|
||||
|
||||
/* 0x1C */ u16 field_0x1C;
|
||||
/* 0x1E */ u8 field_0x1E;
|
||||
|
||||
@@ -71,7 +71,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
static void fn_804AE340(nw4r::g3d::ResMat, GXTexCoordID);
|
||||
static void setupEnvmap(nw4r::g3d::ResMat, GXTexCoordID);
|
||||
int getTextureIndex(const char *name) const;
|
||||
|
||||
bool getSomeTfRelatedBool() const {
|
||||
|
||||
@@ -57,7 +57,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
void drawInternal(u8, u8, f32, f32);
|
||||
void setMaterialMulti(u8, u8, f32, f32);
|
||||
|
||||
/* 0x2C */ u8 field_0x2C;
|
||||
/* 0x30 */ f32 field_0x30;
|
||||
|
||||
@@ -99,13 +99,13 @@ public:
|
||||
|
||||
void CopyFromAnother(const Screen &other);
|
||||
void Reset(f32, f32, f32, f32, CanvasMode);
|
||||
void OnDirectEfb() const;
|
||||
void GetPosSizeInEfb() const;
|
||||
const DataEfb &GetDataEfb() const;
|
||||
bool IsChangeEfb() const;
|
||||
void CalcMatrixForDrawQuad(nw4r::math::MTX34 *, f32, f32, f32, f32) const;
|
||||
void FillBufferGX(u32, GXColor, u32) const;
|
||||
void GetGlobalPos(f32 *, f32 *) const;
|
||||
void fn_804B2EE0(f32 *, f32 *, f32, f32) const;
|
||||
void ConvertToEfb(f32, f32, f32 *, f32 *) const;
|
||||
|
||||
f32 ScaleByX(f32 val) const {
|
||||
return val * StateGX::s_widthEfb / GetSizeXMax(GetComputedTVMode());
|
||||
|
||||
@@ -31,7 +31,7 @@ private:
|
||||
static s32 sPushCount;
|
||||
static u32 sFlag;
|
||||
|
||||
static bool GetShouldCapture();
|
||||
static bool isEnableDirtyBufferMode();
|
||||
static bool GetUseTfRgb565();
|
||||
|
||||
public:
|
||||
@@ -45,7 +45,7 @@ private:
|
||||
|
||||
// Unknown names
|
||||
static void fn_804B4270(BufferType type, u32 userData);
|
||||
static void fn_804B4310(BufferType type, u32 userData);
|
||||
static void popWorkBuffer(bool b, u32 userData);
|
||||
static f32 *fn_804B4550();
|
||||
};
|
||||
|
||||
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
|
||||
static void invalidateTexAllGX();
|
||||
|
||||
static void GXSetPixelFmt_(GXPixelFmt pixelFmt, GXZFmt16 zFmt);
|
||||
static void setPixelFormatGX(GXPixelFmt pixelFmt, GXZFmt16 zFmt);
|
||||
static bool GXSetColorUpdate_(bool);
|
||||
static bool GXSetAlphaUpdate_(bool);
|
||||
static bool GXSetDither_(bool);
|
||||
|
||||
@@ -235,6 +235,10 @@ public:
|
||||
f32 squareMagXZ() const {
|
||||
return x * x + z * z;
|
||||
}
|
||||
f32 squareDistanceToXZ(const mVec3_c &other) const {
|
||||
return (*this - other).squareMagXZ();
|
||||
}
|
||||
|
||||
void rotX(const mAng &angle);
|
||||
void rotY(const mAng &angle);
|
||||
void rotZ(const mAng &angle);
|
||||
|
||||
@@ -39,6 +39,7 @@ void GXCopyTex(void *data, GXBool bUpdate);
|
||||
void GXPixModeSync();
|
||||
|
||||
extern GXRenderModeObj GXNtsc480IntDf;
|
||||
extern GXRenderModeObj GXNtsc480Int;
|
||||
extern GXRenderModeObj GXMpal480IntDf;
|
||||
extern GXRenderModeObj GXPal528IntDf;
|
||||
extern GXRenderModeObj GXEurgb60Hz480IntDf;
|
||||
|
||||
@@ -52,7 +52,7 @@ void GXSetTexCoordBias(GXTexCoordID, GXBool, GXBool);
|
||||
|
||||
u16 GXGetTexObjWidth(const GXTexObj *obj);
|
||||
u16 GXGetTexObjHeight(const GXTexObj *obj);
|
||||
GXTexFmt GXGetTexObjFormat(const GXTexObj *obj);
|
||||
GXTexFmt GXGetTexObjFmt(const GXTexObj *obj);
|
||||
GXBool GXGetTexObjMipMap(const GXTexObj *obj);
|
||||
GXTexWrapMode GXGetTexObjWrapS(const GXTexObj *obj);
|
||||
u32 GXGetTexObjTlut(const GXTexObj *);
|
||||
|
||||
@@ -56,10 +56,12 @@ void *MEMAllocFromExpHeapEx(struct MEMiHeapHead *heap, u32 size, s32 align);
|
||||
u32 MEMResizeForMBlockExpHeap(struct MEMiHeapHead *heap, void *memBlock, u32 size);
|
||||
void MEMFreeToExpHeap(struct MEMiHeapHead *heap, void *memBlock);
|
||||
u32 MEMGetAllocatableSizeForExpHeap(struct MEMiHeapHead *heap);
|
||||
u32 MEMGetTotalFreeSizeForExpHeap(struct MEMiHeapHead *heap);
|
||||
u32 MEMGetAllocatableSizeForExpHeapEx(struct MEMiHeapHead *heap, s32 align);
|
||||
void MEMSetGroupIdForExpHeap(MEMiHeapHead *mHeapHandle, u16 groupId);
|
||||
void MEMSetGroupIdForExpHeap(struct MEMiHeapHead *mHeapHandle, u16 groupId);
|
||||
u32 MEMAdjustExpHeap(struct MEMiHeapHead *heap);
|
||||
u32 MEMGetSizeForMBlockExpHeap(const void *block);
|
||||
void MEMSetAllocModeForExpHeap(struct MEMiHeapHead *heap, u16 allocMode);
|
||||
|
||||
static inline struct MEMiHeapHead *MEMCreateExpHeap(void *start, u32 size) {
|
||||
return MEMCreateExpHeapEx(start, size, 0);
|
||||
|
||||
@@ -37,6 +37,7 @@ typedef struct MEMiHeapHead {
|
||||
void MEMiInitHeapHead(MEMiHeapHead *heap, u32 magic, void *start, void *end, u16 opt);
|
||||
void MEMiFinalizeHeap(MEMiHeapHead *heap);
|
||||
MEMiHeapHead *MEMFindContainHeap(const void *memBlock);
|
||||
MEMiHeapHead *MEMFindParentHeap(const MEMiHeapHead *pHandle);
|
||||
|
||||
static inline int GetUIntPtr(const void *p) {
|
||||
return (int)p;
|
||||
|
||||
@@ -27,6 +27,7 @@ typedef struct OSContext {
|
||||
f64 psfs[32]; // at 0x1C8
|
||||
} OSContext;
|
||||
|
||||
void OSFillFPUContext(OSContext *ctx);
|
||||
void OSSaveFPUContext(OSContext *ctx);
|
||||
void OSSetCurrentContext(OSContext *ctx);
|
||||
OSContext *OSGetCurrentContext(void);
|
||||
|
||||
@@ -11,11 +11,22 @@ extern "C" {
|
||||
#define OS_MEM_IS_MEM1(addr) (((u32)(addr) & 0x30000000) == 0)
|
||||
#define OS_MEM_IS_MEM2(addr) (((u32)(addr) & 0x30000000) == 0x10000000)
|
||||
|
||||
#define OS_PROTECT_CHAN0 0
|
||||
#define OS_PROTECT_CHAN1 1
|
||||
#define OS_PROTECT_CHAN2 2
|
||||
#define OS_PROTECT_CHAN3 3
|
||||
|
||||
#define OS_PROTECT_CONTROL_NONE 0x00
|
||||
#define OS_PROTECT_CONTROL_READ 0x01
|
||||
#define OS_PROTECT_CONTROL_WRITE 0x02
|
||||
#define OS_PROTECT_CONTROL_RDWR (OS_PROTECT_CONTROL_READ | OS_PROTECT_CONTROL_WRITE)
|
||||
|
||||
u32 OSGetPhysicalMem1Size(void);
|
||||
u32 OSGetPhysicalMem2Size(void);
|
||||
u32 OSGetConsoleSimulatedMem1Size(void);
|
||||
u32 OSGetConsoleSimulatedMem2Size(void);
|
||||
void __OSInitMemoryProtection(void);
|
||||
void OSProtectRange(u32 chan, void* addr, u32 nBytes, u32 control);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@ class sFStateVirtualID_c : public sFStateID_c<T> {
|
||||
public:
|
||||
typedef void (T::*stateFunc)();
|
||||
sFStateVirtualID_c(
|
||||
const sStateID_c *superState, const char *name, stateFunc initialize, stateFunc execute, stateFunc finalize
|
||||
const sStateIDIf_c *superState, const char *name, stateFunc initialize, stateFunc execute, stateFunc finalize
|
||||
)
|
||||
: sFStateID_c<T>(name, initialize, execute, finalize), mpSuperState(superState) {}
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
const sStateID_c *mpSuperState;
|
||||
const sStateIDIf_c *mpSuperState;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -65,11 +65,11 @@
|
||||
|
||||
#define STATE_VIRTUAL_DEFINE(class, name) \
|
||||
template <typename T> \
|
||||
static const sStateID_c &baseID_##name() { \
|
||||
static const sStateIDIf_c &baseID_##name() { \
|
||||
return T::StateID_##name; \
|
||||
} \
|
||||
template <> \
|
||||
const sStateID_c &baseID_##name<sStateID_c>() { \
|
||||
const sStateIDIf_c &baseID_##name<sStateID_c>() { \
|
||||
return sStateID::null; \
|
||||
} \
|
||||
const sFStateVirtualID_c<class> class ::StateID_##name( \
|
||||
|
||||
@@ -18,6 +18,7 @@ public:
|
||||
bool isAdvance();
|
||||
int getSomeEventRelatedNumber();
|
||||
|
||||
int getSingleIntData(int *result, u32 code, u32);
|
||||
int getSingleFloatData(f32 *result, u32 code, u32);
|
||||
int getSingleVecData(mVec3_c *result, u32 code, u32);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user