From 05962446492c0ce372db8c91ddab3cf1a77ea6a0 Mon Sep 17 00:00:00 2001 From: Luciano Ciccariello Date: Fri, 3 Feb 2023 15:38:48 +0000 Subject: [PATCH] Asset extraction and build experimentation --- Makefile | 8 +++++--- config/splat.dra.yaml | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 20bc8521c..7b697f7e1 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,7 @@ CPP_FLAGS += -Dmips -D__GNUC__=2 -D__OPTIMIZE__ -D__mips__ -D__mips -Dpsx # Directories ASM_DIR := asm SRC_DIR := src +ASSETS_DIR := assets INCLUDE_DIR := include BUILD_DIR := build DISK_DIR := $(BUILD_DIR)/disk @@ -61,6 +62,7 @@ define list_src_files $(foreach dir,$(ASM_DIR)/$(1)/psxsdk,$(wildcard $(dir)/**.s)) $(foreach dir,$(SRC_DIR)/$(1),$(wildcard $(dir)/**.c)) $(foreach dir,$(SRC_DIR)/$(1)/psxsdk,$(wildcard $(dir)/**.c)) + $(foreach dir,$(ASSETS_DIR)/$(1),$(wildcard $(dir)/**.bin)) endef define list_o_files @@ -211,9 +213,9 @@ mad_patch: find src/st/mad -type f -name "*.c" -print0 | xargs -0 sed -i $(MAD_PATCHES) st%_dirs: - $(foreach dir,$(ASM_DIR)/st/$* $(ASM_DIR)/st/$*/data $(SRC_DIR)/st/$*,$(shell mkdir -p $(BUILD_DIR)/$(dir))) + $(foreach dir,$(ASM_DIR)/st/$* $(ASM_DIR)/st/$*/data $(SRC_DIR)/st/$* $(ASSETS_DIR)/st/$*,$(shell mkdir -p $(BUILD_DIR)/$(dir))) %_dirs: - $(foreach dir,$(ASM_DIR)/$* $(ASM_DIR)/$*/data $(SRC_DIR)/$*,$(shell mkdir -p $(BUILD_DIR)/$(dir))) + $(foreach dir,$(ASM_DIR)/$* $(ASM_DIR)/$*/data $(SRC_DIR)/$* $(ASSETS_DIR)/$*,$(shell mkdir -p $(BUILD_DIR)/$(dir))) $(BUILD_DIR)/st%.elf: $$(call list_o_files,st/$$*) $(call link,st$*,$@) @@ -289,7 +291,7 @@ $(SOTNDISK): $(GO) $(BUILD_DIR)/%.s.o: %.s $(AS) $(AS_FLAGS) -o $@ $< $(BUILD_DIR)/%.bin.o: %.bin - $(LD) -r -b binary -o -Map %.map $@ $< + $(LD) -r -b binary -Map %.map -o $@ $< $(BUILD_DIR)/%.c.o: %.c $(ASPATCH) $(CPP) $(CPP_FLAGS) $< | $(CC) $(CC_FLAGS) | $(ASPATCH) | $(AS) $(AS_FLAGS) -o $@ diff --git a/config/splat.dra.yaml b/config/splat.dra.yaml index 5eb9f8bb8..844a638e8 100644 --- a/config/splat.dra.yaml +++ b/config/splat.dra.yaml @@ -28,8 +28,8 @@ segments: - [0x518, rodata] - [0x1F18, rodata] - [0x2BC0, rodata] - - [0x4B04, rodata, equipment_data] - - [0x7718, rodata, accessory_data] + - [0x4B04, bin, equipment_data] + - [0x7718, bin, accessory_data] - [0x8000, rodata] - [0x8900, rodata] - [0xCEB0, rodata]