Merge pull request #548 from Jcw87/other_compilers

Improve compatibility with other compilers
This commit is contained in:
Jasper St. Pierre
2023-12-12 21:13:17 -08:00
committed by GitHub
28 changed files with 185 additions and 171 deletions
+5 -4
View File
@@ -5,6 +5,7 @@
#include "dolphin/mtx/mtx.h"
#include "dolphin/mtx/mtx44.h"
#include "dolphin/mtx/vec.h"
#include "global.h"
class J3DLightInfo {
public:
@@ -144,7 +145,7 @@ struct J3DIndTexOrderInfo {
};
struct J3DTevSwapModeInfo {
/* 0x0 */ u8 field_0x0 __attribute__((aligned(4)));
/* 0x0 */ u8 field_0x0 ALIGN_DECL(4);
/* 0x1 */ u8 field_0x1;
};
@@ -179,7 +180,7 @@ struct J3DTevStageInfo {
};
struct J3DIndTevStageInfo {
/* 0x0 */ u8 mIndStage __attribute__((aligned(4)));
/* 0x0 */ u8 mIndStage ALIGN_DECL(4);
/* 0x1 */ u8 mIndFormat;
/* 0x2 */ u8 mBiasSel;
/* 0x3 */ u8 mMtxSel;
@@ -191,7 +192,7 @@ struct J3DIndTevStageInfo {
};
struct J3DTexCoordInfo {
/* 0x0 */ u8 mTexGenType __attribute__((aligned(4)));
/* 0x0 */ u8 mTexGenType ALIGN_DECL(4);
/* 0x1 */ u8 mTexGenSrc;
/* 0x2 */ u8 mTexGenMtx;
};
@@ -216,7 +217,7 @@ struct J3DBlendInfo {
};
struct J3DTevOrderInfo {
/* 0x0 */ u8 mTexCoord __attribute__((aligned(2)));
/* 0x0 */ u8 mTexCoord ALIGN_DECL(2);
/* 0x1 */ u8 mTexMap;
/* 0x2 */ u8 mColorChan;
};
+2 -1
View File
@@ -3,6 +3,7 @@
#include <dolphin/os/OSMessage.h>
#include <dolphin/os/OSThread.h>
#include "global.h"
class JKRSolidHeap;
@@ -15,7 +16,7 @@ namespace JASystem {
void start(JKRSolidHeap*, u32, u32);
extern OSThread sAudioThread;
extern u8 saAudioStack[4096] __attribute__((aligned(32)));
extern u8 saAudioStack[4096] ALIGN_DECL(32);
extern OSMessageQueue sAudioprocMQ;
extern OSMessage saAudioMsgBuf[16];
extern u32 sAudioprocMQInit;
+3 -2
View File
@@ -2,14 +2,15 @@
#define JASDRIVERTABLES_H
#include "dolphin/types.h"
#include "global.h"
namespace JASystem {
namespace Driver {
extern f32 C5BASE_PITCHTABLE[];
}
namespace DSPInterface {
extern u16 DSPADPCM_FILTER[] __attribute__((aligned(32)));
extern u16 DSPRES_FILTER[] __attribute__((aligned(32)));
extern u16 DSPADPCM_FILTER[] ALIGN_DECL(32);
extern u16 DSPRES_FILTER[] ALIGN_DECL(32);
}
}
@@ -1,8 +1,8 @@
#ifndef JUTFONTDATA_ASCFONT_FIX12_H
#define JUTFONTDATA_ASCFONT_FIX12_H
#include "dolphin/types.h"
#include "global.h"
extern const u8 JUTResFONT_Ascfont_fix12[] __attribute__((aligned(32)));
extern const u8 JUTResFONT_Ascfont_fix12[] ALIGN_DECL(32);
#endif /* JUTFONTDATA_ASCFONT_FIX12_H */
+4 -3
View File
@@ -5,6 +5,7 @@
#include "d/d_bg_s_acch.h"
#include "d/d_particle.h"
#include "f_op/f_op_actor_mng.h"
#include "global.h"
#include "m_Do/m_Do_ext.h"
#include "m_Do/m_Do_hostIO.h"
@@ -93,7 +94,7 @@ public:
struct daAgb_ItemBuy {
/* 0x0 */ u8 field_0x0;
} __attribute__((aligned(4)));
} ALIGN_DECL(4);
struct daAgb_GbaFlg {
/* 0x0 */ u16 field_0x0;
@@ -124,11 +125,11 @@ public:
struct daAgb_Item {
/* 0x0 */ u8 field_0x0;
/* 0x1 */ u8 field_0x1;
} __attribute__((aligned(4)));
} ALIGN_DECL(4);
struct daAgb_Shop {
/* 0x0 */ u8 field_0x0;
} __attribute__((aligned(4)));
} ALIGN_DECL(4);
static int mEffect;
static daAgb_ItemBuy mItemBuy;
+2 -3
View File
@@ -1,11 +1,10 @@
#ifndef _DOLPHIN_GBAPRIV
#define _DOLPHIN_GBAPRIV
#include "dolphin/types.h"
#include "dolphin/dsp.h"
#include "dolphin/gba/GBA.h"
#include "dolphin/os/OS.h"
#include "global.h"
#ifdef __cplusplus
extern "C" {
@@ -23,7 +22,7 @@ typedef struct GBASecParam {
u32 keyA;
s32 keyB;
u8 _padding1[24];
} GBASecParam __attribute__((aligned(32)));
} GBASecParam ALIGN_DECL(32);
typedef struct GBABootInfo {
s32 paletteColor;
+4
View File
@@ -29,8 +29,12 @@
#define GLUE(a, b) a##b
#define GLUE2(a, b) GLUE(a, b)
#define STATIC_ASSERT(cond) typedef char GLUE2(static_assertion_failed, __LINE__)[(cond) ? 1 : -1]
#define ALIGN_DECL(ALIGNMENT) __attribute__((aligned(ALIGNMENT)))
#define SECTION_DATA __declspec(section ".data")
#else
#define STATIC_ASSERT(...)
#define ALIGN_DECL(...)
#define SECTION_DATA
#endif
// hack to make functions that return comparisons as int match
+2 -1
View File
@@ -5,6 +5,7 @@
#include "dolphin/os/OSMessage.h"
#include "dolphin/os/OSMutex.h"
#include "f_pc/f_pc_node.h"
#include "global.h"
class JKRHeap;
class JKRMemArchive;
@@ -106,7 +107,7 @@ private:
struct mDoDvdThdStack {
u8 stack[4096];
} __attribute__((aligned(32)));
} ALIGN_DECL(32);
struct mDoDvdThd {
static s32 main(void*);
+2 -1
View File
@@ -9,6 +9,7 @@
#include "JSystem/J3DGraphBase/J3DTevs.h"
#include "JSystem/J3DGraphBase/J3DShape.h"
#include "dolphin/os/OS.h"
#include "global.h"
extern void JRNLoadTexCached(GXTexMapID, u32, GXTexCacheSize, u32, GXTexCacheSize);
extern void makeTexCoordTable();
@@ -118,7 +119,7 @@ void J3DFifoLoadNrmMtxImm3x3(Mtx33 mtx, unsigned long idx) {
GFX_FIFO(u32) = mtx_u32[8];
}
u8 NullTexData[16] __attribute__((aligned(32))) = {
u8 NullTexData[16] ALIGN_DECL(32) = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
+53 -53
View File
@@ -430,67 +430,67 @@ void JASystem::TSeqParser::parseSeq(TTrack* track) {
int (JASystem::TSeqParser::*JASystem::TSeqParser::sCmdPList[64])(JASystem::TTrack*, u32*) = {
NULL,
JASystem::TSeqParser::cmdOpenTrack,
JASystem::TSeqParser::cmdOpenTrackBros,
&JASystem::TSeqParser::cmdOpenTrack,
&JASystem::TSeqParser::cmdOpenTrackBros,
NULL,
JASystem::TSeqParser::cmdCall,
&JASystem::TSeqParser::cmdCall,
NULL,
JASystem::TSeqParser::cmdRet,
&JASystem::TSeqParser::cmdRet,
NULL,
JASystem::TSeqParser::cmdJmp,
JASystem::TSeqParser::cmdLoopS,
JASystem::TSeqParser::cmdLoopE,
JASystem::TSeqParser::cmdReadPort,
JASystem::TSeqParser::cmdWritePort,
JASystem::TSeqParser::cmdCheckPortImport,
JASystem::TSeqParser::cmdCheckPortExport,
JASystem::TSeqParser::cmdWait,
&JASystem::TSeqParser::cmdJmp,
&JASystem::TSeqParser::cmdLoopS,
&JASystem::TSeqParser::cmdLoopE,
&JASystem::TSeqParser::cmdReadPort,
&JASystem::TSeqParser::cmdWritePort,
&JASystem::TSeqParser::cmdCheckPortImport,
&JASystem::TSeqParser::cmdCheckPortExport,
&JASystem::TSeqParser::cmdWait,
NULL,
JASystem::TSeqParser::cmdParentWritePort,
JASystem::TSeqParser::cmdChildWritePort,
&JASystem::TSeqParser::cmdParentWritePort,
&JASystem::TSeqParser::cmdChildWritePort,
NULL,
JASystem::TSeqParser::cmdSetLastNote,
JASystem::TSeqParser::cmdTimeRelate,
JASystem::TSeqParser::cmdSimpleOsc,
JASystem::TSeqParser::cmdSimpleEnv,
JASystem::TSeqParser::cmdSimpleADSR,
JASystem::TSeqParser::cmdTranspose,
JASystem::TSeqParser::cmdCloseTrack,
JASystem::TSeqParser::cmdOutSwitch,
JASystem::TSeqParser::cmdUpdateSync,
JASystem::TSeqParser::cmdBusConnect,
JASystem::TSeqParser::cmdPauseStatus,
JASystem::TSeqParser::cmdSetInterrupt,
JASystem::TSeqParser::cmdDisInterrupt,
JASystem::TSeqParser::cmdClrI,
JASystem::TSeqParser::cmdSetI,
JASystem::TSeqParser::cmdRetI,
JASystem::TSeqParser::cmdIntTimer,
JASystem::TSeqParser::cmdVibDepth,
JASystem::TSeqParser::cmdVibDepthMidi,
JASystem::TSeqParser::cmdSyncCPU,
JASystem::TSeqParser::cmdFlushAll,
JASystem::TSeqParser::cmdFlushRelease,
JASystem::TSeqParser::cmdWait,
JASystem::TSeqParser::cmdPanPowSet,
JASystem::TSeqParser::cmdIIRSet,
JASystem::TSeqParser::cmdFIRSet,
JASystem::TSeqParser::cmdEXTSet,
JASystem::TSeqParser::cmdPanSwSet,
JASystem::TSeqParser::cmdOscRoute,
JASystem::TSeqParser::cmdIIRCutOff,
JASystem::TSeqParser::cmdOscFull,
JASystem::TSeqParser::cmdVolumeMode,
JASystem::TSeqParser::cmdVibPitch,
&JASystem::TSeqParser::cmdSetLastNote,
&JASystem::TSeqParser::cmdTimeRelate,
&JASystem::TSeqParser::cmdSimpleOsc,
&JASystem::TSeqParser::cmdSimpleEnv,
&JASystem::TSeqParser::cmdSimpleADSR,
&JASystem::TSeqParser::cmdTranspose,
&JASystem::TSeqParser::cmdCloseTrack,
&JASystem::TSeqParser::cmdOutSwitch,
&JASystem::TSeqParser::cmdUpdateSync,
&JASystem::TSeqParser::cmdBusConnect,
&JASystem::TSeqParser::cmdPauseStatus,
&JASystem::TSeqParser::cmdSetInterrupt,
&JASystem::TSeqParser::cmdDisInterrupt,
&JASystem::TSeqParser::cmdClrI,
&JASystem::TSeqParser::cmdSetI,
&JASystem::TSeqParser::cmdRetI,
&JASystem::TSeqParser::cmdIntTimer,
&JASystem::TSeqParser::cmdVibDepth,
&JASystem::TSeqParser::cmdVibDepthMidi,
&JASystem::TSeqParser::cmdSyncCPU,
&JASystem::TSeqParser::cmdFlushAll,
&JASystem::TSeqParser::cmdFlushRelease,
&JASystem::TSeqParser::cmdWait,
&JASystem::TSeqParser::cmdPanPowSet,
&JASystem::TSeqParser::cmdIIRSet,
&JASystem::TSeqParser::cmdFIRSet,
&JASystem::TSeqParser::cmdEXTSet,
&JASystem::TSeqParser::cmdPanSwSet,
&JASystem::TSeqParser::cmdOscRoute,
&JASystem::TSeqParser::cmdIIRCutOff,
&JASystem::TSeqParser::cmdOscFull,
&JASystem::TSeqParser::cmdVolumeMode,
&JASystem::TSeqParser::cmdVibPitch,
NULL,
NULL,
NULL,
NULL,
NULL,
JASystem::TSeqParser::cmdCheckWave,
JASystem::TSeqParser::cmdPrintf,
JASystem::TSeqParser::cmdNop,
JASystem::TSeqParser::cmdTempo,
JASystem::TSeqParser::cmdTimeBase,
JASystem::TSeqParser::cmdFinish,
&JASystem::TSeqParser::cmdCheckWave,
&JASystem::TSeqParser::cmdPrintf,
&JASystem::TSeqParser::cmdNop,
&JASystem::TSeqParser::cmdTempo,
&JASystem::TSeqParser::cmdTimeBase,
&JASystem::TSeqParser::cmdFinish,
};
+3 -3
View File
@@ -11,7 +11,7 @@
#include "JSystem/JUtility/JUTProcBar.h"
#include "dolphin/gx/GX.h"
#include "dolphin/os/OS.h"
#include "dolphin/types.h"
#include "global.h"
JFWDisplay* JFWDisplay::sManager = 0;
@@ -22,7 +22,7 @@ Mtx e_mtx = {
{0.0f, 0.0f, 1.0f, 0.0f},
};
static GXTexObj clear_z_tobj;
u8 clear_z_TX[64] __attribute__((aligned(32))) = {
u8 clear_z_TX[64] ALIGN_DECL(32) = {
0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF,
0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
@@ -484,7 +484,7 @@ void JFWGXDrawDoneAutoAbort() {
if(JFWAutoAbortGfx != 0) {
OSAlarm alarm;
OSCreateAlarm(&alarm);
OSSetAlarm(&alarm, __OSBusClock >> 2, JFWGXAbortAlarmHandler);
OSSetAlarm(&alarm, OS_TIMER_CLOCK, JFWGXAbortAlarmHandler);
GXDrawDone();
OSCancelAlarm(&alarm);
}
+9 -9
View File
@@ -390,7 +390,7 @@ bool daArrow_c::check_water_in() {
waterHitPos = (next.pos * weight) + (current.pos * (1.0f - weight));
}
mCurrProcFunc = &procWater;
mCurrProcFunc = &daArrow_c::procWater;
fopAcM_SetParam(this, 4);
if (mArrowType == TYPE_FIRE) {
@@ -620,7 +620,7 @@ BOOL daArrow_c::procWait() {
checkRestMp();
}
mCurrProcFunc = &procMove;
mCurrProcFunc = &daArrow_c::procMove;
arrowShooting();
}
@@ -678,7 +678,7 @@ BOOL daArrow_c::procMove() {
dKy_arrowcol_chg_on(&current.pos, 2);
}
mCurrProcFunc = &procStop_BG;
mCurrProcFunc = &daArrow_c::procStop_BG;
fopAcM_OnStatus(this, fopAcStts_UNK4000_e);
fopAcM_SetParam(this, 2);
field_0x604 = 0x28;
@@ -729,7 +729,7 @@ BOOL daArrow_c::procMove() {
if (hitType == 1) { // Blocked hit
fopAcM_SetParam(this, 3);
mCurrProcFunc = &procReturn;
mCurrProcFunc = &daArrow_c::procReturn;
speed *= -0.1f;
speed.y += speed.absXZ();
current.pos = next.pos;
@@ -740,7 +740,7 @@ BOOL daArrow_c::procMove() {
fopAcM_seStartCurrent(this, JA_SE_LK_ARROW_REBOUND, 0x20);
} else if (hitType == 2) { // Hit a joint
fpcM_SetParam(this, 2);
mCurrProcFunc = &procStop_Actor;
mCurrProcFunc = &daArrow_c::procStop_Actor;
if (mArrowType == TYPE_FIRE) {
fopAcM_seStartCurrent(this, JA_SE_OBJ_FIRE_ARW_EFF, 0);
@@ -779,7 +779,7 @@ BOOL daArrow_c::procMove() {
dKy_arrowcol_chg_on(&current.pos, temp8);
}
mCurrProcFunc = &procStop_BG;
mCurrProcFunc = &daArrow_c::procStop_BG;
fopAcM_OnStatus(this, fopAcStts_UNK4000_e);
fopAcM_SetParam(this, 2);
field_0x604 = 0x28;
@@ -828,7 +828,7 @@ BOOL daArrow_c::procMove() {
attribCode == dBgS_Attr_DAMAGE_e ||
attribCode == dBgS_Attr_FREEZE_e
)) {
mCurrProcFunc = &procReturn;
mCurrProcFunc = &daArrow_c::procReturn;
fopAcM_SetParam(this, 3);
speed *= -0.1f;
speed.y += speed.absXZ();
@@ -848,7 +848,7 @@ BOOL daArrow_c::procMove() {
// There was probably some code here that got commented out.
}
if (mCurrProcFunc == &procWater) {
if (mCurrProcFunc == &daArrow_c::procWater) {
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, 0);
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
@@ -1061,7 +1061,7 @@ BOOL daArrow_c::createInit() {
mpBtk = daPy_getPlayerLinkActorClass()->getIceArrowBtk();
}
mCurrProcFunc = &procWait;
mCurrProcFunc = &daArrow_c::procWait;
setKeepMatrix();
mCullMtx = mpModel->getBaseTRMtx();
+9 -9
View File
@@ -313,9 +313,9 @@ bool daBomb_c::checkExplodeCc() {
if(0 < mRestTime) {
typedef bool(daBomb_c::*checkFunc)();
static checkFunc proc[] = {
&checkExplodeCc_norm,
&checkExplodeCc_nut,
&checkExplodeCc_cannon
&daBomb_c::checkExplodeCc_norm,
&daBomb_c::checkExplodeCc_nut,
&daBomb_c::checkExplodeCc_cannon
};
return (this->*proc[mType])();
@@ -432,9 +432,9 @@ bool daBomb_c::checkExplodeBg_cannon() {
bool daBomb_c::checkExplodeBg() {
typedef bool(daBomb_c::*checkFunc)();
static checkFunc proc[] = {
&checkExplodeBg_norm,
&checkExplodeBg_nut,
&checkExplodeBg_cannon
&daBomb_c::checkExplodeBg_norm,
&daBomb_c::checkExplodeBg_nut,
&daBomb_c::checkExplodeBg_cannon
};
return (this->*proc[mType])();
@@ -757,7 +757,7 @@ int daBomb_c::procExplode_init() {
field_0x774 = 0;
field_0x778 = 0.0f;
mFunc = &procExplode;
mFunc = &daBomb_c::procExplode;
speedF = 0.0f;
speed = cXyz::Zero;
mGravity = 0.0f;
@@ -869,7 +869,7 @@ bool daBomb_c::procCarry_init() {
setFuseEffect();
}
mFunc = &procCarry;
mFunc = &daBomb_c::procCarry;
change_state(STATE_2);
speedF = 0.0f;
speed.set(cXyz::Zero);
@@ -903,7 +903,7 @@ bool daBomb_c::procCarry() {
}
bool daBomb_c::procWait_init() {
mFunc = &procWait;
mFunc = &daBomb_c::procWait;
if(chk_attrState(this, ATTR_STATE_80)) {
change_state(STATE_1);
}
+11 -11
View File
@@ -260,9 +260,9 @@ namespace daBomb2 {
void Act_c::start_proc_call() {
typedef void(Act_c::*procFunc)();
static procFunc start_proc[] = {
&start_explode_instant,
&start_explode_interval,
&start_carry
&Act_c::start_explode_instant,
&Act_c::start_explode_interval,
&Act_c::start_carry
};
int proc = daObj::PrmAbstract(this, PRM_2_W, PRM_2_S);
@@ -851,10 +851,10 @@ namespace daBomb2 {
void Act_c::mode_proc_call() {
typedef void(Act_c::*procFunc)();
static procFunc mode_proc[] = {
&mode_wait,
&mode_carry,
&mode_explode,
&mode_sink,
&Act_c::mode_wait,
&Act_c::mode_carry,
&Act_c::mode_explode,
&Act_c::mode_sink,
};
if(fopAcM_checkCarryNow(this) && field_0x694 != 1) {
@@ -951,10 +951,10 @@ namespace daBomb2 {
void Act_c::tensor_proc_call() {
typedef void(Act_c::*procFunc)();
static procFunc tensor_proc[] = {
&tensor_wait,
&tensor_carry,
&tensor_explode,
&tensor_sink,
&Act_c::tensor_wait,
&Act_c::tensor_carry,
&Act_c::tensor_explode,
&Act_c::tensor_sink,
};
if(!daObj::PrmAbstract(this, PRM_1_W, PRM_1_S)) {
+5 -4
View File
@@ -10,12 +10,13 @@
#include "SSystem/SComponent/c_counter.h"
#include "d/actor/d_a_player_main.h"
#include "d/d_procname.h"
#include "global.h"
// Needed for the .data section to match.
static Vec dummy_2100 = {1.0f, 1.0f, 1.0f};
static Vec dummy_2080 = {1.0f, 1.0f, 1.0f};
static u8 l_chainS3TCTEX[] __attribute__((aligned(32))) = {
static u8 l_chainS3TCTEX[] ALIGN_DECL(32) = {
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -82,7 +83,7 @@ static cXy l_texCoord[0xC] = {
{0.961538, 0.983522},
};
static u8 l_chainDL[] __attribute__((aligned(32))) = {
static u8 l_chainDL[] ALIGN_DECL(32) = {
0x98, 0x00, 0x06, 0x01, 0x0A, 0x07, 0x0B, 0x09, 0x08, 0x0B, 0x09, 0x02, 0x08, 0x08, 0x09,
0x98, 0x00, 0x06, 0x0B, 0x07, 0x07, 0x06, 0x0A, 0x04, 0x04, 0x05, 0x09, 0x07, 0x01, 0x06,
0x98, 0x00, 0x06, 0x08, 0x03, 0x0B, 0x02, 0x05, 0x00, 0x0A, 0x01, 0x02, 0x03, 0x09, 0x02,
@@ -96,7 +97,7 @@ static u8 l_chainDL[] __attribute__((aligned(32))) = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
static u8 l_matDL[] __attribute__((aligned(32))) = {
static u8 l_matDL[] ALIGN_DECL(32) = {
0x61, 0x80, 0x00, 0x01, 0x3A,
0x61, 0x84, 0x00, 0x00, 0x00,
0x61, 0x88, 0xE0, 0x7C, 0x1F,
@@ -203,7 +204,7 @@ void daHookshot_rockLineCallback(fopAc_ac_c* hookshot_actor, dCcD_GObjInf* objIn
BOOL daHookshot_c::procWait_init(int param_1) {
daPy_lk_c* link = daPy_getPlayerLinkActorClass();
fopAcM_SetParam(this, 0);
mCurrProcFunc = &procWait;
mCurrProcFunc = &daHookshot_c::procWait;
mChainCnt = 0;
current.pos = link->getHookshotRootPos();
m518 = -1;
+4 -6
View File
@@ -12,6 +12,7 @@
#include "d/actor/d_a_item.h"
#include "d/d_item.h"
#include "d/d_item_data.h"
#include "global.h"
#include "m_Do/m_Do_mtx.h"
// Needed for the .data section to match.
@@ -191,8 +192,8 @@ BOOL daIball_c::dead() {
/* 800F3A48-800F3E78 .text checkGeo__9daIball_cFv */
void daIball_c::checkGeo() {
static ModeFunc mode_proc[] = {
&mode_wait,
&mode_water,
&daIball_c::mode_wait,
&daIball_c::mode_water,
};
mPrevSpeedY = speed.y;
@@ -321,10 +322,7 @@ void daIball_c::set_mtx() {
}
// TODO: This is a hack. I have no idea why this one variable needs to go in .data instead of .sdata.
#ifndef __INTELLISENSE__
__declspec(section ".data")
#endif
char daIball_c::m_arcname[] = "Always";
SECTION_DATA char daIball_c::m_arcname[] = "Always";
dCcD_SrcCyl daIball_c::m_cyl_src = {
// dCcD_SrcGObjInf
+3 -3
View File
@@ -307,9 +307,9 @@ BOOL daItem_c::_daItem_execute() {
/* 800F5834-800F59CC .text mode_proc_call__8daItem_cFv */
void daItem_c::mode_proc_call() {
static ModeFunc mode_proc[] = {
&mode_wait,
&mode_wait,
&mode_water,
&daItem_c::mode_wait,
&daItem_c::mode_wait,
&daItem_c::mode_water,
};
if (mType == 1) {
+7 -7
View File
@@ -173,7 +173,7 @@ BOOL daNh_c::init() {
void daNh_c::action(void* arg) {
if (mCurrActionFunc == NULL) {
speedF = 0.0f;
setAction(&waitAction, NULL);
setAction(&daNh_c::waitAction, NULL);
}
(this->*mCurrActionFunc)(arg);
}
@@ -218,7 +218,7 @@ BOOL daNh_c::checkBinCatch() {
/* 800F9F3C-800FA108 .text searchPlayer__6daNh_cFv */
BOOL daNh_c::searchPlayer() {
if (isTypeBottle()) {
setAction(&escapeAction, NULL);
setAction(&daNh_c::escapeAction, NULL);
return TRUE;
}
@@ -229,7 +229,7 @@ BOOL daNh_c::searchPlayer() {
mPlayerDist = playerDist;
if (playerDelta.absXZ() > 0.001f && playerDist < 600.0f && playerDistDelta > l_HIO.prm.mMinFrightenSpeed) {
// Player is nearby and moving closer. The Forest Firefly becomes frightened and tries to escape.
setAction(&escapeAction, NULL);
setAction(&daNh_c::escapeAction, NULL);
return TRUE;
}
@@ -299,7 +299,7 @@ BOOL daNh_c::waitAction(void*) {
} else if (mActionStatus != ACTION_ENDING) {
cLib_addCalc(&speedF, 0.0f, 0.1f, 10.0f, 1.0f);
if (getHomeDistance() > 50.0f) {
setAction(&returnAction, NULL);
setAction(&daNh_c::returnAction, NULL);
}
}
return TRUE;
@@ -310,11 +310,11 @@ BOOL daNh_c::checkEscapeEnd() {
cXyz homeDelta = orig.pos - current.pos;
if (!isTypeBottle()) {
if (cLib_calcTimer(&mEscapeTimer) == 0) {
setAction(&waitAction, NULL);
setAction(&daNh_c::waitAction, NULL);
return TRUE;
}
if (homeDelta.abs2XZ() > l_HIO.prm.mMaxHomeDist*l_HIO.prm.mMaxHomeDist) {
setAction(&returnAction, NULL);
setAction(&daNh_c::returnAction, NULL);
return TRUE;
}
}
@@ -353,7 +353,7 @@ BOOL daNh_c::returnAction(void*) {
mEscapeTimer = 5*30;
} else if (mActionStatus != ACTION_ENDING) {
if (getHomeDistance() < 50.0f) {
setAction(&waitAction, NULL);
setAction(&daNh_c::waitAction, NULL);
} else {
s16 targetAngle = cLib_targetAngleY(&current.pos, &orig.pos);
cXyz homeDelta = orig.pos - current.pos;
+17 -16
View File
@@ -7,25 +7,26 @@
#include "d/actor/d_a_player_main.h"
#include "d/d_com_inf_game.h"
#include "d/d_procname.h"
#include "global.h"
static Vec bss_3569;
// Not sure what these are, but they have size 1, and alignment 1 in the debug maps, but alignment 4 in the non-debug maps.
static u8 bss_1036 __attribute__((aligned(4)));
static u8 bss_1034 __attribute__((aligned(4)));
static u8 bss_1032 __attribute__((aligned(4)));
static u8 bss_1031 __attribute__((aligned(4)));
static u8 bss_1026 __attribute__((aligned(4)));
static u8 bss_1024 __attribute__((aligned(4)));
static u8 bss_1022 __attribute__((aligned(4)));
static u8 bss_1021 __attribute__((aligned(4)));
static u8 bss_984 __attribute__((aligned(4)));;
static u8 bss_982 __attribute__((aligned(4)));;
static u8 bss_980 __attribute__((aligned(4)));;
static u8 bss_979 __attribute__((aligned(4)));;
static u8 bss_941 __attribute__((aligned(4)));;
static u8 bss_939 __attribute__((aligned(4)));;
static u8 bss_937 __attribute__((aligned(4)));;
static u8 bss_936 __attribute__((aligned(4)));;
static u8 bss_1036 ALIGN_DECL(4);
static u8 bss_1034 ALIGN_DECL(4);
static u8 bss_1032 ALIGN_DECL(4);
static u8 bss_1031 ALIGN_DECL(4);
static u8 bss_1026 ALIGN_DECL(4);
static u8 bss_1024 ALIGN_DECL(4);
static u8 bss_1022 ALIGN_DECL(4);
static u8 bss_1021 ALIGN_DECL(4);
static u8 bss_984 ALIGN_DECL(4);
static u8 bss_982 ALIGN_DECL(4);
static u8 bss_980 ALIGN_DECL(4);
static u8 bss_979 ALIGN_DECL(4);
static u8 bss_941 ALIGN_DECL(4);
static u8 bss_939 ALIGN_DECL(4);
static u8 bss_937 ALIGN_DECL(4);
static u8 bss_936 ALIGN_DECL(4);
static u32 l_msgId;
static msg_class* l_msg;
static u8 msg_mode;
+4 -3
View File
@@ -6,6 +6,7 @@
#include "d/d_kankyo.h"
#include "d/d_a_obj.h"
#include "d/d_s_play.h"
#include "global.h"
#include "m_Do/m_Do_mtx.h"
#include "JSystem/J3DGraphBase/J3DPacket.h"
@@ -25,7 +26,7 @@ public:
static Vec dummy0 = { 1.0f, 1.0f, 1.0f };
static Vec dummy1 = { 1.0f, 1.0f, 1.0f };
static u8 l_chainS3TCTex[] __attribute__((aligned(32))) = { 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00 };
static u8 l_chainS3TCTex[] ALIGN_DECL(32) = { 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xDE, 0xDB, 0xB5, 0xB6, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0xB5, 0xB6, 0x94, 0x92, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x8C, 0x31, 0x6B, 0x2D, 0x00, 0x55, 0x55, 0x55, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0x94, 0x92, 0x6B, 0x2D, 0x55, 0x55, 0xAA, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00, 0xB5, 0xB6, 0x94, 0x92, 0x55, 0x55, 0x00, 0x00 };
static Vec l_pos[12] = {
{ -2.0f, 1.522254f, -0.0f },
{ -2.0f, 1.522254f, 7.0f },
@@ -59,8 +60,8 @@ static f32 l_texCoord[24] = {
#define CONST_U32(v) ((u8)((v) >> 16)), ((u8)((v) >> 8)), ((u8)((v) >> 0))
#define IMAGE_ADDR(addr) CONST_U32((u32)(addr) >> 5)
static u8 l_chainDL[0x7a] __attribute__((aligned(32))) = { 0x98, 0x00, 0x06, 0x01, 0x0A, 0x07, 0x0B, 0x09, 0x08, 0x0B, 0x09, 0x02, 0x08, 0x08, 0x09, 0x98, 0x00, 0x06, 0x0B, 0x07, 0x07, 0x06, 0x0A, 0x04, 0x04, 0x05, 0x09, 0x07, 0x01, 0x06, 0x98, 0x00, 0x06, 0x08, 0x03, 0x0B, 0x02, 0x05, 0x00, 0x0A, 0x01, 0x02, 0x03, 0x09, 0x02, 0x98, 0x00, 0x06, 0x02, 0x0A, 0x08, 0x0B, 0x00, 0x08, 0x06, 0x09, 0x01, 0x08, 0x07, 0x09, 0x98, 0x00, 0x06, 0x06, 0x07, 0x08, 0x06, 0x03, 0x04, 0x05, 0x05, 0x00, 0x07, 0x02, 0x06, 0x98, 0x00, 0x06, 0x07, 0x03, 0x06, 0x02, 0x04, 0x00, 0x03, 0x01, 0x01, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
static u8 l_matDL[0xa8] __attribute__((aligned(32))) = {
static u8 l_chainDL[0x7a] ALIGN_DECL(32) = { 0x98, 0x00, 0x06, 0x01, 0x0A, 0x07, 0x0B, 0x09, 0x08, 0x0B, 0x09, 0x02, 0x08, 0x08, 0x09, 0x98, 0x00, 0x06, 0x0B, 0x07, 0x07, 0x06, 0x0A, 0x04, 0x04, 0x05, 0x09, 0x07, 0x01, 0x06, 0x98, 0x00, 0x06, 0x08, 0x03, 0x0B, 0x02, 0x05, 0x00, 0x0A, 0x01, 0x02, 0x03, 0x09, 0x02, 0x98, 0x00, 0x06, 0x02, 0x0A, 0x08, 0x0B, 0x00, 0x08, 0x06, 0x09, 0x01, 0x08, 0x07, 0x09, 0x98, 0x00, 0x06, 0x06, 0x07, 0x08, 0x06, 0x03, 0x04, 0x05, 0x05, 0x00, 0x07, 0x02, 0x06, 0x98, 0x00, 0x06, 0x07, 0x03, 0x06, 0x02, 0x04, 0x00, 0x03, 0x01, 0x01, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
static u8 l_matDL[0xa8] ALIGN_DECL(32) = {
0x61, 0x80, 0x00, 0x01, 0x3A, 0x61, 0x84, 0x00, 0x00, 0x00, 0x61, 0x88, 0xE0, 0x7C, 0x1F, 0x61, 0x94,
IMAGE_ADDR(&l_chainS3TCTex),
0x61, 0x30, 0x00, 0x00, 0x20, 0x61, 0x31, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x10, 0x40, 0xFF, 0xFF, 0x42, 0x80, 0x08, 0x30, 0x3C, 0xF3, 0xCF, 0x00, 0x10, 0x00, 0x00, 0x10, 0x18, 0x3C, 0xF3, 0xCF, 0x00, 0x10, 0x00, 0x00, 0x10, 0x0E, 0x00, 0x00, 0x05, 0x43, 0x61, 0x28, 0x3C, 0x00, 0x00, 0x61, 0xC0, 0x08, 0x24, 0xAF, 0x61, 0xC1, 0x08, 0xFF, 0xF0, 0x61, 0x28, 0x3C, 0x00, 0x00, 0x61, 0xC2, 0x08, 0xF0, 0x8F, 0x61, 0xC3, 0x08, 0xFF, 0xC0, 0x61, 0x43, 0x00, 0x00, 0x01, 0x61, 0x40, 0x00, 0x00, 0x17, 0x61, 0x41, 0x00, 0x01, 0x0C, 0x61, 0xF3, 0x64, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x04, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
+9 -8
View File
@@ -14,6 +14,7 @@
#include "JSystem/J2DGraph/J2DOrthoGraph.h"
#include "SSystem/SComponent/c_rnd.h"
#include "SSystem/SComponent/c_bg_s_shdw_draw.h"
#include "global.h"
GXTexObj dDlst_shadowControl_c::mSimpleTexObj;
@@ -479,21 +480,21 @@ extern void GFSetVtxAttrFmtv(GXVtxFmt, GXVtxAttrFmtList*);
extern void GFSetBlendModeEtc(GXBlendMode, GXBlendFactor, GXBlendFactor, GXLogicOp, u8, u8, u8);
extern void GFSetArray(GXAttr, void*, u8);
char l_backRevZMat[0x41] __attribute__((aligned(32))) = {};
char l_frontZMat[0x3c] __attribute__((aligned(32))) = {};
char l_frontNoZSubMat[0x2a] __attribute__((aligned(32))) = {};
char l_backRevZMat[0x41] ALIGN_DECL(32) = {};
char l_frontZMat[0x3c] ALIGN_DECL(32) = {};
char l_frontNoZSubMat[0x2a] ALIGN_DECL(32) = {};
Vec l_bonboriPos[0x2a] = {};
char l_bonboriDL[0xa7] __attribute__((aligned(32))) = {};
char l_bonboriDL[0xa7] ALIGN_DECL(32) = {};
Vec l_s_beam_checkPos[0x28] = {};
char l_s_beam_checkDL[0xf8] __attribute__((aligned(32))) = {};
char l_s_beam_checkDL[0xf8] ALIGN_DECL(32) = {};
Vec l_cubePos[0x08] = {};
char l_cubeDL[0x4a] __attribute__((aligned(32))) = {};
char l_cubeDL[0x4a] ALIGN_DECL(32) = {};
Vec l_bonbori2Pos[0x56] = {};
char l_bonbori2DL[0x2a8] __attribute__((aligned(32))) = {};
char l_bonbori2DL[0x2a8] ALIGN_DECL(32) = {};
/* 80082838-80082E44 .text draw__22dDlst_alphaModelData_cFPA4_f */
void dDlst_alphaModelData_c::draw(Mtx viewMtx) {
@@ -649,7 +650,7 @@ BOOL dDlst_alphaModel_c::draw(Mtx mtx) {
if (mNum == 0)
return FALSE;
static char l_matDL[0x64] __attribute__((aligned(32))) = {};
static char l_matDL[0x64] ALIGN_DECL(32) = {};
static GXVtxDescList l_vtxDescList[2] = {
};
+4 -4
View File
@@ -702,12 +702,12 @@ bool dNpc_setAnm_2(mDoExt_McaMorf* pMorf, int loopMode, f32 morf, f32 speed, int
/* 8021C238-8021C2E8 .text swing_vertical_init__14dNpc_HeadAnm_cFsssi */
void dNpc_HeadAnm_c::swing_vertical_init(s16 param_1, s16 param_2, s16 param_3, int param_4) {
if(param_4 == 0 || mFunc != &swing_vertical) {
if(param_4 == 0 || mFunc != &dNpc_HeadAnm_c::swing_vertical) {
field_0x1C = 0;
field_0x20 = param_1;
field_0x1E = param_2;
field_0x14 = param_3;
mFunc = &swing_vertical;
mFunc = &dNpc_HeadAnm_c::swing_vertical;
}
}
@@ -726,12 +726,12 @@ void dNpc_HeadAnm_c::swing_vertical() {
/* 8021C3C8-8021C478 .text swing_horizone_init__14dNpc_HeadAnm_cFsssi */
void dNpc_HeadAnm_c::swing_horizone_init(s16 param_1, s16 param_2, s16 param_3, int param_4) {
if(param_4 == 0 || mFunc != &swing_vertical) {
if(param_4 == 0 || mFunc != &dNpc_HeadAnm_c::swing_vertical) {
field_0x1C = 0;
field_0x20 = param_1;
field_0x1E = param_2;
field_0x18 = param_3;
mFunc = &swing_horizone;
mFunc = &dNpc_HeadAnm_c::swing_horizone;
}
}
+4 -4
View File
@@ -897,7 +897,7 @@ ShopItems_c__shop_cam_data* shop_cam_data_tbl[] = {
/* 8005EFDC-8005F088 .text shop_cam_action_init__16ShopCam_action_cFv */
BOOL ShopCam_action_c::shop_cam_action_init() {
daPy_getPlayerActorClass()->onPlayerNoDraw();
setCamAction(&shop_cam_action);
setCamAction(&ShopCam_action_c::shop_cam_action);
m18 = shop_cam_data_tbl[mCamDataIdx][0].m00;
m24 = shop_cam_data_tbl[mCamDataIdx][0].m0C;
@@ -933,12 +933,12 @@ int ShopCam_action_c::shop_cam_action() {
/* 8005F220-8005F370 .text rsh_talk_cam_action_init__16ShopCam_action_cFP10fopAc_ac_c4cXyz4cXyzf */
BOOL ShopCam_action_c::rsh_talk_cam_action_init(fopAc_ac_c* param_1, cXyz param_2, cXyz param_3, f32 param_4) {
if (checkCamAction(&rsh_talk_cam_action)) {
if (checkCamAction(&ShopCam_action_c::rsh_talk_cam_action)) {
return TRUE;
}
daPy_getPlayerActorClass()->onPlayerNoDraw();
setCamAction(&rsh_talk_cam_action);
setCamAction(&ShopCam_action_c::rsh_talk_cam_action);
mDoMtx_stack_c::transS(param_1->mAttentionInfo.mPosition);
mDoMtx_stack_c::YrotM(param_1->current.angle.y);
@@ -966,7 +966,7 @@ int ShopCam_action_c::rsh_talk_cam_action() {
/* 8005F41C-8005F494 .text ds_normal_cam_action_init__16ShopCam_action_cFv */
BOOL ShopCam_action_c::ds_normal_cam_action_init() {
daPy_getPlayerActorClass()->onPlayerNoDraw();
setCamAction(&ds_normal_cam_action);
setCamAction(&ShopCam_action_c::ds_normal_cam_action);
m18.set(-136.0f, 102.0f, -254.0f);
m24.set(-136.0f, 102.0f, 90.0f);
+8 -8
View File
@@ -1,14 +1,14 @@
#include "dolphin/types.h"
#include "global.h"
const u8 black_tex[] __attribute__((aligned(4))) = {
const u8 black_tex[] ALIGN_DECL(4) = {
0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
const u8 msg_data[] __attribute__((aligned(32))) = {
const u8 msg_data[] ALIGN_DECL(32) = {
#if VERSION == VERSION_JPN
0x4D, 0x45, 0x53, 0x47, 0x62, 0x6D, 0x67, 0x31, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x02,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -86,7 +86,7 @@ const u8 msg_data[] __attribute__((aligned(32))) = {
#endif
};
const u8 msg_data_ge[] __attribute__((aligned(32))) = {
const u8 msg_data_ge[] ALIGN_DECL(32) = {
0x4D, 0x45, 0x53, 0x47, 0x62, 0x6D, 0x67, 0x31, 0x00, 0x00, 0x02, 0xA0, 0x00, 0x00, 0x00, 0x02,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x49, 0x4E, 0x46, 0x31, 0x00, 0x00, 0x00, 0x40, 0x00, 0x06, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
@@ -131,7 +131,7 @@ const u8 msg_data_ge[] __attribute__((aligned(32))) = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
const u8 msg_data_fr[] __attribute__((aligned(32))) = {
const u8 msg_data_fr[] ALIGN_DECL(32)= {
0x4D, 0x45, 0x53, 0x47, 0x62, 0x6D, 0x67, 0x31, 0x00, 0x00, 0x02, 0x60, 0x00, 0x00, 0x00, 0x02,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x49, 0x4E, 0x46, 0x31, 0x00, 0x00, 0x00, 0x40, 0x00, 0x06, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
@@ -172,7 +172,7 @@ const u8 msg_data_fr[] __attribute__((aligned(32))) = {
0x6D, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x73, 0x2E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
const u8 msg_data_sp[] __attribute__((aligned(32))) = {
const u8 msg_data_sp[] ALIGN_DECL(32) = {
0x4D, 0x45, 0x53, 0x47, 0x62, 0x6D, 0x67, 0x31, 0x00, 0x00, 0x02, 0x40, 0x00, 0x00, 0x00, 0x02,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x49, 0x4E, 0x46, 0x31, 0x00, 0x00, 0x00, 0x40, 0x00, 0x06, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
@@ -211,7 +211,7 @@ const u8 msg_data_sp[] __attribute__((aligned(32))) = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
const u8 msg_data_it[] __attribute__((aligned(32))) = {
const u8 msg_data_it[] ALIGN_DECL(32) = {
0x4D, 0x45, 0x53, 0x47, 0x62, 0x6D, 0x67, 0x31, 0x00, 0x00, 0x02, 0x80, 0x00, 0x00, 0x00, 0x02,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x49, 0x4E, 0x46, 0x31, 0x00, 0x00, 0x00, 0x40, 0x00, 0x06, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
@@ -254,7 +254,7 @@ const u8 msg_data_it[] __attribute__((aligned(32))) = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
const u8 font_data[] __attribute__((aligned(32))) = {
const u8 font_data[] ALIGN_DECL(32) = {
#if VERSION == VERSION_JPN
0x46, 0x4F, 0x4E, 0x54, 0x62, 0x66, 0x6E, 0x31, 0x00, 0x00, 0x82, 0x80, 0x00, 0x00, 0x00, 0x05,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+2 -1
View File
@@ -6,11 +6,12 @@
#include "m_Do/m_Do_DVDError.h"
#include "JSystem/JKernel/JKRThread.h"
#include "dolphin/os/OS.h"
#include "global.h"
#include "m_Do/m_Do_dvd_thread.h"
#include "m_Do/m_Do_ext.h"
OSThread DvdErr_thread;
u8 DvdErr_stack[0x1000] __attribute__((aligned(32)));
u8 DvdErr_stack[0x1000] ALIGN_DECL(32);
static OSAlarm Alarm;
bool mDoDvdErr_initialized;
+3 -2
View File
@@ -7,11 +7,12 @@
#include "m_Do/m_Do_Reset.h"
#include "JSystem/JKernel/JKRThread.h"
#include "dolphin/card.h"
#include "global.h"
#include "MSL_C/string.h"
u8 MemCardStack[0x1000] __attribute__((aligned(32)));
u8 MemCardStack[0x1000] ALIGN_DECL(32);
OSThread MemCardThread;
u8 MemCardWorkArea0[0xa000] __attribute__((aligned(32)));
u8 MemCardWorkArea0[0xa000] ALIGN_DECL(32);
mDoMemCd_Ctrl_c g_mDoMemCd_control;
+3 -2
View File
@@ -16,6 +16,7 @@
#include "c/c_dylink.h"
#include "d/d_com_inf_game.h"
#include "f_ap/f_ap_game.h"
#include "global.h"
#include "m_Do/m_Do_MemCard.h"
#include "m_Do/m_Do_Reset.h"
#include "m_Do/m_Do_audio.h"
@@ -351,7 +352,7 @@ bool JKRHeap::dump_sort() {
s32 LOAD_COPYDATE(void*) {
s32 status;
DVDFileInfo __attribute__((aligned(0x20))) fileInfo;
DVDFileInfo ALIGN_DECL(0x20) fileInfo;
u8 buffer[0x20];
status = DVDOpen("/COPYDATE", &fileInfo);
@@ -443,7 +444,7 @@ OSThread mainThread;
/* 80006464-800065DC .text main */
void main() {
OSThread* current_thread = OSGetCurrentThread();
u8 __attribute__((aligned(0x20))) stack[0xF000];
u8 ALIGN_DECL(0x20) stack[0xF000];
mDoMain::sPowerOnTime = OSGetTime();
OSReportInit__Fv();
+1 -1
View File
@@ -336,7 +336,7 @@ void mDoMtx_stack_c::lYrotM(s32 param_0) {
/* 8000D904-8000D940 .text rYrotM__14mDoMtx_stack_cFf */
void mDoMtx_stack_c::rYrotM(f32 i_rad) {
Mtx m;
PSMTXRotRad(m, 'Y', i_rad);
MTXRotRad(m, 'Y', i_rad);
mDoMtx_concat(now, m, now);
}