Inside the Asylum (#50)

This commit is contained in:
Allison Mackenzie 2023-10-15 15:06:33 -05:00 committed by GitHub
parent 146ab31507
commit cbb0e37f4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 150 additions and 5 deletions

View File

@ -19,6 +19,7 @@ OVL_GY1 := gy1
OVL_GY2 := gy2
OVL_HH := hh
OVL_HR := hr
OVL_IA := ia
OVL_LANDMAP := landmap
OVL_PG := pg
OVL_SF := sf
@ -119,7 +120,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 hh hr landmap pg sf sv zl
overlays: ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 hh hr ia landmap pg sf sv zl
ac: ovlac_dirs $(BUILD_DIR)/AC.BIN
$(BUILD_DIR)/AC.BIN: $(BUILD_DIR)/ovlac.elf
@ -181,6 +182,10 @@ hr: ovlhr_dirs $(BUILD_DIR)/HR.BIN
$(BUILD_DIR)/HR.BIN: $(BUILD_DIR)/ovlhr.elf
$(OBJCOPY) -O binary $< $@
ia: ovlia_dirs $(BUILD_DIR)/IA.BIN
$(BUILD_DIR)/IA.BIN: $(BUILD_DIR)/ovlia.elf
$(OBJCOPY) -O binary $< $@
landmap: ovllandmap_dirs $(BUILD_DIR)/LANDMAP.BIN
$(BUILD_DIR)/LANDMAP.BIN: $(BUILD_DIR)/ovllandmap.elf
$(OBJCOPY) -O binary $< $@
@ -228,7 +233,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_ovlhh extract_ovlhr 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_ovlhr extract_ovlia extract_ovllandmap extract_ovlpg extract_ovlsf extract_ovlsv extract_ovlzl
## Main
extract_main:
@ -264,6 +269,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 hh hr landmap pg sf sv zl
.PHONY: main game ac ag cc ch cr credits dc ee eh gg gs gy1 gy2 hh hr ia landmap pg sf sv zl
.PHONY: %_dirs
.PHONY: extract, extract_%

View File

@ -15,6 +15,7 @@ d0e17f3e271e98c4b9ac0ff26e44a529a1f67182 build/GS.BIN
0de8a92afb3823b56b7818083ba75b9f6d98e015 build/GY2.BIN
991b047edbbc62bd6532be146d9401a60f65defc build/HH.BIN
7ee70db9b39e3bea66cf8934911880b52dd91289 build/HR.BIN
4584571a6ff512a7418432f29de8146bef4e51f8 build/IA.BIN
021af3a550f58046073a75f6d4f9d0dd462748da build/LANDMAP.BIN
ab7967451c8395c76bdc683b78d42bd60e47405d build/PG.BIN
3a9943f5922c2bcd8a5960bf29c738a705d15eac build/SF.BIN

View File

@ -2,7 +2,7 @@ name: GS.BIN
sha1: d0e17f3e271e98c4b9ac0ff26e44a529a1f67182
options:
platform: psx
basename: ovls
basename: ovlgs
base_path: ..
build_path: build/
target_path: disk/OVERLAYS/GS.BIN

View File

@ -2,7 +2,7 @@ name: HR.BIN
sha1: 7ee70db9b39e3bea66cf8934911880b52dd91289
options:
platform: psx
basename: ovls
basename: ovlhr
base_path: ..
build_path: build/
target_path: disk/OVERLAYS/HR.BIN

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

@ -0,0 +1,40 @@
name: IA.BIN
sha1: 4584571a6ff512a7418432f29de8146bef4e51f8
options:
platform: psx
basename: ovlia
base_path: ..
build_path: build/
target_path: disk/OVERLAYS/IA.BIN
asm_path: asm/ovl/ia
asset_path: assets/ovl/ia
src_path: src/ovl/ia
compiler: GCC
symbol_addrs_path: config/symbols.ovlia.txt
undefined_funcs_auto_path: config/undefined_funcs_auto.ovlia.txt
undefined_syms_auto_path: config/undefined_syms_auto.ovlia.txt
ld_script_path: config/ld/ovlia.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: ovlia
type: code
start: 0x00000000
vram: 0x80010000
subsegments:
- [0x0, rodata]
- [0xB8, c]
- [0x2E48, data]
- [0x57F0]

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

99
src/ovl/ia/B8.c Normal file
View File

@ -0,0 +1,99 @@
#include "common.h"
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800100B8);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010140);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001016C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010194);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800101E4);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001035C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800104DC);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001055C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001059C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010798);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800107D8);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010924);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800109F0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010B7C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010C08);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010C64);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010CEC);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010D48);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80010EA0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011054);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800112C8);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001131C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011360);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011480);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011560);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800116E0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800117F0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011908);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001194C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011A04);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011A34);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011A84);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011ABC);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011BB0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011CB8);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011DE0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011F90);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80011FEC);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012310);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800124B4);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_8001257C);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_800125D0);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012738);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012AA4);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012B68);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012BC4);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012D14);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012D98);
INCLUDE_ASM("asm/ovl/ia/nonmatchings/B8", func_80012E08);