name = PS9Race
mbc = "ROM ONLY"
ram = 0

SOURCES = $(wildcard src/*.asm src/*/*.asm)
OBJECTS = $(patsubst src/%.asm, obj/%.o, $(SOURCES))

.PHONY: all clean

all: $(name).gbc

clean:
	@rm -rf obj
	@rm -f *.gb
	@rm -f *.sym
	@rm -f *.gbc

$(name).gbc: $(OBJECTS)
	@rgblink -o $@ -n $(name).sym -m $(name).map $(OBJECTS)
	@rgbfix -v -c -i PS9 -t $(name) -j -k J* -m $(mbc) -r $(ram) -l 0x33 -p 0xFF $@
	@tools/romusage $(name).map

obj/%.o: src/%.asm
	@mkdir -p $(dir ${@:/=})
	@rgbasm -i inc -i bin -o $@ $<

$(OBJECTS): $(wildcard inc/*) $(wildcard art/*)
