#
# ===========================================
# Uncomment this section if you are using GCC
# ===========================================
#

CC		= gcc
CPPFLAGS	= -DAMIGA -DGNU_C
CFLAGS		= -c -O6
LD		= gcc
LDFLAGS		=
LDLIBS		= -lc -lamiga
OBJ		= atari_amiga.o amiga_asm.o

#
# ==============================================
# Uncomment this section if you are using DICE C
# ==============================================
#

#CC		= dcc
#CPPFLAGS	= -DAMIGA -DDICE_C
#CFLAGS		= -c -mD
#LD		= dcc
#LDFLAGS		=
#LDLIBS		=
#OBJ		= atari_amiga.o amiga_asm.o

#
# ====================================================
# Uncomment this section if you want the BASIC version
# ====================================================
#

#CC		= gcc
#CPPFLAGS	= -DBASIC
#CFLAGS		= -c -O6
#LD		= gcc
#LDFLAGS		=
#LDLIBS		=
#OBJ		= atari_basic.o

#
# ===================================================
# If you want to place the OS ROMS elsewhere you will
# either need to edit the following line or define an
# environment variable at run time
# ===================================================
#

ATARI_LIBRARY	= /object
ATARI_H1_DIR	= $(ATARI_LIBRARY)/H1
ATARI_H2_DIR	= $(ATARI_LIBRARY)/H2
ATARI_H3_DIR	= $(ATARI_LIBRARY)/H3
ATARI_H4_DIR	= $(ATARI_LIBRARY)/H4


#
# ======================================================
# You should not need to modify anything below this here
# ======================================================
#

INCLUDES	=	Makefile cpu.h atari.h \
			antic.h gtia.h pia.h pokey.h colours.h

atari800	:	atari.o cpu.o monitor.o sio.o \
			devices.o antic.o gtia.o pia.o pokey.o supercart.o \
			$(OBJ)
	$(LD) $(LDFLAGS) atari.o cpu.o monitor.o sio.o \
			 devices.o antic.o gtia.o pia.o pokey.o supercart.o \
			 $(OBJ) \
			 $(LDLIBS) -o atari800

atari.o		:	atari.c $(INCLUDES)
	$(CC) $(CPPFLAGS) -DATARI_LIBRARY="$(ATARI_LIBRARY)" $(CFLAGS) atari.c

cpu.o		:	cpu.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) cpu.c

monitor.o	:	monitor.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) monitor.c

sio.o		:	sio.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) sio.c

devices.o	:	devices.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) \
		-DATARI_H1_DIR="$(ATARI_H1_DIR)" \
		-DATARI_H2_DIR="$(ATARI_H2_DIR)" \
		-DATARI_H3_DIR="$(ATARI_H3_DIR)" \
		-DATARI_H4_DIR="$(ATARI_H4_DIR)" \
		devices.c

antic.o		:	antic.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) antic.c

gtia.o		:	gtia.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) gtia.c

pia.o		:	pia.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) pia.c

pokey.o		:	pokey.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) pokey.c

supercart.o	:	supercart.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) supercart.c

atari_amiga.o	:	atari_amiga.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) atari_amiga.c

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

atari_basic.o	:	atari_basic.c $(INCLUDES)
	$(CC) $(CPPFLAGS) $(CFLAGS) atari_basic.c
