Decompiled more functions

Decompiled data
Before I do something stupid
Build: OK
This commit is contained in:
Ogre 2023-09-16 11:13:02 +02:00
parent a10f6e5db2
commit 704340437d
11 changed files with 742 additions and 57 deletions

View File

@ -5,7 +5,7 @@ TARGET := ogrebattle64
COMPARE ?= 1
NON_MATCHING ?= 0
CHECK ?= 1
VERBOSE ?= 0
VERBOSE ?= 1
PRETTY_PRINTING ?= 1
# Fail early if baserom does not exist
@ -71,7 +71,7 @@ ENDLINE := \n'
IINC := -I include -I $(BUILD_DIR)/include -I lib/libreultra/include/2.0I/
ASFLAGS := -Iinclude -EB -mtune=vr4300 -march=vr4300
CPPFLAGS := $(IINC) -D_LANGUAGE_C -D_FINALROM -DF3DEX_GBI_2 -D_MIPS_SZLONG=32 -nostdinc -mgp32 -mfp32 -mips2
CPPFLAGS := $(IINC) -D_LANGUAGE_C -D_FINALROM -DF3DEX_GBI -DF3DEX_GBI_2 -D_MIPS_SZLONG=32 -nostdinc -mgp32 -mfp32 -mips2
CFLAGS := -c -G0 -mgp32 -mfp32 -mips2
LDFLAGS := -T undefined_syms.txt -T undefined_syms_auto.txt -T undefined_funcs_auto.txt -T undefined_funcs.txt -T $(LD_SCRIPT) -Map $(LD_MAP) --no-check-sections

View File

@ -2,5 +2,6 @@
-Ilib/libreultra/include/2.0I
-D_LANGUAGE_C
-D_FINALROM
-DF3DEX_GBI
-DF3DEX_GBI_2
--target=mips-linux-gnu

View File

@ -495,4 +495,81 @@ extern u8 item_get_field_0x5(u16 arg0);
extern u8 item_get_field_0x8(u16 arg0);
extern u8 item_get_field_0x9(u16 arg0);
void func_80179354(); /* extern */
extern Gfx* PTR_DISPLAY_LIST;
extern Gfx DISPLAY_LIST_80186310[];
extern Gfx DISPLAY_LIST_80186330[];
extern Gfx DISPLAY_LIST_80186320[];
extern Gfx DISPLAY_LIST_80186358[];
extern Gfx DP_FILL_RECT_639x479[];
extern Gfx DL_DRAW_TEX_2560x1920[];
extern Gfx DISPLAY_LIST_801869C8[];
extern Gfx DISPLAY_LIST_80186BD0[];
extern Gfx DISPLAY_LIST_80186D90[];
extern Gfx DISPLAY_LIST_80186E70[];
extern Gfx DISPLAY_LIST_800A9EF0[];
extern Gfx DISPLAY_LIST_80186C60[];
extern Gfx DISPLAY_LIST_80186D00[];
extern Gfx DISPLAY_LIST_80186DD0[];
extern Gfx DISPLAY_LIST_80186E20[];
extern Gfx DISPLAY_LIST_800A96C8[];
extern Gfx DISPLAY_LIST_800A9790[];
extern Gfx DISPLAY_LIST_800A97C8[];
extern Gfx DISPLAY_LIST_800A9810[];
extern Gfx DISPLAY_LIST_8018FA70[];
extern Gfx DISPLAY_LIST_8018FC80[];
extern Gfx DISPLAY_LIST_8018FD10[];
extern Gfx DISPLAY_LIST_8018F3E0[];
extern Gfx DISPLAY_LIST_801EABF0[];
extern Gfx DISPLAY_LIST_801EAC40[];
extern Gfx DISPLAY_LIST_801EB1D0[];
extern Gfx DISPLAY_LIST_801ED650[];
extern Gfx DISPLAY_LIST_801FD0E8[];
extern Gfx DISPLAY_LIST_801FCF70[];
extern Gfx DISPLAY_LIST_801FCF98[];
extern Gfx DISPLAY_LIST_801FD280[];
extern Gfx DISPLAY_LIST_801FD328[];
extern Gfx DISPLAY_LIST_801FD3D0[];
extern Gfx DISPLAY_LIST_801FD3E8[];
extern Gfx DISPLAY_LIST_801FD400[];
extern Gfx DISPLAY_LIST_801FD450[];
extern Gfx DISPLAY_LIST_801FD4A0[];
extern Gfx DISPLAY_LIST_801FD4F0[];
extern Gfx DISPLAY_LIST_801FD598[];
extern Gfx DISPLAY_LIST_801FD5B0[];
extern Gfx DISPLAY_LIST_801FD640[];
extern Gfx DISPLAY_LIST_801FD658[];
extern Gfx DISPLAY_LIST_801FD6F8[];
extern Gfx DISPLAY_LIST_801FD740[];
extern Gfx DISPLAY_LIST_801FD7D0[];
extern Gfx DISPLAY_LIST_801FD7E8[];
extern Gfx DISPLAY_LIST_801FD878[];
extern Gfx DISPLAY_LIST_80213648[];
extern Gfx DISPLAY_LIST_8021F0C0[];
extern Gfx DISPLAY_LIST_8021F108[];
extern Gfx DISPLAY_LIST_80219C48[];
extern Gfx DISPLAY_LIST_80219CD0[];
extern Gfx DISPLAY_LIST_8021ABC0[];
extern Gfx DISPLAY_LIST_8021ABE8[];
extern Gfx DISPLAY_LIST_80216BF0[];
extern Gfx DISPLAY_LIST_80216C70[];
extern Gfx DISPLAY_LIST_80216F18[];
extern Gfx DISPLAY_LIST_8021C6E0[];
extern Gfx DISPLAY_LIST_8021C230[];
extern Gfx DISPLAY_LIST_8021C568[];
extern Gfx DISPLAY_LIST_8021C698[];
extern Gfx DISPLAY_LIST_8022A0B0[];
extern Gfx DISPLAY_LIST_8022A0D0[];
extern Gfx DISPLAY_LIST_80229FB8[];
extern Gfx DISPLAY_LIST_8022A030[];
extern Gfx DISPLAY_LIST_8022A068[];
extern Gfx DISPLAY_LIST_801B8218[];
extern Gfx DISPLAY_LIST_801B8268[];
extern Gfx DISPLAY_LIST_801B82B0[];
extern Gfx DISPLAY_LIST_801B8308[];
extern Gfx DISPLAY_LIST_801B8358[];
extern Gfx DISPLAY_LIST_801B8388[];
#endif

