diff options
| author | Prakxo <87568477+Prakxo@users.noreply.github.com> | 2024-04-21 17:08:00 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-21 08:08:00 -0700 |
| commit | 202737c1f0e252059f16a45dcda0c8a7b3dde78c (patch) | |
| tree | 29625318bde9f28374ed17ba5a2b9d649f900ccf | |
| parent | 30aaa1356fb359c25963fc1d2384a2a928bde32d (diff) | |
m_scene_ftr OK (#176)
* 1 byte off..
* m_scene_ftr OK
* newline
* warnings
| -rw-r--r-- | include/6E3240.h (renamed from include/6E30B0.h) | 9 | ||||
| -rw-r--r-- | include/m_scene_ftr.h | 16 | ||||
| -rw-r--r-- | src/code/m_npc.c | 2 | ||||
| -rw-r--r-- | src/code/m_private.c | 2 | ||||
| -rw-r--r-- | src/code/m_scene.c | 2 | ||||
| -rw-r--r-- | src/code/m_scene_ftr.c | 44 | ||||
| -rw-r--r-- | src/code/m_start_data_init.c | 2 | ||||
| -rw-r--r-- | src/overlays/gamestates/ovl_play/m_play.c | 2 | ||||
| -rw-r--r-- | yamls/jp/code.yaml | 5 |
9 files changed, 70 insertions, 14 deletions
diff --git a/include/6E30B0.h b/include/6E3240.h index 62b8c17..663ee20 100644 --- a/include/6E30B0.h +++ b/include/6E3240.h @@ -1,16 +1,11 @@ -#ifndef C_6E30B0_H -#define C_6E30B0_H +#ifndef C_6E3240_H +#define C_6E3240_H #include "ultra64.h" struct Game; struct Game_Play; -// void func_800BF410_jp(); -// void func_800BF480_jp(); -void mScn_ObtainCarpetBank(struct Game_Play*); -// void func_800BF56C_jp(); -void mScn_ObtainMyRoomBank(struct Game_Play*); // void func_800BF5A0_jp(); // void func_800BF5F4_jp(); // void func_800BF770_jp(); diff --git a/include/m_scene_ftr.h b/include/m_scene_ftr.h new file mode 100644 index 0000000..10b4c11 --- /dev/null +++ b/include/m_scene_ftr.h @@ -0,0 +1,16 @@ +#ifndef M_SCENE_FTR_H +#define M_SCENE_FTR_H + +#include "ultra64.h" +#include "other_types.h" + +struct Game_Play; +struct ObjectExchangeBank; + +void mScn_Dma2Bank(struct ObjectExchangeBank* exchange, s32 id, RomOffset vrom, size_t size); +void mScn_KeepMyRoomBankNew(struct ObjectExchangeBank* exchange, s16 id, size_t size); +void mScn_ObtainCarpetBank(struct Game_Play*); +s32 mScn_ObtainFurnitureBank(struct Game_Play* play, s32 bank); +void mScn_ObtainMyRoomBank(struct Game_Play*); + +#endif diff --git a/src/code/m_npc.c b/src/code/m_npc.c index f9e8fcd..1c85824 100644 --- a/src/code/m_npc.c +++ b/src/code/m_npc.c @@ -5,7 +5,7 @@ #include "m_time.h" #include "m_field_info.h" #include "m_mail_check.h" -#include "6E30B0.h" +#include "6E3240.h" #include "m_string.h" #include "m_handbill.h" #include "m_std_dma.h" diff --git a/src/code/m_private.c b/src/code/m_private.c index b799f9a..7560a8d 100644 --- a/src/code/m_private.c +++ b/src/code/m_private.c @@ -6,7 +6,7 @@ #include "m_player_lib.h" #include "6E2300.h" #include "m_field_info.h" -#include "6E30B0.h" +#include "6E3240.h" #include "69CB30.h" #include "m_handbill.h" #include "m_house.h" diff --git a/src/code/m_scene.c b/src/code/m_scene.c index 8c5ba7a..3f27d44 100644 --- a/src/code/m_scene.c +++ b/src/code/m_scene.c @@ -13,7 +13,7 @@ #include "m_player_lib.h" #include "m_std_dma.h" #include "m_scene_table.h" -#include "6E30B0.h" +#include "m_scene_ftr.h" #include "m_player_lib.h" #include "overlays/actors/player_actor/m_player.h" diff --git a/src/code/m_scene_ftr.c b/src/code/m_scene_ftr.c new file mode 100644 index 0000000..7e54fc0 --- /dev/null +++ b/src/code/m_scene_ftr.c @@ -0,0 +1,44 @@ +#include "m_scene_ftr.h" +#include "overlays/gamestates/ovl_play/m_play.h" + +void mScn_Dma2Bank(ObjectExchangeBank* exchange, s32 id, RomOffset vrom, size_t size) { + + if (vrom != NULL) { + DmaMgr_RequestSyncDebug(exchange->status[id + 3].unk14.vram, vrom, size, "../m_scene_ftr.c", 52); + } +} + +void mScn_KeepMyRoomBankNew(ObjectExchangeBank* exchange, s16 id, size_t size) { + ObjectStatus* bank = exchange->status + exchange->num; + + bank->id = id; + bank->vram = (void*)exchange->unk1800; + bank->segment = (void*)exchange->unk1800; + bank->size = size; + + if (exchange->num < (OBJECT_EXCHANGE_BANK_MAX - 1)) { + exchange->unk1800 = ALIGN16(exchange->unk1800 + size); + exchange->num++; + } +} + +void mScn_ObtainCarpetBank(Game_Play* play) { + ObjectExchangeBank* exchange = &play->objectExchangeBank; + s32 i; + + for (i = 0; i < 2; i++) { + mScn_KeepMyRoomBankNew(exchange, 18, 0x2020); + } + + for (i = 0; i < 2; i++) { + mScn_KeepMyRoomBankNew(exchange, 19, 0x1020); + } +} + +s32 mScn_ObtainFurnitureBank(UNUSED Game_Play* play, s32 bank) { + common_data.clip.unk_020 = bank; +} + +void mScn_ObtainMyRoomBank(Game_Play* play) { + mScn_ObtainCarpetBank(play); +} diff --git a/src/code/m_start_data_init.c b/src/code/m_start_data_init.c index 115182b..b936e89 100644 --- a/src/code/m_start_data_init.c +++ b/src/code/m_start_data_init.c @@ -7,7 +7,7 @@ #include "6C97F0.h" #include "6D9D80.h" #include "6DA460.h" -#include "6E30B0.h" +#include "6E3240.h" #include "m_string.h" #include "6ECD90.h" #include "6EDD10.h" diff --git a/src/overlays/gamestates/ovl_play/m_play.c b/src/overlays/gamestates/ovl_play/m_play.c index 33b75c4..0f5f6a2 100644 --- a/src/overlays/gamestates/ovl_play/m_play.c +++ b/src/overlays/gamestates/ovl_play/m_play.c @@ -13,7 +13,7 @@ #include "6EDD10.h" #include "69E2C0.h" #include "683030.h" -#include "6E30B0.h" +#include "6E3240.h" #include "6C97F0.h" #include "6EFC20.h" #include "67D890.h" diff --git a/yamls/jp/code.yaml b/yamls/jp/code.yaml index c4f22b9..7fda18f 100644 --- a/yamls/jp/code.yaml +++ b/yamls/jp/code.yaml @@ -72,7 +72,8 @@ - [0x6E08E0, asm, code/m_random_field] - [0x6E0F50, c, code/m_rcp] - [0x6E2300, asm, code/6E2300] - - [0x6E30B0, asm, code/6E30B0] + - [0x6E30B0, c, code/m_scene_ftr] + - [0x6E3240, asm, code/6E3240] - [0x6E6C90, c, code/m_start_data_init] - [0x6E7AD0, c, code/m_string] - [0x6E80C0, c, code/m_submenu] @@ -232,7 +233,7 @@ - [0x73B210, rodata, code/73B210] - [0x73B250, rodata, code/73B250] - [0x73B360, rodata, code/73B360] - - [0x73B3E0, rodata, code/m_scene_ftr] + - [0x73B3E0, .rodata, code/m_scene_ftr] - [0x73B400, rodata, code/m_shop] - [0x73B580, .rodata, code/m_string] - [0x73B5C0, .rodata, code/m_submenu] |
