Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 39 additions & 39 deletions config/us/pilotwings64.us.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -364,13 +364,13 @@ segments:
bss_size: 0x293F0
subsegments:
- [0x51E30, c, app/code_51E30]
- [0x52230, c, app/code_52230]
- [0x52230, c, app/balls]
- [0x556C0, c, app/code_556C0]
- [0x560D0, c, app/code_560D0]
- [0x560D0, c, app/birdman]
- [0x58120, c, app/bmsound]
- [0x58B00, c, app/code_58B00]
- [0x597E0, c, app/code_597E0]
- [0x59D80, c, app/code_59D80]
- [0x597E0, c, app/bonus]
- [0x59D80, c, app/ball_target]
- [0x5A6A0, c, app/code_5A6A0]
- [0x5CFC0, c, app/cannonball]
- [0x60020, c, app/code_60020]
Expand All @@ -379,32 +379,32 @@ segments:
- [0x64070, c, app/code_64070]
- [0x64730, c, app/code_64730]
- [0x66160, c, app/code_66160]
- [0x68220, c, app/code_68220]
- [0x68220, c, app/environment]
- [0x69BF0, c, app/code_69BF0]
- [0x6ACE0, c, app/code_6ACE0]
- [0x6ACE0, c, app/falco]
- [0x6DAA0, c, app/fdr]
- [0x6ECD0, c, app/code_6ECD0]
- [0x6F4D0, c, app/save]
- [0x6FFB0, c, app/file_menu]
- [0x71500, c, app/code_71500]
- [0x71500, c, app/fire_effects]
- [0x72010, c, app/code_72010]
- [0x722D0, c, app/code_722D0]
- [0x72910, c, app/code_72910]
- [0x72B70, c, app/code_72B70]
- [0x75A60, c, app/code_75A60]
- [0x76670, c, app/code_76670]
- [0x78620, c, app/code_78620]
- [0x796C0, c, app/code_796C0]
- [0x796C0, c, app/hang_glider]
- [0x7B9A0, c, app/gsound]
- [0x7C4C0, c, app/code_7C4C0]
- [0x7CF30, c, app/code_7CF30]
- [0x7FED0, c, app/code_7FED0]
- [0x81490, c, app/code_81490]
- [0x82520, c, app/code_82520]
- [0x82B90, c, app/code_82B90]
- [0x8A760, c, app/code_8A760]
- [0x8A760, c, app/gyrocopter]
- [0x905C0, c, app/code_905C0]
- [0x915B0, c, app/code_915B0]
- [0x915B0, c, app/hover_pads]
- [0x91670, c, app/hsound]
- [0x92810, c, app/menu]
- [0x92BF0, c, app/level]
Expand All @@ -430,22 +430,22 @@ segments:
- [0xAA820, c, app/rings]
- [0xAC1A0, c, app/code_AC1A0]
- [0xAE460, c, app/code_AE460]
- [0xAF950, c, app/code_AF950]
- [0xAF950, c, app/rocket_pack]
- [0xB1B30, c, app/rpsound]
- [0xB2900, c, app/code_B2900]
- [0xB3A70, c, app/code_B3A70]
- [0xB5280, c, app/results]
- [0xB6580, c, app/code_B6580]
- [0xB6FE0, c, app/code_B6FE0]
- [0xB6FE0, c, app/skydiving]
- [0xBADE0, c, app/sdsound]
- [0xBB820, c, app/code_BB820]
- [0xBB820, c, app/shadow]
- [0xBD670, c, app/code_BD670]
- [0xBDAD0, c, app/smoke]
- [0xBF280, c, app/snap]
- [0xC6B70, c, app/snd]
- [0xC7370, c, app/snow]
- [0xC7B40, c, app/spath]
- [0xC8990, c, app/code_C8990]
- [0xC8990, c, app/splash]
- [0xC9440, c, app/text_data]
- [0xC9B60, c, app/code_C9B60]
- [0xCB7C0, c, app/targets]
Expand All @@ -464,32 +464,32 @@ segments:
- [0xD55B0, c, app/wind_objects]

