BINNAME=Prost
AUTHOR=DSS
DISTNAME=${BINNAME}_by_${AUTHOR}
DISTFILES=
SRCFILES=Makefile main.asm utils.asm singen.c bmpconv.c fontgen.c font.bmp filter.py song.asm songplay.h fbbobs.asm mass.asm twelvechar.asm metaballs.asm
BINARY=build/pal.bin

all: singen build/bmpconv build/main.asm build/font.asm
	mkdir -p build
	dasm build/main.asm -f3 -DPAL=0 -DFPS=60 -obuild/ntsc.bin -sbuild/ntsc.sym
	dasm build/main.asm -f3 -DPAL=1 -DFPS=50 -obuild/pal.bin -sbuild/pal.sym
	dasm build/main.asm -f3 -DPAL=1 -DFPS=60 -obuild/pal60.bin -sbuild/pal60.sym

singen: singen.c
	mkdir -p build
	gcc singen.c -o build/singen -lm
	build/singen > build/sintab.asm

build/bmpconv: bmpconv.c
	mkdir -p build
	gcc bmpconv.c -o build/bmpconv

build/main.asm: filter.py main.asm
	./filter.py < main.asm > build/main.asm

build/font.asm: fontgen.c font.bmp
	gcc fontgen.c -o build/fontgen
	build/fontgen font.bmp > build/font.asm

clean:
	rm -rf build ${DISTNAME} ${DISTNAME}.zip

run: all
	stella -grabmouse 0 ${BINARY}

jascpals: jascpalgen.c
	mkdir -p build
	gcc jascpalgen.c -o build/jascpalgen
	build/jascpalgen 0 > stella_pal.pal
	build/jascpalgen 1 > stella_ntsc.pal
	build/jascpalgen 2 > z26_pal.pal
	build/jascpalgen 3 > z26_ntsc.pal

dist: all
	rm -rf ${DISTNAME} ${DISTNAME}.zip
	mkdir -p ${DISTNAME}
	mkdir -p ${DISTNAME}/src
	if [ -n "${DISTFILES}" ] ; then cp ${DISTFILES} ${DISTNAME} ; fi
	cp ${SRCFILES} ${DISTNAME}/src
	cp build/pal.bin ${DISTNAME}/${BINNAME}.bin

	zip -r ${DISTNAME}.zip ${DISTNAME}

	cp vcs.h macro.h ${DISTNAME}/src
	cd ${DISTNAME}/src && make

download: all
	stty -F /dev/ttyUSB0 115200
	harmonycart ${BINARY}

playmic:
	pacat -r --latency-msec=1 -d alsa_input.pci-0000_00_1b.0.analog-stereo | pacat -p --latency-msec=1 -d alsa_output.pci-0000_00_1b.0.analog-stereo
