mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 00:42:34 +01:00
Shiftability / modern gcc work (#927)
* cleanup & fixes * some pointers * fix some bss syms * sizes, modern gcc prep, etc * Fixing errors on modern gcc * a few fixes * fixes
This commit is contained in:
parent
3c44b74922
commit
bc618160ed
@ -21,7 +21,7 @@
|
||||
|
||||
/*---------------------------------------------------------------------*
|
||||
Copyright (C) 1998 Nintendo. (Originated by SGI)
|
||||
|
||||
|
||||
$RCSfile: os_message.h,v $
|
||||
$Revision: 1.1 $
|
||||
$Date: 1998/10/09 08:01:15 $
|
||||
@ -63,7 +63,7 @@ typedef struct OSMesgQueue_s {
|
||||
s32 first; /* Points to first valid message */
|
||||
s32 msgCount; /* Contains total # of messages */
|
||||
OSMesg *msg; /* Points to message buffer array */
|
||||
} OSMesgQueue;
|
||||
} OSMesgQueue; // size = 0x18
|
||||
|
||||
|
||||
#endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */
|
||||
|
@ -21,7 +21,7 @@
|
||||
|
||||
/*---------------------------------------------------------------------*
|
||||
Copyright (C) 1998 Nintendo. (Originated by SGI)
|
||||
|
||||
|
||||
$RCSfile: os_thread.h,v $
|
||||
$Revision: 1.3 $
|
||||
$Date: 1999/06/15 12:39:40 $
|
||||
@ -46,19 +46,19 @@ extern "C" {
|
||||
|
||||
typedef s32 OSPri;
|
||||
typedef s32 OSId;
|
||||
typedef union { struct { f32 f_odd; f32 f_even; } f; f64 d; } __OSfp;
|
||||
typedef union { struct { f32 f_odd; f32 f_even; } f; f64 d; } __OSfp; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
u64 at, v0, v1, a0, a1, a2, a3;
|
||||
u64 t0, t1, t2, t3, t4, t5, t6, t7;
|
||||
u64 s0, s1, s2, s3, s4, s5, s6, s7;
|
||||
u64 t8, t9, gp, sp, s8, ra;
|
||||
u64 lo, hi;
|
||||
u32 sr, pc, cause, badvaddr, rcp;
|
||||
u32 fpcsr;
|
||||
__OSfp fp0, fp2, fp4, fp6, fp8, fp10, fp12, fp14;
|
||||
__OSfp fp16, fp18, fp20, fp22, fp24, fp26, fp28, fp30;
|
||||
} __OSThreadContext;
|
||||
/* 0x000 */ u64 at, v0, v1, a0, a1, a2, a3;
|
||||
/* 0x038 */ u64 t0, t1, t2, t3, t4, t5, t6, t7;
|
||||
/* 0x078 */ u64 s0, s1, s2, s3, s4, s5, s6, s7;
|
||||
/* 0x0B8 */ u64 t8, t9, gp, sp, s8, ra;
|
||||
/* 0x0E8 */ u64 lo, hi;
|
||||
/* 0x0F8 */ u32 sr, pc, cause, badvaddr, rcp;
|
||||
/* 0x10C */ u32 fpcsr;
|
||||
/* 0x110 */ __OSfp fp0, fp2, fp4, fp6, fp8, fp10, fp12, fp14;
|
||||
/* 0x150 */ __OSfp fp16, fp18, fp20, fp22, fp24, fp26, fp28, fp30;
|
||||
} __OSThreadContext; // size = 0x190
|
||||
|
||||
typedef struct {
|
||||
u32 flag;
|
||||
@ -67,17 +67,17 @@ typedef struct {
|
||||
} __OSThreadprofile_s;
|
||||
|
||||
typedef struct OSThread_s {
|
||||
struct OSThread_s *next; /* run/mesg queue link */
|
||||
OSPri priority; /* run/mesg queue priority */
|
||||
struct OSThread_s **queue; /* queue thread is on */
|
||||
struct OSThread_s *tlnext; /* all threads queue link */
|
||||
u16 state; /* OS_STATE_* */
|
||||
u16 flags; /* flags for rmon */
|
||||
OSId id; /* id for debugging */
|
||||
int fp; /* thread has used fp unit */
|
||||
__OSThreadprofile_s *thprof; /* workarea for thread profiler */
|
||||
__OSThreadContext context; /* register/interrupt mask */
|
||||
} OSThread;
|
||||
/* 0x000 */ struct OSThread_s *next; /* run/mesg queue link */
|
||||
/* 0x004 */ OSPri priority; /* run/mesg queue priority */
|
||||
/* 0x008 */ struct OSThread_s **queue; /* queue thread is on */
|
||||
/* 0x00C */ struct OSThread_s *tlnext; /* all threads queue link */
|
||||
/* 0x010 */ u16 state; /* OS_STATE_* */
|
||||
/* 0x012 */ u16 flags; /* flags for rmon */
|
||||
/* 0x014 */ OSId id; /* id for debugging */
|
||||
/* 0x018 */ int fp; /* thread has used fp unit */
|
||||
/* 0x01C */ __OSThreadprofile_s *thprof; /* workarea for thread profiler */
|
||||
/* 0x020 */ __OSThreadContext context; /* register/interrupt mask */
|
||||
} OSThread; // size = 0x1B0
|
||||
|
||||
|
||||
#endif /* defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS) */
|
||||
|
@ -33,6 +33,7 @@ void shim_transform_point(Matrix4f mtx, f32 inX, f32 inY, f32 inZ, f32 inS, f32*
|
||||
s32 shim_npc_raycast_down_sides(s32, f32*, f32*, f32*, f32*);
|
||||
void shim_sfx_play_sound_at_position(s32 soundID, s32 value2, f32 posX, f32 posY, f32 posZ);
|
||||
void shim_mdl_draw_hidden_panel_surface(Gfx**, u16 treeIndex);
|
||||
s32 shim_func_8011CFBC(f32, f32, f32, s32, f32*, f32*);
|
||||
void shim_draw_box(s32 flags, WindowStyle windowStyle, s32 posX, s32 posY, s32 posZ, s32 width, s32 height, u8 opacity,
|
||||
u8 darkening, f32 scaleX, f32 scaleY, f32 rotX, f32 rotY, f32 rotZ, void (*fpDrawContents)(void*),
|
||||
void* drawContentsArg0, Matrix4f rotScaleMtx, s32 translateX, s32 translateY, f32 (*outMtx)[4]);
|
||||
|
@ -394,7 +394,7 @@ typedef struct st_SCClient { /* Client list structure */
|
||||
NUScMsg msgType; /* Type of message */
|
||||
/* NU_SC_RETRACE_MSG or*/
|
||||
/* NU_SC_PRENMI_MSG */
|
||||
} NUScClient;
|
||||
} NUScClient; // size = 0xA
|
||||
|
||||
typedef struct st_SCTask { /* Task structure */
|
||||
struct st_SCTask *next;
|
||||
@ -409,46 +409,46 @@ typedef struct st_SCTask { /* Task structure */
|
||||
typedef struct st_Sched { /* Define the Scheduler structure. */
|
||||
|
||||
/* message */
|
||||
NUScMsg retraceMsg;
|
||||
NUScMsg prenmiMsg;
|
||||
/* 0x000 */ NUScMsg retraceMsg;
|
||||
/* 0x002 */ NUScMsg prenmiMsg;
|
||||
|
||||
/* Define the Task request queue. */
|
||||
OSMesgQueue audioRequestMQ;
|
||||
OSMesg audioRequestBuf[NU_SC_MAX_MESGS];
|
||||
OSMesgQueue graphicsRequestMQ;
|
||||
OSMesg graphicsRequestBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x004 */ OSMesgQueue audioRequestMQ;
|
||||
/* 0x01C */ OSMesg audioRequestBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x03C */ OSMesgQueue graphicsRequestMQ;
|
||||
/* 0x054 */ OSMesg graphicsRequestBuf[NU_SC_MAX_MESGS];
|
||||
|
||||
/* Define the message queue. */
|
||||
OSMesgQueue retraceMQ;
|
||||
OSMesg retraceMsgBuf[NU_SC_MAX_MESGS];
|
||||
OSMesgQueue rspMQ;
|
||||
OSMesg rspMsgBuf[NU_SC_MAX_MESGS];
|
||||
OSMesgQueue rdpMQ;
|
||||
OSMesg rdpMsgBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x074 */ OSMesgQueue retraceMQ;
|
||||
/* 0x08C */ OSMesg retraceMsgBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x0AC */ OSMesgQueue rspMQ;
|
||||
/* 0x0C4 */ OSMesg rspMsgBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x0E4 */ OSMesgQueue rdpMQ;
|
||||
/* 0x0FC */ OSMesg rdpMsgBuf[NU_SC_MAX_MESGS];
|
||||
|
||||
/* Implement wait for next retrace. */
|
||||
OSMesgQueue waitMQ;
|
||||
OSMesg waitMsgBuf[NU_SC_MAX_MESGS];
|
||||
/* 0x11C */ OSMesgQueue waitMQ;
|
||||
/* 0x134 */ OSMesg waitMsgBuf[NU_SC_MAX_MESGS];
|
||||
|
||||
/* Define threads.*/
|
||||
OSThread schedulerThread; /* Main thread */
|
||||
OSThread audioThread; /* Audio */
|
||||
OSThread graphicsThread; /* Graphics */
|
||||
/* 0x154 */ OSThread schedulerThread; /* Main thread */
|
||||
/* 0x304 */ OSThread audioThread; /* Audio */
|
||||
/* 0x4B4 */ OSThread graphicsThread; /* Graphics */
|
||||
|
||||
/* client list */
|
||||
NUScClient *clientList;
|
||||
/* 0x664 */ NUScClient *clientList;
|
||||
|
||||
/* The graphics task being executed. */
|
||||
NUScTask *curGraphicsTask;
|
||||
NUScTask *curAudioTask;
|
||||
NUScTask *graphicsTaskSuspended;
|
||||
/* 0x668 */ NUScTask *curGraphicsTask;
|
||||
/* 0x66C */ NUScTask *curAudioTask;
|
||||
/* 0x670 */ NUScTask *graphicsTaskSuspended;
|
||||
|
||||
u32 retraceCount;
|
||||
u8 frameRate;
|
||||
u8 frameBufferNum; /* Number of frame buffers */
|
||||
/* 0x674 */ u32 retraceCount;
|
||||
/* 0x678 */ u8 frameRate;
|
||||
/* 0x679 */ u8 frameBufferNum; /* Number of frame buffers */
|
||||
|
||||
|
||||
} NUSched;
|
||||
} NUSched; // size = 0x67A
|
||||
|
||||
|
||||
/*--------------------------------------*/
|
||||
|
@ -346,8 +346,6 @@ void spr_load_npc_extra_anims(SpriteAnimData* header, u32* extraAnimList) {
|
||||
|
||||
SpriteComponent** spr_allocate_components(s32 count) {
|
||||
s32 listSize;
|
||||
void** heap;
|
||||
SpriteComponent **new_var;
|
||||
SpriteComponent** listStart;
|
||||
SpriteComponent* component;
|
||||
SpriteComponent** listPos;
|
||||
@ -361,10 +359,12 @@ SpriteComponent** spr_allocate_components(s32 count) {
|
||||
|
||||
if (spr_allocateBtlComponentsOnWorldHeap) {
|
||||
listStart = _heap_malloc(&heap_generalHead, totalSize);
|
||||
component = (SpriteComponent*) listPos = listStart;
|
||||
listPos = listStart;
|
||||
component = (SpriteComponent*) listPos;
|
||||
} else {
|
||||
listStart = _heap_malloc(&gSpriteHeapPtr, totalSize);
|
||||
component = (SpriteComponent*) listPos = listStart;
|
||||
listPos = listStart;
|
||||
component = (SpriteComponent*) listPos;
|
||||
}
|
||||
|
||||
component = (SpriteComponent*)((s32)(component) + (listSize / 4) * 4);
|
||||
|
@ -3,6 +3,7 @@
|
||||
extern u8 obfuscated_create_audio_system[];
|
||||
|
||||
#ifdef SHIFT
|
||||
void create_audio_system(void);
|
||||
void func_80200000(void) {
|
||||
create_audio_system();
|
||||
}
|
||||
|
@ -5,6 +5,7 @@
|
||||
extern u8 obfuscated_load_engine_data[];
|
||||
|
||||
#ifdef SHIFT
|
||||
void load_engine_data(void);
|
||||
void func_80200080(void) {
|
||||
load_engine_data();
|
||||
}
|
||||
|
@ -3648,7 +3648,7 @@ void func_80114B58(u32 romOffset, TextureHandle* handle, TextureHeader* header,
|
||||
handle->gfx = (Gfx*) mdl_nextTextureAddress;
|
||||
memcpy(&handle->header, header, sizeof(*header));
|
||||
func_801180E8(header, (Gfx**)&mdl_nextTextureAddress, handle->raster, handle->palette, handle->auxRaster, handle->auxPalette, 0, 0, 0, 0);
|
||||
gSPEndDisplayList(((Gfx*) mdl_nextTextureAddress)++);
|
||||
gSPEndDisplayList(((Gfx*)mdl_nextTextureAddress)++);
|
||||
}
|
||||
|
||||
void load_tile_header(ModelNodeProperty* propertyName, s32 romOffset, s32 size) {
|
||||
|
@ -25,7 +25,6 @@ extern NUDMABuffer* D_800A3BD4;
|
||||
extern NUDMABuffer nuAuDmaBufList[50];
|
||||
extern AuSynDriver auSynDriver;
|
||||
extern u64 rspbootUcodeBuffer[];
|
||||
extern OSMesgQueue D_800DA444;
|
||||
extern s32 AlNumFields;
|
||||
extern u64 n_aspMain_text_bin[];
|
||||
extern u64 n_aspMain_data_bin[];
|
||||
@ -132,7 +131,7 @@ void nuAuMgr(void* arg) {
|
||||
D_800A3520[cmdListIndex].msgQ = &auRtnMesgQ;
|
||||
D_800A3520[cmdListIndex].list.t.data_ptr = (u64*)cmdListBuf;
|
||||
D_800A3520[cmdListIndex].list.t.data_size = (cmdListAfter_ptr - cmdListBuf) * sizeof(Acmd);
|
||||
osSendMesg(&D_800DA444, &D_800A3520[cmdListIndex], OS_MESG_BLOCK);
|
||||
osSendMesg(&nusched.audioRequestMQ, &D_800A3520[cmdListIndex], OS_MESG_BLOCK);
|
||||
nuAuCleanDMABuffers();
|
||||
osRecvMesg(&auRtnMesgQ, NULL, 1);
|
||||
if (++bufferIndex == 3) {
|
||||
|
@ -115,7 +115,7 @@ extern StaticAnimatorNode* N(anim1)[];
|
||||
extern StaticAnimatorNode* N(AnimModel_MainHeadVine)[];
|
||||
extern StaticAnimatorNode* N(AnimModel_SideHeadVine)[];
|
||||
extern StaticAnimatorNode* N(AnimModel_ExtraVine)[];
|
||||
extern AnimScript N(anim1_8021A364)[];
|
||||
extern AnimScript N(anim1_8021A364);
|
||||
|
||||
extern s32 b_area_kzn2_lava_bud_idleAnimations_fiery[];
|
||||
extern s32 N(defenseTable_fiery)[];
|
||||
|
@ -16,7 +16,7 @@ extern Gfx D_090015D0_37EFA0[];
|
||||
extern Gfx D_09001648_37F018[];
|
||||
extern Gfx D_090016C0_37F090[];
|
||||
extern Gfx D_09001738_37F108[];
|
||||
extern Gfx D_090017B0_37F190[];
|
||||
extern Gfx D_090017B0_37F180[];
|
||||
|
||||
Gfx* D_E007C510[] = {
|
||||
D_09001378_37ED48, D_090013F0_37EDC0, D_09001468_37EE38,
|
||||
@ -95,19 +95,16 @@ void blast_render(EffectInstance* effect) {
|
||||
#ifdef NON_MATCHING
|
||||
void blast_appendGfx(void* effect) {
|
||||
Matrix4f sp18, sp58, sp98;
|
||||
Gfx* dlist = D_090017B0_37F190;
|
||||
BlastFXData* data = ((EffectInstance*)effect)->data.blast;
|
||||
s32 temp_f4;
|
||||
s32 alpha;
|
||||
f32 new_var;
|
||||
|
||||
new_var = (temp_f4 = data->unk_20);
|
||||
alpha = (new_var - ((s32) data->unk_20)) * 256.0f;
|
||||
Gfx* dlist = D_090017B0_37F180;
|
||||
s32 unk_20 = data->unk_20;
|
||||
f32 unk_20f = unk_20;
|
||||
s32 envAlpha = (unk_20f - unk_20) * 256.0f;
|
||||
|
||||
gDPPipeSync(gMasterGfxPos++);
|
||||
gSPSegment(gMasterGfxPos++, 0x09, VIRTUAL_TO_PHYSICAL(((EffectInstance*)effect)->graphics->data));
|
||||
gSPDisplayList(gMasterGfxPos++, D_09001300_37ECD0);
|
||||
gSPDisplayList(gMasterGfxPos++, D_E007C510[temp_f4]);
|
||||
gSPDisplayList(gMasterGfxPos++, D_E007C510[unk_20]);
|
||||
|
||||
shim_guTranslateF(sp18, data->pos.x, data->pos.y, data->pos.z);
|
||||
shim_guRotateF(sp58, -gCameras[gCurrentCameraID].currentYaw, 0.0f, 1.0f, 0.0f);
|
||||
@ -126,7 +123,7 @@ void blast_appendGfx(void* effect) {
|
||||
gDPSetPrimColor(gMasterGfxPos++, 0, 0, 255, 255, 128, 127);
|
||||
}
|
||||
|
||||
gDPSetEnvColor(gMasterGfxPos++, 255, 255, 139, alpha);
|
||||
gDPSetEnvColor(gMasterGfxPos++, 255, 255, 139, envAlpha);
|
||||
|
||||
gSPDisplayList(gMasterGfxPos++, dlist);
|
||||
gSPPopMatrix(gMasterGfxPos++, G_MTX_MODELVIEW);
|
||||
|
@ -17,8 +17,8 @@ extern Gfx D_09001570_37C340[];
|
||||
extern Gfx D_09001618_37C3E8[];
|
||||
extern Gfx D_090016C0_37C490[];
|
||||
|
||||
Gfx* D_E0078900[] = {
|
||||
D_09001400_37C1D0, D_090014B8_37C288, D_09001570_37C340, D_09001618_37C3E8, D_090016C0_37C490, D_09001570_37C340
|
||||
Gfx* D_E0078900[] = {
|
||||
D_09001400_37C1D0, D_090014B8_37C288, D_09001570_37C340, D_09001618_37C3E8, D_090016C0_37C490, D_09001570_37C340
|
||||
};
|
||||
|
||||
UnkBulbGlow D_E0078918[] = {
|
||||
@ -157,33 +157,27 @@ void bulb_glow_appendGfx(void* effect) {
|
||||
f32 sp18;
|
||||
f32 sp1C;
|
||||
s32 sp20;
|
||||
s32 sp24;
|
||||
s32 sp28;
|
||||
EffectInstance* effectTemp = effect;
|
||||
BulbGlowFXData* data = effectTemp->data.bulbGlow;
|
||||
Gfx* temp_a0_4;
|
||||
Gfx* temp_a1;
|
||||
Gfx* temp_a3;
|
||||
Gfx* temp_a3_2;
|
||||
Gfx* temp_v1;
|
||||
s32 sp30;
|
||||
BulbGlowFXData* data = ((EffectInstance*) effect)->data.bulbGlow;
|
||||
s32 unk_10;
|
||||
s32 unk_00;
|
||||
UnkBulbGlow* temp_s1;
|
||||
s32 temp_s3;
|
||||
s32 temp_s6;
|
||||
s32 i;
|
||||
s32 j;
|
||||
|
||||
f32 temp_f0;
|
||||
f32 temp_f4;
|
||||
s32 temp_a0_3;
|
||||
s32 temp_a2;
|
||||
s32 temp_a0_2;
|
||||
s32 temp_f6;
|
||||
s32 temp_lo;
|
||||
s32 temp_s0_2;
|
||||
s32 temp_s2;
|
||||
s32 temp_s2_2;
|
||||
s32 temp_s3;
|
||||
s32 temp_s6;
|
||||
s32 temp_s6_2;
|
||||
s32 temp_t0;
|
||||
s32 temp_t5;
|
||||
s32 var_s4;
|
||||
s32 var_t2;
|
||||
s32 var_t3;
|
||||
s32 var_t4;
|
||||
s32 var_t5;
|
||||
s32 var_t7;
|
||||
@ -192,44 +186,42 @@ void bulb_glow_appendGfx(void* effect) {
|
||||
u32 temp_t6;
|
||||
u8* temp_v0;
|
||||
|
||||
s32 j;
|
||||
|
||||
|
||||
var_s4 = data->unk_10;
|
||||
temp_s2 = data->unk_00;
|
||||
if (var_s4 > 127) {
|
||||
var_s4 = 127;
|
||||
unk_10 = data->unk_10;
|
||||
unk_00 = data->unk_00;
|
||||
if (unk_10 > 127) {
|
||||
unk_10 = 127;
|
||||
}
|
||||
|
||||
gDPPipeSync(gMasterGfxPos++);
|
||||
gSPSegment(gMasterGfxPos++, 0x09, VIRTUAL_TO_PHYSICAL(((EffectInstance*)effect)->graphics->data));
|
||||
|
||||
temp_s1 = &D_E0078918[temp_s2];
|
||||
temp_s1 = &D_E0078918[unk_00];
|
||||
temp_s6 = temp_s1->unk_10;
|
||||
temp_s3 = temp_s1->unk_14;
|
||||
|
||||
var_v1 = shim_func_8011CFBC(data->pos.x, data->pos.y);
|
||||
if (temp_s2 == 5) {
|
||||
var_v1 = shim_func_8011CFBC(data->pos.x, data->pos.y, data->pos.z, data->unk_1C, &sp18, &sp1C);
|
||||
if (unk_00 == 5) {
|
||||
var_v1 = 1;
|
||||
}
|
||||
if ((var_v1 != 0) && !(sp18 < 0.0f) && !(sp1C < 0.0f) && !(sp18 >= 320.0f) && !(sp1C >= 240.0f)) {
|
||||
gSPDisplayList(gMasterGfxPos++, D_E0078900[temp_s2]);
|
||||
u8 r, g, b;
|
||||
|
||||
temp_v0 = D_E00789AC[data->unk_20 * 3];
|
||||
temp_t0 = var_s4 * 2;
|
||||
temp_f0 = (f32) temp_s6;
|
||||
sp20 = (s32) (sp18 - temp_f0);
|
||||
temp_a0_3 = temp_s6 * 2;
|
||||
var_t7 = sp20 + temp_a0_3;
|
||||
temp_f6 = (s32) (sp1C - temp_f0);
|
||||
var_t4 = temp_f6 + temp_a0_3;
|
||||
gSPDisplayList(gMasterGfxPos++, D_E0078900[unk_00]);
|
||||
|
||||
gDPSetPrimColor(gMasterGfxPos++, 0, 0,
|
||||
(temp_v0[0] * temp_t0) / 255,
|
||||
(temp_v0[1] * temp_t0) / 255,
|
||||
(temp_v0[2] * temp_t0) / 255,
|
||||
127
|
||||
);
|
||||
temp_v0 = &D_E00789AC[data->unk_20 * 3];
|
||||
temp_t0 = unk_10 * 2;
|
||||
|
||||
r = temp_v0[0] * temp_t0 / 255;
|
||||
g = temp_v0[1] * temp_t0 / 255;
|
||||
b = temp_v0[2] * temp_t0 / 255;
|
||||
|
||||
gDPSetPrimColor(gMasterGfxPos++, 0, 0, r, g, b, 127);
|
||||
|
||||
sp20 = sp18 - temp_s6;
|
||||
var_t7 = sp20 + temp_s6 * 2;
|
||||
temp_f6 = sp1C - temp_s6;
|
||||
var_t4 = temp_f6 + temp_s6 * 2;
|
||||
|
||||
var_t5 = 0;
|
||||
if (sp20 < 0) {
|
||||
@ -239,69 +231,37 @@ void bulb_glow_appendGfx(void* effect) {
|
||||
if (temp_f6 < 0) {
|
||||
var_v1_2 = -temp_f6;
|
||||
}
|
||||
if (var_t7 > SCREEN_WIDTH) {
|
||||
var_t7 = SCREEN_WIDTH - 1;
|
||||
if (var_t7 > 320) {
|
||||
var_t7 = 319;
|
||||
}
|
||||
if (var_t4 > SCREEN_HEIGHT) {
|
||||
var_t4 = SCREEN_HEIGHT - 1;
|
||||
if (var_t4 > 240) {
|
||||
var_t4 = 239;
|
||||
}
|
||||
var_t3 = var_v1_2 / temp_s3;
|
||||
temp_lo = (s32) (var_t4 - temp_f6) / temp_s3;
|
||||
sp24 = temp_lo;
|
||||
if (var_t3 < temp_lo) {
|
||||
temp_s6_2 = sp20 + var_t5;
|
||||
sp28 = (var_t7 - temp_s6_2) * 2;
|
||||
var_t2 = (var_t3 * temp_s3) + temp_f6;
|
||||
loop_19:
|
||||
if ((var_t2 + temp_s3) < 0xF0) {
|
||||
temp_f4 = (f32) sp20;
|
||||
temp_t5 = ((temp_s6_2 * 4) & 0xFFF) << 0xC;
|
||||
temp_s2_2 = (((var_t7 - 1) * 4) & 0xFFF) << 0xC;
|
||||
temp_s0_2 = ((temp_s3 - 1) * 4) & 0xFFF;
|
||||
|
||||
temp_a3_2->words.w0 = ((((s32) (temp_f4 * temp_s1->unk_08) * 4) & 0xFFF) << 0xC) | ((((s32) ((f32) (temp_s1->unk_04 * 0x14) - ((f32) (var_t3 * temp_s1->unk_14) * temp_s1->unk_0C)) * 4) & 0xFFF) | 0xF2000000);
|
||||
temp_a3_2->words.w1 = ((((s32) ((temp_f4 * temp_s1->unk_08) + (f32) temp_s1->unk_00) * 4) & 0xFFF) << 0xC) | (((s32) ((f32) (temp_s1->unk_04 * 0x15) - ((f32) (var_t3 * temp_s1->unk_14) * temp_s1->unk_0C)) * 4) & 0xFFF);
|
||||
for (i = var_v1_2 / temp_s3; i < temp_lo; i++) {
|
||||
if ((i + 1) * temp_s3 + temp_f6 >= 240) {
|
||||
break;
|
||||
}
|
||||
|
||||
for (j = 0; j < 1; j++) {
|
||||
temp_a0_4->words.w0 = 0xFD10013F;
|
||||
temp_a0_4->words.w1 = (u32) (nuGfxCfb_ptr + (var_t2 * 0x280) + 0x80000000);
|
||||
gDPSetTileSize(gMasterGfxPos++, G_TX_RENDERTILE,
|
||||
(s32) (sp20 * temp_s1->unk_08) * 4,
|
||||
(s32) (temp_s1->unk_04 * 0x14 - i * temp_s1->unk_14 * temp_s1->unk_0C) * 4,
|
||||
(s32) (sp20 * temp_s1->unk_08 + temp_s1->unk_00) * 4,
|
||||
(s32) (temp_s1->unk_04 * 0x15 - i * temp_s1->unk_14 * temp_s1->unk_0C) * 4);
|
||||
|
||||
temp_a1->words.w0 = ((((s32) (sp28 + 7) >> 3) & 0x1FF) << 9) | 0xF5100100;
|
||||
temp_a1->words.w1 = 07020090
|
||||
|
||||
temp_a1->unk8 = E600000000000000
|
||||
|
||||
temp_a2 = var_t2 + temp_s3;
|
||||
|
||||
temp_a1->unk10 = temp_t5 | 0xF4000000;
|
||||
temp_a1->unk14 = (s32) (temp_s2_2 | (temp_s0_2 | 0x07000000));
|
||||
|
||||
temp_a1->unk18 = E700000000000000
|
||||
|
||||
temp_a1->unk20 = ((((s32) (sp28 + 7) >> 3) & 0x1FF) << 9) | 0xF5100100;
|
||||
temp_a1->unk24 = 0x01020090;
|
||||
|
||||
temp_a1->unk28 = (s32) (temp_t5 | 0xF2000000);
|
||||
temp_a1->unk2C = (s32) (temp_s2_2 | (temp_s0_2 | 0x01000000));
|
||||
|
||||
temp_a1->unk30 = (s32) ((((var_t7 * 4) & 0xFFF) << 0xC) | (((temp_a2 * 4) & 0xFFF) | 0xE4000000));
|
||||
temp_a1->unk34 = (s32) (temp_t5 | ((var_t2 * 4) & 0xFFF));
|
||||
|
||||
temp_a1->unk38 = E1000000
|
||||
temp_a1->unk3C = (s32) ((temp_s6_2 & 0x1FF) << 0x15);
|
||||
|
||||
temp_a1->unk40 = F100000004000400
|
||||
temp_a1->unk48 = E700000000000000
|
||||
}
|
||||
var_t3 += 1;
|
||||
var_t2 = temp_a2;
|
||||
if (var_t3 < sp24) {
|
||||
goto loop_19;
|
||||
}
|
||||
for (j = 0; j < 1; j++) {
|
||||
gDPLoadMultiTile(gMasterGfxPos++, VIRTUAL_TO_PHYSICAL(nuGfxCfb_ptr + (i * temp_s3 + temp_f6) * 0x280),
|
||||
0x0100, 1, G_IM_FMT_RGBA, G_IM_SIZ_16b, 320, 0, sp20 + var_t5, 0, var_t7 - 1, temp_s3 - 1,
|
||||
0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 9, 8, G_TX_NOLOD, G_TX_NOLOD);
|
||||
gSPTextureRectangle(gMasterGfxPos++, (sp20 + var_t5) * 4, (i * temp_s3 + temp_f6) * 4, var_t7 * 4, ((i + 1) * temp_s3 + temp_f6) * 4, G_TX_RENDERTILE, sp20 + var_t5, 0, 0x0400, 0x0400);
|
||||
gDPPipeSync(gMasterGfxPos++);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#else
|
||||
INCLUDE_ASM(s32, "effects/bulb_glow", bulb_glow_appendGfx);
|
||||
#endif
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
#include "effects/gfx/D_09001648_37F018.gfx.inc.c"
|
||||
#include "effects/gfx/D_090016C0_37F090.gfx.inc.c"
|
||||
#include "effects/gfx/D_09001738_37F108.gfx.inc.c"
|
||||
#include "effects/gfx/D_090017A0_37F180.gfx.inc.c"
|
||||
#include "effects/gfx/D_090017B0_37F180.gfx.inc.c"
|
||||
#include "effects/gfx/D_090017D0_37F1A0.gfx.inc.c"
|
||||
#include "effects/gfx/D_090018C0_37F290.gfx.inc.c"
|
||||
|
||||
|
@ -168,7 +168,6 @@ s32 ALT_load_entity_model(EntityModelScript* cmdList) {
|
||||
|
||||
void exec_entity_model_commandlist(s32 idx) {
|
||||
EntityModel* entityModel;
|
||||
void* temp_v0_2;
|
||||
|
||||
if (!gGameStatusPtr->isBattle || (idx & BATTLE_ENTITY_ID_MASK)) {
|
||||
idx &= ~BATTLE_ENTITY_ID_MASK;
|
||||
|
@ -282,7 +282,7 @@ void filemenu_yesno_handle_input(MenuPanel* menu) {
|
||||
clear_player_data();
|
||||
clear_saved_variables();
|
||||
gGameStatusPtr->areaID = 0;
|
||||
gGameStatusPtr->mapID = 0xB;
|
||||
gGameStatusPtr->mapID = 11;
|
||||
gGameStatusPtr->entryID = 0;
|
||||
evt_set_variable(NULL, GB_StoryProgress, STORY_INTRO);
|
||||
|
||||
|
@ -23,12 +23,21 @@ typedef union {
|
||||
#define __ll_lowpart(t) ((USItype) (t) % __ll_B)
|
||||
#define __ll_highpart(t) ((USItype) (t) / __ll_B)
|
||||
|
||||
#ifdef SHIFT
|
||||
#define umul_ppmm(w1, w0, u, v) \
|
||||
do { \
|
||||
UDItype __x = (UDItype) (USItype) (u) * (USItype) (v); \
|
||||
(w1) = (USItype) (__x >> 32); \
|
||||
(w0) = (USItype) (__x); \
|
||||
} while (0)
|
||||
#else
|
||||
#define umul_ppmm(w1, w0, u, v) \
|
||||
__asm__ ("multu %2,%3" \
|
||||
: "=l" ((USItype) (w0)), \
|
||||
"=h" ((USItype) (w1)) \
|
||||
: "d" ((USItype) (u)), \
|
||||
"d" ((USItype) (v)))
|
||||
#endif
|
||||
|
||||
#define sub_ddmmss(sh, sl, ah, al, bh, bl) \
|
||||
do { \
|
||||
|
@ -1356,6 +1356,7 @@ void dma_load_msg(u32 msgID, void* dest) {
|
||||
dma_copy(MSG_ROM_START + offset[0], MSG_ROM_START + offset[1], dest);
|
||||
}
|
||||
#else
|
||||
void dma_load_msg(u32 msgID, void* dest);
|
||||
INCLUDE_ASM_SHIFT(void, "msg", dma_load_msg);
|
||||
#endif
|
||||
|
||||
|
@ -16,7 +16,6 @@ extern NUScTask nuGfxTask[NU_GFX_TASK_NUM];
|
||||
extern s32 D_800DA040;
|
||||
extern s32 D_800B91D0;
|
||||
extern u8 rspbootUcodeBuffer[];
|
||||
extern OSMesgQueue D_800DA47C;
|
||||
|
||||
void nuGfxTaskMgr(void* data) {
|
||||
NUScTask* task;
|
||||
@ -116,6 +115,6 @@ void nuGfxTaskStart(Gfx* gfxList_ptr, u32 gfxListSize, u32 ucode, u32 flag) {
|
||||
nuGfxTaskSpool++;
|
||||
osSetIntMask(mask);
|
||||
osWritebackDCacheAll();
|
||||
osSendMesg(&D_800DA47C, (void*) nuGfxTask_ptr, OS_MESG_BLOCK);
|
||||
osSendMesg(&nusched.graphicsRequestMQ, (void*) nuGfxTask_ptr, OS_MESG_BLOCK);
|
||||
nuGfxTask_ptr = nuGfxTask_ptr->next;
|
||||
}
|
||||
|
@ -131,7 +131,8 @@ BSS s32 D_8024F448[10];
|
||||
BSS s32 D_8024F470_hos_bss[10];
|
||||
BSS s32 D_8024F498[10];
|
||||
BSS s32 hos_05_D_8024F4C0[10];
|
||||
BSS s32 D_8024F4E8[34];
|
||||
BSS s32 D_8024F4E8[10];
|
||||
BSS s32 D_8024F510[24];
|
||||
|
||||
ApiStatus func_80240880_A2AAC0(Evt* script, s32 isInitialCall) {
|
||||
Bytecode* args = script->ptrReadPos;
|
||||
|
@ -78,7 +78,7 @@ ApiStatus func_802403A0_D36690(Evt* script, s32 isInitialCall) {
|
||||
s32 len = 92;
|
||||
s32 i;
|
||||
|
||||
script->varTable[0] = (s32) array = heap_malloc(92 * sizeof(*array));
|
||||
script->varTablePtr[0] = array = heap_malloc(92 * sizeof(*array));
|
||||
for (i = 0; i < 91; i++) {
|
||||
array[i] = 128 + i;
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ EvtScript N(EVS_NpcHit_Magikoopa) = {
|
||||
EVT_CASE_OR_EQ(ENCOUNTER_TRIGGER_HAMMER)
|
||||
EVT_CASE_OR_EQ(ENCOUNTER_TRIGGER_PARTNER)
|
||||
EVT_CALL(GetSelfAnimationFromTable, 7, LVar0)
|
||||
EVT_EXEC_WAIT(0x800936DC)
|
||||
EVT_EXEC_WAIT(EVS_NpcHitRecoil)
|
||||
EVT_END_CASE_GROUP
|
||||
EVT_END_SWITCH
|
||||
EVT_RETURN
|
||||
|
@ -490,7 +490,7 @@ MapConfig hos_maps[] = {
|
||||
{ MAP(hos_02), .bgName = "hos_bg" },
|
||||
{ MAP(hos_03), .bgName = "hos_bg" },
|
||||
{ MAP_UNSPLIT(hos_04, 0x80240EE0), .bgName = "hos_bg" },
|
||||
{ MAP_UNSPLIT(hos_05, 0x80245910), .bgName = "hos_bg", .songVariation = 1, .sfxReverb = 2 },
|
||||
{ MAP(hos_05), .bgName = "hos_bg", .songVariation = 1, .sfxReverb = 2 },
|
||||
{ MAP_UNSPLIT(hos_06, 0x80242570), .bgName = "hos_bg" },
|
||||
{ MAP_UNSPLIT(hos_10, 0x80240CE0), .bgName = "hos_bg", .init = (MapInit)0x80240000 },
|
||||
{ MAP_UNSPLIT(hos_20, 0x80240390), .bgName = "hos_bg" },
|
||||
|
@ -53,6 +53,7 @@ def write_ninja_rules(ninja: ninja_syntax.Writer, cpp: str, cppflags: str, extra
|
||||
|
||||
cross = "mips-linux-gnu-"
|
||||
cc = f"{BUILD_TOOLS}/cc/gcc/gcc"
|
||||
cc_modern = f"mips-linux-gnu-gcc"
|
||||
cc_ido = f"{BUILD_TOOLS}/cc/ido5.3/cc"
|
||||
cc_272_dir = f"{BUILD_TOOLS}/cc/gcc2.7.2/"
|
||||
cc_272 = f"{cc_272_dir}/gcc"
|
||||
@ -67,6 +68,7 @@ def write_ninja_rules(ninja: ninja_syntax.Writer, cpp: str, cppflags: str, extra
|
||||
"-DVERSION=$version -DF3DEX_GBI_2 -D_MIPS_SZLONG=32 -nostdinc"
|
||||
|
||||
cflags = f"-c -G0 -O2 -gdwarf-2 -x c -B {BUILD_TOOLS}/cc/gcc/ {extra_cflags}"
|
||||
cflags_modern = f"-c -G0 -fno-builtin-bcopy -fno-tree-loop-distribute-patterns -funsigned-char -mabi=32 -mgp32 -mfp32 -mno-gpopt -mabi=32 -mfix4300 -fno-toplevel-reorder -mno-abicalls -fno-pic -fno-exceptions -fno-stack-protector -fno-zero-initialized-in-bss -O2 -march=vr4300 -w -gdwarf-2 -x c {extra_cflags}"
|
||||
cflags_272 = f"-c -G0 -mgp32 -mfp32 -mips3 {extra_cflags}"
|
||||
cflags_272 = cflags_272.replace("-ggdb3","-g1")
|
||||
|
||||
@ -102,6 +104,13 @@ def write_ninja_rules(ninja: ninja_syntax.Writer, cpp: str, cppflags: str, extra
|
||||
deps="gcc",
|
||||
)
|
||||
|
||||
ninja.rule("cc_modern",
|
||||
description="gcc $in",
|
||||
command=f"bash -o pipefail -c '{cpp} {CPPFLAGS} {cppflags} $cppflags -MD -MF $out.d $in -o - | {iconv} | {ccache}{cc_modern} {cflags_modern} $cflags - -o $out'",
|
||||
depfile="$out.d",
|
||||
deps="gcc",
|
||||
)
|
||||
|
||||
ninja.rule("cc_ido",
|
||||
description="ido $in",
|
||||
command=f"{ccache}{cc_ido} -w {CPPFLAGS_COMMON} {cppflags} $cppflags -c -mips1 -O0 -G0 -non_shared -Xfullwarn -Xcpluscomm -o $out $in",
|
||||
@ -342,7 +351,7 @@ class Configure:
|
||||
|
||||
if task == "yay0":
|
||||
implicit.append(YAY0_COMPRESS_TOOL)
|
||||
elif task in ["cc", "cxx"]:
|
||||
elif task in ["cc", "cxx", "cc_modern"]:
|
||||
order_only.append("generated_headers_" + self.version)
|
||||
|
||||
ninja.build(
|
||||
@ -384,6 +393,10 @@ class Configure:
|
||||
if entry.src_paths[0].suffixes[-1] == ".cpp":
|
||||
task = "cxx"
|
||||
|
||||
top_lev_name = seg.get_most_parent().name
|
||||
# if "evt" in top_lev_name:
|
||||
# task = "cc_modern"
|
||||
|
||||
if seg.name.endswith("osFlash"):
|
||||
task = "cc_ido"
|
||||
elif "gcc_272" in cflags:
|
||||
|
@ -1001,31 +1001,13 @@ dlabel D_800DA040
|
||||
.space 0x00000400
|
||||
|
||||
dlabel nusched
|
||||
.space 4
|
||||
|
||||
dlabel D_800DA444
|
||||
.space 0x00000038
|
||||
|
||||
dlabel D_800DA47C
|
||||
.space 0x00000038
|
||||
|
||||
dlabel D_800DA4B4
|
||||
.space 0x000000a8
|
||||
|
||||
dlabel D_800DA55C
|
||||
.space 0x0000054c
|
||||
|
||||
dlabel D_800DAAA8
|
||||
.space 0x00000010
|
||||
.space 0x678
|
||||
|
||||
dlabel AlNumFields
|
||||
.space 4
|
||||
|
||||
dlabel D_800DAABC
|
||||
.space 1
|
||||
|
||||
dlabel D_800DAABD
|
||||
.space 3
|
||||
.space 4
|
||||
|
||||
dlabel __osEepromTimerQ
|
||||
.space 0x00000018
|
||||
|
@ -3,7 +3,13 @@
|
||||
.section .data
|
||||
|
||||
dlabel D_80245860_A2FAA0
|
||||
.word 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x442F0000, 0x00000000, 0x43610000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x43B10000, 0x00000000, 0x43930000, 0x42EA0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80245B34, D_80245860_A2FAA0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190021
|
||||
.word 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x442F0000, 0x00000000, 0x43610000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x42AA0000, 0x43C30000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x43B10000, 0x00000000, 0x43930000, 0x42EA0000
|
||||
|
||||
dlabel hos_05_settings
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80245B34_A2FD74, D_80245860_A2FAA0, 0x0000000B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190021
|
||||
|
||||
dlabel D_80245950_A2FB90
|
||||
.word 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000095, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x000007EE, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000095, 0x00000001, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000001, 0x00000008, 0x00000043, 0x00000002, PlaySound, 0x80000065, 0x00000016, 0x00000001, 0x00000003, 0x00000044, 0x00000001, D_80245950_A2FB90, 0x00000016, 0x00000001, 0x00000004, 0x0000001C, 0x00000000, 0x0000000A, 0x00000002, 0xF9718935, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000063, 0x00000000, 0x00000008, 0x00000013, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x80000065, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000
|
||||
.word 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000095, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x000007EE, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000095, 0x00000001, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_802459B0_A2FBF0
|
||||
.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000001, 0x00000008, 0x00000043, 0x00000002, PlaySound, 0x80000065, 0x00000016, 0x00000001, 0x00000003, 0x00000044, 0x00000001, D_80245950_A2FB90, 0x00000016, 0x00000001, 0x00000004, 0x0000001C, 0x00000000, 0x0000000A, 0x00000002, 0xF9718935, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000063, 0x00000000, 0x00000008, 0x00000013, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x80000065, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000
|
||||
|
@ -6,13 +6,16 @@ dlabel D_80245A90_A2FCD0
|
||||
.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x8024F1C0, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_80245AEC_A2FD2C
|
||||
.word 0x00000047, 0x00000005, D_80245A90_A2FCD0, 0x00080000, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, 0x8024E828, 0x00000080, 0x0000000D, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x0000001D, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x802494C0, 0x00000012, 0x00000000, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x802494E4, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_80245E0C_A3004C, 0x00000046, 0x00000001, 0x802459B0, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000001, 0x7FFFFE00, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8480, 0x00000024, 0x00000002, 0xFE363C80, D_80245AEC_A2FD2C, 0x00000044, 0x00000001, EnterWalk, 0x00000016, 0x00000001, 0x00000001, 0x00000056, 0x00000000, 0x00000046, 0x00000001, 0x8024ED24, 0x00000044, 0x00000001, D_80245AEC_A2FD2C, 0x00000057, 0x00000000, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, 0x8024ACC0, 0x00000023, 0x00000000, 0x00000044, 0x00000001, 0x8024DBDC, 0x00000043, 0x00000003, EnableGroup, 0x00000090, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000092, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000021, 0x00000002, 0x00000000, 0x00000001, 0x00000044, 0x00000001, 0x8024E00C, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
.word 0x00000047, 0x00000005, D_80245A90_A2FCD0, 0x00080000, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_8024E828_A38A68, 0x00000080, 0x0000000D, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_80245B34_A2FD74
|
||||
.word 0x00000024, 0x00000002, 0xF5DE0329, 0x0000001D, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, D_802494C0_A33600, 0x00000012, 0x00000000, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, D_802494E4_A33624, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_80245E0C_A3004C, 0x00000046, 0x00000001, D_802459B0_A2FBF0, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000001, 0x7FFFFE00, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8480, 0x00000024, 0x00000002, 0xFE363C80, D_80245AEC_A2FD2C, 0x00000044, 0x00000001, EnterWalk, 0x00000016, 0x00000001, 0x00000001, 0x00000056, 0x00000000, 0x00000046, 0x00000001, D_8024ED24_A38F64, 0x00000044, 0x00000001, D_80245AEC_A2FD2C, 0x00000057, 0x00000000, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, 0x8024ACC0, 0x00000023, 0x00000000, 0x00000044, 0x00000001, D_8024DBDC_A37E1C, 0x00000043, 0x00000003, EnableGroup, 0x00000090, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000092, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000021, 0x00000002, 0x00000000, 0x00000001, 0x00000044, 0x00000001, D_8024E00C_A3824C, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_80245D70_A2FFB0
|
||||
.word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, hos_05_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, hos_05_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_80245E0C_A3004C
|
||||
.word 0x00000044, 0x00000001, 0x8024DF28, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000064, 0x00000024, 0x00000002, 0xFE363C82, 0xFFFFFFB0, 0x00000024, 0x00000002, 0xFE363C83, 0xFFFFFFCE, 0x00000024, 0x00000002, 0xFE363C84, 0x00000078, 0x00000024, 0x00000002, 0xFE363C85, 0x00000001, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80245D70_A2FFB0, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x00000019, 0x00000001, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x0000000C, 0x00000024, 0x00000002, 0xFE363C81, 0xFFFFFFB0, 0x00000024, 0x00000002, 0xFE363C82, 0x0000008C, 0x00000024, 0x00000002, 0xFE363C83, 0x00000050, 0x00000024, 0x00000002, 0xFE363C84, 0xFFFFFF9C, 0x00000024, 0x00000002, 0xFE363C85, 0x00000001, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80245D70_A2FFB0, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000000F, 0x0000000C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
.word 0x00000044, 0x00000001, D_8024DF28_A38168, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000064, 0x00000024, 0x00000002, 0xFE363C82, 0xFFFFFFB0, 0x00000024, 0x00000002, 0xFE363C83, 0xFFFFFFCE, 0x00000024, 0x00000002, 0xFE363C84, 0x00000078, 0x00000024, 0x00000002, 0xFE363C85, 0x00000001, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80245D70_A2FFB0, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x00000019, 0x00000001, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x0000000C, 0x00000024, 0x00000002, 0xFE363C81, 0xFFFFFFB0, 0x00000024, 0x00000002, 0xFE363C82, 0x0000008C, 0x00000024, 0x00000002, 0xFE363C83, 0x00000050, 0x00000024, 0x00000002, 0xFE363C84, 0xFFFFFF9C, 0x00000024, 0x00000002, 0xFE363C85, 0x00000001, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80245D70_A2FFB0, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000000F, 0x0000000C, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
||||
dlabel D_80246028_A30268
|
||||
.word 0x00000043, 0x00000001, func_80240690_A2A8D0, 0x00000003, 0x00000001, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8B, 0xFE363C8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xFE363C8A, 0x0000002C, 0x00000002, 0xFE363C83, 0xFE363C8B, 0x0000002C, 0x00000002, 0xFE363C84, 0xFE363C8C, 0x00000043, 0x00000005, TranslateModel, 0xFE363C80, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000006, 0xFE363C82, 0x00000029, 0x00000002, 0xFE363C86, 0xFE363C86, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000007, 0xFE363C84, 0x00000029, 0x00000002, 0xFE363C87, 0xFE363C87, 0x00000027, 0x00000002, 0xFE363C86, 0xFE363C87, 0x0000000C, 0x00000002, 0xFE363C86, 0x00002710, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000005, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C85, 0x00000088, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000005, 0xFE363C8B, 0x0000000C, 0x00000002, 0xFE363C85, 0x00000000, 0x0000002E, 0x00000002, 0xFE363C8B, 0xF24A7680, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000005, 0xFE363C82, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000006, 0xFE363C83, 0x00000043, 0x00000003, func_80240634_A2A874, 0x00000007, 0xFE363C84, 0x0000000C, 0x00000002, 0xFE363C86, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C86, 0x0000012C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C85, 0xFFFFFED4, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C85, 0x0000012C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C87, 0xFFFFFED4, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C87, 0x00000258, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -41,8 +41,8 @@ glabel blast_appendGfx
|
||||
/* 37D714 E007C284 3C06DE00 */ lui $a2, 0xde00
|
||||
/* 37D718 E007C288 AE820000 */ sw $v0, ($s4)
|
||||
/* 37D71C E007C28C 8CA5001C */ lw $a1, 0x1c($a1)
|
||||
/* 37D720 E007C290 3C020900 */ lui $v0, 0x900
|
||||
/* 37D724 E007C294 24421300 */ addiu $v0, $v0, 0x1300
|
||||
/* 37D720 E007C290 3C020900 */ lui $v0, %hi(D_09001300_37ECD0)
|
||||
/* 37D724 E007C294 24421300 */ addiu $v0, $v0, %lo(D_09001300_37ECD0)
|
||||
/* 37D728 E007C298 AC62000C */ sw $v0, 0xc($v1)
|
||||
/* 37D72C E007C29C 3C028000 */ lui $v0, 0x8000
|
||||
/* 37D730 E007C2A0 AC660008 */ sw $a2, 8($v1)
|
||||
@ -180,8 +180,8 @@ glabel blast_appendGfx
|
||||
/* 37D938 E007C4A8 ACA20000 */ sw $v0, ($a1)
|
||||
/* 37D93C E007C4AC 3C02DE00 */ lui $v0, 0xde00
|
||||
/* 37D940 E007C4B0 AC820000 */ sw $v0, ($a0)
|
||||
/* 37D944 E007C4B4 3C020900 */ lui $v0, 0x900
|
||||
/* 37D948 E007C4B8 244217B0 */ addiu $v0, $v0, 0x17b0
|
||||
/* 37D944 E007C4B4 3C020900 */ lui $v0, %hi(D_090017B0_37F180)
|
||||
/* 37D948 E007C4B8 244217B0 */ addiu $v0, $v0, %lo(D_090017B0_37F180)
|
||||
/* 37D94C E007C4BC AC820004 */ sw $v0, 4($a0)
|
||||
/* 37D950 E007C4C0 24820010 */ addiu $v0, $a0, 0x10
|
||||
/* 37D954 E007C4C4 ACA20000 */ sw $v0, ($a1)
|
||||
|
@ -148,7 +148,7 @@ glabel au_engine_init
|
||||
/* 2E488 80053088 0000282D */ daddu $a1, $zero, $zero
|
||||
/* 2E48C 8005308C 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 2E490 80053090 8E850004 */ lw $a1, 4($s4)
|
||||
/* 2E494 80053094 0C015C89 */ jal au_pvoice_set_filter_wavetable
|
||||
/* 2E494 80053094 0C015C89 */ jal au_syn_set_wavetable
|
||||
/* 2E498 80053098 26730001 */ addiu $s3, $s3, 1
|
||||
/* 2E49C 8005309C 02911021 */ addu $v0, $s4, $s1
|
||||
/* 2E4A0 800530A0 AC400000 */ sw $zero, ($v0)
|
||||
|
@ -4263,7 +4263,7 @@ segments:
|
||||
- [0x37F018, gfx, D_09001648_37F018]
|
||||
- [0x37F090, gfx, D_090016C0_37F090]
|
||||
- [0x37F108, gfx, D_09001738_37F108]
|
||||
- [0x37F180, gfx, D_090017A0_37F180]
|
||||
- [0x37F180, gfx, D_090017B0_37F180]
|
||||
- [0x37F1A0, gfx, D_090017D0_37F1A0]
|
||||
- [0x37F290, gfx, D_090018C0_37F290]
|
||||
- [0x37F2B0, vtx, D_090018E0_37F2B0]
|
||||
|
@ -4113,16 +4113,10 @@ D_800DA040 = 0x800DA040; // type:data rom:0xB5440
|
||||
animator_update_model_transforms = 0x8011F058; // type:func rom:0xB5758
|
||||
animator_node_update_model_transform = 0x8011F118; // type:func rom:0xB5818
|
||||
nusched = 0x800DA440; // rom:0xB5840
|
||||
D_800DA444 = 0x800DA444; // type:data rom:0xB5844
|
||||
D_800DA47C = 0x800DA47C; // type:data rom:0xB587C
|
||||
D_800DA4B4 = 0x800DA4B4; // type:data rom:0xB58B4
|
||||
D_800DA55C = 0x800DA55C; // type:data rom:0xB595C
|
||||
render_animated_model = 0x8011F304; // type:func rom:0xB5A04
|
||||
render_animated_model_with_vertices = 0x8011F3E8; // type:func rom:0xB5AE8
|
||||
appendGfx_animator = 0x8011F4D4; // type:func rom:0xB5BD4
|
||||
D_800DAAA8 = 0x800DAAA8; // type:data rom:0xB5EA8
|
||||
AlNumFields = 0x800DAAB8; // type:data rom:0xB5EB8
|
||||
D_800DAABD = 0x800DAABD; // type:data rom:0xB5EBD
|
||||
D_800DAAC0 = 0x800DAAC0; // type:data rom:0xB5EC0
|
||||
nuContPfs = 0x800DAAD8; // rom:0xB5ED8
|
||||
nuSiMesgQ = 0x800DAC78; // rom:0xB6078
|
||||
|
Loading…
Reference in New Issue
Block a user