summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorEldred Habert <eldredhabert0@gmail.com>2018-06-03 20:32:40 +0200
committerGitHub <noreply@github.com>2018-06-03 20:32:40 +0200
commit63ee9c801200b64108dbfcfbc31fe2f5eda975c9 (patch)
treec9b94852c7bb0d7e107b6b84c3c7103e08e5efb0 /Makefile
parent3a7ac51071ad9f3ae277046c29d7482b56754d1d (diff)
parent02051b9e0e213fb7d2e349e3cce220bb7a983472 (diff)
Merge pull request #2 from PikalaxALT/build_more_roms
Build all four ROMs in the dump
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile61
1 files changed, 42 insertions, 19 deletions
diff --git a/Makefile b/Makefile
index 93bc43f..11977d0 100644
--- a/Makefile
+++ b/Makefile
@@ -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