- [0xD5C40, data] # app/code_51E30
- [0xD5D40, .data, app/code_52230]
- [0xD5D50, .data, app/code_560D0]
- [0xD5D40, .data, app/balls]
- [0xD5D50, .data, app/birdman]
- [0xD5F10, .data, app/code_5A6A0]
- [0xD5F20, .data, app/cannonball]
- [0xD5F40, .data, app/code_60020]
- [0xD5F70, .data, app/code_61A60]
- [0xD6030, .data, app/code_64070]
- [0xD62D0, .data, app/code_64730]
- [0xD6410, .data, app/code_68220]
- [0xD6410, .data, app/environment]
- [0xD6450, data] # app/code_69BF0
- [0xD64D0, .data, app/code_6ACE0]
- [0xD6540, data] # also part of app/code_6ACE0
- [0xD64D0, .data, app/falco]
- [0xD6540, data] # also part of app/falco
- [0xD65F0, .data, app/code_6ECD0]
- [0xD6610, .data, app/file_menu]
- [0xD6650, .data, app/code_71500]
- [0xD6650, .data, app/fire_effects]
- [0xD6660, .data, app/code_722D0]
- [0xD6680, .data, app/code_72910]
- [0xD6690, .data, app/code_72B70]
- [0xD66E0, .data, app/code_75A60]
- [0xD66F0, .data, app/code_796C0]
- [0xD66F0, .data, app/hang_glider]
- [0xD68A0, .data, app/code_7C4C0]
- [0xD68B0, .data, app/code_7CF30]
- [0xD68C0, .data, app/code_7FED0]
- [0xD68D0, .data, app/code_82520]
- [0xD68E0, .data, app/code_82B90]
- [0xD6910, .data, app/code_8A760]
- [0xD6910, .data, app/gyrocopter]
- [0xD6920, .data, app/code_905C0]
- [0xD6930, .data, app/level]
- [0xD6950, .data, app/credits]
Expand All @@ -507,12 +507,12 @@ segments:
- [0xD7000, .data, app/demo]
- [0xD7010, data] # app/rings
- [0xD70D0, .data, app/code_AE460]
- [0xD70E0, .data, app/code_AF950]
- [0xD70E0, .data, app/rocket_pack]
- [0xD7100, .data, app/code_B2900]
- [0xD7140, .data, app/code_B3A70]
- [0xD7170, .data, app/results]
- [0xD7500, data] # app/code_B6FE0
- [0xD7990, data] # app/code_BB820
- [0xD7500, data] # app/skydiving
- [0xD7990, data] # app/shadow
- [0xD7A30, .data, app/code_BD670]
- [0xD7A40, .data, app/snap]
- [0xD7AE0, .data, app/snd]
Expand All @@ -528,13 +528,13 @@ segments:
- [0xD7EF0, .data, app/code_D2D50]
- [0xD7F20, .data, app/code_D3810]
- [0xD7F40, .rodata, app/code_51E30]
- [0xD7F60, .rodata, app/code_52230]
- [0xD7F60, .rodata, app/balls]
- [0xD8340, .rodata, app/code_556C0]
- [0xD83B0, .rodata, app/code_560D0]
- [0xD83B0, .rodata, app/birdman]
- [0xD84A0, .rodata, app/bmsound]
- [0xD8590, .rodata, app/code_58B00]
- [0xD85D0, .rodata, app/code_597E0]
- [0xD8610, .rodata, app/code_59D80]
- [0xD85D0, .rodata, app/bonus]
- [0xD8610, .rodata, app/ball_target]
- [0xD8670, .rodata, app/code_5A6A0]
- [0xD8730, .rodata, app/cannonball]
- [0xD8980, .rodata, app/code_60020]
Expand All @@ -543,31 +543,31 @@ segments:
- [0xD8B90, .rodata, app/code_64070]
- [0xD8BF0, .rodata, app/code_64730]
- [0xD8CE0, .rodata, app/code_66160]
- [0xD8DD0, .rodata, app/code_68220]
- [0xD8DD0, .rodata, app/environment]
- [0xD9080, .rodata, app/code_69BF0]
- [0xD91E0, .rodata, app/code_6ACE0]
- [0xD91E0, .rodata, app/falco]
- [0xD9360, .rodata, app/fdr]
- [0xD94F0, .rodata, app/code_6ECD0]
- [0xD9510, .rodata, app/save]
- [0xD95D0, .rodata, app/file_menu]
- [0xD95F0, .rodata, app/code_71500]
- [0xD95F0, .rodata, app/fire_effects]
- [0xD9810, .rodata, app/code_722D0]
- [0xD9830, .rodata, app/code_72910]
- [0xD9840, .rodata, app/code_72B70]
- [0xD99C0, .rodata, app/code_75A60]
- [0xD9A10, .rodata, app/code_76670]
- [0xD9CF0, .rodata, app/code_78620]
- [0xD9DF0, .rodata, app/code_796C0]
- [0xD9DF0, .rodata, app/hang_glider]
- [0xD9F20, .rodata, app/gsound]
- [0xD9F70, .rodata, app/code_7C4C0]
- [0xDA020, .rodata, app/code_7CF30]
- [0xDA4F0, .rodata, app/code_7FED0]
- [0xDA640, .rodata, app/code_81490]
- [0xDA7C0, .rodata, app/code_82520]
- [0xDA7F0, .rodata, app/code_82B90]
- [0xDABB0, .rodata, app/code_8A760]
- [0xDABB0, .rodata, app/gyrocopter]
- [0xDAC60, .rodata, app/code_905C0]
- [0xDADB0, .rodata, app/code_915B0]
- [0xDADB0, .rodata, app/hover_pads]
- [0xDAE00, .rodata, app/hsound]
- [0xDAF00, .rodata, app/menu]
- [0xDAF30, .rodata, app/level]
Expand All @@ -592,21 +592,21 @@ segments:
- [0xDC3C0, .rodata, app/rings]
- [0xDC4D0, .rodata, app/code_AC1A0]
- [0xDC800, .rodata, app/code_AE460]
- [0xDC8C0, .rodata, app/code_AF950]
- [0xDC8C0, .rodata, app/rocket_pack]
- [0xDC9F0, .rodata, app/rpsound]
- [0xDCAF0, .rodata, app/code_B2900]
- [0xDCB20, .rodata, app/code_B3A70]
- [0xDCBE0, .rodata, app/results]
- [0xDD240, .rodata, app/code_B6580]
- [0xDD260, .rodata, app/code_B6FE0]
- [0xDD260, .rodata, app/skydiving]
- [0xDD5B0, .rodata, app/sdsound]
- [0xDD680, .rodata, app/code_BB820]
- [0xDD680, .rodata, app/shadow]
- [0xDD730, .rodata, app/code_BD670]
- [0xDD740, .rodata, app/smoke]
- [0xDDA90, .rodata, app/snap]
- [0xDDC80, .rodata, app/snd]
- [0xDDDA0, .rodata, app/spath]
- [0xDDEA0, .rodata, app/code_C8990]
- [0xDDEA0, .rodata, app/splash]
- [0xDDF40, .rodata, app/code_C9B60]
- [0xDDFB0, .rodata, app/targets]
- [0xDE020, .rodata, app/task]
Expand Down
38 changes: 38 additions & 0 deletions src/app/ball_target.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#include "common.h"
#include "ball_target.h"

