parent
f6d825f2dd
commit
ef5601d890
134
Makefile
134
Makefile
|
|
@ -2,22 +2,6 @@
|
|||
BASENAME := banjo
|
||||
VERSION ?= us.v10
|
||||
|
||||
ifeq ($(VERSION),us.v10)
|
||||
C_VERSION=0
|
||||
endif
|
||||
|
||||
ifeq ($(VERSION),pal)
|
||||
C_VERSION=1
|
||||
endif
|
||||
|
||||
ifeq ($(VERSION),us.v11)
|
||||
C_VERSION=2
|
||||
endif
|
||||
|
||||
ifeq ($(VERSION),jp)
|
||||
C_VERSION=3
|
||||
endif
|
||||
|
||||
IN_CFLAGS ?= -DCODE2_CODE_CRC2=0 -DCODE2_DATA_CRC2=0
|
||||
### Tools ###
|
||||
|
||||
|
|
@ -206,7 +190,7 @@ endef
|
|||
### Flags ###
|
||||
|
||||
# Build tool flags
|
||||
CFLAGS := -c -Wab,-r4300_mul -non_shared -G 0 -Xfullwarn -Xcpluscomm $(OPT_FLAGS) $(MIPSBIT) -D_FINALROM -DF3DEX_GBI -DVERSION='$(C_VERSION)'
|
||||
CFLAGS := -c -Wab,-r4300_mul -non_shared -G 0 -Xfullwarn -Xcpluscomm $(OPT_FLAGS) $(MIPSBIT) -D_FINALROM -DF3DEX_GBI
|
||||
CFLAGS += -woff 649,654,838,807
|
||||
CFLAGS += $(IN_CFLAGS)
|
||||
CPPFLAGS := -D_FINALROM -DN_MICRO
|
||||
|
|
@ -293,7 +277,7 @@ verify-each: $(addprefix verify-,$(OVERLAYS))
|
|||
define overlay_rules
|
||||
# .o -> .elf (overlay)
|
||||
$(BUILD_DIR)/$(1).elf : $$($(1)_ALL_OBJS) $(1).ld
|
||||
$(LD) -T $(1).ld -R core2.elf --allow-multiple-definition -Map $(BUILD_DIR)/$(1).map $$(LDFLAGS_COMMON) -T undefined_syms_auto.$(1).$(VERSION).txt -T undefined_funcs_auto.$(1).$(VERSION).txt -o $$@
|
||||
$(LD) -T $(1).ld -R core2.elf --allow-multiple-definition -Map $(BUILD_DIR)/$(1).map $$(LDFLAGS_COMMON) -T undefined_syms_auto.$(1).us.v10.txt -T undefined_funcs_auto.$(1).us.v10.txt -o $$@
|
||||
# split overlay
|
||||
$(BUILD_DIR)/$(1)_SPLAT_TIMESTAMP : $(SUBYAML)/$(1).$(VERSION).yaml $(BUILD_DIR)/$(1).$(VERSION).bin $(SYMBOL_ADDRS)
|
||||
$(call print1,Splitting bin:,$$<)
|
||||
|
|
@ -310,8 +294,8 @@ endef
|
|||
$(foreach overlay,$(OVERLAYS),$(eval $(call overlay_rules,$(overlay))))
|
||||
|
||||
# Additional symbols for core2
|
||||
$(BUILD_DIR)/core2.elf: LDFLAGS_COMMON = -T symbol_addrs.core1.$(VERSION).txt -T symbol_addrs.core2.$(VERSION).txt -T symbol_addrs.global.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T undefined_syms.libultra.txt --no-check-sections --accept-unknown-input-arch -T level_symbols.$(VERSION).txt
|
||||
$(BUILD_DIR)/core2.temp.elf: LDFLAGS_COMMON = -T symbol_addrs.core1.$(VERSION).txt -T symbol_addrs.core2.$(VERSION).txt -T symbol_addrs.global.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T undefined_syms.libultra.txt --no-check-sections --accept-unknown-input-arch -T level_symbols.$(VERSION).txt
|
||||
$(BUILD_DIR)/core2.elf: LDFLAGS_COMMON = -T symbol_addrs.core1.$(VERSION).txt -T symbol_addrs.core2.$(VERSION).txt -T symbol_addrs.global.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T undefined_syms.libultra.txt --no-check-sections --accept-unknown-input-arch -T level_symbols.us.v10.txt
|
||||
$(BUILD_DIR)/core2.temp.elf: LDFLAGS_COMMON = -T symbol_addrs.core1.$(VERSION).txt -T symbol_addrs.core2.$(VERSION).txt -T symbol_addrs.global.$(VERSION).txt -T undefined_syms.$(VERSION).txt -T undefined_syms.libultra.txt --no-check-sections --accept-unknown-input-arch -T level_symbols.us.v10.txt
|
||||
|
||||
# mkdir
|
||||
$(ALL_DIRS) :
|
||||
|
|
@ -405,7 +389,7 @@ ifneq ($(CORE2_CODE_CRC_C_OBJS),)
|
|||
# core2 objects with zero for code CRC -> core2.temp.elf
|
||||
$(BUILD_DIR)/core2.temp.elf : $(core2_NON_CRC_OBJS) $(CORE2_TEMP_LD) $(CORE2_CODE_CRC_C_TEMP_OBJS)
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) -T $(CORE2_TEMP_LD) -Map $(BUILD_DIR)/core2.map $(LDFLAGS_COMMON) -T undefined_syms_auto.core2.$(VERSION).txt -T undefined_funcs_auto.core2.$(VERSION).txt -o $@
|
||||
@$(LD) -T $(CORE2_TEMP_LD) -Map $(BUILD_DIR)/core2.map $(LDFLAGS_COMMON) -T undefined_syms_auto.core2.us.v10.txt -T undefined_funcs_auto.core2.us.v10.txt -o $@
|
||||
|
||||
# core2.temp.elf -> core2.temp.code
|
||||
$(BUILD_DIR)/core2.temp.code : $(BUILD_DIR)/core2.temp.elf
|
||||
|
|
@ -479,7 +463,7 @@ $(ASSET_OBJS): $(ASSET_BIN)
|
|||
# .o -> .elf (game)
|
||||
$(ELF): $(MAIN_ALL_OBJS) $(LD_SCRIPT) $(OVERLAY_RZIP_OBJS) $(addprefix $(BUILD_DIR)/, $(addsuffix .full, $(OVERLAYS))) $(ASSET_OBJS)
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) $(LDFLAGS) -T undefined_syms_auto.$(VERSION).txt -o $@
|
||||
@$(LD) $(LDFLAGS) -T undefined_syms_auto.us.v10.txt -o $@
|
||||
|
||||
$(BK_BOOT_LD_SCRIPT): $(LD_SCRIPT)
|
||||
sed '\|$(CRC_OBJS)|d' $< > $@
|
||||
|
|
@ -487,7 +471,7 @@ $(BK_BOOT_LD_SCRIPT): $(LD_SCRIPT)
|
|||
# .o -> .elf (game)
|
||||
$(BUILD_DIR)/bk_boot.elf: $(filter-out $(CRC_OBJS),$(MAIN_ALL_OBJS)) $(BK_BOOT_LD_SCRIPT) $(OVERLAY_RZIP_OBJS) $(addprefix $(BUILD_DIR)/, $(addsuffix .full, $(OVERLAYS)))
|
||||
$(call print1,Linking elf:,$@)
|
||||
@$(LD) -T $(BK_BOOT_LD_SCRIPT) -Map $(ELF:.elf=.map) --no-check-sections --accept-unknown-input-arch -T undefined_syms.libultra.txt -T undefined_syms_auto.$(VERSION).txt -o $@
|
||||
@$(LD) -T $(BK_BOOT_LD_SCRIPT) -Map $(ELF:.elf=.map) --no-check-sections --accept-unknown-input-arch -T undefined_syms.libultra.txt -T undefined_syms_auto.us.v10.txt -o $@
|
||||
|
||||
# .elf -> .z64
|
||||
$(Z64) : $(ELF) $(OVERLAY_PROG_SVGS) $(MAIN_PROG_SVG) $(TOTAL_PROG_SVG)
|
||||
|
|
@ -534,59 +518,59 @@ clean:
|
|||
@$(RM) -f $(SYMBOL_ADDRS)
|
||||
|
||||
# Per-file flag definitions
|
||||
build/$(VERSION)/src/core1/io/%.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/io/pimgr.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/done/io/%.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/os/%.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/code_2D2D0.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/done/os/%.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/code_21A10.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/$(VERSION)/src/core1/code_21A10.c.o: OPT_FLAGS = -O3
|
||||
build/$(VERSION)/src/core1/done/gu/%.c.o: OPT_FLAGS = -O3
|
||||
build/$(VERSION)/src/core1/done/gu/%.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/$(VERSION)/src/core1/gu/mtxutil.c.o: OPT_FLAGS = -O2
|
||||
build/$(VERSION)/src/core1/gu/rotate.c.o: OPT_FLAGS = -O2
|
||||
build/$(VERSION)/src/core1/done/audio/%.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/$(VERSION)/src/core1/done/audio/%.c.o: OPT_FLAGS = -O3
|
||||
# build/$(VERSION)/src/core1/code_21CB0.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
# build/$(VERSION)/src/core1/code_21CB0.c.o: OPT_FLAGS = -O3
|
||||
build/$(VERSION)/src/core1/done/io/sptask.c.o: OPT_FLAGS = -O1
|
||||
build/$(VERSION)/src/core1/done/ll.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/core1/done/ll.c.o: MIPSBIT := -mips3 -o32
|
||||
build/us.v10/src/core1/io/%.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/io/pimgr.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/done/io/%.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/os/%.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/code_2D2D0.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/done/os/%.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/code_21A10.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/us.v10/src/core1/code_21A10.c.o: OPT_FLAGS = -O3
|
||||
build/us.v10/src/core1/done/gu/%.c.o: OPT_FLAGS = -O3
|
||||
build/us.v10/src/core1/done/gu/%.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/us.v10/src/core1/gu/mtxutil.c.o: OPT_FLAGS = -O2
|
||||
build/us.v10/src/core1/gu/rotate.c.o: OPT_FLAGS = -O2
|
||||
build/us.v10/src/core1/done/audio/%.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
build/us.v10/src/core1/done/audio/%.c.o: OPT_FLAGS = -O3
|
||||
# build/us.v10/src/core1/code_21CB0.c.o: INCLUDE_CFLAGS = -I . -I include -I include/2.0L -I include/2.0L/PR
|
||||
# build/us.v10/src/core1/code_21CB0.c.o: OPT_FLAGS = -O3
|
||||
build/us.v10/src/core1/done/io/sptask.c.o: OPT_FLAGS = -O1
|
||||
build/us.v10/src/core1/done/ll.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/core1/done/ll.c.o: MIPSBIT := -mips3 -o32
|
||||
|
||||
build/$(VERSION)/src/bk_boot_27F0.c.o: OPT_FLAGS = -O2
|
||||
build/$(VERSION)/src/done/destroythread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/pirawdma.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/thread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/pimgr.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/getthreadid.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/setthreadpri.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/createthread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/yieldthread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/setglobalintmask.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/recvmesg.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/startthread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/devmgr.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/sendmesg.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/pigetstat.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/si.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/resetglobalintmask.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/epirawwrite.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/epirawread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/createmesgqueue.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/leodiskinit.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/virtualtophysical.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/ll.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/ll.c.o: MIPSBIT := -mips3 -o32
|
||||
build/$(VERSION)/src/done/sirawwrite.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/sirawread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/initialize.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/pirawread.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/seteventmesg.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/siacs.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/cartrominit.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/leointerrupt.c.o: OPT_FLAGS := -O1
|
||||
build/$(VERSION)/src/done/epirawdma.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/bk_boot_27F0.c.o: OPT_FLAGS = -O2
|
||||
build/us.v10/src/done/destroythread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/pirawdma.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/thread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/pimgr.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/getthreadid.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/setthreadpri.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/createthread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/yieldthread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/setglobalintmask.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/recvmesg.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/startthread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/devmgr.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/sendmesg.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/pigetstat.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/si.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/resetglobalintmask.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/epirawwrite.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/epirawread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/createmesgqueue.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/leodiskinit.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/virtualtophysical.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/ll.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/ll.c.o: MIPSBIT := -mips3 -o32
|
||||
build/us.v10/src/done/sirawwrite.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/sirawread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/initialize.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/pirawread.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/seteventmesg.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/siacs.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/cartrominit.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/leointerrupt.c.o: OPT_FLAGS := -O1
|
||||
build/us.v10/src/done/epirawdma.c.o: OPT_FLAGS := -O1
|
||||
|
||||
# Disable implicit rules
|
||||
MAKEFLAGS += -r
|
||||
|
|
|
|||
263
banjo.pal.yaml
263
banjo.pal.yaml
|
|
@ -1,185 +1,86 @@
|
|||
options:
|
||||
basename: banjo
|
||||
find_file_boundaries: True
|
||||
compiler: "IDO"
|
||||
platform: n64
|
||||
asm_endlabels: "endlabel"
|
||||
cpp_args:
|
||||
- "-Iinclude"
|
||||
- "-Iinclude/2.0L"
|
||||
- "-D_LANGUAGE_C"
|
||||
generated_c_preamble: |
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
create_detected_syms: yes
|
||||
find_file_boundaries: true
|
||||
compiler: "\"IDO\""
|
||||
undefined_syms_path: undefined_syms.pal.txt
|
||||
symbol_addrs_path: symbol_addrs.boot.pal.txt
|
||||
undefined_funcs_auto_path: undefined_funcs_auto.pal.txt
|
||||
undefined_syms_auto_path: undefined_syms_auto.pal.txt
|
||||
base_path: .
|
||||
target_path: baserom.pal.z64
|
||||
asset_path: bin
|
||||
build_path: build/pal
|
||||
segments:
|
||||
- [0x0, bin, binner]
|
||||
# - name: header
|
||||
# type: header
|
||||
# start: 0x00000000
|
||||
# - name: boot
|
||||
# type: code
|
||||
# start: 0x00000040
|
||||
# vram: 0xA4000040
|
||||
# subsegments:
|
||||
# - [0x0040, asm, boot]
|
||||
# - [0x0B70, bin, boot2]
|
||||
# - name: entry
|
||||
# type: code
|
||||
# start: 0x1000
|
||||
# vram: 0x80000400
|
||||
# subsegments:
|
||||
# - [0x1000, hasm, entry]
|
||||
# - name: boot/bk_boot
|
||||
# type: code
|
||||
# start: 0x1050
|
||||
# vram: 0x80000450
|
||||
# subsegments:
|
||||
# - [0x1050, c, done/bk_boot_1050]
|
||||
# - [0x1150, c, done/rarezip]
|
||||
# - [0x12B0, c, done/inflate]
|
||||
# - [0x27F0, c, done/overlays]
|
||||
# - [0x2970, c, done/initialize]
|
||||
# - [0x2C00, c, done/pirawdma]
|
||||
# - [0x2CE0, c, done/pigetstat]
|
||||
# - [0x2CF0, hasm, bzero]
|
||||
# - [0x2D90, hasm, setsr]
|
||||
# - [0x2DA0, hasm, getsr]
|
||||
# - [0x2DB0, hasm, setfpccsr]
|
||||
# - [0x2DC0, c, done/sirawread]
|
||||
# - [0x2E10, c, done/sirawwrite]
|
||||
# - [0x2E60, hasm, ultra/exceptasm]
|
||||
# - [0x3770, hasm, writebackdcache]
|
||||
# - [0x37F0, hasm, invalicache]
|
||||
# - [0x3870, hasm, maptlbrdb]
|
||||
# - [0x38D0, c, done/pirawread]
|
||||
# - [0x3930, c, done/ll]
|
||||
# - [0x3BF0, bin, padding3BF0] # Empty space
|
||||
# - [0x3C50, c, done/virtualtophysical]
|
||||
# - [0x3CD0, c, done/si]
|
||||
# - [0x3D00, c, done/thread]
|
||||
# - [0x3D40, c, done/leointerrupt]
|
||||
# - [0x45C0, c, done/seteventmesg]
|
||||
# - [0x4630, hasm, ultra/setintmask]
|
||||
# - [0x46D0, c, done/destroythread]
|
||||
# - [0x47D0, hasm, probetlb]
|
||||
# - [0x4890, c, done/leodiskinit]
|
||||
# - [0x4990, c, done/epirawdma]
|
||||
# - [0x4BC0, hasm, interrupt]
|
||||
# - [0x4C00, c, done/pimgr]
|
||||
# - [0x4D90, c, done/cartrominit]
|
||||
# - [0x4E90, c, done/createmesgqueue]
|
||||
# - [0x4EC0, c, done/piacs]
|
||||
# - [0x4F80, c, done/getthreadpri]
|
||||
# - [0x4FA0, c, done/setthreadpri]
|
||||
# - [0x5080, c, done/createthread]
|
||||
# - [0x51D0, c, done/devmgr]
|
||||
# - [0x5660, c, done/startthread]
|
||||
# - [0x57B0, c, done/sendmesg]
|
||||
# - [0x5900, c, done/recvmesg]
|
||||
# - [0x5A40, c, done/resetglobalintmask]
|
||||
# - [0x5AA0, c, done/epirawwrite]
|
||||
# - [0x5AF0, c, done/epirawread]
|
||||
# - [0x5B40, c, done/setglobalintmask]
|
||||
# - [0x5B90, c, done/yieldthread]
|
||||
# - [0x5BE0, c, done/kdebugserver]
|
||||
# - [0x5BE0, .data, done/inflate]
|
||||
# - [0x5CE0, .data, done/initialize]
|
||||
# - [0x5D00, .data, ultra/exceptasm]
|
||||
# - [0x5D20, .data, done/thread]
|
||||
# - [0x5D40, .data, done/pimgr]
|
||||
# - [0x5D70, .data, done/piacs]
|
||||
# - [0x5D80, .rodata, ultra/exceptasm]
|
||||
# - [0x5DD0, .rodata, ultra/setintmask]
|
||||
# - [0x5E50, .rodata, done/devmgr]
|
||||
# - [0x5E70, .bss, done/bk_boot_1050]
|
||||
# - [0x5E70, .bss, done/rarezip]
|
||||
# - [0x5E70, .bss, done/inflate]
|
||||
# - [0x5E70, .bss, done/initialize]
|
||||
# - [0x5E70, .bss, done/kdebugserver]
|
||||
# - [0x5E70, .bss, done/leointerrupt]
|
||||
# - [0x5E70, .bss, done/seteventmesg]
|
||||
# - [0x5E70, .bss, done/leodiskinit]
|
||||
# - [0x5E70, .bss, done/pimgr]
|
||||
# - [0x5E70, .bss, done/cartrominit]
|
||||
# - [0x5E70, .bss, done/piacs]
|
||||
# - name: crc
|
||||
# type: bin
|
||||
# start: 0x5E70
|
||||
# subsegments:
|
||||
# - [0x5E70, bin, crc]
|
||||
# - name: assets
|
||||
# type: bin
|
||||
# start: 0x5E90
|
||||
# subsegments:
|
||||
# - [0x5E90, bin, assets]
|
||||
# - name: soundfont1
|
||||
# type: bin
|
||||
# start: 0x00DA8DF0
|
||||
# subsegments:
|
||||
# - [0x00DA8DF0, bin, soundfont1.ctl]
|
||||
# - [0x00DB9BE0, bin, soundfont1.tbl]
|
||||
# - name: soundfont2
|
||||
# type: bin
|
||||
# start: 0x00EC85E0
|
||||
# subsegments:
|
||||
# - [0x00EC85E0, bin, soundfont2.ctl]
|
||||
# - [0x00ED2440, bin, soundfont2.tbl]
|
||||
# - name: core1.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00F3D980
|
||||
# - name: core2.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00F5BEC0
|
||||
# - name: CC.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FC8460
|
||||
# - name: MMM.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FCA3C0
|
||||
# - name: GV.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FCD5C0
|
||||
# - name: TTC.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FD2CC0
|
||||
# - name: MM.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FD6900
|
||||
# - name: BGS.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FD8930
|
||||
# - name: RBB.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FDDE80
|
||||
# - name: FP.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FE3060
|
||||
- name: SM.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FE8CA0
|
||||
- name: cutscenes.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FEB540
|
||||
# - name: lair.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FED780
|
||||
# - name: fight.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FF4A50
|
||||
# - name: CCW.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FFA830
|
||||
# - name: emptyLvl.pal.rzip
|
||||
# type: bin
|
||||
# start: 0x00FFF090
|
||||
- [0x01000000]
|
||||
- name: header
|
||||
type: header
|
||||
start: 0x00000000
|
||||
subsegments:
|
||||
- [0x00000000, header, header]
|
||||
- name: boot
|
||||
type: bin
|
||||
start: 0x00000040
|
||||
- name: bk_boot
|
||||
type: code
|
||||
start: 0x00001000
|
||||
vram: 0x80000400
|
||||
subsegments:
|
||||
- [0x00001000, asm]
|
||||
- name: assets
|
||||
type: bin
|
||||
start: 0x00005E90
|
||||
subsegments:
|
||||
- [0x00005E90, bin, assets]
|
||||
- name: soundfont1
|
||||
type: bin
|
||||
start: 0x00DA8DF0
|
||||
subsegments:
|
||||
- [0x00DA8DF0, bin, soundfont1.ctl]
|
||||
- [0x00DB9BE0, bin, soundfont1.tbl]
|
||||
- name: soundfont2
|
||||
type: bin
|
||||
start: 0x00EC85E0
|
||||
subsegments:
|
||||
- [0x00EC85E0, bin, soundfont2.ctl]
|
||||
- [0x00ED2440, bin, soundfont2.tbl]
|
||||
- name: core1.pal.rzip
|
||||
type: bin
|
||||
start: 0x00F3D980
|
||||
- name: core2.pal.rzip
|
||||
type: bin
|
||||
start: 0x00F5BEC0
|
||||
- name: level2.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FC8460
|
||||
- name: level9.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FCA3C0
|
||||
- name: level6.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FCD5C0
|
||||
- name: level1.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FD2CC0
|
||||
- name: level0.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FD6900
|
||||
- name: level3.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FD8930
|
||||
- name: level8.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FDDE80
|
||||
- name: level4.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FE3060
|
||||
- name: level10.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FE8CA0
|
||||
- name: level12.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FEB540
|
||||
- name: level5.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FED780
|
||||
- name: level11.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FF4A50
|
||||
- name: level7.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FFA830
|
||||
- name: emptyLvl.pal.rzip
|
||||
type: bin
|
||||
start: 0x00FFF090
|
||||
- [0x01000000]
|
||||
|
|
@ -2,63 +2,4 @@
|
|||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
#define US_1_0 0
|
||||
#define PAL 1
|
||||
|
||||
u8 D_8038BFC2;
|
||||
|
||||
|
||||
#if VERSION == US_1_0
|
||||
int func_8038AAB0(void){return 0;}
|
||||
|
||||
#elif VERSION == PAL
|
||||
void func_8038AAB0(s32 arg0, s32 arg1){
|
||||
if(arg1 < 0){
|
||||
func_8031A844();
|
||||
}
|
||||
else{
|
||||
D_8038BFC2 = arg1;
|
||||
func_8038B4D0(3);
|
||||
}
|
||||
}
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038A8F0.s")
|
||||
void func_8038A8F0(s32 arg0) {
|
||||
u8 temp_v0;
|
||||
|
||||
switch (arg0) { /* irregular */
|
||||
case 1:
|
||||
D_8038BFC1 = 1;
|
||||
func_80319400();
|
||||
break;
|
||||
case 2:
|
||||
D_8038BFC8->unk0 = (s32) D_8038BD38;
|
||||
D_8038BFC8->unk4 = (s32) D_8038BD3C;
|
||||
D_8038BFC8->unk10 = (s32) D_8038BD40;
|
||||
D_8038BFC8->unk20 = (s32) D_8038BD44;
|
||||
D_8038BFC8->unk30 = (s32) D_8038BD48;
|
||||
func_8031A5E4(&D_8038BD30, &D_8038BD34, (void *)0x8038BFC8, 0xA, &D_8038B490);
|
||||
break;
|
||||
case 3:
|
||||
temp_v0 = *(u8 *)0x8038BFC2;
|
||||
if (temp_v0 != 0) {
|
||||
func_8031B9A4(temp_v0 - 1, 0x80390000);
|
||||
}
|
||||
func_802FAF44(0);
|
||||
D_8038BFC1 = 0;
|
||||
break;
|
||||
}
|
||||
D_8038BFC0 = (s8) arg0;
|
||||
}
|
||||
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038A9E4.s")
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038AA30.s")
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038AA64.s")
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038AA74.s")
|
||||
|
||||
// #pragma GLOBAL_ASM("asm/nonmatchings/SM/code_46C0/func_8038AAE8.s")
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -1,5 +0,0 @@
|
|||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
int func_8038AAB0(void){return 0;}
|
||||
|
|
@ -15,12 +15,6 @@ options:
|
|||
create_detected_syms: yes
|
||||
undefined_syms_path: undefined_syms.pal.txt
|
||||
symbol_addrs_path: symbol_addrs.pal.txt
|
||||
undefined_funcs_auto_path: undefined_funcs_auto.SM.pal.txt
|
||||
undefined_syms_auto_path: undefined_syms_auto.SM.pal.txt
|
||||
base_path: .
|
||||
target_path: build/pal/SM.pal.bin
|
||||
asset_path: bin
|
||||
build_path: build/pal
|
||||
segments:
|
||||
- name: SM-code
|
||||
dir: SM
|
||||
|
|
@ -28,45 +22,12 @@ segments:
|
|||
start: 0x00000000
|
||||
vram: 0x80386DD0
|
||||
subsegments:
|
||||
- [0x00000000, c, code_0]
|
||||
- [0xF0, c, code_F0]
|
||||
- [0x5B0, c, code_5B0]
|
||||
- [0xBF0, c, code_BF0]
|
||||
- [0xD60, c, ch/attacktutorial]
|
||||
- [0x1520, c, ch/vegetables]
|
||||
- [0x2900, c, code_2900]
|
||||
- [0x2990, c, code_2990]
|
||||
- [0x3FC0, c, code_3FC0]
|
||||
- [0x4070, c, code_4070]
|
||||
- [0x44D0, c, code_44D0]
|
||||
- [0x46C0, c, code_46C0]
|
||||
- [0x00000000, asm]
|
||||
- name: SM-data
|
||||
dir: SM
|
||||
type: code
|
||||
start: 0x00004910
|
||||
vram: 0x8038B6E0
|
||||
subsegments:
|
||||
- [0x00004910, .data, code_0]
|
||||
- [0x00004930, .data, code_F0]
|
||||
- [0x00004940, .data, code_5B0]
|
||||
- [0x00004A40, .data, code_BF0]
|
||||
- [0x00004A70, .data, ch/attacktutorial]
|
||||
- [0x00004AA0, .data, ch/vegetables]
|
||||
- [0x00004DB0, .data, code_2990]
|
||||
- [0x00004E40, .data, code_3FC0]
|
||||
- [0x00004F00, .data, code_4070]
|
||||
- [0x00004F30, .data, code_44D0]
|
||||
- [0x00004F60, .rodata, code_5B0]
|
||||
- [0x00004F80, .rodata, ch/attacktutorial]
|
||||
- [0x00005020, .rodata, ch/vegetables]
|
||||
- [0x00005050, .rodata, code_2990]
|
||||
- [0x00005160, .rodata, code_44D0]
|
||||
- name: SM-bss
|
||||
dir: SM
|
||||
type: code
|
||||
start: 0x00005160
|
||||
vram: 0x8038BF30
|
||||
subsegments:
|
||||
- [0x00005160, .bss, code_F0]
|
||||
- [0x00005160, .bss, code_46C0]
|
||||
- [0x00005160]
|
||||
- [0x00004910, bin, data_4910]
|
||||
- [0x000051E0]
|
||||
Loading…
Reference in New Issue