#
# Loudness Makefile v1.20
#
# Author: Henrik Herranen
#
# (C) 2002-10-30 VLSI Solution OY
#
# This is a GCC Makefile for the Loudness software package for VS1001k.
# To compile, get VSKIT from VLSI Solution OY, add required paths and
# type "gmake".
#
# Note, that you almost certainly have to change the variable STARTUPDIR,
# which should point to the VSDSP4 library. This library is normally called
# libc16_v4
#
#
VCCFLAGS=-w145 -O -fprof vsmpg.prof -fsmall-mem
VCC=vcc
VSA=vsa
STARTUPDIR=/net/iraid/ccd1/users/vskit/current/libc16
VCCINCDIR=-I$(STARTUPDIR)

all: loud.bin loud_sa.bin

loud.o: loud.c loud.h
	$(VCC) $(VCCFLAGS) -DKILL_SAT $(VCCINCDIR) -o $@ loud.c

loud_sa.o: loud.c loud.h
	$(VCC) $(VCCFLAGS) -DKILL_SAT -DSTANDALONE $(VCCINCDIR) -o $@ loud.c

loudctl.o: loudctl.c loud.h
	$(VCC) $(VCCFLAGS) -DKILL_SAT $(VCCINCDIR) -o $@ loudctl.c

c.o: c.s
	$(VSA) $(VSAFLAGS) -o $@ c.s

louda.o: louda.s
	$(VSA) $(VSAFLAGS) -o $@ louda.s

louda_sa.o: louda.s
	$(VSA) $(VSAFLAGS) -D STANDALONE -o $@ louda.s

loud.bin: loud.o loudctl.o louda.o c.o
	vslink -k -L $(STARTUPDIR) -lsim -o $@ loudctl.o loud.o louda.o c.o
	vssym -Q $@

loud_sa.bin: loud_sa.o louda_sa.o
	vslink -k -L $(STARTUPDIR) -lsim -o $@ loud_sa.o louda_sa.o \
		-m mem_desc.sa
	vsomd -o loud_sa.omd loud_sa.bin
	perl omdtocmd.pl < loud_sa.omd > loud_sa.cmd
	vssym -Q $@

testa: loud.bin
	vssim -c loud.scr -m mem_desc -prof profraw.txt < input.txt > output.txt 

ss.cmd: ss.cdr rawtocmd
	./rawtocmd 14 < ss.cdr > ss.cmd

l:
	hextowav -44 -x -s < l.hex > l.wav
	audiff c.wav l.wav d.wav
	wavtomat d.wav d.mat
	wavtomat l.wav l.mat

clean:
	rm -rf *.o *~ \#* *.sym *.o

cleanall:
	rm -rf *.o *~ \#* *.sym *.o *.bin
