all: max6809 tests/mastermind.asm as6809 aslib aslink srec2bin copt memimage64k dumpfile aciaterm # inf2dat iotest mc6821.o aciaterm 6809dasm mc6850.o
	echo All up to date.

as6809:
	cd xasm; make
	cp xasm/as6809 ./as6809

aslib:
	cd xasm; make
	cp xasm/aslib ./aslib

aslink:
	cd xasm; make
	cp xasm/aslink ./aslink

max6809: e6522.c e6809.c e8910.c edac.c main.c ser.c trace.c vecx.c e6522.h  e6809.h  e8910.h  edac.h  ser.h  trace.h  vecx.h
	cc -g -o max6809 e6522.c e6809.c e8910.c edac.c main.c ser.c trace.c vecx.c

aciaterm: aciaterm.c
	cc -g -o aciaterm aciaterm.c

mc6850.o: mc6850.c mc6850.h emu6809.h
	cc -g -c mc6850.c

mc6821.o: mc6821.c mc6821.h
	cc -g -c mc6821.c

memimage64k: memimage64k.c
	cc -g -o memimage64k memimage64k.c

dumpfile: dumpfile.c
	cc -g -o dumpfile dumpfile.c

inf2dat: inf2dat.c vecx.h
	cc -o inf2dat inf2dat.c

iotest: iotest.c
	cc -o iotest iotest.c

6809dasm: /home/gtoal/src/SBTPROJECT/6809sbt/6809dasm
	cp /home/gtoal/src/SBTPROJECT/6809sbt/6809dasm ./6809dasm

tests/mastermind.asm: tests/mastermind.c stabs
	cd tests; make mastermind.asm

tests/wibble.asm: tests/wibble.c tests/fn.c tests/incfile.h
	cd tests; make wibble.asm

test:
	cd tests; make clean
	cd tests; make

stabs: stabs.c
	cc -g -o stabs stabs.c

copt:
	cd peepholer ; make
	cp peepholer/copt ./copt

srec2bin:
	cd srec ; make
	cp srec/srec2bin ./srec2bin

clean:
	cd xasm; make clean
	# NOT *.s
	rm -f cc1 gcc6809.exe
	rm -f as6809 aslib aslink stabs srec2bin copt memimage64k dumpfile *.asm *~
	rm -f max6809 inf2dat iotest aciaterm 6809dasm *~ *.o *.ro *.s19 *.lst
	cd tests ; make clean
	cd srec ; make clean
	cd peepholer ; make clean

quickupload:
	make clean
	rm -f max6809.zip ../max6809.zip max6809u.zip ../max6809u.zip
	zip ../max6809u.zip *
	mv ../max6809u.zip .
	scp max6809u.zip gtoal@gtoal.com:gtoal.com/src/max6809/max6809u.zip
	ssh gtoal@gtoal.com "(cd gtoal.com/src/max6809 ; unzip -u -o max6809u.zip )"
	rm -f max6809u.zip
	ssh gtoal@gtoal.com "(cd gtoal.com/src/max6809 ; rm -f max6809.zip max6809u.zip ../max6809.zip ; zip -r ../max6809.zip . ; mv ../max6809.zip . )"

upload:
	make clean
	rm -f max6809u.zip max6809.zip ../max6809u.zip ../max6809.zip
	zip -r ../max6809.zip *
	mv ../max6809.zip .
	scp max6809.zip gtoal@gtoal.com:gtoal.com/src/max6809/max6809.zip
	ssh gtoal@gtoal.com "(cd gtoal.com/src/max6809 ; rm -f max6809u.zip ; unzip -u -o max6809.zip )"
	#ssh gtoal@gtoal.com mkdir -p gtoal.com/src/gcc6809
	#scp * gtoal@gtoal.com:gtoal.com/src/gcc6809/
	rm -f max6809.zip
	ssh gtoal@gtoal.com "(cd gtoal.com/src/max6809 ; rm -f max6809.zip max6809u.zip ../max6809.zip ; zip -r ../max6809.zip . ; mv ../max6809.zip . )"