View File

@ -24,17 +24,20 @@
#define INCLUDE_ASM(TYPE, FOLDER, NAME, ARGS...) INCLUDE_ASM_INTERNAL(TYPE, "nonmatchings", FOLDER, NAME, ARGS)
#define INCLUDE_ASM_SHIFT(TYPE, FOLDER, NAME, ARGS...) INCLUDE_ASM_INTERNAL(TYPE, "shiftable", FOLDER, NAME, ARGS)
#define INCLUDE_RODATA(FOLDER, NAME) \
__asm__( \
".section .rodata\n" \
"\t.include \""FOLDER"/"#NAME".s\"\n" \
".section .text" \
)
#define INCLUDE_RODATA(TYPE, FOLDER, NAME, ARGS...) \
__asm__( \
".section .rodata\n" \
"\t.include \"asm/nonmatchings/"FOLDER"/"#NAME".s\"\n" \
".section .text" \
)
#endif
__asm__(".include \"include/macro.inc\"\n");
#else
#define INCLUDE_ASM(TYPE, FOLDER, NAME, ARGS...)
#define INCLUDE_RODATA(TYPE, FOLDER, NAME, ARGS...)
#endif

View File

@ -9,6 +9,7 @@ options:
header_encoding: ASCII
platform: n64
asm_inc_header: ""
include_macro_inc: no # don't write macro.inc to rodata files
# undefined_funcs_auto: True
# undefined_funcs_auto_path: undefined_funcs_auto.txt
# undefined_syms_auto: True
@ -448,46 +449,51 @@ segments:
- [0x49510, asm]
- [0x495E0, asm]
- [0x49820, asm]
- [0x49A30, asm]
- [0x49A30, c]
- [0x4D5C0, c]
- [0x4EF10, asm]
- [0x4EF10, c]
- [0x514B0, c]
- [0x5AC70, asm]
- [0x5AFF0, asm]
- [0x5C060, c]
- [0x5C1D0, asm]
- [0x5C210, rodata]
- [0x5C510, rodata]
- [0x5CD70, rodata]
- [0x5CEF0, rodata]
- [0x5CF00, rodata]
- [0x5CF20, rodata]
- [0x5CF30, rodata]
- [0x5D560, rodata]
- [0x613B0, rodata]
- [0x647F0, rodata]
- [0x650A0, rodata]
- [0x650B0, rodata]
- [0x65220, rodata]
- [0x65230, rodata]
- [0x65260, rodata]
- [0x65280, rodata]
- [0x652A0, rodata]
- [0x65970, rodata]
- [0x659E0, rodata]
- [0x65B00, rodata]
- [0x65B80, rodata]
- [0x65C10, rodata]
- [0x65C50, rodata]
- [0x65CC0, rodata]
- [0x65D60, rodata]
- [0x65DD0, rodata]
- [0x66310, rodata]
- [0x663C0, rodata]
- [0x66570, rodata]
- [0x66B60, rodata]
- [0x66B80, rodata]
- [0x5C210, .data, "dl"]
- [0x5C220, .data, "dl"]
- [0x5C230, .data, "dl"]
- [0x5C280, .data, "dl"]
- [0x5C510, .data, "dl"]
- [0x5C8A0, data]
- [0x5CD70, data]
- [0x5CEF0, data]
- [0x5CF00, data]
- [0x5CF20, data]
- [0x5CF30, data]
- [0x5D560, data]
- [0x5DB10, data]
- [0x613B0, data]
- [0x647F0, data]
- [0x650A0, data]
- [0x650B0, data]
- [0x65220, data]
- [0x65230, data]
- [0x65260, data]
- [0x65280, data]
- [0x652A0, data]
- [0x65970, data]
- [0x659E0, data]
- [0x65B00, data]
- [0x65B80, data]
- [0x65C10, data]
- [0x65C50, data]
- [0x65CC0, data]
- [0x65D60, data]
- [0x65DD0, data]
- [0x66310, data]
- [0x663C0, data]
- [0x66570, data]
- [0x66B60, data]
- [0x66B80, data]
- { start: 0x66E10, type: bss, vram: 0x80190F10 }
@ -808,11 +814,17 @@ segments:
- [0x149A80, asm]
- [0x14AB50, asm]
- [0x14DE90, rodata]
- [0x14E120, rodata]
- [0x14E150, rodata]
- [0x14E1A0, rodata]
- [0x14E370, rodata]
- [0x14DE90, data]
- [0x14E120, data]
- [0x14E150, data]
- [0x14E1A0, data]
- [0x14E370, data]
- [0x14E3E0, .data, "vert"]
- [0x14E460, .data, "vert"]
- [0x14E530, data]
- [0x14E5B0, data]
- [0x14E5E0, data]
- [0x14E720, rodata]
- [0x14E790, rodata]
- [0x14E920, rodata]
@ -867,14 +879,16 @@ segments:
- [0x16ECA0, asm]
- [0x16F990, asm]
- [0x16FB90, rodata]
- [0x16FDA0, rodata]
- [0x16FF40, rodata]
- [0x170100, rodata]
- [0x1701F0, rodata]
- [0x171C60, rodata]
- [0x171E00, rodata]
- [0x171E30, rodata]
- [0x16FB90, data]
- [0x16FDA0, data]
- [0x16FF40, .data, "data_16FF40"]
# - [0x16FF40, data]
- [0x170100, data]
- [0x1701E0, data]
- [0x1701F0, data]
- [0x171C60, data]
- [0x171E00, data]
- [0x171E30, data]
# - { start: 0x171EA0, type: bss, vram: 0x80220E60 }

