summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAetias <aetias@outlook.com>2025-07-01 00:01:30 +0200
committerAetias <aetias@outlook.com>2025-07-01 00:01:30 +0200
commit8003089294daef5ccb9b3a73eac8a4496457f178 (patch)
tree88dae48164d17c26052eb48b502d0ed422c90416
parent1c4c64fc08ad0b266345b21dc177b470fdeadb70 (diff)
Fix match
-rw-r--r--config/eur/arm9/delinks.txt2
-rw-r--r--include/Item/ItemManager.hpp1
-rw-r--r--include/Message/BMG.hpp13
-rw-r--r--include/Unknown/UnkStruct_02037750.hpp2
-rw-r--r--src/Main/Unknown/UnkStruct_02037750.cpp34
5 files changed, 24 insertions, 28 deletions
diff --git a/config/eur/arm9/delinks.txt b/config/eur/arm9/delinks.txt
index c71693b4..99db48e3 100644
--- a/config/eur/arm9/delinks.txt
+++ b/config/eur/arm9/delinks.txt
@@ -38,7 +38,7 @@ src/Main/Message/BMG.cpp:
src/Main/Unknown/UnkStruct_02037750.cpp:
.text start:0x02037750 end:0x020387e0
- .data start:0x02057d00 end:0x02057d70
+ .data start:0x02057cb8 end:0x02057d70
src/Main/Unknown/UnkStruct_02038aa0.cpp:
.text start:0x0203881c end:0x02039578
diff --git a/include/Item/ItemManager.hpp b/include/Item/ItemManager.hpp
index 3d32bbbe..3de57def 100644
--- a/include/Item/ItemManager.hpp
+++ b/include/Item/ItemManager.hpp
@@ -207,4 +207,3 @@ public:
};
extern ItemManager *gItemManager;
-extern UnkStruct_027e0d38 *data_027e0d38;
diff --git a/include/Message/BMG.hpp b/include/Message/BMG.hpp
index b438a0da..c3d4479d 100644
--- a/include/Message/BMG.hpp
+++ b/include/Message/BMG.hpp
@@ -5,19 +5,18 @@
#include "types.h"
#define BMG_MAGIC "MESGbmg1"
-#define BMG_TAG(a, b, c, d) (((d) << 24) | ((c) << 16) | ((b) << 8) | (a))
#define BMG_GET_INF1(pGroups, flags) ((pGroups)->entries[(flags) >> 0x10].func_02037258((flags) & 0xFFFF))
#define BMG_GET_MSG_OFFSET(pGroups, flags) (BMG_GET_INF1((pGroups), (flags))->offset)
#define BMG_GET_MSG_ADDR(pGroups, flags) \
((u32) (pGroups)->entries[(flags) >> 0x10].pDAT1 + (BMG_GET_MSG_OFFSET((pGroups), (flags)) & ~1))
enum BMGTag {
- /* "INF1" */ BMG_TAG_INF1 = BMG_TAG('I', 'N', 'F', '1'),
- /* "FLW1" */ BMG_TAG_FLW1 = BMG_TAG('F', 'L', 'W', '1'),
- /* "FLI1" */ BMG_TAG_FLI1 = BMG_TAG('F', 'L', 'I', '1'),
- /* "DAT1" */ BMG_TAG_DAT1 = BMG_TAG('D', 'A', 'T', '1'),
- /* "MID1" */ BMG_TAG_MID1 = BMG_TAG('M', 'I', 'D', '1'),
- /* "MID1" */ BMG_TAG_STR1 = BMG_TAG('S', 'T', 'R', '1'),
+ /* "INF1" */ BMG_TAG_INF1 = '1FNI',
+ /* "FLW1" */ BMG_TAG_FLW1 = '1WLF',
+ /* "FLI1" */ BMG_TAG_FLI1 = '1ILF',
+ /* "DAT1" */ BMG_TAG_DAT1 = '1TAD',
+ /* "MID1" */ BMG_TAG_MID1 = '1DIM',
+ /* "STR1" */ BMG_TAG_STR1 = '1RTS',
};
enum BMGEncoding {
diff --git a/include/Unknown/UnkStruct_02037750.hpp b/include/Unknown/UnkStruct_02037750.hpp
index 359d5fd2..a480c1a3 100644
--- a/include/Unknown/UnkStruct_02037750.hpp
+++ b/include/Unknown/UnkStruct_02037750.hpp
@@ -37,7 +37,7 @@ public:
UnkStruct_02037750(unk32 param1, unk32 param2);
static LinkStateInteract *GetLinkStateInteract();
- void func_020385d0(s32 param1, u8 *param2);
+ unk32 func_020385d0(s32 param1, u8 *param2);
};
class UnkStruct_020386d8_24 {
diff --git a/src/Main/Unknown/UnkStruct_02037750.cpp b/src/Main/Unknown/UnkStruct_02037750.cpp
index 489c4534..0fa56bfb 100644
--- a/src/Main/Unknown/UnkStruct_02037750.cpp
+++ b/src/Main/Unknown/UnkStruct_02037750.cpp
@@ -48,7 +48,6 @@ ARM bool UnkStruct_02037750::vfunc_24(unk32 param1) {
ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
u16 uVar1;
s64 lVar2;
- Random *pRVar3;
char cVar4;
u16 uVar5;
int iVar6;
@@ -59,8 +58,7 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
u32 uVar11;
bool bVar12;
- pRVar3 = gRandom;
- uVar7 = (u32) * (u16 *) (param1 + 0x2);
+ uVar7 = (u32) * (u16 *) (param1 + 0x2);
if (uVar7 >= 0xF && uVar7 <= 0x2E) {
pcVar8 = this->mUnk_04[((uVar7 - 0xF) << 0x1E) >> 0x1C];
@@ -101,17 +99,17 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
if (uVar7 == 0x0) {
uVar10 = 0x0;
} else {
- lVar2 = gRandom->mRandomValue * gRandom->mFactor;
- uVar10 = gRandom->Next(lVar2);
- // uVar10 = *(int *)((int)&gRandom->mAddend + 0x4) +
- // *(int *)((int)&gRandom->mFactor + 0x4) *
- // *(uint *)&gRandom->mRandomValue + *(uint *)&gRandom->mFactor *
- // *(int *)((int)&gRandom->mRandomValue + 0x4) +
- // (lVar2 >> 0x20) + (gRandom->mAddend << uVar11); // CARRY4
+ lVar2 = gRandom.mRandomValue * gRandom.mFactor;
+ uVar10 = gRandom.Next(lVar2);
+ // uVar10 = *(int *)((int)&gRandom.mAddend + 0x4) +
+ // *(int *)((int)&gRandom.mFactor + 0x4) *
+ // *(uint *)&gRandom.mRandomValue + *(uint *)&gRandom.mFactor *
+ // *(int *)((int)&gRandom.mRandomValue + 0x4) +
+ // (lVar2 >> 0x20) + (gRandom.mAddend << uVar11); // CARRY4
// part of the inline?
- // *(uint *)&gRandom->mRandomValue = *(uint *)&gRandom->mAddend + uVar11;
- // *(uint *)((int)&gRandom->mRandomValue + 0x4) = uVar10;
+ // *(uint *)&gRandom.mRandomValue = *(uint *)&gRandom.mAddend + uVar11;
+ // *(uint *)((int)&gRandom.mRandomValue + 0x4) = uVar10;
if (uVar7 != 0x0) {
uVar10 = (uVar7 * uVar10 >> 0x20);
@@ -126,9 +124,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
case 0x9: break;
case 0xa: break;
case 0xb:
- lVar2 = gRandom->mRandomValue * gRandom->mFactor;
+ lVar2 = gRandom.mRandomValue * gRandom.mFactor;
uVar7 = lVar2;
- uVar10 = gRandom->Next(uVar7);
+ uVar10 = gRandom.Next(uVar7);
return (int) (uVar10 * 0x64 >> 0x20) < (param1 + 0x4);
case 0xc:
@@ -136,9 +134,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
if (uVar7 == 0x0) {
uVar10 = 0x0;
} else {
- lVar2 = gRandom->mRandomValue * gRandom->mFactor;
+ lVar2 = gRandom.mRandomValue * gRandom.mFactor;
uVar11 = lVar2;
- uVar10 = gRandom->Next(uVar11);
+ uVar10 = gRandom.Next(uVar11);
if (uVar7 != 0x0) {
uVar10 = (uVar7 * uVar10 >> 0x20);
@@ -159,9 +157,9 @@ ARM unk32 UnkStruct_02037750::vfunc_28(s32 param1) {
if (uVar7 == 0x0) {
uVar10 = 0x0;
} else {
- lVar2 = gRandom->mRandomValue * gRandom->mFactor;
+ lVar2 = gRandom.mRandomValue * gRandom.mFactor;
uVar11 = lVar2;
- uVar10 = gRandom->Next(uVar11);
+ uVar10 = gRandom.Next(uVar11);
if (uVar7 != 0x0) {
uVar10 = (uVar7 * uVar10 >> 0x20);