NOMAN=	# defined
FILES=	tusb3410fw
SRCS=	interrupts.c main.c requests.c
OBJS=	${SRCS:.c=.rel}

# The following program is part of pkgsrc/devel/sdcc
SDCC=		/usr/pkg/bin/sdcc

# Flags for the TUSB3410 8052 microprocessor
SDCCFLAGS=	--Werror -mmcs51 --model-small --opt-code-size
# CFLAGS for sdcc
SDCCCFLAGS=
# Flags for the TUSB3410 memory map
SDCCLDFLAGS=	--code-loc 0x0000 --code-size 0x4000 \
                --xram-loc 0xF800 --xram-size 0x0800

includes:

clean:
	rm -f rm *.asm *.ihx *.lnk *.lst *.map *.mem *.rel *.rst *.sym

cleandir:

.SUFFIXES: .c .rel

.c.rel:
	${SDCC} ${SDCCFLAGS} ${SDCCCFLAGS} -c $<

interrupts.c: interrupts.h requests.h tusb3410.h uticom.h

main.c: interrupts.h requests.h tusb3410.h uticom.h

requests.c: interrupts.h requests.h tusb3410.h uticom.h

tusb3410fw.ihx: ${OBJS}
	${SDCC} ${SDCCFLAGS} ${SDCCLDFLAGS} -o tusb3410fw.ihx ${OBJS}

tusb3410fw: tusb3410fw.ihx
	${OBJCOPY} -I ihex -O binary $> $@

tusb3410fw.h: tusb3410fw
	echo "uint8_t tusb3410fw[] = {" > $@
	${TOOL_HEXDUMP} -v -e '"\t"' -e '10/1 " 0x%02x,"' -e '"\n"' $> \
		| ${TOOL_SED} -e "s/, 0x .*//g" >> $@
	echo "};" >> $@

.include <bsd.files.mk>
.include <bsd.sys.mk>