41
src/49A30.c Normal file
View File

@ -0,0 +1,41 @@
#include <PR/gbi.h>
#include "common.h"
INCLUDE_ASM(const s32, "49A30", func_80173B30);
INCLUDE_ASM(const s32, "49A30", func_80173B40);
INCLUDE_ASM(const s32, "49A30", func_80173B50);
INCLUDE_ASM(const s32, "49A30", func_80173B60);
INCLUDE_ASM(const s32, "49A30", func_80173BA0);
INCLUDE_ASM(const s32, "49A30", func_80173BE0);
INCLUDE_ASM(const s32, "49A30", func_80173C54);
INCLUDE_ASM(const s32, "49A30", func_80173D14);
INCLUDE_ASM(const s32, "49A30", func_80173D4C);
INCLUDE_ASM(const s32, "49A30", func_80173D84);
INCLUDE_ASM(const s32, "49A30", func_80173DBC);
INCLUDE_ASM(const s32, "49A30", func_80174138);
INCLUDE_ASM(const s32, "49A30", func_80174250);
INCLUDE_ASM(const s32, "49A30", func_801758C0);
INCLUDE_ASM(const s32, "49A30", func_801768D4);
INCLUDE_ASM(const s32, "49A30", func_80176948);
INCLUDE_ASM(const s32, "49A30", func_80176C6C);
INCLUDE_ASM(const s32, "49A30", func_80176F90);
INCLUDE_ASM(const s32, "49A30", func_801772C0);

83
src/4EF10.c Normal file
View File

