###############################################
# Makefile Dreamcast 
# http://www.dciberia.net
# GPL / GNU License / Ron
# rondreamcast@gmail.com  
###############################################


PROGRAM = dragondc
TARGET = $(PROGRAM).elf
OBJS = cmode_bin.o   
OBJS += copyright.o
OBJS += events.o
OBJS += font_6x13.o
OBJS += fs_unix.o
OBJS += hexs19.o
OBJS += joystick.o
OBJS += joystick_sdl.o
OBJS += kbd_graphics.o
OBJS += keyboard.o
OBJS += keyboard_sdl.o
OBJS += m6809.o
OBJS += machine.o
OBJS += main_unix.o
OBJS += pia.o
OBJS += sam.o
OBJS += sound.o
OBJS += sound_sdl.o
OBJS += tape.o
OBJS += ui.o
OBJS += vdg.o
OBJS += video.o
OBJS += video_sdl.o
OBJS += wd2797.o
OBJS += xroar.o
OBJS += sound_none.o
OBJS += video_sdlyuv.o
OBJS += ui_cli.o
# OBJS += romdisk.o

DEFINES = -DLSB_FIRST -DNARROW -DSOUND -DSDL -DWRONG_ENDIAN \
	-DDREAMCAST -DHAVE_SDL -DINLINE="inline" -DLOWERCASEFILES -DHAVE_CLI_UI\
	-DDATA_PREFIX="/rd/" -DFILE_SEPARATOR="/" 


BIN_OUT = 



###############################################
# No need to be modified
###############################################
all: rm-elf $(TARGET) bin

include $(KOS_BASE)/Makefile.rules

KOS_CFLAGS += -ml -m4-single-only -pipe $(DEFINES) 

clean:
	-rm -f $(TARGET) $(OBJS) romdisk.*

rm-elf:
	-rm -f $(TARGET) romdisk.*

$(TARGET): $(OBJS) romdisk.o
	$(KOS_CC) $(KOS_CFLAGS) $(KOS_LDFLAGS) -o $(TARGET) $(KOS_START) \
		$(OBJS) romdisk.o $(OBJEXTRA) -L$(KOS_BASE)/lib -lgcc -lSDL_mixer_126 -lSDL_image_124 -lSDL_129 -loggvorbisplay -ltremor -lgl -lpng_128 -ljpeg -lz_123 -lkallisti -lm $(KOS_LIBS)

romdisk.img:
	$(KOS_GENROMFS) -f romdisk.img -d romdisk -v

romdisk.o: romdisk.img
	/usr/local/dc/kos/kos/utils/bin2o/bin2o romdisk.img romdisk romdisk.o
      #$(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o

run: $(TARGET)
	$(KOS_LOADER) $(TARGET)

############################################
# ELF -> BIN
############################################	
bin:
	$(KOS_OBJCOPY) -R .stack -O binary $(TARGET) $(PROGRAM).bin

############################################
# Pc -> Dreamcast
############################################
load:
	/usr/local/dc/arm-elf/bin/dc-tool -e -b 115200 -x $(PROGRAM).bin

iso_make: 
	rm cd.iso
	mkisofs -joliet-long -l -o cd.iso -graft-points /=CD_ISO_FULL/

iso:
	/usr/local/dc/arm-elf/bin/dc-tool -e -b 115200 -x $(PROGRAM).bin -i