NAME = joggle
TARGET = $(NAME).elf
OBJS = $(NAME).o object.o video.o tiles.o images.o anim.o font.o sound.o cont.o utils.o dict.o
KOS_CFLAGS += -I$(KOS_BASE)/kernel/arch/dreamcast
KOS_CFLAGS += -Wno-pointer-sign -DUSE_ROMDISK
OBJEXTRA = romdisk.o

# If no debugging information in the build - make sure -O2 is set otherwise
# the dictionary functions don't work!!!!!
#KOS_CFLAGS += -DDEBUG_LEVEL=0
#KOS_CFLAGS += -O2

#KOS_CFLAGS += -DDEBUG_PERFORMANCE

KOS_CFLAGS += -DK13 -DSND_BG_MP3 -I$(KOS_BASE)/../kos-ports/libmp3/include
LIBS       += -lmp3
# KOS_CFLAGS += -DSND_BG_OGG
# LIBS       += -loggvorbisplay
# KOS_CFLAGS += -DSND_BG_MOD
# LIBS       += -lmodplug -lk++

LIBS       += -lpng -lz -lm -lkosutils

all: $(TARGET)

include $(KOS_BASE)/Makefile.rules

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

rd:
	-rm -f romdisk.*
	
$(TARGET): $(OBJS) $(OBJEXTRA)
	$(KOS_CC) $(KOS_CFLAGS) $(KOS_LDFLAGS) -o $(TARGET) $(KOS_START) \
	$(OBJS) $(OBJEXTRA) $(LIBS) $(KOS_LIBS)
	$(KOS_OBJCOPY) -O binary -R .stack $(TARGET) $(NAME).bin
	cp $(NAME).bin $(NAME).dcbin

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

romdisk.o: romdisk.img
	$(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o

run: $(TARGET)
	cp $(TARGET) /mingw/TEST/RUNIT.elf

dist:
	rm -f $(OBJS)
	$(KOS_STRIP) $(TARGET)

sbi:
	rm -r Inducer
	mkdir Inducer
	mkdir Inducer/Images
	mkdir Inducer/Games
	mkdir Inducer/$(NAME)
	cp $(NAME).png Inducer/Images/.
	cp $(NAME).bin Inducer/Games/.
	cp $(NAME).dxl Inducer/Games/.
	cp -R romdisk/data Inducer/$(NAME)
	cp extramusic/* Inducer/$(NAME)/data/sound/.
	