@ -0,0 +1,83 @@
#include "common.h"
void func_80179010(void) { }
// INCLUDE_ASM(const s32, "4EF10", func_80179018);
/* 4EF18 80179018 */
void func_80179018(void) {
func_80179354();
}
// INCLUDE_ASM(const s32, "4EF10", func_80179034);
extern void func_801793AC();
/* 4EF34 80179034 */
void func_80179034(void) {
func_801793AC();
}
void func_80179050(void) { }
void func_80179058(void) { }
INCLUDE_ASM(const s32, "4EF10", func_80179060);
INCLUDE_ASM(const s32, "4EF10", func_8017907C);
INCLUDE_ASM(const s32, "4EF10", func_801792BC);
// INCLUDE_ASM(const s32, "4EF10", func_801792E8);
/* 4F1E8 801792E8 */
void func_801792E8(void) {
gSPDisplayList(PTR_DISPLAY_LIST++, DISPLAY_LIST_8018FC80);
func_80179354();
}
INCLUDE_ASM(const s32, "4EF10", func_80179328);
INCLUDE_ASM(const s32, "4EF10", func_80179354);
INCLUDE_ASM(const s32, "4EF10", func_801793AC);
INCLUDE_ASM(const s32, "4EF10", func_801793E4);
INCLUDE_ASM(const s32, "4EF10", func_801794C8);
INCLUDE_ASM(const s32, "4EF10", func_8017996C);
INCLUDE_ASM(const s32, "4EF10", func_80179F04);
INCLUDE_ASM(const s32, "4EF10", func_8017A704);
INCLUDE_ASM(const s32, "4EF10", func_8017A714);
INCLUDE_ASM(const s32, "4EF10", func_8017A720);
INCLUDE_ASM(const s32, "4EF10", func_8017A8E8);
INCLUDE_ASM(const s32, "4EF10", func_8017A94C);
INCLUDE_ASM(const s32, "4EF10", func_8017A9B0);
INCLUDE_ASM(const s32, "4EF10", func_8017AA18);
INCLUDE_ASM(const s32, "4EF10", func_8017AAF4);
INCLUDE_ASM(const s32, "4EF10", func_8017AC08);
INCLUDE_ASM(const s32, "4EF10", func_8017AD3C);
INCLUDE_ASM(const s32, "4EF10", func_8017ADE8);
INCLUDE_ASM(const s32, "4EF10", func_8017AE20);
INCLUDE_ASM(const s32, "4EF10", func_8017B098);
INCLUDE_ASM(const s32, "4EF10", func_8017B500);
INCLUDE_ASM(const s32, "4EF10", func_8017B550);
INCLUDE_ASM(const s32, "4EF10", func_8017B58C);

264
src/dl.c Normal file
View File

