CC	= gcc

DEFS	= 
CFLAGS	= -fexpensive-optimizations -O3 -finline-functions \
	  -fomit-frame-pointer -funroll-all-loops -m486
LIBS	= -lalleg
OBJS	= opcode0.o opcode1.o opcode2.o opcode3.o opcode4.o opcode5.o \
	  opcode6.o opcode7.o opcode8.o opcode9.o opcodeb.o \
	  opcodec.o opcoded.o opcodee.o debug.o shinobi.o main.o ym.o \
	  intrface.o interf2.o romloadr.o msg.o palette.o cpufunc.o \
	  asm.o

all: system16.exe

system16.exe: $(OBJS)
	$(CC) -o system16 $(OBJS) $(LIBS)
	strip system16
	coff2exe system16
	del system16

%.o: %.c
	$(CC) $(DEFS) $(CFLAGS) -c $<

#opcode4.o: opcode4.s
#	$(CC) -o opcode4.o -c opcode4.s

asm.o: asm.s
	$(CC) -o asm.o -c asm.s

shinobi.o:	shinobi.h cpudefs.h
main.o:		shinobi.h cpudefs.h
debug.o:	shinobi.h cpudefs.h
opcode0.c:      cpudefs.h
opcode1.c:      cpudefs.h
opcode2.c:      cpudefs.h
opcode3.c:      cpudefs.h
opcode4.c:      cpudefs.h
opcode5.c:      cpudefs.h
opcode6.c:      cpudefs.h
opcode7.c:      cpudefs.h
opcode8.c:      cpudefs.h
opcode9.c:      cpudefs.h
opcodeB.c:      cpudefs.h
opcodeC.c:      cpudefs.h
opcodeD.c:      cpudefs.h
opcodeE.c:      cpudefs.h

clean:
	del *.o
	del system16.exe
	
	
