diff options
| author | Eldred Habert <eldredhabert0@gmail.com> | 2018-06-03 20:32:40 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-06-03 20:32:40 +0200 |
| commit | 63ee9c801200b64108dbfcfbc31fe2f5eda975c9 (patch) | |
| tree | c9b94852c7bb0d7e107b6b84c3c7103e08e5efb0 /Makefile | |
| parent | 3a7ac51071ad9f3ae277046c29d7482b56754d1d (diff) | |
| parent | 02051b9e0e213fb7d2e349e3cce220bb7a983472 (diff) | |
Merge pull request #2 from PikalaxALT/build_more_roms
Build all four ROMs in the dump
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 61 |
1 files changed, 42 insertions, 19 deletions
@@ -1,20 +1,31 @@ -BUILD := build +include config.mk + +BUILDBASE := build +BUILD := $(BUILDBASE) MD5 := md5sum -c PYTHON := python +PYTHON3 := python3.6 -RGBASM := rgbasm +RGBASM := rgbasm -D$(GAME_VERSION)=1 -DDEBUG=$(DEBUG) RGBGFX := rgbgfx RGBLINK := rgblink RGBFIX := rgbfix RGBASMFLAGS := -h -E -i $(BUILD)/ tools/gfx := +tools/make_shim := +sort_sym := tools/sort_symfile.sh +#sort_sym := $(PYTHON3) tools/sort_sym.py -ROMS := pokegold-spaceworld.gb +ROM := poke$(BUILD_NAME)-spaceworld.gb +ROMS := $(foreach r, gold gold-debug silver silver-debug, poke$(r)-spaceworld.gb) +# Pokemon Gold Debug BASEROM := baserom.gb DIRS := home engine data audio OBJS := $(addprefix $(BUILD)/, gfx.o sram.o wram.o hram.o shim.o) +SHIM := shim.sym +CORRECTEDROM := $(ROM:%.gb=%-correctheader.gb) CORRECTEDROMS := $(ROMS:%.gb=%-correctheader.gb) rwildcard = $(foreach d, $(wildcard $1*), $(filter $(subst *, %, $2), $d) $(call rwildcard, $d/, $2)) @@ -30,10 +41,10 @@ GFX := $(patsubst %.png, $(BUILD)/%.2bpp, \ .SECONDEXPANSION: .PHONY: all -all: $(ROMS) $(CORRECTEDROMS) compare +all: $(ROM) $(CORRECTEDROM) compare .PHONY: compare -compare: $(ROMS) +compare: $(ROM) $(MD5) roms.md5 .PHONY: tools @@ -41,13 +52,13 @@ tools tools/pkmncompress tools/gfx: $(MAKE) -C tools/ .PHONY: coverage -coverage: tools/disasm_coverage.py $(ROMS) - $(PYTHON) $< -m $(ROMS:.gb=.map) -b 0x40 +coverage: tools/disasm_coverage.py $(ROM) + $(PYTHON) $< -m $(ROM:.gb=.map) -b 0x40 # Remove files generated by the build process. .PHONY: clean clean: - rm -rf $(ROMS) $(BUILD) $(ROMS:.gb=.sym) $(ROMS:.gb=.map) $(CORRECTEDROMS) + rm -rf $(ROMS) $(CORRECTEDROMS) $(BUILDBASE) $(ROMS:.gb=.sym) $(ROMS:.gb=.map) $(CORRECTEDROMS) make -C tools clean # Remove files except for graphics. @@ -56,21 +67,20 @@ mostlyclean: rm -rf $(ROMS) $(OBJS) $(ROMS:.gb=.sym) $(ROMS:.gb=.map) $(CORRECTEDROMS) find . \( -iname '*.d' \) -exec rm {} + -$(ROMS): $(OBJS) | baserom.gb +$(ROM): $(OBJS) | $(BASEROM) $(RGBLINK) -d -n $(@:.gb=.sym) -m $(@:.gb=.map) -O $(BASEROM) -o $@ $^ - $(RGBFIX) -f lh -k 01 -l 0x33 -m 0x03 -p 0 -r 3 -t "POKEMON2GOLD" $@ - tools/sort_symfile.sh $(@:.gb=.sym) + $(RGBFIX) -f lh -k 01 -l 0x33 -m 0x03 -p 0 -r 3 -t "POKEMON2$(GAME_VERSION)" $@ + $(sort_sym) $(@:.gb=.sym) -baserom.gb: +$(BASEROM): @echo "Please obtain a copy of Gold_debug.sgb and put it in this directory as $@" @exit 1 -$(CORRECTEDROMS): %-correctheader.gb: %.gb +$(BUILD)/shim.asm: tools/make_shim $(SHIM) tools/make_shim | $$(dir $$@) + tools/make_shim -w $(filter-out $<, $^) > $@ +$(CORRECTEDROM): %-correctheader.gb: %.gb cp $< $@ - $(RGBFIX) -f h -m 0x10 $@ - -$(BUILD)/shim.asm: tools/make_shim.py shim.sym | $$(dir $$@) - $(PYTHON) tools/make_shim.py -w -- $(filter-out $<, $^) > $@ + $(RGBFIX) -f hg -m 0x10 $@ $(BUILD)/gfx.o: | $(GFX) $(BUILD)/%.o: $(BUILD)/%.asm | $$(dir $$@) @@ -79,8 +89,10 @@ $(BUILD)/%.o: %.asm | $$(dir $$@) $(RGBASM) $(RGBASMFLAGS) -M $(@:.o=.d) $(OUTPUT_OPTION) $< $(BUILD)/gfx/sgb/sgb_border_alt.2bpp: tools/gfx += --trim-whitespace -$(BUILD)/gfx/sgb/sgb_border.2bpp: tools/gfx += --trim-whitespace -$(BUILD)/gfx/title/title.2bpp: tools/gfx += --trim-whitespace +$(BUILD)/gfx/sgb/sgb_border_gold.2bpp: tools/gfx += --trim-whitespace +$(BUILD)/gfx/sgb/sgb_border_silver.2bpp: tools/gfx += --trim-whitespace +$(BUILD)/gfx/title/title_gold.2bpp: tools/gfx += --trim-whitespace +$(BUILD)/gfx/title/title_silver.2bpp: tools/gfx += --trim-whitespace $(BUILD)/gfx/trainer_card/leaders.2bpp: tools/gfx += --trim-whitespace $(BUILD)/gfx/trainer_card/trainer_card.2bpp: tools/gfx += --trim-whitespace $(BUILD)/gfx/minigames/slots.2bpp: tools/gfx += --trim-whitespace @@ -110,3 +122,14 @@ $(BUILD)/%.tilemap: %.png | $$(dir $$@) mkdir -p $@ -include $(call rwildcard, $(BUILD)/, *.d) + +#gold: ; @$(MAKE) GAME_VERSION=GOLD +#gold_debug: ; @$(MAKE) GAME_VERSION=GOLD DEBUG=1 +#silver: ; @$(MAKE) GAME_VERSION=SILVER +#silver_debug: ; @$(MAKE) GAME_VERSION=SILVER DEBUG=1 +#compare: ; +# @$(MAKE) GAME_VERSION=GOLD COMPARE=1 +# @$(MAKE) GAME_VERSION=GOLD DEBUG=1 COMPARE=1 +# @$(MAKE) GAME_VERSION=SILVER COMPARE=1 +# @$(MAKE) GAME_VERSION=SILVER DEBUG=1 COMPARE=1 +# @$(MD5) roms.md5 |