typedef struct {
u8 pad0[0x5B];
u8 unk5B;
u8 pad5C[0x60 - 0x5C];
} Unk803597E8;

extern u8 D_803597E4;
extern Unk803597E8 D_803597E8[];

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D2850.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D28D8.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D29FC.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D2ACC.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D2C20.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D2E48.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D3030.s")

u8 func_802D30B4(void) {
s32 i;
u8 ret;

ret = 0;
for (i = 0; i < D_803597E4; i++) {
ret += (D_803597E8[i].unk5B != 0) ? 1 : 0;
}
return ret;
}

#pragma GLOBAL_ASM("asm/nonmatchings/app/ball_target/func_802D3110.s")
6 changes: 3 additions & 3 deletions src/app/code_59D80.h → src/app/ball_target.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#ifndef APP_CODE_59D80_H
#define APP_CODE_59D80_H
#ifndef APP_BALL_TARGET_H
#define APP_BALL_TARGET_H

#include <PR/ultratypes.h>

Expand All @@ -10,4 +10,4 @@ s32 func_802D2E48(void);
void func_802D3030(void);
u8 func_802D30B4(void);

#endif // APP_CODE_59D80_H
#endif // APP_BALL_TARGET_H
66 changes: 66 additions & 0 deletions src/app/balls.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#include "common.h"
#include "balls.h"

// .data
// list of model ids
s32 D_8034E810[] = { 0xF4, 0xF5, 0xF6 };

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CAD00.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CADE8.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CAF50.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB094.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB2FC.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB35C.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB3F8.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB56C.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB6D4.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CB9B4.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/ballsCollision.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/ballsPhysics.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC064.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC0D4.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC13C.s")

u8 func_802CC15C(void) {
s32 i;
s32 ret;

ret = 1;
for (i = 0; i < D_80357210 + D_80357211; i++) {
if (D_80357218[i].unk94 == 0) {
ret = 0;
break;
}
}
return ret;
}

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC1B0.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC270.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC39C.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC51C.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CC55C.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CD0F8.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CD2E8.s")

#pragma GLOBAL_ASM("asm/nonmatchings/app/balls/func_802CE0A4.s")
6 changes: 3 additions & 3 deletions src/app/code_52230.h → src/app/balls.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#ifndef APP_CODE_52230_H
#define APP_CODE_52230_H
#ifndef APP_BALLS_H
#define APP_BALLS_H

#include <PR/ultratypes.h>

Expand All @@ -20,4 +20,4 @@ void func_802CB35C(void);
void func_802CB3F8(void);
u8 func_802CC15C(void);

#endif // APP_CODE_52230_H
#endif // APP_BALLS_H
Loading