# NDSDEVDIR=C:/ndsdev
NDSDEVDIR=C:/devkitPro
# NDSLIBPATH=$(NDSDEVDIR)/ndslib
NDSLIBPATH=$(NDSDEVDIR)/libnds
# CROSS = $(NDSDEVDIR)/devkitarm/bin/arm-elf-
CROSS = $(NDSDEVDIR)/devkitARM/bin/arm-elf-

GCC = $(CROSS)gcc
G++ = $(CROSS)g++
AS = $(CROSS)as
OBJCOPY = $(CROSS)objcopy
LD = $(CROSS)gcc
NDSTOOL=$(NDSDEVDIR)/devkitARM/bin/ndstool
DSBUILD=$(NDSDEVDIR)/devkitARM/bin/dsbuild


# INCLUDES=-I$(NDSLIBPATH)/include -I$(NDSLIBPATH)/include/NDS
INCLUDES=-I$(NDSLIBPATH)/include -I$(NDSLIBPATH)/include/nds

CFLAGS_COMMON=-fomit-frame-pointer -ffast-math -mthumb-interwork -Wall \
	-O2 $(INCLUDES)
CFLAGS_ARM7=-mcpu=arm7tdmi -mtune=arm7tdmi -DARM7 -fomit-frame-pointer
CFLAGS_ARM9=-mcpu=arm9tdmi -mtune=arm9tdmi -DARM9 -fomit-frame-pointer

LIBS_ARM7=-L$(NDSLIBPATH)/lib -lnds7
LIBS_ARM9=-L$(NDSLIBPATH)/lib -lnds9

LD_FLAGS_COMMON=-mthumb-interwork -mno-fpu
LD_FLAGS_ARM7=-specs=ds_arm7.specs
LD_FLAGS_ARM9=-specs=ds_arm9.specs

ICON= -o data/images/wifime_logo.bmp -b data/images/logo_16.bmp "Fushido"


ARM9_CFILES = \
	neo_tiles_gfx.c \
	smile_splash_gfx.c \
	gfx_load.c \
	bottom_intro_gfx.c \
	top_intro_gfx.c \
	top_scores_gfx.c \
	bottom_scores_gfx.c \
	bottom_got_highscore_gfx.c \
	bottom_game_bg_gfx.c \
	fonts_scores_gfx.c \
	target_anim_gfx.c \
	hole_gfx.c \
	types_gfx.c \
	colors_gfx.c \
	explo_gfx.c \
	throw_anim_gfx.c \
	top_game_bg_gfx.c \
	top_fonts_gfx.c \
	top_marks_gfx.c \
	top_constraints_gfx.c \
	touch_stars_anim_gfx.c \
	spin_stars_anim_gfx.c \
	wav_screen_touch.c \
	wav_place_ok.c \
	wav_place_ok2.c \
	wav_place_ok3.c \
	wav_place_ok4.c \
	wav_place_ok5.c \
	wav_place_ok6.c \
	wav_place_ok7.c \
	wav_selection.c \
	wav_place_ko.c \
	wav_destruct.c \
	wav_intro.c \
	wav_throw.c \
	wav_game_over.c \
	wav_hibernate.c \
	wav_next_level.c \
	wav_can_t_throw.c \
	printing.c \
	intro.c \
	ihm.c \
	game.c \
	scores.c \
	splash.c \
	persistent.c \
	bottom_pause_gfx.c \
	bottom_game_over_gfx.c \
	pause.c \
	arm9_main.c

ARM9_OBJFILES = $(ARM9_CFILES:.c=.o)







world: fushido.nds.gba


.SUFFIXES:
.SUFFIXES: .c .o


# -------------------------------- ARM 9 section.
.c.o:
	$(GCC) $(CFLAGS_COMMON) $(CFLAGS_ARM9) -c $<

arm9.elf: $(ARM9_OBJFILES)
	$(LD) $(LD_FLAGS_COMMON) $(LD_FLAGS_ARM9) \
		$(ARM9_OBJFILES) $(LIBS_ARM9) -o arm9.elf

arm9.bin: arm9.elf
	$(OBJCOPY) -O binary arm9.elf arm9.bin

# -------------------------------- WIFI ROM section.
fushido.nds: arm9.bin
	$(NDSTOOL) -c fushido.nds -9 arm9.bin $(ICON)

# -------------------------------- GBA CARTRIDGE ROM section.
fushido.nds.gba: fushido.nds
	$(DSBUILD) fushido.nds -o fushido.nds.gba



clean:
	rm -f *.nds *.nds.gba
	rm -f *.bin
	rm -f *.elf
	rm -f *.o
	rm -f *~

