Hall of Heroes (#48)

This commit is contained in:
Allison Mackenzie 2023-10-15 11:17:24 -05:00 committed by GitHub
parent fcf646fdb1
commit a7c6178620
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 210 additions and 3 deletions

View File

@ -17,6 +17,7 @@ OVL_GG := gg
OVL_GS := gs
OVL_GY1 := gy1
OVL_GY2 := gy2
OVL_HH := hh
OVL_LANDMAP := landmap
OVL_PG := pg
OVL_SF := sf
@ -117,7 +118,7 @@ $(BUILD_DIR)/$(GAME).elf: $(call list_o_files,game)
$(foreach dir,$(ASM_DIR)/$* $(ASM_DIR)/$*/data $(SRC_DIR)/$* $(ASSETS_DIR)/$*,$(shell mkdir -p $(BUILD_DIR)/$(dir)))
### Overlays ###
overlays: ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 landmap pg sf sv zl
overlays: ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 hh landmap pg sf sv zl
ac: ovlac_dirs $(BUILD_DIR)/AC.BIN
$(BUILD_DIR)/AC.BIN: $(BUILD_DIR)/ovlac.elf
@ -171,6 +172,10 @@ gy2: ovlgy2_dirs $(BUILD_DIR)/GY2.BIN
$(BUILD_DIR)/GY2.BIN: $(BUILD_DIR)/ovlgy2.elf
$(OBJCOPY) -O binary $< $@
hh: ovlhh_dirs $(BUILD_DIR)/HH.BIN
$(BUILD_DIR)/HH.BIN: $(BUILD_DIR)/ovlhh.elf
$(OBJCOPY) -O binary $< $@
landmap: ovllandmap_dirs $(BUILD_DIR)/LANDMAP.BIN
$(BUILD_DIR)/LANDMAP.BIN: $(BUILD_DIR)/ovllandmap.elf
$(OBJCOPY) -O binary $< $@
@ -218,7 +223,7 @@ expected: check
# Assembly extraction
extract: extract_main extract_game extract_ovlac extract_ovlag extract_ovlcc extract_ovlch extract_ovlcr extract_ovlcredits extract_ovldc extract_ovlee extract_ovleh extract_ovlgg extract_ovlgs extract_ovlgy1 extract_ovlgy2 extract_ovllandmap extract_ovlpg extract_ovlsf extract_ovlsv extract_ovlzl
extract: extract_main extract_game extract_ovlac extract_ovlag extract_ovlcc extract_ovlch extract_ovlcr extract_ovlcredits extract_ovldc extract_ovlee extract_ovleh extract_ovlgg extract_ovlgs extract_ovlgy1 extract_ovlgy2 extract_ovlhh extract_ovllandmap extract_ovlpg extract_ovlsf extract_ovlsv extract_ovlzl
## Main
extract_main:
@ -254,6 +259,6 @@ checkformat:
# Phony
.PHONY: init, all, clean, format, checkformat, check, expected
.PHONY: list_src_files, list_o_files, link
.PHONY: main game ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 landmap pg sf sv zl
.PHONY: main game ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 hh landmap pg sf sv zl
.PHONY: %_dirs
.PHONY: extract, extract_%

View File

@ -13,6 +13,7 @@ fe4dbcaec959c190509508f17f3876640d8279f5 build/GG.BIN
d0e17f3e271e98c4b9ac0ff26e44a529a1f67182 build/GS.BIN
8fc50a18dab3e4fc53fd6927ff00e4e9ead449e0 build/GY1.BIN
0de8a92afb3823b56b7818083ba75b9f6d98e015 build/GY2.BIN
991b047edbbc62bd6532be146d9401a60f65defc build/HH.BIN
021af3a550f58046073a75f6d4f9d0dd462748da build/LANDMAP.BIN
ab7967451c8395c76bdc683b78d42bd60e47405d build/PG.BIN
3a9943f5922c2bcd8a5960bf29c738a705d15eac build/SF.BIN

40
config/splat.ovlhh.yaml Normal file
View File

@ -0,0 +1,40 @@
name: HH.BIN
sha1: 991b047edbbc62bd6532be146d9401a60f65defc
options:
platform: psx
basename: ovlhh
base_path: ..
build_path: build/
target_path: disk/OVERLAYS/HH.BIN
asm_path: asm/ovl/hh
asset_path: assets/ovl/hh
src_path: src/ovl/hh
compiler: GCC
symbol_addrs_path: config/symbols.ovlhh.txt
undefined_funcs_auto_path: config/undefined_funcs_auto.ovlhh.txt
undefined_syms_auto_path: config/undefined_syms_auto.ovlhh.txt
ld_script_path: config/ld/ovlhh.ld
find_file_boundaries: yes
use_legacy_include_asm: no
migrate_rodata_to_functions: yes
asm_jtbl_label_macro: jlabel
section_order:
- ".rodata"
- ".text"
- ".data"
subalign: 2
rodata_string_guesser_level: 2
data_string_guesser_level: 2
segments:
- name: ovlhh
type: code
start: 0x00000000
vram: 0x80010000
subsegments:
- [0x0, rodata]
- [0x88, c]
- [0x4AB0, data]
- [0xC1EC]

0
config/symbols.ovlhh.txt Normal file
View File

161
src/ovl/hh/88.c Normal file
View File

@ -0,0 +1,161 @@
#include "common.h"
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80010088);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80010208);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800102BC);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800102E8);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800115B0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011894);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800119C0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011A68);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011D18);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011EE0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011F14);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011F48);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80011FF4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001206C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800121E0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012274);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012350);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800123C4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800124F4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012524);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012600);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012784);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800128D4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012BFC);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80012D68);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001301C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800130C4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800130FC);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013104);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013164);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013194);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800131E0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013374);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800133A0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800133D0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013408);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013444);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013500);
void func_80013528(void) {
}
void func_80013530(void) {
}
void func_80013538(void) {
}
void func_80013540(void) {
}
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013548);
void func_8001360C(void) {
}
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013614);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013678);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800136A4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800136D4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001370C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800137B4);
void func_800137DC(void) {
}
void func_800137E4(void) {
}
void func_800137EC(void) {
}
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800137F4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001381C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001399C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013A18);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013B7C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013C94);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013CD8);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013D04);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013D38);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013EE0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80013F44);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001414C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014190);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800141B0);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014214);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014300);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014368);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800143A8);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014660);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800148DC);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_8001494C);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_800149F4);
INCLUDE_ASM("asm/ovl/hh/nonmatchings/88", func_80014A38);