mirror of
https://github.com/Xeeynamo/sotn-decomp.git
synced 2024-11-23 13:09:44 +00:00
func_800E7458 matching
This commit is contained in:
parent
9abf0bf212
commit
1f52f0214c
@ -39,7 +39,7 @@ segments:
|
||||
- [0x3B790, rodata]
|
||||
- [0x3B7A0, rodata]
|
||||
- [0x3B7E8, .rodata, 46FD4]
|
||||
- [0x3B808, rodata]
|
||||
- [0x3B828, rodata]
|
||||
- [0x3BF10, rodata]
|
||||
- [0x3C160, rodata]
|
||||
- [0x3CBC4, .rodata, 5D7C0]
|
||||
@ -61,7 +61,7 @@ segments:
|
||||
- [0x42000, rodata]
|
||||
- [0x42398, c, 42398]
|
||||
- [0x46FD4, c, 46FD4]
|
||||
- [0x47384, c, 47384]
|
||||
- [0x4768C, c, 4768C]
|
||||
- [0x5D7C0, c, 5D7C0]
|
||||
- [0x5D874, c, 5D874]
|
||||
- [0x962AC, data]
|
||||
|
@ -74,6 +74,7 @@
|
||||
#define PROGRAM_IWA_LOAD 0x42
|
||||
#define PROGRAM_IGA_LOAD 0x43
|
||||
#define PROGRAM_HAGI_LOAD 0x44
|
||||
#define PROGRAM_UNKNOWN 0x45
|
||||
#define PROGRAM_TE1 0x46
|
||||
#define PROGRAM_TE2 0x47
|
||||
#define PROGRAM_TE3 0x48
|
||||
|
@ -97,4 +97,86 @@ void func_800E6FD4(void) {
|
||||
}
|
||||
}
|
||||
|
||||
const u32 rodataPadding_800DB804 = 0;
|
||||
extern s32 g_mapTilesetId;
|
||||
s32 func_800E81FC(s32, s32);
|
||||
void func_800E4970(void);
|
||||
|
||||
void nullsub_9(void) {}
|
||||
|
||||
void func_800E738C(void) {
|
||||
if (D_80073060 == 1) {
|
||||
if ((D_800978AC != 0 && D_8006C3B0 == 0) ||
|
||||
(D_800978AC == 0 && func_800E81FC(6, 0) >= 0 &&
|
||||
func_800E81FC(7, 0) >= 0)) {
|
||||
if (func_80131F68() != 0) {
|
||||
PlaySfx(0x80);
|
||||
}
|
||||
func_800E346C();
|
||||
D_80073060++;
|
||||
return;
|
||||
}
|
||||
}
|
||||
g_api.o.unk3C();
|
||||
}
|
||||
|
||||
void func_800E7458(void) {
|
||||
s32 pad[0x40];
|
||||
|
||||
switch (D_80073060) {
|
||||
case 0:
|
||||
g_mapProgramId = PROGRAM_UNKNOWN;
|
||||
if (D_800978AC != 0) {
|
||||
D_8006C398 = 1;
|
||||
D_8006BAFC = 3;
|
||||
g_mapTilesetId = PROGRAM_UNKNOWN;
|
||||
}
|
||||
D_80073060++;
|
||||
break;
|
||||
case 1:
|
||||
if (D_800978AC != 0 && D_8006C3B0 != 0)
|
||||
break;
|
||||
|
||||
if (D_800978AC != 0 || func_800E81FC(12, 0) >= 0) {
|
||||
D_80073060++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (D_800978AC != 0) {
|
||||
D_8006C398 = 1;
|
||||
D_8006BAFC = 0xD;
|
||||
}
|
||||
D_80073060++;
|
||||
break;
|
||||
case 3:
|
||||
if (D_800978AC != 0 && D_8006C3B0 != 0)
|
||||
break;
|
||||
|
||||
if (D_800978AC != 0 ||
|
||||
func_800E81FC(0, 2) >= 0 && func_800E81FC(0, 3) >= 0) {
|
||||
D_80073060++;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (D_800978AC != 0) {
|
||||
D_8006C398 = 1;
|
||||
D_8006BAFC = 0x100;
|
||||
}
|
||||
D_80073060++;
|
||||
break;
|
||||
case 5:
|
||||
if (D_800978AC != 0 && D_8006C3B0 != 0)
|
||||
break;
|
||||
|
||||
if (D_800978AC != 0 || func_800E81FC(0, 1) >= 0) {
|
||||
D_8003C9A4 = 0;
|
||||
D_80073060++;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
g_api.o.Update();
|
||||
break;
|
||||
case 7:
|
||||
func_800E4970();
|
||||
break;
|
||||
}
|
||||
}
|
@ -3,31 +3,11 @@
|
||||
#include "objects.h"
|
||||
#include "sfx.h"
|
||||
|
||||
void nullsub_9(void) {}
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E768C);
|
||||
|
||||
void func_800E738C(void) {
|
||||
if (D_80073060 == 1) {
|
||||
if ((D_800978AC != 0 && D_8006C3B0 == 0) ||
|
||||
(D_800978AC == 0 && func_800E81FC(6, 0) >= 0 &&
|
||||
func_800E81FC(7, 0) >= 0)) {
|
||||
if (func_80131F68() != 0) {
|
||||
PlaySfx(0x80);
|
||||
}
|
||||
func_800E346C();
|
||||
D_80073060++;
|
||||
return;
|
||||
}
|
||||
}
|
||||
g_api.o.unk3C();
|
||||
}
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E7AEC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E7458);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E768C);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E7AEC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E7BB8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E7BB8);
|
||||
|
||||
void func_800E7D08(void) {
|
||||
s32 i;
|
||||
@ -42,7 +22,7 @@ void func_800E7D08(void) {
|
||||
|
||||
#ifndef NON_MATCHING
|
||||
void LoadStageTileset(u32* pTilesetData, s16 y);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", LoadStageTileset);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", LoadStageTileset);
|
||||
#else
|
||||
void LoadStageTileset(u32* pTilesetData, s16 y) {
|
||||
RECT sp10;
|
||||
@ -73,7 +53,7 @@ void LoadStageTileset(u32* pTilesetData, s16 y) {
|
||||
|
||||
// Non-matching due to case 2/11
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E7E08);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E7E08);
|
||||
#else
|
||||
void LoadStageTileset(u32* pTilesetData, s16 y);
|
||||
extern u32 g_Clut;
|
||||
@ -201,7 +181,7 @@ s32 func_800E7E08(u32 arg0) {
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E81FC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E81FC);
|
||||
|
||||
void func_800E8D24(void) {
|
||||
s8* ptr;
|
||||
@ -217,7 +197,7 @@ void func_800E8D24(void) {
|
||||
}
|
||||
|
||||
// https://decomp.me/scratch/YhofM
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E8D54);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E8D54);
|
||||
void func_800E8D54(void);
|
||||
|
||||
void InitializePads(void) {
|
||||
@ -250,7 +230,7 @@ void ReadPads(void) {
|
||||
func_800E8D54();
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E8EE4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E8EE4);
|
||||
|
||||
s32 func_800E908C(void) {
|
||||
if (TestEvent(D_80073068) == 1) {
|
||||
@ -315,7 +295,7 @@ void func_800E92F4(void) {
|
||||
D_8013B3D0 = 0;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E930C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E930C);
|
||||
|
||||
extern Unkstruct_8013B15C D_8013B15C[];
|
||||
|
||||
@ -325,7 +305,7 @@ s32 func_800E9508(s32 arg0) {
|
||||
return temp;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E9530);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E9530);
|
||||
|
||||
u8 func_800E9610(u32 arg0, u32 arg1) { return D_8013B160[arg0].unk0[arg1]; }
|
||||
|
||||
@ -407,7 +387,7 @@ s32 func_800E9804(s32 arg0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E9880);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E9880);
|
||||
|
||||
s32 func_800E9B18(s32 arg0, s32 arg1) {
|
||||
char buffer[0x8];
|
||||
@ -451,14 +431,14 @@ void GetSaveIcon(u8* dst, s32 iconIdx) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800E9C14);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800E9C14);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EA2B0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EA2B0);
|
||||
|
||||
// This function matches in PSY-Q 3.5: GCC 2.6.0 + aspsx 2.3.4
|
||||
// probably aspsx
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EA48C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EA48C);
|
||||
#else
|
||||
extern const char aBaslus00067dra[];
|
||||
|
||||
@ -511,7 +491,7 @@ void func_800EA5AC(u16 arg0, u8 arg1, u8 arg2, u8 arg3) {
|
||||
}
|
||||
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EA5E4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EA5E4);
|
||||
#else
|
||||
extern s32 D_8003C78C;
|
||||
extern s32* D_800A3BB8[];
|
||||
@ -578,9 +558,9 @@ void func_800EA5E4(s32 arg0) {
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EA720);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EA720);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EA7CC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EA7CC);
|
||||
|
||||
s32 func_800EAD0C(void) { // the return type is needed for matching
|
||||
func_800EA5E4(4);
|
||||
@ -645,7 +625,7 @@ void func_800EAEEC(void) {
|
||||
func_800EAEA4();
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EAF28);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EAF28);
|
||||
|
||||
void func_800EAFC8(s32 arg0) {
|
||||
u8 temp = arg0;
|
||||
@ -675,15 +655,15 @@ u32 func_800EB03C(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EB098);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EB098);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EB314);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EB314);
|
||||
|
||||
void func_800EB4F8(PixPattern* pix, s32 bitDepth, s32 x, s32 y) {
|
||||
LoadTPage(pix + 1, bitDepth, 0, x, y, (int)pix->w, (int)pix->h);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EB534);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EB534);
|
||||
|
||||
void func_800EB6B4(void) {
|
||||
s32 i;
|
||||
@ -708,7 +688,7 @@ bool func_800EB720(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EB758);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EB758);
|
||||
|
||||
// clears out each entity struct 1 byte at a time
|
||||
void func_800EBB70(void) {
|
||||
@ -727,11 +707,11 @@ void func_800EBB70(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EBBAC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EBBAC);
|
||||
|
||||
// The loop at the end is weird, the rest is matching
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800ECBF8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800ECBF8);
|
||||
#else
|
||||
typedef struct {
|
||||
s16 unk00, unk02;
|
||||
@ -841,11 +821,11 @@ void func_800ECE2C(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800ECE58);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800ECE58);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", SetRoomForegroundLayer);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", SetRoomForegroundLayer);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", SetRoomBackgroundLayer);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", SetRoomBackgroundLayer);
|
||||
|
||||
extern Unkstruct_8003C794* D_8003C794;
|
||||
|
||||
@ -905,7 +885,7 @@ DR_ENV* func_800EDB08(POLY_GT4* poly) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EDB58);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EDB58);
|
||||
|
||||
s32 AllocPolygons(u8 primitives, s32 count) {
|
||||
s32 polyIndex = 0;
|
||||
@ -996,13 +976,13 @@ void FreePolygons(s32 polygonIndex) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EDEDC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EDEDC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", CheckCollision);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", CheckCollision);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800EFBF8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800EFBF8);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F0334);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F0334);
|
||||
|
||||
extern Unkstruct_aSimCBinDemoKey aSimCBinDemoKey;
|
||||
|
||||
@ -1052,7 +1032,7 @@ void func_800F0578(s32 arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F0608);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F0608);
|
||||
|
||||
typedef struct {
|
||||
s32 foo[5];
|
||||
@ -1081,10 +1061,10 @@ loop_1:
|
||||
goto loop_1;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F0940);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F0940);
|
||||
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", SetNextRoomToLoad);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", SetNextRoomToLoad);
|
||||
#else
|
||||
bool SetNextRoomToLoad(u32 chunkX, u32 chunkY) {
|
||||
RoomLoadDef* pRoomLoad;
|
||||
@ -1117,7 +1097,7 @@ loop_3:
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F0CD8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F0CD8);
|
||||
|
||||
void func_800F1424(void) {
|
||||
if (D_8009749C[0] & 8) {
|
||||
@ -1131,7 +1111,7 @@ void func_800F1424(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F14CC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F14CC);
|
||||
|
||||
s32 func_800F16D0(void) {
|
||||
if (D_8003C730 != 0)
|
||||
@ -1171,9 +1151,9 @@ u8 func_800F17C8(s8 arg0[], s32 arg1, s32 arg2) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F180C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F180C);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F1868);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F1868);
|
||||
|
||||
void func_800F18C4(s32 arg0, s32 arg1) {
|
||||
s8 sp10[20];
|
||||
@ -1190,7 +1170,7 @@ void func_800F18C4(s32 arg0, s32 arg1) {
|
||||
func_800F1868(arg0, arg1, &sp10);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F1954);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F1954);
|
||||
|
||||
void func_800F1A3C(s32 arg0) {
|
||||
if (arg0 == 0) {
|
||||
@ -1210,20 +1190,20 @@ void func_800F1A3C(s32 arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F1B08);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F1B08);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F1D54);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F1D54);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F1EB0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F1EB0);
|
||||
|
||||
void func_800F1FC4(s32 arg0) {
|
||||
func_800F1EB0((playerX >> 8) + g_CurrentRoomLeft,
|
||||
(playerY >> 8) + g_CurrentRoomTop, arg0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F2014);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F2014);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F2120);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F2120);
|
||||
|
||||
void func_800F223C(void) {
|
||||
g_mapProgramId ^= 0x20;
|
||||
@ -1231,7 +1211,7 @@ void func_800F223C(void) {
|
||||
g_mapProgramId ^= 0x20;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F2288);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F2288);
|
||||
|
||||
void func_800F2404(s32 arg0) {
|
||||
s32* temp;
|
||||
@ -1277,7 +1257,7 @@ void func_800F2404(s32 arg0) {
|
||||
}
|
||||
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F24F4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F24F4);
|
||||
#else
|
||||
void func_801042C4(s32);
|
||||
void func_80105428();
|
||||
@ -1330,7 +1310,7 @@ block_18:
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F2658);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F2658);
|
||||
|
||||
bool func_800F27F4(s32 arg0) {
|
||||
if (arg0 == 0) {
|
||||
@ -1343,11 +1323,11 @@ bool func_800F27F4(s32 arg0) {
|
||||
D_801375C8 = 8;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F2860);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F2860);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F298C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F298C);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F483C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F483C);
|
||||
|
||||
bool IsAlucart(void) {
|
||||
if (CheckEquipmentItemCount(0xA8, 0) && CheckEquipmentItemCount(0xA7, 0) &&
|
||||
@ -1356,9 +1336,9 @@ bool IsAlucart(void) {
|
||||
return false;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F4994);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F4994);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F4D38);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F4D38);
|
||||
|
||||
void func_800F4F48(void) {
|
||||
s32 i;
|
||||
@ -1369,7 +1349,7 @@ void func_800F4F48(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F4FD0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F4FD0);
|
||||
|
||||
void func_800F53A4(void) {
|
||||
func_800F4994();
|
||||
@ -1412,7 +1392,7 @@ bool IsOutsideDrawArea(s32 x0, s32 x1, s32 y0, s32 y1, MenuContext* context) {
|
||||
}
|
||||
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", ScissorPolyG4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", ScissorPolyG4);
|
||||
bool ScissorPolyG4(POLY_G4* arg0, MenuContext* context);
|
||||
#else
|
||||
bool ScissorPolyG4(POLY_G4* poly, MenuContext* context) {
|
||||
@ -1497,7 +1477,7 @@ bool ScissorPolyGT4(POLY_GT4* poly, MenuContext* context) {
|
||||
}
|
||||
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", ScissorSprite);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", ScissorSprite);
|
||||
#else
|
||||
bool ScissorSprite(SPRT* sprite, MenuContext* context) {
|
||||
s16 scissorx0;
|
||||
@ -1543,13 +1523,13 @@ bool ScissorSprite(SPRT* sprite, MenuContext* context) {
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F5904);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F5904);
|
||||
|
||||
void func_800F5A90(void) {
|
||||
func_800F5904(NULL, 96, 96, 64, 64, 0, 0, 0, 0x114, 1, 0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F5AE4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F5AE4);
|
||||
|
||||
void DrawMenuSprite(MenuContext* context, s32 x, s32 y, s32 width, s32 height,
|
||||
s32 u, s32 v, s32 clut, s32 tpage, s32 arg9,
|
||||
@ -1596,7 +1576,7 @@ void DrawMenuSprite(MenuContext* context, s32 x, s32 y, s32 width, s32 height,
|
||||
|
||||
// Matches with gcc 2.6.0 + aspsx 2.3.4
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawMenuRect);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawMenuRect);
|
||||
#else
|
||||
// NOTE: used to draw the menu cursor
|
||||
void DrawMenuRect(MenuContext* context, s32 posX, s32 posY, s32 width,
|
||||
@ -1645,7 +1625,7 @@ void func_800F5E68(MenuContext* context, s32 iOption, s32 x, s32 y, s32 w,
|
||||
DrawMenuRect(context, x, y + (iOption * (h + yGap)), w, h, r, 0, 0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawRelicsMenu);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawRelicsMenu);
|
||||
|
||||
void DrawMenuAlucardPortrait(MenuContext* ctx) {
|
||||
DrawMenuSprite(ctx, 0x10, 0x24, 0x40, 0x40, 0, 0x80, 0x150, 0x9C, 1, 0, 0);
|
||||
@ -1659,7 +1639,7 @@ s32 func_800F62E8(s32 context) {
|
||||
}
|
||||
|
||||
// Apply cloak palette
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6304);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6304);
|
||||
|
||||
void DrawMenuAlucardCloakPreview(MenuContext* ctx) {
|
||||
DrawMenuSprite(ctx, 0xC0, 0x80, 0x20, 0x40, 0, 0xB0, 0x100, 7, 1, 0, 2);
|
||||
@ -1739,7 +1719,7 @@ void DrawMenuChar(char ch, int x, int y, MenuContext* context) {
|
||||
0x196, 0x1E, 1, 0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawMenuStr);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawMenuStr);
|
||||
// https://decomp.me/scratch/S4Dzb
|
||||
|
||||
void DrawMenuInt(s32 digit, s32 x, s32 y, MenuContext* context) {
|
||||
@ -1750,23 +1730,23 @@ void DrawMenuInt(s32 digit, s32 x, s32 y, MenuContext* context) {
|
||||
} while (digit != 0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6998);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6998);
|
||||
|
||||
void func_800F6A48(void) {
|
||||
func_800EA538(6);
|
||||
func_800EA5E4(0x411);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6A70);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6A70);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6BEC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6BEC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6CC0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6CC0);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F6DC8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F6DC8);
|
||||
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawSettingsButton);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawSettingsButton);
|
||||
#else
|
||||
extern s32 g_menuButtonSettingsCursorPos;
|
||||
extern s32 g_menuButtonSettingsConfig[];
|
||||
@ -1843,10 +1823,10 @@ void func_800F7244(void) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F72BC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F72BC);
|
||||
|
||||
#ifndef NON_EQUIVALENT
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawPauseMenu);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawPauseMenu);
|
||||
#else
|
||||
void func_800F622C(MenuContext* context);
|
||||
void func_800F6998(s32, s32 x, s32 y, MenuContext*, s32);
|
||||
@ -2034,9 +2014,9 @@ void DrawPauseMenu(s32 arg0) {
|
||||
}
|
||||
#endif
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawSpellMenu);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawSpellMenu);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F7F64);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F7F64);
|
||||
|
||||
void func_800F82F4(void) {
|
||||
RECT dstRect;
|
||||
@ -2053,9 +2033,9 @@ void func_800F82F4(void) {
|
||||
LoadImage(&dstRect, (u_long*)g_imgUnk8013C270->data);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", DrawSystemMenu);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", DrawSystemMenu);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F84CC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F84CC);
|
||||
|
||||
void func_800F86E4(void) {
|
||||
s32 i;
|
||||
@ -2114,13 +2094,13 @@ void func_800F892C(s32 index, s32 x, s32 y, MenuContext* context) {
|
||||
((index & 0xF8) * 2) | 0x80, index + 0x1D0, 0x1A, 1, 0);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F8990); // Draw menu inventory
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F8990); // Draw menu inventory
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F8C98);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F8C98);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F8E18);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F8E18);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F8F28);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F8F28);
|
||||
|
||||
void func_800F9690(void) {
|
||||
POLY_GT4* poly = &D_80086FEC[D_8013783C];
|
||||
@ -2200,9 +2180,9 @@ void func_800F9808(u32 arg0) {
|
||||
LoadTPage(oldPos, 0, 0, 0x180, arg0, temp_s0 + 256, 16);
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F98AC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F98AC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F99B8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F99B8);
|
||||
|
||||
void func_800F9D40(s32 arg0, s32 arg1, s32 arg2) {
|
||||
if (arg2 != 0) {
|
||||
@ -2235,21 +2215,21 @@ void func_800F9DD0(u8* arg0, u8* arg1) {
|
||||
}
|
||||
|
||||
// https://decomp.me/scratch/VmuNt 99.46%
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F9E18);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F9E18);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800F9F40);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800F9F40);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA034);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA034);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA3C4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA3C4);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA60C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA60C);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA7E8);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA7E8);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA8C4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA8C4);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FA9DC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FA9DC);
|
||||
|
||||
void func_800FAB1C(void) {
|
||||
Entity* entity = &g_EntityArray[UNK_ENTITY_4];
|
||||
@ -2320,19 +2300,19 @@ void func_800FAD34(s32 arg0, u8 arg1, u16 arg2, u16 arg3) {
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FADC0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FADC0);
|
||||
|
||||
void func_800FAE98(void) {
|
||||
func_800FADC0();
|
||||
D_800978F8 = 0x40;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FAEC4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FAEC4);
|
||||
|
||||
// https://decomp.me/scratch/HEhaF by @pixel-stuck
|
||||
// matches with gcc 2.6.0 + aspsx 2.3.4
|
||||
#ifndef NON_MATCHING
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FAF44);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FAF44);
|
||||
#else
|
||||
void func_800FAF44(s32 arg0) {
|
||||
s32 var_a0;
|
||||
@ -2397,7 +2377,7 @@ void func_800FB0FC(void) {
|
||||
func_800FB004();
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FB160);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FB160);
|
||||
|
||||
bool func_800FB1EC(s32 arg0) {
|
||||
if (D_801375CC.unk0 == 0) {
|
||||
@ -2412,18 +2392,18 @@ bool func_800FB1EC(s32 arg0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FB23C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FB23C);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FB9BC);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FB9BC);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FBAC4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FBAC4);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FBC24);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FBC24);
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FD39C);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FD39C);
|
||||
|
||||
// https://decomp.me/scratch/XEzwM
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FD4C0);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FD4C0);
|
||||
|
||||
bool func_800FD5BC(Unkstruct_800FD5BC* arg0) {
|
||||
s32 temp;
|
||||
@ -2456,7 +2436,7 @@ extern Unkstruct_800A4B12 D_800A4B12[];
|
||||
|
||||
u8 func_800FD688(s32 arg0) { return D_800A4B12[g_playerEquip[arg0]].unk0; }
|
||||
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/47384", func_800FD6C4);
|
||||
INCLUDE_ASM("asm/dra/nonmatchings/4768C", func_800FD6C4);
|
||||
|
||||
u8* func_800FD744(s32 context) {
|
||||
u8* phi_v0 = &D_80097A8D;
|
Loading…
Reference in New Issue
Block a user