31.7083%
@ -29,6 +29,8 @@ void func_806DF5A0(s16 *arg0, s16 arg1, s16 arg2, s16 arg3);
|
||||
Actor *func_807270C0(s16 spawn_trigger, u16 arg1);
|
||||
Actor *func_807271F4(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s16 arg6);
|
||||
|
||||
Gfx *func_8068C5A8(Gfx *, u16, s32, s32, s32, s32, s32, s32, f32, f32, s32, f32);
|
||||
|
||||
// TODO: What do the params mean?
|
||||
void playCutscene(Actor*, s16, s32);
|
||||
void playSong(s32, f32);
|
||||
|
@ -944,7 +944,8 @@ typedef struct player_additional_actor_data {
|
||||
f32 unk1E0; // Used
|
||||
s32 unk1E4;
|
||||
s32 unk1E8;
|
||||
s16 unk1EC;
|
||||
u8 unk1EC;
|
||||
u8 unk1ED;
|
||||
s16 unk1EE; // Used
|
||||
s32 unk1F0; // Used, bitfield // TODO: Proper bitfield syntax
|
||||
s32 unk1F4;
|
||||
|
@ -42,7 +42,7 @@ us,.code,func_80029E54,444,no
|
||||
us,.code,func_80026690,688,no
|
||||
us,.code,func_800254B0,396,no
|
||||
us,.code,func_8002D6F8,240,yes
|
||||
us,.code,func_800252A0,324,no
|
||||
us,.code,func_800252A0,324,yes
|
||||
us,.code,func_80027F14,1452,no
|
||||
us,.code,func_8002A010,904,no
|
||||
us,.code,func_80027548,688,no
|
||||
|
|
@ -2485,7 +2485,7 @@ us,.code,func_806BA130,272,yes
|
||||
us,.code,func_80687CC8,128,yes
|
||||
us,.code,func_8070CD44,72,yes
|
||||
us,.code,func_80732420,36,yes
|
||||
us,.code,func_806B76B0,384,no
|
||||
us,.code,func_806B76B0,384,yes
|
||||
us,.code,func_806ED5C0,240,yes
|
||||
us,.code,func_8067E784,4932,no
|
||||
us,.code,func_80689710,224,yes
|
||||
@ -2953,7 +2953,7 @@ us,.code,func_8063643C,12,yes
|
||||
us,.code,func_80600674,732,no
|
||||
us,.code,func_806CC970,412,no
|
||||
us,.code,func_807300BC,844,no
|
||||
us,.code,func_806FF628,308,no
|
||||
us,.code,func_806FF628,308,yes
|
||||
us,.code,func_806960A4,1232,no
|
||||
us,.code,func_806DD874,572,yes
|
||||
us,.code,func_80611688,8,yes
|
||||
@ -2968,7 +2968,7 @@ us,.code,func_80605380,400,no
|
||||
us,.code,func_8067BA7C,492,no
|
||||
us,.code,func_80671F54,480,no
|
||||
us,.code,func_80608DA8,920,no
|
||||
us,.code,func_8069F904,316,no
|
||||
us,.code,func_8069F904,316,yes
|
||||
us,.code,func_807232B8,52,yes
|
||||
us,.code,func_8073A488,144,no
|
||||
us,.code,func_8070E548,520,no
|
||||
|
|
@ -73,7 +73,7 @@ us,.code,func_8002F36C,180,yes
|
||||
us,.code,func_8002D0FC,76,yes
|
||||
us,.code,func_8002B180,920,no
|
||||
us,.code,func_8002B610,184,yes
|
||||
us,.code,func_8002C63C,304,no
|
||||
us,.code,func_8002C63C,304,yes
|
||||
us,.code,func_80026050,72,yes
|
||||
us,.code,func_800261E0,372,yes
|
||||
us,.code,func_8002DCF0,128,yes
|
||||
|
|
@ -2485,7 +2485,7 @@ us,.code,func_806BA130,272,yes
|
||||
us,.code,func_80687CC8,128,yes
|
||||
us,.code,func_8070CD44,72,yes
|
||||
us,.code,func_80732420,36,yes
|
||||
us,.code,func_806B76B0,384,no
|
||||
us,.code,func_806B76B0,384,yes
|
||||
us,.code,func_806ED5C0,240,yes
|
||||
us,.code,func_8067E784,4932,no
|
||||
us,.code,func_80689710,224,yes
|
||||
@ -2953,7 +2953,7 @@ us,.code,func_8063643C,12,yes
|
||||
us,.code,func_80600674,732,no
|
||||
us,.code,func_806CC970,412,no
|
||||
us,.code,func_807300BC,844,no
|
||||
us,.code,func_806FF628,308,no
|
||||
us,.code,func_806FF628,308,yes
|
||||
us,.code,func_806960A4,1232,no
|
||||
us,.code,func_806DD874,572,yes
|
||||
us,.code,func_80611688,8,yes
|
||||
@ -2968,7 +2968,7 @@ us,.code,func_80605380,400,no
|
||||
us,.code,func_8067BA7C,492,no
|
||||
us,.code,func_80671F54,480,no
|
||||
us,.code,func_80608DA8,920,no
|
||||
us,.code,func_8069F904,316,no
|
||||
us,.code,func_8069F904,316,yes
|
||||
us,.code,func_807232B8,52,yes
|
||||
us,.code,func_8073A488,144,no
|
||||
us,.code,func_8070E548,520,no
|
||||
@ -3532,7 +3532,7 @@ us,.code,func_8002F36C,180,yes
|
||||
us,.code,func_8002D0FC,76,yes
|
||||
us,.code,func_8002B180,920,no
|
||||
us,.code,func_8002B610,184,yes
|
||||
us,.code,func_8002C63C,304,no
|
||||
us,.code,func_8002C63C,304,yes
|
||||
us,.code,func_80026050,72,yes
|
||||
us,.code,func_800261E0,372,yes
|
||||
us,.code,func_8002DCF0,128,yes
|
||||
@ -3615,7 +3615,7 @@ us,.code,func_80029E54,444,no
|
||||
us,.code,func_80026690,688,no
|
||||
us,.code,func_800254B0,396,no
|
||||
us,.code,func_8002D6F8,240,yes
|
||||
us,.code,func_800252A0,324,no
|
||||
us,.code,func_800252A0,324,yes
|
||||
us,.code,func_80027F14,1452,no
|
||||
us,.code,func_8002A010,904,no
|
||||
us,.code,func_80027548,688,no
|
||||
|
|
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h45v20H0z"/>
|
||||
<path fill="#c02f00" d="M45 0h67v20H45z"/>
|
||||
<path fill="#c03300" d="M45 0h67v20H45z"/>
|
||||
<path fill="url(#b)" d="M0 0h112v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="22.5" y="14">bonus</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="79.5" y="15" fill="#010101" fill-opacity=".3">12.3257%</text>
|
||||
<text x="78.5" y="14">12.3257%</text>
|
||||
<text x="79.5" y="15" fill="#010101" fill-opacity=".3">13.1563%</text>
|
||||
<text x="78.5" y="14">13.1563%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h77v20H0z"/>
|
||||
<path fill="#c07a00" d="M77 0h67v20H77z"/>
|
||||
<path fill="#c07b00" d="M77 0h67v20H77z"/>
|
||||
<path fill="url(#b)" d="M0 0h144v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="38.5" y="14">global_asm</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">31.8863%</text>
|
||||
<text x="110.5" y="14">31.8863%</text>
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">31.9682%</text>
|
||||
<text x="110.5" y="14">31.9682%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h37v20H0z"/>
|
||||
<path fill="#c05d00" d="M37 0h67v20H37z"/>
|
||||
<path fill="#c05f00" d="M37 0h67v20H37z"/>
|
||||
<path fill="url(#b)" d="M0 0h104v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="18.5" y="14">race</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="71.5" y="15" fill="#010101" fill-opacity=".3">24.1564%</text>
|
||||
<text x="70.5" y="14">24.1564%</text>
|
||||
<text x="71.5" y="15" fill="#010101" fill-opacity=".3">24.7912%</text>
|
||||
<text x="70.5" y="14">24.7912%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h132v20H0z"/>
|
||||
<path fill="#c07900" d="M132 0h67v20H132z"/>
|
||||
<path fill="#c07a00" d="M132 0h67v20H132z"/>
|
||||
<path fill="url(#b)" d="M0 0h199v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="66.0" y="14">Donkey Kong 64 (US)</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">31.6090%</text>
|
||||
<text x="165.5" y="14">31.6090%</text>
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">31.7083%</text>
|
||||
<text x="165.5" y="14">31.7083%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -7,8 +7,34 @@ void func_8061C464(s32, Actor*, s32, s32, s32, s32, s32, s32, s32, s32, f32);
|
||||
|
||||
extern f32 D_8002DCB8;
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/bonus/code_12A0/func_800252A0.s")
|
||||
void *func_8068DC54(s32, s32, s32, void *, s32, void *);
|
||||
s32 func_806FE078(void *, u8, s32, f32, f32, f32, f32); // extern
|
||||
|
||||
extern Gfx D_01000118;
|
||||
extern Mtx D_02000080;
|
||||
extern Mtx D_02000180;
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x14 - 0x0];
|
||||
u8 unk14;
|
||||
u8 unk15;
|
||||
s16 unk16;
|
||||
u8 unk18;
|
||||
u8 unk19;
|
||||
} AAD_800252A0;
|
||||
|
||||
void func_800252A0(Gfx *dl, Actor *arg1) {
|
||||
AAD_800252A0 *aaD;
|
||||
aaD = arg1->additional_actor_data;
|
||||
gDPPipeSync(dl++);
|
||||
gDPSetPrimColor(dl++, 0, 0, 0xC8, 0xC8, 0xC8, 0xFF);
|
||||
gDPSetCombineMode(dl++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||
gDPSetRenderMode(dl++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
gSPDisplayList(dl++, &D_01000118);
|
||||
gSPMatrix(dl++, &D_02000080, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
gSPMatrix(dl++, &D_02000180, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
func_8068DC54(func_806FE078(dl, aaD->unk19, 8, 30.0f, 36.0f, 0.0f, 1.5f), 0x26, 0x32, &aaD->unk14, aaD->unk16, &aaD->unk18);
|
||||
}
|
||||
|
||||
Actor* func_800253E4(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
BaaD2 *tmp;
|
||||
|
@ -140,7 +140,6 @@ void func_806FDF54(f32 *arg0, f32 *arg1) {
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1025E0/func_806FEDB0.s")
|
||||
|
||||
s32 func_8068C5A8(Gfx *, s32, s32, s32, s32, s32, s32, s32, f32, f32, s32, f32);
|
||||
extern f32 D_8075DE70;
|
||||
Gfx *func_806FEDB0(s32, u8);
|
||||
|
||||
@ -195,8 +194,20 @@ void func_806FF32C(s32 arg0, Actor *arg1) {
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1025E0/func_806FF358.s")
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1025E0/func_806FF628.s")
|
||||
Gfx *func_806FF628(Gfx *dl, s32 arg1) {
|
||||
PlayerAdditionalActorData *PaaD;
|
||||
|
||||
PaaD = character_change_array->player_pointer->additional_actor_data;
|
||||
dl = func_806FEDB0(dl, PaaD->unk1A4);
|
||||
if (PaaD->unk1EC == 2) {
|
||||
gDPSetPrimColor(dl++, 0, 0, 0xFF, 0x00, 0x00, 0x64);
|
||||
dl = func_8068C5A8(dl, 0x45, 3, 1, 0x40, 0x40, 0xA0, 0x78, 2.0f, 2.0f, 0, 0.0f);
|
||||
} else if (PaaD->unk1EC == 1) {
|
||||
gDPSetPrimColor(dl++, 0, 0, 0x00, 0xFF, 0x00, 0x64);
|
||||
dl = func_8068C5A8(dl, 0x44, 3, 1, 0x40, 0x40, 0xA0, 0x78, 2.0f, 2.0f, 0, 0.0f);
|
||||
}
|
||||
return dl;
|
||||
}
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1025E0/func_806FF75C.s")
|
||||
|
@ -647,9 +647,27 @@ s32 func_8071375C(s32 arg0) {
|
||||
return arg0;
|
||||
}
|
||||
|
||||
// Displaylist stuff
|
||||
// Displaylist stuff, close
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_114270/func_80713764.s")
|
||||
|
||||
extern s16 D_80744490;
|
||||
extern s16 D_80744494;
|
||||
|
||||
/*
|
||||
void func_80713764(Gfx *dl, u8 arg1, f32 arg2) {
|
||||
f32 temp;
|
||||
f32 temp2;
|
||||
temp = D_80744490 * 0.5;
|
||||
temp2 = (D_80744494 * 0.5) + -20.0 + arg2;
|
||||
gDPSetRenderMode(dl++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
// TODO: Issue here
|
||||
gDPSetPrimColor(dl++, 0, 0, 0x00, 0x00, arg1, 0x00);
|
||||
gDPSetCombineLERP(dl++, 0, 0, 0, TEXEL0, TEXEL0, 0, PRIMITIVE, 0, 0, 0, 0, TEXEL0, TEXEL0, 0, PRIMITIVE, 0);
|
||||
gDPSetTextureFilter(dl++, G_TF_POINT);
|
||||
func_8068C5A8(dl, 0x2C, 0, 2, 0xE0, 0x80, temp, temp2, 1.0f, 1.0f, 0, 0.0f);
|
||||
}
|
||||
*/
|
||||
|
||||
// TODO: This might return a displaylist
|
||||
void func_807138A4(s32 *arg0) {
|
||||
func_807135B4(func_807132DC(arg0));
|
||||
|
@ -329,8 +329,6 @@ void func_8068C350(void *arg0, Actor *arg1, u8 arg2) {
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_8F4B0/func_8068D264.s")
|
||||
|
||||
void func_8068C5A8(void *, u16, s32, s32, s32, s32, s32, s32, f32, f32, s32, f32); // extern
|
||||
|
||||
extern Gfx D_01000118;
|
||||
extern Mtx D_02000080;
|
||||
|
||||
|
@ -352,8 +352,21 @@ void func_8069F020(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_A2F10/func_8069F904.s")
|
||||
extern Gfx D_01000118;
|
||||
extern Mtx D_020000C0;
|
||||
|
||||
void func_8069F904(Gfx *dl, Actor *arg1) {
|
||||
f32 temp_f0;
|
||||
|
||||
temp_f0 = arg1->unkE0;
|
||||
gSPDisplayList(dl++, &D_01000118);
|
||||
gDPSetCombineMode(dl++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||
gDPSetRenderMode(dl++, G_RM_CLD_SURF, G_RM_CLD_SURF2);
|
||||
gSPMatrix(dl++, &D_020000C0, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
gDPPipeSync(dl++);
|
||||
gDPSetPrimColor(dl++, 0, 0, 0xFF, 0xFF, 0xFF, arg1->y_rotation);
|
||||
func_8068C5A8(dl, (arg1->unk15F + 0x61), 0, 2, 0x28, 0x33, arg1->x_position, arg1->y_position, temp_f0, temp_f0, 0, 0.0f);
|
||||
}
|
||||
|
||||
// Jumptable
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_A2F10/func_8069FA40.s")
|
||||
@ -362,7 +375,6 @@ void func_8069F020(void) {
|
||||
|
||||
extern s32 D_80744478;
|
||||
extern u8 D_80750AD4;
|
||||
void func_8069F904(void);
|
||||
void func_8069FA40(void);
|
||||
|
||||
/*
|
||||
|
@ -583,7 +583,6 @@ Gfx *func_806ABB98(Gfx *dl, s16 arg1, s16 arg2, f32 arg3, void *arg4) {
|
||||
f32 *mtx;
|
||||
|
||||
mtx = malloc(0x40);
|
||||
mtx = mtx;
|
||||
func_8061134C(mtx);
|
||||
guScaleF(&sp70[0], arg3, arg3, 1.0f);
|
||||
guTranslateF(&sp30[0], arg1, arg2, 0.0f);
|
||||
|
@ -1,9 +1,40 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x2C - 0x0];
|
||||
s16 unk2C;
|
||||
} AAD_806B76B0;
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_BC3B0/func_806B76B0.s")
|
||||
typedef struct {
|
||||
f32 unk0;
|
||||
f32 unk4;
|
||||
} A178_806B76B0;
|
||||
|
||||
extern Gfx D_01000118;
|
||||
extern Mtx D_02000080;
|
||||
|
||||
void func_806B76B0(Gfx *dl, Actor *arg1) {
|
||||
A178_806B76B0 *a178;
|
||||
AAD_806B76B0 *aaD;
|
||||
|
||||
aaD = arg1->additional_actor_data;
|
||||
a178 = arg1->unk178;
|
||||
gDPPipeSync(dl++);
|
||||
if (arg1->control_state == 0x11) {
|
||||
gDPSetPrimColor(dl++, 0, 0, 0xC8, 0x00, 0x00, 0xFF);
|
||||
} else if (aaD->unk2C != 0) {
|
||||
gDPSetPrimColor(dl++, 0, 0, 0x00, 0xC8, 0x00, 0xFF);
|
||||
} else {
|
||||
gDPSetPrimColor(dl++, 0, 0, 0xDC, 0xB4, 0x00, 0xFF);
|
||||
}
|
||||
gDPSetCombineMode(dl++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||
gDPSetRenderMode(dl++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
gSPDisplayList(dl++, &D_01000118);
|
||||
gSPMatrix(dl++, &D_02000080, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
|
||||
func_8068C5A8(dl, 0x38, 3, 1, 0x40, 0x40, a178->unk0, a178->unk4, 0.5f, 0.5f, 0x2D, 0.0f);
|
||||
}
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_BC3B0/func_806B7830.s")
|
||||
@ -97,7 +128,6 @@ void func_806B7C74(GlobalASMStruct90 *arg0, f32 arg1, f32 arg2) {
|
||||
|
||||
extern f64 D_8075B898;
|
||||
extern s32 D_807FBB68;
|
||||
int func_806B76B0();
|
||||
int func_806B7830();
|
||||
|
||||
typedef struct {
|
||||
|
@ -83,7 +83,7 @@ void func_800255D4(Gfx **arg0) {
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/jetpac/code_1460/func_80025700.s")
|
||||
|
||||
#ifndef NONMATCHING
|
||||
// Displaylist stuff
|
||||
// Displaylist stuff, regalloc, doable
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/jetpac/code_1460/func_80025904.s")
|
||||
#else
|
||||
void func_80025904(Gfx **arg0) {
|
||||
|
@ -136,6 +136,30 @@ void func_8002452C(void) {
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/multiplayer/code_0/func_800245B0.s")
|
||||
|
||||
/*
|
||||
void *func_800245B0(Gfx *arg0, s16 *arg1, s32 arg2, s32 arg3, s32 arg4) {
|
||||
gDPSetTextureImage(dl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, arg3);
|
||||
gDPSetTile(dl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0x0000, G_TX_LOADTILE, 0, G_TX_NOMIRROR | G_TX_CLAMP, 3, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, 3, G_TX_NOLOD);
|
||||
gDPLoadSync(dl++);
|
||||
gDPLoadBlock(dl++, G_TX_LOADTILE, 0, 0, 63, 1024);
|
||||
gDPPipeSync(dl++);
|
||||
gDPSetTile(dl++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 2, 0x0000, G_TX_RENDERTILE, 0, G_TX_NOMIRROR | G_TX_CLAMP, 3, G_TX_NOLOD, G_TX_NOMIRROR | G_TX_WRAP, 3, G_TX_NOLOD);
|
||||
gDPSetTileSize(dl++, G_TX_RENDERTILE, 0, 0, 0x001C, 0x001C);
|
||||
|
||||
// TODO: wut?
|
||||
dl->unk0 = 0xE4000000 | ((((*arg1 + arg4 * 8) * 4) & 0xFFF) << 0xC) | (((arg2 + 8) * 4) & 0xFFF);
|
||||
dl->unk4 = (((*arg1 * 4) & 0xFFF) << 0xC) | ((arg2 * 4) & 0xFFF);
|
||||
|
||||
// TODO: wut?
|
||||
gsDPHalf1(dl++, 0x00000000);
|
||||
gsDPHalf2(dl++, 0x04000400);
|
||||
|
||||
|
||||
*arg1 += arg4 * 8;
|
||||
return dl;
|
||||
}
|
||||
*/
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/multiplayer/code_0/func_800246EC.s")
|
||||
|
||||
|
@ -151,8 +151,6 @@ void func_8002BCD4(Actor *arg0) {
|
||||
// Displaylist stuff, close
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/race/code_7BD0/func_8002BDDC.s")
|
||||
|
||||
void func_8068C5A8(void *, s32, s32, s32, s32, s32, s32, s32, f32, f32, s32, f32); // extern
|
||||
|
||||
typedef struct {
|
||||
f32 unk0;
|
||||
f32 unk4;
|
||||
@ -188,15 +186,41 @@ void func_8002BDDC(Gfx *dl, Actor *arg1, f32 arg2, f32 arg3, u8 arg4, u8 arg5, u
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/race/code_7BD0/func_8002C2E8.s")
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/race/code_7BD0/func_8002C63C.s")
|
||||
void func_800085D4(f32*, f32, f32, f32);
|
||||
Gfx *func_805FD030(Gfx *);
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x50 - 0x0];
|
||||
f32 unk50[1][4][4];
|
||||
} Struct8002C63C_arg1;
|
||||
|
||||
extern Gfx D_01000118;
|
||||
extern Mtx D_020000C0;
|
||||
extern Mtx D_02000180;
|
||||
|
||||
Gfx *func_8002C63C(Gfx *dl, Struct8002C63C_arg1 *arg1) {
|
||||
gDPPipeSync(dl++);
|
||||
gDPSetRenderMode(dl++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
|
||||
gDPSetCycleType(dl++, G_CYC_1CYCLE);
|
||||
gDPSetCombineMode(dl++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||
|
||||
dl = func_805FD030(dl);
|
||||
|
||||
gSPDisplayList(dl++, &D_01000118);
|
||||
gSPMatrix(dl++, &D_020000C0, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
|
||||
|
||||
func_800085D4(arg1->unk50[D_807444FC], 0.5f, 0.5f, 1.0f);
|
||||
gSPMatrix(dl++, arg1->unk50[D_807444FC], G_MTX_NOPUSH | G_MTX_MUL | G_MTX_PROJECTION);
|
||||
gSPMatrix(dl++, &D_02000180, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
return dl;
|
||||
}
|
||||
|
||||
// Displaylist stuff
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/race/code_7BD0/func_8002C76C.s")
|
||||
|
||||
s32 func_8002C14C(s32, void *);
|
||||
s32 func_8002C2E8(s32, void *);
|
||||
s32 func_8002C63C(s32, void *);
|
||||
s32 func_8002C76C(s32, void *);
|
||||
|
||||
s32 func_8002CAC8(s32 arg0, Actor *arg1, RaceAdditionalActorData *arg2) {
|
||||
@ -224,7 +248,7 @@ s32 func_8002CAC8(s32 arg0, Actor *arg1, RaceAdditionalActorData *arg2) {
|
||||
if (sp24->unk0 & 6) {
|
||||
arg0 = func_8002C76C(arg0, arg2);
|
||||
}
|
||||
|
||||
|
||||
return arg0;
|
||||
}
|
||||
|
||||
|
@ -15,11 +15,13 @@ CPP_FLAGS = [
|
||||
"-Iinclude",
|
||||
"-Iinclude/2.0L",
|
||||
"-Iinclude/2.0L/PR",
|
||||
"-Iinclude/libc",
|
||||
"-Isrc",
|
||||
"-Iver/current/build/include",
|
||||
"-D_LANGUAGE_C",
|
||||
"-D_FINALROM",
|
||||
"-DF3DEX_GBI_2",
|
||||
"-DTARGET_N64"
|
||||
"-D_MIPS_SZLONG=32",
|
||||
# "-DSCRIPT(...)={}",
|
||||
# "-D__attribute__(...)=",
|
||||
|