Modified Makefile to do everything required to build the final compressed rom
This commit is contained in:
parent
820f99a9b8
commit
ed5a735642
50
Makefile
50
Makefile
|
@ -110,9 +110,11 @@ C_DEPS := $(C_OBJS:.o=.d)
|
|||
ASM_OBJS := $(addprefix $(BUILD_DIR)/,$(ALL_ASM_SRCS:.s=.s.o) $(NEW_ASM_SRCS:.s=.s.o))
|
||||
BOOT_ASM_OBJS := $(addprefix $(BUILD_DIR)/,$(BOOT_ASM_SRCS:.s=.s.o))
|
||||
BIN_OBJS := $(addprefix $(BUILD_DIR)/,$(ALL_BINS:.bin=.bin.o) $(NEW_BINS:.bin=.bin.o))
|
||||
Z64 := $(addprefix $(BUILD_DIR)/,$(BASENAME).$(VERSION).uncompressed.z64)
|
||||
PRELIM_Z64 := $(addprefix $(BUILD_DIR)/,$(BASENAME).$(VERSION).prelim.z64)
|
||||
PRELIM_ELF := $(PRELIM_Z64:.z64=.elf)
|
||||
UNCOMPRESSED_Z64 := $(addprefix $(BUILD_DIR)/,$(BASENAME).$(VERSION).uncompressed.z64)
|
||||
FINAL_Z64 := $(addprefix $(BUILD_DIR)/,$(BASENAME).$(VERSION).z64)
|
||||
ELF := $(Z64:.z64=.elf)
|
||||
ELF := $(FINAL_Z64:.z64=.elf)
|
||||
LD_SCRIPT := $(BASENAME).ld
|
||||
BK_BOOT_LD_SCRIPT := bk_boot.ld
|
||||
ASSET_BIN := $(BUILD_DIR)/assets.bin
|
||||
|
@ -245,7 +247,7 @@ $(BUILD_DIR)/%.s.o: %.s | $(ASM_BUILD_DIRS)
|
|||
$(BOOT_ASM_OBJS) : $(BUILD_DIR)/%.s.o : %.s | $(ASM_BUILD_DIRS)
|
||||
$(call print2,Assembling:,$<,$@)
|
||||
@$(GCC) $(GCC_ASFLAGS) $(INCLUDE_CFLAGS) -o $@ $<
|
||||
$(OBJCOPY) --prefix-symbols=boot_ $@
|
||||
@$(OBJCOPY) --prefix-symbols=boot_ $@
|
||||
|
||||
# .bin -> .o
|
||||
$(BIN_OBJS) : $(BUILD_DIR)/%.bin.o : %.bin | $(BIN_BUILD_DIRS)
|
||||
|
@ -337,11 +339,6 @@ $(ASSET_OBJS): $(ASSET_BIN)
|
|||
$(call print2,Objcopying:,$<,$@)
|
||||
@$(OBJCOPY) $(BINOFLAGS) $< $@
|
||||
|
||||
# .o -> .elf (game)
|
||||
$(ELF): $(ALL_OBJS) $(LD_SCRIPT) $(ASSET_OBJS)
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) $(LDFLAGS) -T undefined_syms_auto.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T rzip_dummy_addrs.txt -o $@
|
||||
|
||||
$(BK_BOOT_LD_SCRIPT): $(LD_SCRIPT)
|
||||
sed 's|$(CRC_OBJS)|$(DUMMY_CRC_OBJ)|' $< > $@
|
||||
|
||||
|
@ -353,23 +350,34 @@ $(BUILD_DIR)/bk_boot.elf: $(DUMMY_CRC_OBJ) $(filter-out $(CRC_OBJS),$(MAIN_ALL_O
|
|||
# decompress baserom
|
||||
$(DECOMPRESSED_BASEROM): $(BASEROM) $(BK_ROM_DECOMPRESS)
|
||||
@$(BK_ROM_DECOMPRESS) $< $@
|
||||
|
||||
# .o -> .elf (dummy symbols)
|
||||
$(PRELIM_ELF): $(ALL_OBJS) $(LD_SCRIPT) $(ASSET_OBJS)
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) $(LDFLAGS) -T undefined_syms_auto.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T rzip_dummy_addrs.txt -T emptyLvl_dummy_addrs.txt -o $@
|
||||
|
||||
# generate compressed ROM symbols
|
||||
$(COMPRESSED_SYMBOLS): $(ELF) $(Z64) $(BK_ROM_COMPRESS)
|
||||
@$(BK_ROM_COMPRESS) --symbols $(ELF) $(Z64) $@
|
||||
|
||||
# compress ROM
|
||||
$(FINAL_Z64) : $(ELF) $(Z64) $(BK_ROM_COMPRESS)
|
||||
@$(BK_ROM_COMPRESS) $(ELF) $(Z64) $@
|
||||
|
||||
# .elf -> .z64
|
||||
$(Z64) : $(ELF)
|
||||
#$(OVERLAY_PROG_SVGS) $(MAIN_PROG_SVG) $(TOTAL_PROG_SVG) $(README_MD)
|
||||
# .elf -> .z64 (dummy symbols)
|
||||
$(PRELIM_Z64) : $(PRELIM_ELF)
|
||||
$(call print1,Creating z64:,$@)
|
||||
@$(OBJCOPY) $< $@ -O binary $(OCOPYFLAGS)
|
||||
|
||||
$(COMPRESSED_Z64) : $(Z64) $(ELF) $(BK_ROM_COMPRESS)
|
||||
$(BK_ROM_COMPRESS) --version $(VERSION) --symbols
|
||||
# generate compressed ROM symbols
|
||||
$(COMPRESSED_SYMBOLS): $(PRELIM_ELF) $(PRELIM_Z64) $(BK_ROM_COMPRESS)
|
||||
@$(BK_ROM_COMPRESS) --symbols $(PRELIM_ELF) $(PRELIM_Z64) $@
|
||||
|
||||
# .o -> .elf (game)
|
||||
$(ELF): $(ALL_OBJS) $(LD_SCRIPT) $(ASSET_OBJS) $(COMPRESSED_SYMBOLS)
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) $(LDFLAGS) -T undefined_syms_auto.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T $(COMPRESSED_SYMBOLS) -T emptyLvl_dummy_addrs.txt -o $@
|
||||
|
||||
# .elf -> .z64 (uncompressed)
|
||||
$(UNCOMPRESSED_Z64) : $(ELF)
|
||||
$(call print1,Creating z64:,$@)
|
||||
@$(OBJCOPY) $< $@ -O binary $(OCOPYFLAGS)
|
||||
|
||||
# .z64 (uncompressed) + .elf -> .z64 (final)
|
||||
$(FINAL_Z64) : $(UNCOMPRESSED_Z64) $(ELF) $(BK_ROM_COMPRESS)
|
||||
@$(BK_ROM_COMPRESS) $(ELF) $(UNCOMPRESSED_Z64) $@
|
||||
|
||||
$(BK_TOOLS)/gzip-1.2.4/gzip: $(BK_TOOLS)/gzip-1.2.4/Makefile
|
||||
@$(CD) $(BK_TOOLS)/gzip-1.2.4 && $(MAKE) gzip
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
boot_core1_us_v10_rzip_ROM_START = 0xF19250;
|
||||
boot_core1_us_v10_rzip_ROM_END = 0xF37F90;
|
||||
boot_core2_us_v10_rzip_ROM_START = 0xF37F90;
|
||||
boot_core2_us_v10_rzip_ROM_END = 0xFA3FD0;
|
||||
boot_CC_us_v10_rzip_ROM_START = 0xFA3FD0;
|
||||
boot_CC_us_v10_rzip_ROM_END = 0xFA5F50;
|
||||
boot_MMM_us_v10_rzip_ROM_START = 0xFA5F50;
|
||||
boot_MMM_us_v10_rzip_ROM_END = 0xFA9150;
|
||||
boot_GV_us_v10_rzip_ROM_START = 0xFA9150;
|
||||
boot_GV_us_v10_rzip_ROM_END = 0xFAE860;
|
||||
boot_TTC_us_v10_rzip_ROM_START = 0xFAE860;
|
||||
boot_TTC_us_v10_rzip_ROM_END = 0xFB24A0;
|
||||
boot_MM_us_v10_rzip_ROM_START = 0xFB24A0;
|
||||
boot_MM_us_v10_rzip_ROM_END = 0xFB44E0;
|
||||
boot_BGS_us_v10_rzip_ROM_START = 0xFB44E0;
|
||||
boot_BGS_us_v10_rzip_ROM_END = 0xFB9A30;
|
||||
boot_RBB_us_v10_rzip_ROM_START = 0xFB9A30;
|
||||
boot_RBB_us_v10_rzip_ROM_END = 0xFBEBE0;
|
||||
boot_FP_us_v10_rzip_ROM_START = 0xFBEBE0;
|
||||
boot_FP_us_v10_rzip_ROM_END = 0xFC4810;
|
||||
boot_CCW_us_v10_rzip_ROM_START = 0xFD6190;
|
||||
boot_CCW_us_v10_rzip_ROM_END = 0xFDAA10;
|
||||
boot_SM_us_v10_rzip_ROM_START = 0xFC4810;
|
||||
boot_SM_us_v10_rzip_ROM_END = 0xFC6F20;
|
||||
boot_cutscenes_us_v10_rzip_ROM_START = 0xFC6F20;
|
||||
boot_cutscenes_us_v10_rzip_ROM_END = 0xFC9150;
|
||||
boot_lair_us_v10_rzip_ROM_START = 0xFC9150;
|
||||
boot_lair_us_v10_rzip_ROM_END = 0xFD0420;
|
||||
boot_fight_us_v10_rzip_ROM_START = 0xFD0420;
|
||||
boot_fight_us_v10_rzip_ROM_END = 0xFD6190;
|
||||
boot_emptyLvl_us_v10_rzip_ROM_START = 0xFDAA10;
|
||||
boot_emptyLvl_us_v10_rzip_ROM_END = 0xFDAA30;
|
|
@ -28,5 +28,3 @@ boot_lair_us_v10_rzip_ROM_START = 0xFC9150;
|
|||
boot_lair_us_v10_rzip_ROM_END = 0xFD0420;
|
||||
boot_fight_us_v10_rzip_ROM_START = 0xFD0420;
|
||||
boot_fight_us_v10_rzip_ROM_END = 0xFD6190;
|
||||
boot_emptyLvl_us_v10_rzip_ROM_START = 0xFDAA10;
|
||||
boot_emptyLvl_us_v10_rzip_ROM_END = 0xFDAA30;
|
||||
|
|
Loading…
Reference in New Issue