aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/ds/arm9
diff options
context:
space:
mode:
authorMax Horn2007-11-22 14:04:46 +0000
committerMax Horn2007-11-22 14:04:46 +0000
commit78d347e00832648ef160d8a7f76127dec312ce68 (patch)
treec7a942470d1c7b366928a638139336c1b5dfc581 /backends/platform/ds/arm9
parentc277ac699f1accaf3ea2fd9e818ad945f1e45e95 (diff)
downloadscummvm-rg350-78d347e00832648ef160d8a7f76127dec312ce68.tar.gz
scummvm-rg350-78d347e00832648ef160d8a7f76127dec312ce68.tar.bz2
scummvm-rg350-78d347e00832648ef160d8a7f76127dec312ce68.zip
updated backends/platform/ds/arm9/makefile.in to match changes made to backends/platform/ds/arm9/makefile (next time, please modify makefile.in then run tools/update-version.pl)
svn-id: r29611
Diffstat (limited to 'backends/platform/ds/arm9')
-rw-r--r--backends/platform/ds/arm9/makefile4
-rw-r--r--backends/platform/ds/arm9/makefile.in139
2 files changed, 125 insertions, 18 deletions
diff --git a/backends/platform/ds/arm9/makefile b/backends/platform/ds/arm9/makefile
index 5be91f9d55..e10711d2ef 100644
--- a/backends/platform/ds/arm9/makefile
+++ b/backends/platform/ds/arm9/makefile
@@ -440,8 +440,8 @@ endif
#---------------------------------------------------------------------------------
%.nds: %.bin
- @echo ndstool -c $@ -9 scummvm.bin $(ARM7BIN) -b ../../$(LOGO) "$(shell basename $@);ScummVM 0.11.0;DS Port"
- ndstool -c $@ -9 scummvm.bin $(ARM7BIN) -b ../../$(LOGO) "$(shell basename $@);ScummVM 0.11.0;DS Port"
+ @echo ndstool -c $@ -9 scummvm.bin $(ARM7BIN) -b ../../$(LOGO) "$(shell basename $@);ScummVM 0.11.0svn;DS Port"
+ ndstool -c $@ -9 scummvm.bin $(ARM7BIN) -b ../../$(LOGO) "$(shell basename $@);ScummVM 0.11.0svn;DS Port"
dsbuild $@ -l ../ndsloader.bin
padbin 16 $(basename $@).ds.gba
diff --git a/backends/platform/ds/arm9/makefile.in b/backends/platform/ds/arm9/makefile.in
index e7a7da4a59..fed77da22f 100644
--- a/backends/platform/ds/arm9/makefile.in
+++ b/backends/platform/ds/arm9/makefile.in
@@ -4,18 +4,39 @@ libndsdir = /home/neil/devkitpro/libnds
# Select the build you want by uncommenting one of the following lines:
+
DS_BUILD_A = 1
#DS_BUILD_B = 1
#DS_BUILD_C = 1
#DS_BUILD_D = 1
+#DS_BUILD_E = 1
+#DS_BUILD_F = 1
# Uncomment the following line to build in support for MP3 audio
# using libmad:
-USE_MAD = 1
+
+ifdef DS_BUILD_F
+ # TODO: Fix this. When libmad is compiled in, the Kyrandia resource loading
+ # searches through it's entire index to find an mp3 each time a voice sample is requested
+ # this causes a nasty pause.
+else
+ ifdef DS_BUILD_E
+ # TODO: Inherit the earth uses so much RAM that I have removed libmad in order to
+ # claw some back.
+
+
+ else
+ USE_MAD = 1
+ endif
+endif
# Uncomment the following line to enable support for the
# ace DS Debugger (remembering to make the same change in the arm7 makefile):
#USE_DEBUGGER = 1
+
+# Uncomment the following line to enable the profiler
+#USE_PROFILER = 1
+
# NOTE: The header and libs for the debugger is assumed to be in the libnds
# folder.
@@ -24,9 +45,11 @@ VPATH = $(srcdir)
# Command to build libmad is:
# ./configure --host=arm-elf --enable-speed --enable-sso -enable-fpm=arm CFLAGS='-specs=ds_arm9.specs -mthumb-interwork'
+USE_ARM_SOUND_ASM = 1
+ARM = 1
ifdef DS_BUILD_A
- DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A
+ DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM
LOGO = logoa.bmp
DISABLE_HE = 1
#DISABLE_SCUMM = 1
@@ -44,6 +67,10 @@ ifdef DS_BUILD_A
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
+ DISABLE_CRUISE = 1
+ USE_ARM_GFX_ASM = 1
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
BUILD=scummvm-A
endif
@@ -66,6 +93,8 @@ ifdef DS_BUILD_B
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
BUILD=scummvm-B
endif
@@ -81,19 +110,21 @@ ifdef DS_BUILD_C
DISABLE_SWORD2 = 1
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
- #DISABLE_KYRA = 1
- #DISABLE_GOB = 1
+ DISABLE_KYRA = 1
+ DISABLE_GOB = 1
DISABLE_LURE = 1
DISABLE_CINE = 1
DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
BUILD=scummvm-C
endif
ifdef DS_BUILD_D
DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_D
- LOGO = logoc.bmp
+ LOGO = logod.bmp
DISABLE_HE = 1
DISABLE_SCUMM = 1
DISABLE_SCUMM_7_8 = 1
@@ -104,23 +135,75 @@ ifdef DS_BUILD_D
DISABLE_QUEEN = 1
DISABLE_SAGA = 1
DISABLE_KYRA = 1
- DISABLE_GOB = 1
+ #DISABLE_GOB = 1
DISABLE_LURE = 1
#DISABLE_CINE = 1
#DISABLE_AGI = 1
DISABLE_TOUCHE = 1
DISABLE_PARALLACTION = 1
- BUILD=scummvm-A
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
+ BUILD=scummvm-D
endif
+ifdef DS_BUILD_E
+ DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_E
+ LOGO = logoe.bmp
+ DISABLE_HE = 1
+ DISABLE_SCUMM = 1
+ DISABLE_SCUMM_7_8 = 1
+ DISABLE_AGOS = 1
+ DISABLE_SKY = 1
+ DISABLE_SWORD1 = 1
+ DISABLE_SWORD2 = 1
+ DISABLE_QUEEN = 1
+ #DISABLE_SAGA = 1
+ DISABLE_KYRA = 1
+ DISABLE_GOB = 1
+ DISABLE_LURE = 1
+ DISABLE_CINE = 1
+ DISABLE_AGI = 1
+ DISABLE_TOUCHE = 1
+ DISABLE_PARALLACTION = 1
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
+ BUILD=scummvm-E
+endif
+
+
+ifdef DS_BUILD_F
+ DEFINES = -DDS_NON_SCUMM_BUILD -DDS_BUILD_F
+ LOGO = logof.bmp
+ DISABLE_HE = 1
+ DISABLE_SCUMM = 1
+ DISABLE_SCUMM_7_8 = 1
+ DISABLE_AGOS = 1
+ DISABLE_SKY = 1
+ DISABLE_SWORD1 = 1
+ DISABLE_SWORD2 = 1
+ DISABLE_QUEEN = 1
+ DISABLE_SAGA = 1
+ #DISABLE_KYRA = 1
+ DISABLE_GOB = 1
+ DISABLE_LURE = 1
+ DISABLE_CINE = 1
+ DISABLE_AGI = 1
+ DISABLE_TOUCHE = 1
+ DISABLE_PARALLACTION = 1
+ DISABLE_CRUISE = 1
+ DISABLE_DRASCULA = 1
+ BUILD=scummvm-F
+
+endif
+
ARM7BIN := -7 $(CURDIR)/../../arm7/arm7.bin
ICON := -b ../../../logo.bmp "ScummVM;By Neil Millstone;"
CC = arm-eabi-gcc
CXX = arm-eabi-g++
-CFLAGS = -Wno-multichar -Wall -Os\
+CFLAGS = -Wno-multichar -Wall\
-Wno-multichar -mcpu=arm9tdmi -mtune=arm9tdmi \
-mcpu=arm9tdmi -mtune=arm9tdmi -fomit-frame-pointer\
-ffast-math -mthumb-interwork
@@ -129,12 +212,17 @@ ifdef USE_DEBUGGER
DEFINES += -DUSE_DEBUGGER
CFLAGS += -g
endif
+
+ifdef USE_PROFILER
+ CFLAGS += -mpoke-function-name -finstrument-functions -g
+ DEFINES += -DUSE_PROFILER
+endif
CXXFLAGS= $(CFLAGS) -Wno-non-virtual-dtor -Wno-non-virtual-dtor \
-fno-exceptions -fno-rtti
ASFLAGS = -mcpu=arm9tdmi -mthumb-interwork
-DEFINES += -D__DS__ -DNDS -DARM9 -DNONSTANDARD_PORT -DDISABLE_FANCY_THEMES -DDISABLE_DEFAULT_SAVEFILEMANAGER
+DEFINES += -D__DS__ -DNDS -DARM9 -DNONSTANDARD_PORT -DDISABLE_FANCY_THEMES -DDISABLE_DEFAULT_SAVEFILEMANAGER -DARM
ifdef USE_MAD
DEFINES += -DUSE_MAD
endif
@@ -145,7 +233,7 @@ LDFLAGS = -specs=ds_arm9.specs -mthumb-interwork -mno-fpu -Wl,-Map,map.txt
INCLUDES= -I./ -I$(portdir)/$(BUILD) -I$(srcdir) -I$(srcdir)/common -I$(portdir)/source -I$(portdir)/source/compressor -I$(portdir)/source/fat \
-I$(srcdir)/backends/fs -I$(srcdir)/backends/fs/ds -I$(portdir)/data -I$(libndsdir)/include -I$(portdir)/../commoninclude\
-I$(srcdir)/scumm -I$(libndsdir)/include -I$(libndsdir)/include/nds -I$(srcdir)/engines -I$(portdir)/source/mad\
- -I$(portdir)/source/libcartreset
+ -I$(portdir)/source/libcartreset -include $(srcdir)/common/scummsys.h
LIBS = -lm -L$(libndsdir)/lib -L$(portdir)/lib -lnds9
@@ -178,13 +266,18 @@ PRE_OBJS_FLAGS = -Wl,--whole-archive
POST_OBJS_FLAGS = -Wl,--no-whole-archive
endif
-PORT_OBJS := $(portdir)/source/blitters.o $(portdir)/source/cdaudio.o $(portdir)/source/dsmain.o \
+PORT_OBJS := $(portdir)/source/blitters_arm.o $(portdir)/source/cdaudio.o $(portdir)/source/dsmain.o \
$(portdir)/../../../fs/ds/ds-fs.o $(portdir)/source/gbampsave.o $(portdir)/source/scummhelp.o\
$(portdir)/source/osystem_ds.o $(portdir)/source/portdefs.o $(portdir)/source/ramsave.o\
$(portdir)/source/scummconsole.o $(portdir)/source/touchkeyboard.o $(portdir)/source/zipreader.o\
- $(portdir)/source/dsoptions.o $(portdir)/source/keys.o
+ $(portdir)/source/dsoptions.o $(portdir)/source/keys.o $(portdir)/source/wordcompletion.o
-DATA_OBJS := $(portdir)/data/icons.o $(portdir)/data/keyboard.o $(portdir)/data/keyboard_pal.o $(portdir)/data/default_font.o
+ifdef USE_PROFILER
+ PORT_OBJS += $(portdir)/source/profiler/cyg-profile.o
+endif
+
+
+DATA_OBJS := $(portdir)/data/icons.o $(portdir)/data/keyboard.o $(portdir)/data/keyboard_pal.o $(portdir)/data/default_font.o $(portdir)/data/8x8font_tga.o
COMPRESSOR_OBJS := $(portdir)/source/compressor/lz.o
@@ -209,7 +302,9 @@ FAT_OBJS := $(portdir)/source/fat/disc_io.o $(portdir)/source/fat/gba_nds_fat.o
LIBCARTRESET_OBJS := $(portdir)/source/libcartreset/cartreset.o
-
+# Files in this list will be compiled with -O2, otherwise they will be compiled with -Os
+OPTLIST := actor.cpp ds_main.cpp osystem_ds.cpp blitters.cpp fmopl.cpp rate.cpp mixer.cpp
+#OPTLIST :=
OBJS := $(DATA_OBJS) $(LIBCARTRESET_OBJS) $(PORT_OBJS) $(COMPRESSOR_OBJS) $(FAT_OBJS)
@@ -269,6 +364,7 @@ endef
# rm $(*).tmp
#endef
+
##############
# Replacement rule for the one in makefile.common
##############
@@ -276,6 +372,7 @@ ifndef HAVE_GCC3
# If you use GCC, disable the above and enable this for intelligent
# dependency tracking.
.cpp.o:
+
$(MKDIR) $(*D)/$(DEPDIR)
$(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d2" $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
# $(ECHO) "$(*D)/" > $(*D)/$(DEPDIR)/$(*F).d
@@ -287,9 +384,19 @@ else
# Also, with this GCC inserts additional dummy rules for the involved headers,
# which ensures a smooth compilation even if said headers become obsolete.
.cpp.o:
+# echo !!!!!!!!!!!! $(notdir $<)
+# ifeq ( $(notdir $<), $(findstring $(notdir $<), $(OPTLIST)) )
+# OPTFLAG=-O3
+# else
+# OPTFLAG=-Os
+# endif
+
+# export OPTFLAG = ;
+# echo !!!!!!!! $(OPTFLAG)
+
$(MKDIR) $(*D)/$(DEPDIR)
-# $(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d",-MQ,"$@",-MP $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
- $(CXX) -MMD -MF "$(*D)/$(DEPDIR)/$(*F).d" $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
+ $(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d",-MQ,"$@",-MP $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
+ $(CXX) -MMD -MF "$(*D)/$(DEPDIR)/$(*F).d" $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o $(if $(findstring $(notdir $<), $(OPTLIST)), -O2, -Os)
endif