@ -0,0 +1,264 @@
#include <ultra64.h>
#include <PR/gbi.h>
#include <PR/mbi.h>
#include "common.h"
// 0xE7000000, 0x00000000 : gsDPPipeSync()
// 0xDF000000, 0x00000000 : gsSPEndDisplayList()
// 0xE0000000, 0x00000000 : gsSPNoOp()
// const int w0 = 0x028001E0;
// const int w1 = 0x01FF0000;
// const int c = _SHIFTR(w0, 24, 8);
// const int where = _SHIFTR(w0, 16, 8);
// const int vtx = _SHIFTR(w0, 0, 16) / 2;
// const int val = w1;
// const u32 w0_ = _SHIFTL(G_MODIFYVTX,24,8)| \
// _SHIFTL((where),16,8)|_SHIFTL((vtx)*2,0,16);
// const u32 w1_ = (unsigned int)(val);
/* 5C210 80186310 */
Gfx DISPLAY_LIST_80186310[] = {
// 0x028001E0, 0x01FF0000
{ 0x028001E0, 0x01FF0000 },
// gsSPModifyVertex(240, 128, 0x1ff0000),
{ 0x028001E0, 0x01FF0000 },
// gsSPModifyVertex(240, 128, 0x1ff0000),
};
/* 5C220 80186320 */
Gfx DISPLAY_LIST_80186320[] = {
// 0x050003C0, 0x01FF0000
{ 0x050003C0, 0x01FF0000 },
// { _SHIFTL(G_TRI1, 24, 8) | 0x000003C0, __gsSP1Triangle_w1f(25.5, 0, 0, 1) },
// 0x050003C0, 0x01FF0000
{ 0x050003C0, 0x01FF0000 },
// { _SHIFTL(G_TRI1, 24, 8) | 0x000003C0, __gsSP1Triangle_w1f(25.5, 0, 0, 1) },
};
/* 5C230 80186330 */
Gfx DISPLAY_LIST_80186330[] = {
gsDma1p(G_MOVEMEM, DISPLAY_LIST_80186310, 8, 8),
gsDPPipeSync(),
gsDPSetScissorFrac(0, 0, 0, 1276, 956),
gsDPPipeSync(),
gsSPEndDisplayList(),
};
/* 5C258 80186358 */
Gfx DISPLAY_LIST_80186358[] = {
gsDma1p(G_MOVEMEM, DISPLAY_LIST_80186320, 8, 8),
gsDPPipeSync(),
gsDPSetScissorFrac(0, 0, 0, 2560, 1920),
gsDPPipeSync(),
gsSPEndDisplayList(),
};
/* 5C280 80186380 */
Gfx DP_FILL_RECT_639x479[] = {
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 0, 639, 29),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 30, 639, 59),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 60, 639, 89),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 90, 639, 119),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 120, 639, 149),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 150, 639, 179),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 180, 639, 209),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 210, 639, 239),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 240, 639, 269),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 270, 639, 299),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 300, 639, 329),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 330, 639, 359),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 360, 639, 389),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 390, 639, 419),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 420, 639, 449),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsDPFillRectangle(0, 450, 639, 479),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsSPEndDisplayList(),
};
/* 5C510 80186610 */
Gfx DL_DRAW_TEX_2560x1920[] = {
gsSPNoOp(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 0, 2560, 120, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 120, 2560, 240, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 240, 2560, 360, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 360, 2560, 480, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 480, 2560, 600, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 600, 2560, 720, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 720, 2560, 840, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 840, 2560, 960, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 960, 2560, 1080, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1080, 2560, 1200, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1200, 2560, 1320, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1320, 2560, 1440, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1440, 2560, 1560, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1560, 2560, 1680, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1680, 2560, 1800, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsDPPipeSync(),
gsSPTextureRectangle(0, 1800, 2560, 1920, 0, 0, 0, 0, 0),
gsDPPipeSync(),
gsSPNoOp(),
gsDPPipeSync(),
gsSPEndDisplayList(),
};
// /* 65970 8018FA70 */
// const Gfx DISPLAY_LIST_8018FA70[] = {
//
// gsDPPipeSync(),
//
// gsDPPipeSync(),
// // 0xE3000A01, 0x00000000
// gsSPSetOtherMode(G_SETOTHERMODE_H, 10, 1, 0x0),
//
// gsDPPipeSync(),
// // 0xD9000000, 0x00000000
// { 0xD9000000, 0x00000000 },
// // 0xD9FFFFFF, 0x00200404
// { 0xD9FFFFFF, 0x00200404 },
// // 0xE200001C, 0x0F0A4000
// gsSPSetOtherMode(G_SETOTHERMODE_L, 0, 28, 0x0F0A4000),
// // 0xFC121824, 0xFF33FFFF
// gsDPSetCombine(0x121824,0xFF33FFFF),
// // 0xE3000C00, 0x00080000
// gsSPSetOtherMode(G_SETOTHERMODE_H, 12, 0, 0x80000),
// // 0xE2001E01, 0x00000000
// gsSPSetOtherMode(G_SETOTHERMODE_L, 30, 1, 0x0),
// // 0xDE000000, 0x80186330
// gsSPDisplayList(0x80186330),
// // 0xD7000002, 0x80008000
// gsSPTexture(0x8000, 0x8000, 0, 0, 2),
//
// gsDPPipeSync(),
//
// gsSPEndDisplayList(),
// };

47
src/overlay_145210/vert.c Normal file
View File

@ -0,0 +1,47 @@
#include <ultra64.h>
#include "PR/gbi.h"
#include "common.h"
/* 14E3E0 801FD200 */
Vtx __MAYBE_VERTICES_801FD200[] = {
{ -16, 29, 0, 0, 0, 0, 0, 0, 0, 255 },
{ -16, 13, 0, 0, 0, 1024, 0, 0, 0, 255 },
{ -16, 1, 0, 0, 0, 1792, 0, 0, 0, 0 },
{ -16, -3, 0, 0, 0, 1984, 0, 0, 0, 0 },
{ 16, -3, 0, 0, 1984, 1984, 0, 0, 0, 0 },
{ 16, 1, 0, 0, 1984, 1792, 0, 0, 0, 0 },
{ 16, 13, 0, 0, 1984, 1024, 0, 0, 0, 255 },
{ 16, 29, 0, 0, 1984, 0, 0, 0, 0, 255 },
};
/* 14E460 801FD280 */
Gfx DISPLAY_LIST_801FD280[] = {
{ 0x01008010, /* __MAYBE_VERTICES_801FD200 */ 0x801FD200 },
gsSP1Quadrangle(0, 1, 6, 7, 0),
gsSP1Quadrangle(1, 2, 5, 6, 0),
gsSP1Quadrangle(2, 3, 4, 5, 0),
gsSPEndDisplayList(),
};
/* 14E488 801FD2A8 */
Vtx __MAYBE_VERTICES_801FD2A8[] = {
{ -16, 29, 0, 0, 1984, 0, 0, 0, 0, 255 },
{ -16, 13, 0, 0, 1984, 1024, 0, 0, 0, 255 },
{ -16, 1, 0, 0, 1984, 1792, 0, 0, 0, 0 },
{ -16, -3, 0, 0, 1984, 1984, 0, 0, 0, 0 },
{ 16, -3, 0, 0, 0, 1984, 0, 0, 0, 0 },
{ 16, 1, 0, 0, 0, 1792, 0, 0, 0, 0 },
{ 16, 13, 0, 0, 0, 1024, 0, 0, 0, 255 },
{ 16, 29, 0, 0, 0, 0, 0, 0, 0, 255 },
};
/* 14E508 801FD328 */
Gfx DISPLAY_LIST_801FD328[] = {
{ 0x01008010, /* __MAYBE_VERTICES_801FD2A8 */ 0x801FD2A8 },
// gsSPVertex(__MAYBE_VERTICES_801FD2A8 + 0, 4, 0),
gsSP1Quadrangle(0, 1, 6, 7, 0),
gsSP1Quadrangle(1, 2, 5, 6, 0),
gsSP1Quadrangle(2, 3, 4, 5, 0),
gsSPEndDisplayList(),
};

View File

@ -0,0 +1,60 @@
#include <ultra64.h>
#include "PR/gbi.h"
#include "common.h"
extern u32 D_800E91D0;
/* 16FF40 8021EF00 */
void* D_overlay_165FC0_8021EF00_16FF40 = &D_800E91D0;
/* 16FF44 8021EF04 */
u8 D_overlay_165FC0_8021EF04_16FF44 = 0;
/* 16FF45 8021EF05 */
u8 D_overlay_165FC0_8021EF05_16FF45 = 0;
/* 16FF46 8021EF06 */
u16 D_overlay_165FC0_8021EF06_16FF46 = 0;
/* 16FF48 8021EF08 */
Vtx __MAYBE_VERTICES_8021EF08[] = {
{ 0, 0, -6, 0, 1024, 1024, 96, 96, 84, 255 },
{ -4, 4, 6, 0, 1024, 1024, 144, 144, 132, 255 },
{ -4, -4, 6, 0, 1024, 1024, 32, 32, 24, 255 },
{ 4, -4, 6, 0, 1024, 1024, 16, 16, 10, 255 },
{ 4, 4, 6, 0, 1024, 1024, 208, 208, 192, 255 },
{ 0, 0, -9, 0, 1024, 1024, 0, 120, 216, 255 },
{ -5, 5, 6, 0, 1024, 1024, 0, 120, 216, 255 },
{ 5, 5, 6, 0, 1024, 1024, 0, 120, 216, 255 },
{ 0, 0, -9, 0, 1024, 1024, 120, 0, 216, 255 },
{ 5, 5, 6, 0, 1024, 1024, 120, 0, 216, 255 },
{ 5, -5, 6, 0, 1024, 1024, 120, 0, 216, 255 },
{ 0, 0, -9, 0, 1024, 1024, 0, 136, 216, 255 },
{ 5, -5, 6, 0, 1024, 1024, 0, 136, 216, 255 },
{ -5, -5, 6, 0, 1024, 1024, 0, 136, 216, 255 },
{ 0, 0, -9, 0, 1024, 1024, 136, 0, 216, 255 },
{ -5, -5, 6, 0, 1024, 1024, 136, 0, 216, 255 },
{ -5, 5, 6, 0, 1024, 1024, 136, 0, 216, 255 },
{ -5, 5, 6, 0, 1024, 1024, 0, 0, 127, 255 },
{ -5, -5, 6, 0, 1024, 1024, 0, 0, 127, 255 },
{ 5, -5, 6, 0, 1024, 1024, 0, 0, 127, 255 },
{ 5, 5, 6, 0, 1024, 1024, 0, 0, 127, 255 },
};
/* 170098 8021F058 */
Gfx DISPLAY_LIST_8021F058[] = {
gsDPPipeSync(),
gsSPDisplayList(DISPLAY_LIST_801869C8),
gsDPPipeSync(),
gsDPPipeSync(),
{ 0xE3000A01, 00000 },
gsDPPipeSync(),
gsSPTexture(0, 0, 0, 0, 0),
{ 0xD9000000, 00000 },
{ 0xD9FFFFFF, 0x00200405 },
{ 0xE200001C, 0x00552078 },
{ 0xFCFFFFFF, 0xFFFE793C },
gsDPPipeSync(),
gsSPEndDisplayList(),
};

View File

@ -1,3 +1,95 @@
__MAYBE_VERTICES_801FD200 = 0x801FD200; // rom:0x14E3E0
__MAYBE_VERTICES_801FD2A8 = 0x801FD2A8; // rom:0x14E488
__MAYBE_VERTICES_801FD350 = 0x801FD350; // rom:0x14E530
__MAYBE_VERTICES_801FD558 = 0x801FD558; // rom:0x14E738
__MAYBE_VERTICES_801FD600 = 0x801FD600; // rom:0x14E7E0
__MAYBE_VERTICES_801FD790 = 0x801FD790; // rom:0x14E970
__MAYBE_VERTICES_801FD838 = 0x801FD838; // rom:0x14EA18
__MAYBE_VERTICES_8021EF08 = 0x8021EF08; // rom:0x16FF48
__MAYBE_VERTICES_8021C588 = 0x8021C588; // rom:0x1B9C78
PTR_DISPLAY_LIST = 0x800E9BA0;
DISPLAY_LIST_80186310 = 0x80186310; // rom:0x5C210
DISPLAY_LIST_80186330 = 0x80186330; // rom:0x5C230
DISPLAY_LIST_80186320 = 0x80186320; // rom:0x5C220
DISPLAY_LIST_80186358 = 0x80186358; // rom:0x5C258
DP_FILL_RECT_639x479 = 0x80186380; // rom:0x5C280
DL_DRAW_TEX_2560x1920 = 0x80186610; // rom:0x5C510
DISPLAY_LIST_801869C8 = 0x801869C8; // rom:0x5C8C8
DISPLAY_LIST_80186BD0 = 0x80186BD0; // rom:0x5CAD0
DISPLAY_LIST_80186D90 = 0x80186D90; // rom:0x5CC90
DISPLAY_LIST_80186E70 = 0x80186E70; // rom:0x5CD70
DISPLAY_LIST_800A9EF0 = 0x800A9EF0; // rom:0x3A2F0
DISPLAY_LIST_80186C60 = 0x80186C60; // rom:0x5CB60
DISPLAY_LIST_80186D00 = 0x80186D00; // rom:0x5CC00
DISPLAY_LIST_80186DD0 = 0x80186DD0; // rom:0x5CCD0
DISPLAY_LIST_80186E20 = 0x80186E20; // rom:0x5CD20
DISPLAY_LIST_800A96C8 = 0x800A96C8; // rom:0x39AC8
DISPLAY_LIST_800A9790 = 0x800A9790; // rom:0x39B90
DISPLAY_LIST_800A97C8 = 0x800A97C8; // rom:0x39BC8
DISPLAY_LIST_800A9810 = 0x800A9810; // rom:0x39C10
DISPLAY_LIST_8018FA70 = 0x8018FA70; // rom:0x65970
DISPLAY_LIST_8018FC80 = 0x8018FC80; // rom:0x65B80
DISPLAY_LIST_8018FD10 = 0x8018FD10; // rom:0x65C10
DISPLAY_LIST_8018F3E0 = 0x8018F3E0; // rom:0x652E0
DISPLAY_LIST_801EABF0 = 0x801EABF0; // rom:0x13F330
DISPLAY_LIST_801EAC40 = 0x801EAC40; // rom:0x13F380
DISPLAY_LIST_801EB1D0 = 0x801EB1D0; // rom:0x13F910
DISPLAY_LIST_801ED650 = 0x801ED650; // rom:0x141D90
DISPLAY_LIST_801FD0E8 = 0x801FD0E8; // rom:0x14E2C8
DISPLAY_LIST_801FCF70 = 0x801FCF70; // rom:0x14E150
DISPLAY_LIST_801FCF98 = 0x801FCF98; // rom:0x14E178
DISPLAY_LIST_801FD280 = 0x801FD280; // rom:0x14E460
DISPLAY_LIST_801FD328 = 0x801FD328; // rom:0x14E508
DISPLAY_LIST_801FD3D0 = 0x801FD3D0; // rom:0x14E5B0
DISPLAY_LIST_801FD3E8 = 0x801FD3E8; // rom:0x14E5C8
DISPLAY_LIST_801FD400 = 0x801FD400; // rom:0x14E5E0
DISPLAY_LIST_801FD450 = 0x801FD450; // rom:0x14E630
DISPLAY_LIST_801FD4A0 = 0x801FD4A0; // rom:0x14E680
DISPLAY_LIST_801FD4F0 = 0x801FD4F0; // rom:0x14E6D0
DISPLAY_LIST_801FD598 = 0x801FD598; // rom:0x14E778
DISPLAY_LIST_801FD5B0 = 0x801FD5B0; // rom:0x14E790
DISPLAY_LIST_801FD640 = 0x801FD640; // rom:0x14E820
DISPLAY_LIST_801FD658 = 0x801FD658; // rom:0x14E838
DISPLAY_LIST_801FD6F8 = 0x801FD6F8; // rom:0x14E8D8
DISPLAY_LIST_801FD740 = 0x801FD740; // rom:0x14E920
DISPLAY_LIST_801FD7D0 = 0x801FD7D0; // rom:0x14E9B0
DISPLAY_LIST_801FD7E8 = 0x801FD7E8; // rom:0x14E9C8
DISPLAY_LIST_801FD878 = 0x801FD878; // rom:0x14EA58
DISPLAY_LIST_80213648 = 0x80213648; // rom:0x1647B8
DISPLAY_LIST_8021F0C0 = 0x8021F0C0; // rom:0x170100
DISPLAY_LIST_8021F108 = 0x8021F108; // rom:0x170148
DISPLAY_LIST_80219C48 = 0x80219C48; // rom:0x17CB98
DISPLAY_LIST_80219CD0 = 0x80219CD0; // rom:0x17CC20
DISPLAY_LIST_8021ABC0 = 0x8021ABC0; // rom:0x185600
DISPLAY_LIST_8021ABE8 = 0x8021ABE8; // rom:0x185628
DISPLAY_LIST_80216BF0 = 0x80216BF0; // rom:0x1A4890
DISPLAY_LIST_80216C70 = 0x80216C70; // rom:0x1A4910
DISPLAY_LIST_80216F18 = 0x80216F18; // rom:0x1A4BB8
DISPLAY_LIST_8021C6E0 = 0x8021C6E0; // rom:0x1B9DD0
DISPLAY_LIST_8021C230 = 0x8021C230; // rom:0x1B9920
DISPLAY_LIST_8021C568 = 0x8021C568; // rom:0x1B9C58
DISPLAY_LIST_8021C698 = 0x8021C698; // rom:0x1B9D88
DISPLAY_LIST_8022A0B0 = 0x8022A0B0; // rom:0x1C31C0
DISPLAY_LIST_8022A0D0 = 0x8022A0D0; // rom:0x1C31E0
DISPLAY_LIST_80229FB8 = 0x80229FB8; // rom:0x1C30C8
DISPLAY_LIST_8022A030 = 0x8022A030; // rom:0x1C3140
DISPLAY_LIST_8022A068 = 0x8022A068; // rom:0x1C3178
DISPLAY_LIST_801B8218 = 0x801B8218; // rom:0x1EE718
DISPLAY_LIST_801B8268 = 0x801B8268; // rom:0x1EE768
DISPLAY_LIST_801B82B0 = 0x801B82B0; // rom:0x1EE7B0
DISPLAY_LIST_801B8308 = 0x801B8308; // rom:0x1EE808
DISPLAY_LIST_801B8358 = 0x801B8358; // rom:0x1EE858
DISPLAY_LIST_801B8388 = 0x801B8388; // rom:0x1EE888
DISPLAY_LIST_8021F058 = 0x8021F058; // rom:0x170098
__SOMETHING_FRAMEBUFFERS = 0x800A9EE0; // rom:0x3A2E0 size:0xC
__something_display_list = 0x80089804; // rom:0x19C04
@ -5,7 +97,7 @@ __SOMETHING_WITH_GFX = 0x800E9BE0; // size:0x18
__MAYBE_DISPLAY_LIST = 0x801B8430; // rom:0x1EE930
FP_CLASS_GET_ITEM = 0x8018B494; // rom:0x61394 size:0x10
FP_CLASS_GET_ITEM = 0x8018B494; // rom:0x61394 size:0x10 type:u32
__restore_zombie_hp_to_max = 0x80219EEC; // rom:0x1B75DC
@ -32,6 +124,8 @@ D_801977D8 = 0x801977D8; // size:0x1E
D_80197710 = 0x80197710; // size:0x64
__CONTAINS_BATTALION_NAME = 0x80196A58; // size:0x94
STR_FATAL_DANCE = 0x80187BC8; // rom:0x5DAC8 type:asciz size:0xc
DEFAULT_BATTALION_NAME = 0x80190EFC; // rom:0x66DFC type:asciz
STR_COMMAND_MOBILE_WALL = 0x80212FF0; // rom:0x164160 type:asciz
@ -77,7 +171,7 @@ STR_ELEMENT_FlAME_BANE = 0x801876F0; // rom:0x5D5F0 type:asciz
D_80187BD4 = 0x80187BD4; // rom:0x5DAD4 type:u32
CLASS_DATA = 0x80187C14; // rom:0x5DB14 size:0x48 type:u32
CLASS_DATA = 0x80187C14; // rom:0x5DB14 size:0x2E68 type:u32
class_get_field_0x2c = 0x8016DBD8; // rom:0x43AD8
class_get_ability_front = 0x8016DC2C; // rom:0x43B2C
class_get_ability_front_hitcount = 0x8016DC80; // rom:0x43B80
@ -102,13 +196,14 @@ class_get_ability_hitcount = 0x8016E338; // rom:0x44238
FORMATION_COMMAND_NAMES = 0x8021315C; // rom:0x1642CC type:char*
ABILITY_DATA = 0x8018AA7C; // rom:0x6097C size:0x10
ABILITY_DATA = 0x8018AA7C; // rom:0x6097C size:0xA20
ability_get_name = 0x8016E440;
ability_get_field_0x4 = 0x8016E458; // rom:0x44358
ability_get_element = 0x8016E470;
FP_EQUIPMENT_GET_RESISTANCE = 0x801EF2B0; // rom:0xDBD10
FP_EQUIPMENT_GET_ALL_STATS = 0x801EF298; // rom:0xDBCF8
EQUIPMENT_TYPE_NAMES = 0x802130A4; // rom:0x164214 type:char*
EQUIPMENT_DATA = 0x8018C40C; // size:0x20
equipment_get_field_0x1b = 0x8016F580; // rom:0x45480