[Scummvm-cvs-logs] SF.net SVN: scummvm: [32860] scummvm/branches/gsoc2008-tfmx

marwanhilmi at users.sourceforge.net marwanhilmi at users.sourceforge.net
Tue Jul 1 01:48:25 CEST 2008


Revision: 32860
          http://scummvm.svn.sourceforge.net/scummvm/?rev=32860&view=rev
Author:   marwanhilmi
Date:     2008-06-30 16:48:24 -0700 (Mon, 30 Jun 2008)

Log Message:
-----------
Merged from trunk via svnmerge.

Modified Paths:
--------------
    scummvm/branches/gsoc2008-tfmx/AUTHORS
    scummvm/branches/gsoc2008-tfmx/Makefile
    scummvm/branches/gsoc2008-tfmx/Makefile.common
    scummvm/branches/gsoc2008-tfmx/NEWS
    scummvm/branches/gsoc2008-tfmx/README
    scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.cpp
    scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.h
    scummvm/branches/gsoc2008-tfmx/backends/midi/alsa.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/camd.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/coreaudio.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/coremidi.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/dmedia.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/quicktime.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/seq.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/timidity.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/windows.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/ypa1.cpp
    scummvm/branches/gsoc2008-tfmx/backends/midi/zodiac.cpp
    scummvm/branches/gsoc2008-tfmx/backends/module.mk
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/extend.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_kyra.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_sword1.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/dc/Makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/dc/audio.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dc.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dcmain.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/dc/selector.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/Makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/source/main.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/buildkeyboard.bat
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/lib/readme.txt
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/adpcm_arm.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters_arm.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/compressor/lz.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/console2.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/dsmain.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/dsmain.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/dsoptions.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/dsoptions.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/disc_io.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/disc_io.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/gba_nds_fat.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/gba_nds_fat.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_dldi.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_dldi.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_efa2.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_efa2.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_fcsr.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_fcsr.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3_common.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3_common.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3cf.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3cf.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3sd.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_m3sd_asm.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_mmcf.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_mmcf.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_mpcf.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_mpcf.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_njsd.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_njsd.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_nmmc.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_nmmc.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_sccf.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_sccf.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_scsd.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_scsd.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_scsd_asm.s
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_sd_common.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/fat/io_sd_common.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/gbampsave.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/gbampsave.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/keys.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/mad/readme.txt
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/osystem_ds.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/osystem_ds.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/portdefs.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/portdefs.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/ramsave.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/ramsave.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/scummconsole.c
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/scummconsole.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/scummhelp.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/scummhelp.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/touchkeyboard.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/touchkeyboard.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/wordcompletion.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/wordcompletion.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/zipreader.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/zipreader.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/ds/makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/README-GP2X
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/README-GP2X.html
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/config.sh
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/gp2x-common.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/gp2x.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/iphone/osys_iphone.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/iphone/osys_iphone.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/null/null.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/ps2/systemps2.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/psp/osys_psp.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/psp/osys_psp.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/sdl/events.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/sdl/sdl.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/sdl/sdl.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/AdaptAllMMPs.pl
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/BuildPackageUpload_AllVersions.pl
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/BuildPackageUpload_LocalSettings.pl
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/README
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/S60v3/ScummVM_S60v3.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/UIQ3/ScummVM_UIQ3.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_agi.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_agos.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_base.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_cine.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_cruise.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_drascula.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_gob.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_kyra.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_lure.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_m4.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_made.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_parallaction.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_queen.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_saga.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_scumm.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_sky.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_sword1.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_sword2.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/mmp/scummvm_touche.mmp.in
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/src/SymbianOS.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/src/SymbianOS.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/symbian/src/portdefs.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wince/CELauncherDialog.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wince/Makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/wince/wince-sdl.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wince/wince-sdl.h
    scummvm/branches/gsoc2008-tfmx/backends/plugins/dynamic-plugin.h
    scummvm/branches/gsoc2008-tfmx/backends/timer/default/default-timer.h
    scummvm/branches/gsoc2008-tfmx/base/commandLine.cpp
    scummvm/branches/gsoc2008-tfmx/base/main.cpp
    scummvm/branches/gsoc2008-tfmx/base/plugins.cpp
    scummvm/branches/gsoc2008-tfmx/base/plugins.h
    scummvm/branches/gsoc2008-tfmx/common/advancedDetector.cpp
    scummvm/branches/gsoc2008-tfmx/common/advancedDetector.h
    scummvm/branches/gsoc2008-tfmx/common/file.cpp
    scummvm/branches/gsoc2008-tfmx/common/file.h
    scummvm/branches/gsoc2008-tfmx/common/hash-str.h
    scummvm/branches/gsoc2008-tfmx/common/hashmap.h
    scummvm/branches/gsoc2008-tfmx/common/module.mk
    scummvm/branches/gsoc2008-tfmx/common/rect.h
    scummvm/branches/gsoc2008-tfmx/common/scummsys.h
    scummvm/branches/gsoc2008-tfmx/common/system.cpp
    scummvm/branches/gsoc2008-tfmx/common/system.h
    scummvm/branches/gsoc2008-tfmx/common/util.cpp
    scummvm/branches/gsoc2008-tfmx/common/util.h
    scummvm/branches/gsoc2008-tfmx/configure
    scummvm/branches/gsoc2008-tfmx/dists/engine-data/kyra.dat
    scummvm/branches/gsoc2008-tfmx/dists/msvc7/cruise.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc7/drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc7/gob.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc7/saga.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc7/scummvm.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc71/cruise.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc71/drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc71/gob.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc71/saga.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc71/scummvm.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc8/cruise.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc8/drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc8/gob.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc8/saga.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc8/scummvm.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc9/cruise.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc9/drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc9/gob.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc9/saga.vcproj
    scummvm/branches/gsoc2008-tfmx/dists/msvc9/scummvm.vcproj
    scummvm/branches/gsoc2008-tfmx/engines/agi/agi.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agi/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/agos.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/agos.h
    scummvm/branches/gsoc2008-tfmx/engines/agos/animation.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/draw.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/event.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/gfx.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/input.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/intern.h
    scummvm/branches/gsoc2008-tfmx/engines/agos/script.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/script_e1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/script_s1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/agos/subroutine.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/anim.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/bg.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/bg.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/bg_list.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/bg_list.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/cine.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/cine.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/gfx.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/gfx.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/main_loop.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/object.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/object.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/pal.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/pal.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/part.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/prc.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/rel.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/script.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/script_fw.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/script_os.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/sound.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/texte.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/texte.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/unpack.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/unpack.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/various.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cine/various.h
    scummvm/branches/gsoc2008-tfmx/engines/cine/xref.txt
    scummvm/branches/gsoc2008-tfmx/engines/cruise/cruise_main.h
    scummvm/branches/gsoc2008-tfmx/engines/cruise/module.mk
    scummvm/branches/gsoc2008-tfmx/engines/drascula/animation.cpp
    scummvm/branches/gsoc2008-tfmx/engines/drascula/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/drascula/drascula.cpp
    scummvm/branches/gsoc2008-tfmx/engines/drascula/drascula.h
    scummvm/branches/gsoc2008-tfmx/engines/drascula/module.mk
    scummvm/branches/gsoc2008-tfmx/engines/drascula/rooms.cpp
    scummvm/branches/gsoc2008-tfmx/engines/drascula/talk.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/coktelvideo.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/coktelvideo.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/draw_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/draw_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/driver_vga.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/game.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/game.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/game_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/game_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/global.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/global.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/gob.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/gob.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/goblin.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/goblin_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/goblin_v4.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/init.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/inter.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/inter.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/inter_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/inter_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/inter_v4.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/map_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/map_v4.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/module.mk
    scummvm/branches/gsoc2008-tfmx/engines/gob/mult.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/mult_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/parse.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/parse_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/parse_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/saveload.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/saveload.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/saveload_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/saveload_v3.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/saveload_v4.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/scenery.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/scenery.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/sound/adlib.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/sound/cdrom.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/sound/sound.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/video.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/video.h
    scummvm/branches/gsoc2008-tfmx/engines/gob/videoplayer.cpp
    scummvm/branches/gsoc2008-tfmx/engines/gob/videoplayer.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/animator_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/animator_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/animator_mr.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/debugger.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/gui_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/gui_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/gui_lok.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/items_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_hof.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_lok.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_mr.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_mr.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_v1.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/kyra_v2.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/resource.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/resource.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/scene_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/scene_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/scene_v2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/screen.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script_tim.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script_tim.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/script_v1.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/seqplayer.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sequences_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sound.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sound.h
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sound_digital.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sound_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/sound_towns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/staticres.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/text.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/text_hof.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/text_lok.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/text_mr.cpp
    scummvm/branches/gsoc2008-tfmx/engines/kyra/vqa.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/game.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/lure.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/lure.h
    scummvm/branches/gsoc2008-tfmx/engines/lure/menu.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/menu.h
    scummvm/branches/gsoc2008-tfmx/engines/lure/palette.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/palette.h
    scummvm/branches/gsoc2008-tfmx/engines/lure/res.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/res_struct.cpp
    scummvm/branches/gsoc2008-tfmx/engines/lure/sound.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/converse.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/converse.h
    scummvm/branches/gsoc2008-tfmx/engines/m4/font.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/graphics.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/graphics.h
    scummvm/branches/gsoc2008-tfmx/engines/m4/m4_views.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/mads_anim.cpp
    scummvm/branches/gsoc2008-tfmx/engines/m4/script.h
    scummvm/branches/gsoc2008-tfmx/engines/m4/viewmgr.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/database.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/database.h
    scummvm/branches/gsoc2008-tfmx/engines/made/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/graphics.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/graphics.h
    scummvm/branches/gsoc2008-tfmx/engines/made/made.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/made.h
    scummvm/branches/gsoc2008-tfmx/engines/made/pmvplayer.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/resource.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/screen.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/screen.h
    scummvm/branches/gsoc2008-tfmx/engines/made/screenfx.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/screenfx.h
    scummvm/branches/gsoc2008-tfmx/engines/made/script.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/script.h
    scummvm/branches/gsoc2008-tfmx/engines/made/scriptfuncs.cpp
    scummvm/branches/gsoc2008-tfmx/engines/made/scriptfuncs.h
    scummvm/branches/gsoc2008-tfmx/engines/metaengine.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/callables_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/debug.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/dialogue.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/disk.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/disk_br.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/disk_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/exec_br.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/exec_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/font.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/gfxbase.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/graphics.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/graphics.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/gui_br.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/gui_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/input.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/input.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/objects.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/objects.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parallaction.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parallaction.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parallaction_br.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parallaction_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parser.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parser.h
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parser_br.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/parser_ns.cpp
    scummvm/branches/gsoc2008-tfmx/engines/parallaction/staticres.cpp
    scummvm/branches/gsoc2008-tfmx/engines/queen/input.cpp
    scummvm/branches/gsoc2008-tfmx/engines/queen/input.h
    scummvm/branches/gsoc2008-tfmx/engines/queen/journal.cpp
    scummvm/branches/gsoc2008-tfmx/engines/queen/queen.cpp
    scummvm/branches/gsoc2008-tfmx/engines/queen/resource.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/actor.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/actor_walk.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/animation.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/detection.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/detection_tables.h
    scummvm/branches/gsoc2008-tfmx/engines/saga/font.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/gfx.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/interface.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/interface.h
    scummvm/branches/gsoc2008-tfmx/engines/saga/isomap.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/isomap.h
    scummvm/branches/gsoc2008-tfmx/engines/saga/itedata.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/module.mk
    scummvm/branches/gsoc2008-tfmx/engines/saga/music.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/palanim.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/puzzle.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/rscfile.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/saga.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/saga.h
    scummvm/branches/gsoc2008-tfmx/engines/saga/saveload.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/scene.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/scene.h
    scummvm/branches/gsoc2008-tfmx/engines/saga/script.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/sfuncs.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/sndres.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/sprite.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/sthread.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/charset.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/debugger.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/detection_tables.h
    scummvm/branches/gsoc2008-tfmx/engines/scumm/gfxARM.s
    scummvm/branches/gsoc2008-tfmx/engines/scumm/saveload.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/script_v6.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/scumm-md5.h
    scummvm/branches/gsoc2008-tfmx/engines/scumm/scumm.h
    scummvm/branches/gsoc2008-tfmx/engines/scumm/smush/codec47ARM.s
    scummvm/branches/gsoc2008-tfmx/engines/scumm/sound.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/string.cpp
    scummvm/branches/gsoc2008-tfmx/engines/scumm/verbs.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sky/music/adlibmusic.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword1/control.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword2/header.h
    scummvm/branches/gsoc2008-tfmx/engines/sword2/mouse.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword2/mouse.h
    scummvm/branches/gsoc2008-tfmx/engines/sword2/object.h
    scummvm/branches/gsoc2008-tfmx/engines/sword2/palette.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword2/screen.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword2/screen.h
    scummvm/branches/gsoc2008-tfmx/engines/sword2/sword2.cpp
    scummvm/branches/gsoc2008-tfmx/engines/sword2/sword2.h
    scummvm/branches/gsoc2008-tfmx/engines/touche/midi.cpp
    scummvm/branches/gsoc2008-tfmx/engines/touche/midi.h
    scummvm/branches/gsoc2008-tfmx/engines/touche/saveload.cpp
    scummvm/branches/gsoc2008-tfmx/engines/touche/touche.cpp
    scummvm/branches/gsoc2008-tfmx/graphics/cursorman.cpp
    scummvm/branches/gsoc2008-tfmx/graphics/cursorman.h
    scummvm/branches/gsoc2008-tfmx/graphics/fontman.h
    scummvm/branches/gsoc2008-tfmx/graphics/iff.cpp
    scummvm/branches/gsoc2008-tfmx/gui/about.cpp
    scummvm/branches/gsoc2008-tfmx/gui/credits.h
    scummvm/branches/gsoc2008-tfmx/gui/debugger.cpp
    scummvm/branches/gsoc2008-tfmx/gui/eval.cpp
    scummvm/branches/gsoc2008-tfmx/gui/eval.h
    scummvm/branches/gsoc2008-tfmx/gui/launcher.cpp
    scummvm/branches/gsoc2008-tfmx/gui/launcher.h
    scummvm/branches/gsoc2008-tfmx/gui/massadd.cpp
    scummvm/branches/gsoc2008-tfmx/gui/massadd.h
    scummvm/branches/gsoc2008-tfmx/gui/newgui.cpp
    scummvm/branches/gsoc2008-tfmx/sound/audiostream.cpp
    scummvm/branches/gsoc2008-tfmx/sound/audiostream.h
    scummvm/branches/gsoc2008-tfmx/sound/flac.cpp
    scummvm/branches/gsoc2008-tfmx/sound/fmopl.h
    scummvm/branches/gsoc2008-tfmx/sound/mixer.cpp
    scummvm/branches/gsoc2008-tfmx/sound/mixer.h
    scummvm/branches/gsoc2008-tfmx/sound/module.mk
    scummvm/branches/gsoc2008-tfmx/sound/mp3.cpp
    scummvm/branches/gsoc2008-tfmx/sound/null.cpp
    scummvm/branches/gsoc2008-tfmx/sound/softsynth/adlib.cpp
    scummvm/branches/gsoc2008-tfmx/sound/softsynth/fluidsynth.cpp
    scummvm/branches/gsoc2008-tfmx/sound/softsynth/mt32/mt32emu.h
    scummvm/branches/gsoc2008-tfmx/sound/softsynth/mt32.cpp
    scummvm/branches/gsoc2008-tfmx/sound/softsynth/ym2612.cpp
    scummvm/branches/gsoc2008-tfmx/sound/vorbis.cpp
    scummvm/branches/gsoc2008-tfmx/test/common/hashmap.h
    scummvm/branches/gsoc2008-tfmx/tools/create_kyradat/create_kyradat.cpp
    scummvm/branches/gsoc2008-tfmx/tools/credits.pl
    scummvm/branches/gsoc2008-tfmx/tools/scumm-md5.txt

Added Paths:
-----------
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_m4.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_made.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/Makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gecko_console.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gecko_console.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gx_supp.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gx_supp.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/main.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_events.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_gfx.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_sfx.cpp
    scummvm/branches/gsoc2008-tfmx/dists/wii/
    scummvm/branches/gsoc2008-tfmx/engines/saga/introproc_ihnm.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/introproc_ite.cpp
    scummvm/branches/gsoc2008-tfmx/sound/mixer_intern.h
    scummvm/branches/gsoc2008-tfmx/sound/musicplugin.cpp
    scummvm/branches/gsoc2008-tfmx/sound/musicplugin.h
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/Makefile
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/create_drascula.cpp
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/create_drascula.h
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/create_drascula.sln
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/create_drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8_to_msvc9.bat
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/create_drascula.sln
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/create_drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9_to_msvc8.bat
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/module.mk
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/staticdata.h
    scummvm/branches/gsoc2008-tfmx/tools/create_kyradat/ita.h

Removed Paths:
-------------
    scummvm/branches/gsoc2008-tfmx/backends/fs/gp32/
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h
    scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp32/
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/Makefile
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gecko_console.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gecko_console.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gx_supp.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/gx_supp.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/main.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem.h
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_events.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_gfx.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/wii/osystem_sfx.cpp
    scummvm/branches/gsoc2008-tfmx/backends/platform/x11/
    scummvm/branches/gsoc2008-tfmx/engines/cruise/stringSupport.cpp
    scummvm/branches/gsoc2008-tfmx/engines/cruise/stringSupport.h
    scummvm/branches/gsoc2008-tfmx/engines/drascula/texts.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/ihnm_introproc.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/ite_introproc.cpp
    scummvm/branches/gsoc2008-tfmx/engines/saga/sagaresnames.h
    scummvm/branches/gsoc2008-tfmx/sound/midiplugin.h
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/Makefile
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/create_drascula.cpp
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/create_drascula.h
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/create_drascula.sln
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8/create_drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc8_to_msvc9.bat
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/create_drascula.sln
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9/create_drascula.vcproj
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/dists/msvc9_to_msvc8.bat
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/module.mk
    scummvm/branches/gsoc2008-tfmx/tools/create_drascula/staticdata.h

Property Changed:
----------------
    scummvm/branches/gsoc2008-tfmx/
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/build.sh
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/bundle.sh
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/clean.sh
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/config.sh
    scummvm/branches/gsoc2008-tfmx/backends/platform/gp2x/build/scummvm.gpe


Property changes on: scummvm/branches/gsoc2008-tfmx
___________________________________________________________________
Name: svnmerge-integrated
   - /scummvm/trunk:1-32128
   + /scummvm/trunk:1-32856

Modified: scummvm/branches/gsoc2008-tfmx/AUTHORS
===================================================================
--- scummvm/branches/gsoc2008-tfmx/AUTHORS	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/AUTHORS	2008-06-30 23:48:24 UTC (rev 32860)
@@ -81,14 +81,14 @@
        Paul Gilbert         
 
     M4:
-       Torbjorn Andersson        	
+       Torbjorn Andersson   
        Paul Gilbert         
-       Benjamin Haisch       	
-       Filippos Karapetis  
+       Benjamin Haisch      
+       Filippos Karapetis   
 
     MADE:
-       Benjamin Haisch       	
-	   
+       Benjamin Haisch      
+
     Parallaction:
        peres                
 
@@ -139,6 +139,9 @@
        Jurgen Braam         
        Lars Persson         
 
+    Wii:
+       Andre Heider         
+
   Other subsystems
   ----------------
     Infrastructure:

Modified: scummvm/branches/gsoc2008-tfmx/Makefile
===================================================================
--- scummvm/branches/gsoc2008-tfmx/Makefile	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/Makefile	2008-06-30 23:48:24 UTC (rev 32860)
@@ -24,7 +24,7 @@
 # Turn off some annoying and not-so-useful warnings
 CXXFLAGS+= -Wno-long-long -Wno-multichar -Wno-unknown-pragmas -Wno-reorder
 # Enable even more warnings...
-CXXFLAGS+= -pedantic -Wpointer-arith -Wcast-qual -Wcast-align -Wconversion
+CXXFLAGS+= -pedantic -Wpointer-arith -Wcast-qual -Wcast-align
 CXXFLAGS+= -Wshadow -Wimplicit -Wundef -Wnon-virtual-dtor -Wwrite-strings
 
 # Disable RTTI and exceptions, and enabled checking of pointers returned by "new"

Modified: scummvm/branches/gsoc2008-tfmx/Makefile.common
===================================================================
--- scummvm/branches/gsoc2008-tfmx/Makefile.common	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/Makefile.common	2008-06-30 23:48:24 UTC (rev 32860)
@@ -182,6 +182,9 @@
 
 # Engine data files
 DIST_FILES_ENGINEDATA=
+ifdef ENABLE_DRASCULA
+DIST_FILES_ENGINEDATA+=drascula.dat
+endif
 ifdef ENABLE_IGOR
 DIST_FILES_ENGINEDATA+=igor.tbl
 endif

Modified: scummvm/branches/gsoc2008-tfmx/NEWS
===================================================================
--- scummvm/branches/gsoc2008-tfmx/NEWS	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/NEWS	2008-06-30 23:48:24 UTC (rev 32860)
@@ -6,9 +6,11 @@
    - Added support for The Legend of Kyrandia: Book Two: Hand of Fate
    - Added support for The Legend of Kyrandia: Book Three: Malcolm's Revenge
    - Added support for Lost in Time
+   - Added support for The Bizarre Adventures of Woodruff and the Schnibble
    - Added support for the PC version of Waxworks
    - Added support for the Macintosh version of I Have no Mouth, and I
      must Scream
+   - Added support for Drascula: The Vampire Strikes Back
    
  General:
    - Added CAMD MIDI driver for AmigaOS4.

Modified: scummvm/branches/gsoc2008-tfmx/README
===================================================================
--- scummvm/branches/gsoc2008-tfmx/README	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/README	2008-06-30 23:48:24 UTC (rev 32860)
@@ -245,7 +245,8 @@
 
      Backyard Baseball                           [baseball]
      Backyard Soccer                             [soccer]
-     Blue's ABC Time                             [BluesABCTime]
+     Blue's 123 Time Activities                  [Blues123Time]
+     Blue's ABC Time Activities                  [BluesABCTime]
      Blue's Birthday Adventure                   [BluesBirthday]
      SPY Fox 3: Operation Ozone                  [spyozon]
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -25,7 +25,7 @@
 //#include <NDS/ARM9/console.h> //basic print funcionality
 #include "backends/fs/ds/ds-fs.h"
 #include "dsmain.h"
-#include "gba_nds_fat.h"
+#include "fat/gba_nds_fat.h"
 
 
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/ds/ds-fs.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -28,7 +28,7 @@
 #include "zipreader.h"
 #include "ramsave.h"
 #include "scummconsole.h"
-#include "gba_nds_fat.h"
+#include "fat/gba_nds_fat.h"
 #include "backends/fs/abstract-fs.h"
 
 namespace DS {

Copied: scummvm/branches/gsoc2008-tfmx/backends/fs/wii (from rev 32738, scummvm/trunk/backends/fs/wii)


Property changes on: scummvm/branches/gsoc2008-tfmx/backends/fs/wii
___________________________________________________________________
Name: svn:ignore
   + .deps
*.o
lib*.a


Deleted: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp
===================================================================
--- scummvm/trunk/backends/fs/wii/wii-fs-factory.cpp	2008-06-19 22:54:17 UTC (rev 32738)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,49 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#if defined(__WII__)
-
-#include <unistd.h>
-
-#include "backends/fs/wii/wii-fs-factory.h"
-#include "backends/fs/wii/wii-fs.cpp"
-
-DECLARE_SINGLETON(WiiFilesystemFactory);
-
-AbstractFilesystemNode *WiiFilesystemFactory::makeRootFileNode() const {
-	return new WiiFilesystemNode();
-}
-
-AbstractFilesystemNode *WiiFilesystemFactory::makeCurrentDirectoryFileNode() const {
-	char buf[MAXPATHLEN];
-
-	if (getcwd(buf, MAXPATHLEN))
-		return new WiiFilesystemNode(buf, true);
-	else
-		return new WiiFilesystemNode();
-}
-
-AbstractFilesystemNode *WiiFilesystemFactory::makeFileNodePath(const String &path) const {
-	return new WiiFilesystemNode(path, true);
-}
-#endif
-

Copied: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp (from rev 32738, scummvm/trunk/backends/fs/wii/wii-fs-factory.cpp)
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -0,0 +1,49 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#if defined(__WII__)
+
+#include <unistd.h>
+
+#include "backends/fs/wii/wii-fs-factory.h"
+#include "backends/fs/wii/wii-fs.cpp"
+
+DECLARE_SINGLETON(WiiFilesystemFactory);
+
+AbstractFilesystemNode *WiiFilesystemFactory::makeRootFileNode() const {
+	return new WiiFilesystemNode();
+}
+
+AbstractFilesystemNode *WiiFilesystemFactory::makeCurrentDirectoryFileNode() const {
+	char buf[MAXPATHLEN];
+
+	if (getcwd(buf, MAXPATHLEN))
+		return new WiiFilesystemNode(buf, true);
+	else
+		return new WiiFilesystemNode();
+}
+
+AbstractFilesystemNode *WiiFilesystemFactory::makeFileNodePath(const String &path) const {
+	return new WiiFilesystemNode(path, true);
+}
+#endif
+

Deleted: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h
===================================================================
--- scummvm/trunk/backends/fs/wii/wii-fs-factory.h	2008-06-19 22:54:17 UTC (rev 32738)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,50 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef _WII_FILESYSTEM_FACTORY_H_
-#define _WII_FILESYSTEM_FACTORY_H_
-
-#include "common/singleton.h"
-#include "backends/fs/fs-factory.h"
-
-/**
- * Creates WiiFilesystemNode objects.
- *
- * Parts of this class are documented in the base interface class, FilesystemFactory.
- */
-class WiiFilesystemFactory : public FilesystemFactory, public Common::Singleton<WiiFilesystemFactory> {
-public:
-	typedef Common::String String;
-
-	virtual AbstractFilesystemNode *makeRootFileNode() const;
-	virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
-	virtual AbstractFilesystemNode *makeFileNodePath(const String &path) const;
-
-protected:
-	WiiFilesystemFactory() {};
-
-private:
-	friend class Common::Singleton<SingletonBaseType>;
-};
-
-#endif /*Wii_FILESYSTEM_FACTORY_H*/
-

Copied: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h (from rev 32738, scummvm/trunk/backends/fs/wii/wii-fs-factory.h)
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h	                        (rev 0)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs-factory.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -0,0 +1,50 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef _WII_FILESYSTEM_FACTORY_H_
+#define _WII_FILESYSTEM_FACTORY_H_
+
+#include "common/singleton.h"
+#include "backends/fs/fs-factory.h"
+
+/**
+ * Creates WiiFilesystemNode objects.
+ *
+ * Parts of this class are documented in the base interface class, FilesystemFactory.
+ */
+class WiiFilesystemFactory : public FilesystemFactory, public Common::Singleton<WiiFilesystemFactory> {
+public:
+	typedef Common::String String;
+
+	virtual AbstractFilesystemNode *makeRootFileNode() const;
+	virtual AbstractFilesystemNode *makeCurrentDirectoryFileNode() const;
+	virtual AbstractFilesystemNode *makeFileNodePath(const String &path) const;
+
+protected:
+	WiiFilesystemFactory() {};
+
+private:
+	friend class Common::Singleton<SingletonBaseType>;
+};
+
+#endif /*Wii_FILESYSTEM_FACTORY_H*/
+

Deleted: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp
===================================================================
--- scummvm/trunk/backends/fs/wii/wii-fs.cpp	2008-06-19 22:54:17 UTC (rev 32738)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,196 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#if defined(__WII__)
-
-#include "backends/fs/abstract-fs.h"
-
-#include <sys/dir.h>
-
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-/**
- * Implementation of the ScummVM file system API based on Wii.
- *
- * Parts of this class are documented in the base interface class, AbstractFilesystemNode.
- */
-class WiiFilesystemNode : public AbstractFilesystemNode {
-protected:
-	String _displayName;
-	String _path;
-	bool _isDirectory, _isReadable, _isWritable;
-
-public:
-	/**
-	 * Creates a WiiFilesystemNode with the root node as path.
-	 */
-	WiiFilesystemNode();
-
-	/**
-	 * Creates a WiiFilesystemNode for a given path.
-	 *
-	 * @param path String with the path the new node should point to.
-	 * @param verify true if the isValid and isDirectory flags should be verified during the construction.
-	 */
-	WiiFilesystemNode(const String &path, bool verify);
-
-	virtual bool exists() const;
-	virtual String getDisplayName() const { return _displayName; }
-	virtual String getName() const { return _displayName; }
-	virtual String getPath() const { return _path; }
-	virtual bool isDirectory() const { return _isDirectory; }
-	virtual bool isReadable() const { return _isReadable; }
-	virtual bool isWritable() const { return _isWritable; }
-
-	virtual AbstractFilesystemNode *getChild(const String &n) const;
-	virtual bool getChildren(AbstractFSList &list, ListMode mode, bool hidden) const;
-	virtual AbstractFilesystemNode *getParent() const;
-
-private:
-	virtual void setFlags();
-};
-
-/**
- * Returns the last component of a given path.
- *
- * Examples:
- *						/foo/bar.txt would return /bar.txt
- *						/foo/bar/	 would return /bar/
- *
- * @param str String containing the path.
- * @return Pointer to the first char of the last component inside str.
- */
-const char *lastPathComponent(const Common::String &str) {
-	if(str.empty())
-		return "";
-
-	const char *start = str.c_str();
-	const char *cur = start + str.size() - 2;
-
-	while (cur >= start && *cur != '/') {
-		--cur;
-	}
-
-	return cur + 1;
-}
-
-void WiiFilesystemNode::setFlags() {
-	struct stat st;
-
-	_isDirectory = false;
-	_isReadable = false;
-	_isWritable = false;
-
-	if (!stat(_path.c_str(), &st)) {
-		_isDirectory = S_ISDIR(st.st_mode);
-		_isReadable = (st.st_mode & S_IRUSR) > 0;
-		_isWritable = (st.st_mode & S_IWUSR) > 0;
-	}
-}
-
-
-WiiFilesystemNode::WiiFilesystemNode() {
-	// The root dir.
-	_path = "fat:/";
-	_displayName = _path;
-
-	setFlags();
-}
-
-WiiFilesystemNode::WiiFilesystemNode(const String &p, bool verify) {
-	assert(p.size() > 0);
-
-	_path = p;
-
-	_displayName = lastPathComponent(_path);
-
-	if (verify)
-		setFlags();
-}
-
-bool WiiFilesystemNode::exists() const {
-	struct stat st;
-	return stat(_path.c_str (), &st) == 0;
-}
-
-AbstractFilesystemNode *WiiFilesystemNode::getChild(const String &n) const {
-	assert(_isDirectory);
-
-	String newPath(_path);
-	if (newPath.lastChar() != '/')
-			newPath += '/';
-	newPath += n;
-
-	return new WiiFilesystemNode(newPath, true);
-}
-
-bool WiiFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, bool hidden) const {
-	assert(_isDirectory);
-
-	DIR_ITER* dp = diropen (_path.c_str());
-
-	if (dp == NULL)
-		return false;
-
-	char filename[MAXPATHLEN];
-	struct stat st;
-
-	while (dirnext(dp, filename, &st) == 0) {
-		if (strcmp(filename, ".") == 0 || strcmp(filename, "..") == 0)
-			continue;
-
-		String newPath(_path);
-		if (newPath.lastChar() != '/')
-				newPath += '/';
-		newPath += filename;
-
-		bool isDir = S_ISDIR(st.st_mode);
-
-		if ((mode == FilesystemNode::kListFilesOnly && isDir) ||
-			(mode == FilesystemNode::kListDirectoriesOnly && !isDir))
-			continue;
-
-		if (isDir)
-			newPath += '/';
-
-		myList.push_back(new WiiFilesystemNode(newPath, true));
-	}
-
-	dirclose(dp);
-
-	return true;
-}
-
-AbstractFilesystemNode *WiiFilesystemNode::getParent() const {
-	if (_path == "/")
-		return 0;
-
-	const char *start = _path.c_str();
-	const char *end = lastPathComponent(_path);
-
-	return new WiiFilesystemNode(String(start, end - start), true);
-}
-
-#endif //#if defined(__WII__)
-

Copied: scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp (from rev 32738, scummvm/trunk/backends/fs/wii/wii-fs.cpp)
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2008-tfmx/backends/fs/wii/wii-fs.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -0,0 +1,196 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#if defined(__WII__)
+
+#include "backends/fs/abstract-fs.h"
+
+#include <sys/dir.h>
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+/**
+ * Implementation of the ScummVM file system API based on Wii.
+ *
+ * Parts of this class are documented in the base interface class, AbstractFilesystemNode.
+ */
+class WiiFilesystemNode : public AbstractFilesystemNode {
+protected:
+	String _displayName;
+	String _path;
+	bool _isDirectory, _isReadable, _isWritable;
+
+public:
+	/**
+	 * Creates a WiiFilesystemNode with the root node as path.
+	 */
+	WiiFilesystemNode();
+
+	/**
+	 * Creates a WiiFilesystemNode for a given path.
+	 *
+	 * @param path String with the path the new node should point to.
+	 * @param verify true if the isValid and isDirectory flags should be verified during the construction.
+	 */
+	WiiFilesystemNode(const String &path, bool verify);
+
+	virtual bool exists() const;
+	virtual String getDisplayName() const { return _displayName; }
+	virtual String getName() const { return _displayName; }
+	virtual String getPath() const { return _path; }
+	virtual bool isDirectory() const { return _isDirectory; }
+	virtual bool isReadable() const { return _isReadable; }
+	virtual bool isWritable() const { return _isWritable; }
+
+	virtual AbstractFilesystemNode *getChild(const String &n) const;
+	virtual bool getChildren(AbstractFSList &list, ListMode mode, bool hidden) const;
+	virtual AbstractFilesystemNode *getParent() const;
+
+private:
+	virtual void setFlags();
+};
+
+/**
+ * Returns the last component of a given path.
+ *
+ * Examples:
+ *						/foo/bar.txt would return /bar.txt
+ *						/foo/bar/	 would return /bar/
+ *
+ * @param str String containing the path.
+ * @return Pointer to the first char of the last component inside str.
+ */
+const char *lastPathComponent(const Common::String &str) {
+	if(str.empty())
+		return "";
+
+	const char *start = str.c_str();
+	const char *cur = start + str.size() - 2;
+
+	while (cur >= start && *cur != '/') {
+		--cur;
+	}
+
+	return cur + 1;
+}
+
+void WiiFilesystemNode::setFlags() {
+	struct stat st;
+
+	_isDirectory = false;
+	_isReadable = false;
+	_isWritable = false;
+
+	if (!stat(_path.c_str(), &st)) {
+		_isDirectory = S_ISDIR(st.st_mode);
+		_isReadable = (st.st_mode & S_IRUSR) > 0;
+		_isWritable = (st.st_mode & S_IWUSR) > 0;
+	}
+}
+
+
+WiiFilesystemNode::WiiFilesystemNode() {
+	// The root dir.
+	_path = "fat:/";
+	_displayName = _path;
+
+	setFlags();
+}
+
+WiiFilesystemNode::WiiFilesystemNode(const String &p, bool verify) {
+	assert(p.size() > 0);
+
+	_path = p;
+
+	_displayName = lastPathComponent(_path);
+
+	if (verify)
+		setFlags();
+}
+
+bool WiiFilesystemNode::exists() const {
+	struct stat st;
+	return stat(_path.c_str (), &st) == 0;
+}
+
+AbstractFilesystemNode *WiiFilesystemNode::getChild(const String &n) const {
+	assert(_isDirectory);
+
+	String newPath(_path);
+	if (newPath.lastChar() != '/')
+			newPath += '/';
+	newPath += n;
+
+	return new WiiFilesystemNode(newPath, true);
+}
+
+bool WiiFilesystemNode::getChildren(AbstractFSList &myList, ListMode mode, bool hidden) const {
+	assert(_isDirectory);
+
+	DIR_ITER* dp = diropen (_path.c_str());
+
+	if (dp == NULL)
+		return false;
+
+	char filename[MAXPATHLEN];
+	struct stat st;
+
+	while (dirnext(dp, filename, &st) == 0) {
+		if (strcmp(filename, ".") == 0 || strcmp(filename, "..") == 0)
+			continue;
+
+		String newPath(_path);
+		if (newPath.lastChar() != '/')
+				newPath += '/';
+		newPath += filename;
+
+		bool isDir = S_ISDIR(st.st_mode);
+
+		if ((mode == FilesystemNode::kListFilesOnly && isDir) ||
+			(mode == FilesystemNode::kListDirectoriesOnly && !isDir))
+			continue;
+
+		if (isDir)
+			newPath += '/';
+
+		myList.push_back(new WiiFilesystemNode(newPath, true));
+	}
+
+	dirclose(dp);
+
+	return true;
+}
+
+AbstractFilesystemNode *WiiFilesystemNode::getParent() const {
+	if (_path == "/")
+		return 0;
+
+	const char *start = _path.c_str();
+	const char *end = lastPathComponent(_path);
+
+	return new WiiFilesystemNode(String(start, end - start), true);
+}
+
+#endif //#if defined(__WII__)
+

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/alsa.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/alsa.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/alsa.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -28,7 +28,7 @@
 
 #include "common/config-manager.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <alsa/asoundlib.h>
@@ -79,7 +79,7 @@
 }
 
 int MidiDriver_ALSA::open() {
-	char *var;
+	const char *var;
 
 	if (_isOpen)
 		return MERR_ALREADY_OPEN;
@@ -87,7 +87,8 @@
 
 	if (!(var = getenv("SCUMMVM_PORT"))) {
 		// use config option if no var specified
-		if (parse_addr(ConfMan.get("alsa_port").c_str(), &seq_client, &seq_port) < 0) {
+		var = ConfMan.get("alsa_port").c_str();
+		if (parse_addr(var, &seq_client, &seq_port) < 0) {
 			error("Invalid port %s", var);
 			return -1;
 		}
@@ -241,23 +242,18 @@
 
 // Plugin interface
 
-class AlsaMidiPlugin : public MidiPluginObject {
+class AlsaMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "ALSA";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "alsa";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual Common::StringList getDevices() const;
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
 #define perm_ok(pinfo,bits) ((snd_seq_port_info_get_capability(pinfo) & (bits)) == (bits))
@@ -271,8 +267,8 @@
 	return 0;
 }
 
-Common::StringList AlsaMidiPlugin::getDevices() const {
-	Common::StringList devices;
+MusicDevices AlsaMusicPlugin::getDevices() const {
+	MusicDevices devices;
 
 	snd_seq_t *seq;
 	if (snd_seq_open(&seq, "default", SND_SEQ_OPEN_DUPLEX, 0) < 0)
@@ -292,7 +288,8 @@
 		while (!found_valid_port && snd_seq_query_next_port(seq, pinfo) >= 0) {
 			if (check_permission(pinfo)) {
 				found_valid_port = true;
-				devices.push_back(snd_seq_client_info_get_name(cinfo));
+				// TODO: Return a different music type depending on the configuration
+				devices.push_back(MusicDevice(this, snd_seq_client_info_get_name(cinfo), MT_GM));
 				//snd_seq_client_info_get_client(cinfo) : snd_seq_port_info_get_port(pinfo)
 			}
 		}
@@ -302,7 +299,7 @@
 	return devices;
 }
 
-PluginError AlsaMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+PluginError AlsaMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_ALSA();
 
 	return kNoError;
@@ -311,16 +308,16 @@
 MidiDriver *MidiDriver_ALSA_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	AlsaMidiPlugin p;
+	AlsaMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(ALSA)
-	//REGISTER_PLUGIN_DYNAMIC(ALSA, PLUGIN_TYPE_MIDI, AlsaMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(ALSA, PLUGIN_TYPE_MUSIC, AlsaMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(ALSA, PLUGIN_TYPE_MIDI, AlsaMidiPlugin);
+	REGISTER_PLUGIN_STATIC(ALSA, PLUGIN_TYPE_MUSIC, AlsaMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/camd.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/camd.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/camd.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -28,7 +28,7 @@
 
 #include "common/endian.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <proto/camd.h>
@@ -166,26 +166,29 @@
 
 // Plugin interface
 
-class CamdMidiPlugin : public MidiPluginObject {
+class CamdMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "CAMD";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "camd";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+};
 
-	//virtual Common::StringList getDevices() const;
+MusicDevices CamdMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
 
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
-};
-
-PluginError CamdMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+PluginError CamdMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_CAMD();
 
 	return kNoError;
@@ -194,16 +197,16 @@
 MidiDriver *MidiDriver_CAMD_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	CamdMidiPlugin p;
+	CamdMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(CAMD)
-	//REGISTER_PLUGIN_DYNAMIC(CAMD, PLUGIN_TYPE_MIDI, CamdMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(CAMD, PLUGIN_TYPE_MUSIC, CamdMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(CAMD, PLUGIN_TYPE_MIDI, CamdMidiPlugin);
+	REGISTER_PLUGIN_STATIC(CAMD, PLUGIN_TYPE_MUSIC, CamdMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/coreaudio.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/coreaudio.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/coreaudio.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -24,9 +24,20 @@
 
 #ifdef MACOSX
 
+// HACK to disable deprecated warnings under Mac OS X 10.5.
+// Apple depracted the AUGraphNewNode & AUGraphGetNodeInfo APIs
+// in favor of the new AUGraphAddNode & AUGraphNodeInfo APIs.
+// While it would be trivial to switch to those, this would break
+// binary compatibility with all pre-10.5 systems, so we don't want
+// to do that just now. Maybe when 10.6 comes... :)
+#include <AvailabilityMacros.h>
+#undef DEPRECATED_ATTRIBUTE
+#define DEPRECATED_ATTRIBUTE
+
+
 #include "common/config-manager.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <AudioToolbox/AUGraph.h>
@@ -196,24 +207,29 @@
 
 // Plugin interface
 
-class CoreAudioMidiPlugin : public MidiPluginObject {
+class CoreAudioMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "CoreAudio";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "core";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError CoreAudioMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices CoreAudioMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError CoreAudioMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_CORE();
 
 	return kNoError;
@@ -222,16 +238,16 @@
 MidiDriver *MidiDriver_CORE_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	CoreAudioMidiPlugin p;
+	CoreAudioMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(COREAUDIO)
-	//REGISTER_PLUGIN_DYNAMIC(COREAUDIO, PLUGIN_TYPE_MIDI, CoreAudioMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(COREAUDIO, PLUGIN_TYPE_MUSIC, CoreAudioMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(COREAUDIO, PLUGIN_TYPE_MIDI, CoreAudioMidiPlugin);
+	REGISTER_PLUGIN_STATIC(COREAUDIO, PLUGIN_TYPE_MUSIC, CoreAudioMusicPlugin);
 //#endif
 
 #endif // MACOSX

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/coremidi.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/coremidi.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/coremidi.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -26,7 +26,7 @@
 
 #include "common/config-manager.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <CoreMIDI/CoreMIDI.h>
@@ -179,24 +179,29 @@
 
 // Plugin interface
 
-class CoreMIDIMidiPlugin : public MidiPluginObject {
+class CoreMIDIMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "CoreMIDI";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "coremidi";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError CoreMIDIMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices CoreMIDIMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError CoreMIDIMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_CoreMIDI();
 
 	return kNoError;
@@ -205,16 +210,16 @@
 MidiDriver *MidiDriver_CoreMIDI_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	CoreMIDIMidiPlugin p;
+	CoreMIDIMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(COREMIDI)
-	//REGISTER_PLUGIN_DYNAMIC(COREMIDI, PLUGIN_TYPE_MIDI, CoreMIDIMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(COREMIDI, PLUGIN_TYPE_MUSIC, CoreMIDIMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(COREMIDI, PLUGIN_TYPE_MIDI, CoreMIDIMidiPlugin);
+	REGISTER_PLUGIN_STATIC(COREMIDI, PLUGIN_TYPE_MUSIC, CoreMIDIMusicPlugin);
 //#endif
 
 #endif // MACOSX

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/dmedia.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/dmedia.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/dmedia.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -31,7 +31,7 @@
 
 #include "common/scummsys.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <dmedia/midi.h>
@@ -178,24 +178,29 @@
 
 // Plugin interface
 
-class DMediaMidiPlugin : public MidiPluginObject {
+class DMediaMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "DMedia";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "dmedia";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError DMediaMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices DMediaMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError DMediaMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_DMEDIA();
 
 	return kNoError;
@@ -204,16 +209,16 @@
 MidiDriver *MidiDriver_DMEDIA_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	DMediaMidiPlugin p;
+	DMediaMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(DMEDIA)
-	//REGISTER_PLUGIN_DYNAMIC(DMEDIA, PLUGIN_TYPE_MIDI, DMediaMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(DMEDIA, PLUGIN_TYPE_MUSIC, DMediaMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(DMEDIA, PLUGIN_TYPE_MIDI, DMediaMidiPlugin);
+	REGISTER_PLUGIN_STATIC(DMEDIA, PLUGIN_TYPE_MUSIC, DMediaMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/quicktime.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/quicktime.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/quicktime.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -24,9 +24,21 @@
 
 #if defined(MACOSX) || defined(macintosh)
 
+// HACK to disable deprecated warnings under Mac OS X 10.5.
+// Apple depracted the complete QuickTime Music/MIDI API.
+// Apps are supposed to use CoreAudio & CoreMIDI. We do support
+// those, but while QT Midi support is still around, there is no
+// reason to disable this driver. If they really ditch the API in 10.6,
+// we can still release binaries with this driver disabled/removed.
+#include <AvailabilityMacros.h>
+#undef DEPRECATED_ATTRIBUTE
+#define DEPRECATED_ATTRIBUTE
+
+
+
 #include "common/endian.h"
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #if defined(MACOSX)
@@ -253,24 +265,29 @@
 
 // Plugin interface
 
-class QuickTimeMidiPlugin : public MidiPluginObject {
+class QuickTimeMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "QuickTime";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "qt";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError QuickTimeMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices QuickTimeMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError QuickTimeMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_QT();
 
 	return kNoError;
@@ -279,16 +296,16 @@
 MidiDriver *MidiDriver_QT_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	QuickTimeMidiPlugin p;
+	QuickTimeMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(QUICKTIME)
-	//REGISTER_PLUGIN_DYNAMIC(QUICKTIME, PLUGIN_TYPE_MIDI, QuickTimeMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(QUICKTIME, PLUGIN_TYPE_MUSIC, QuickTimeMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(QUICKTIME, PLUGIN_TYPE_MIDI, QuickTimeMidiPlugin);
+	REGISTER_PLUGIN_STATIC(QUICKTIME, PLUGIN_TYPE_MUSIC, QuickTimeMusicPlugin);
 //#endif
 
 #endif // MACOSX || macintosh

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/seq.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/seq.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/seq.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -31,7 +31,7 @@
 #if defined(UNIX) && !defined(__BEOS__) && !defined(__MAEMO__)
 
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <fcntl.h>
@@ -173,24 +173,29 @@
 
 // Plugin interface
 
-class SeqMidiPlugin : public MidiPluginObject {
+class SeqMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "SEQ";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "seq";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError SeqMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices SeqMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError SeqMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_SEQ();
 
 	return kNoError;
@@ -199,16 +204,16 @@
 MidiDriver *MidiDriver_SEQ_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	SeqMidiPlugin p;
+	SeqMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(SEQ)
-	//REGISTER_PLUGIN_DYNAMIC(SEQ, PLUGIN_TYPE_MIDI, SeqMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(SEQ, PLUGIN_TYPE_MUSIC, SeqMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(SEQ, PLUGIN_TYPE_MIDI, SeqMidiPlugin);
+	REGISTER_PLUGIN_STATIC(SEQ, PLUGIN_TYPE_MUSIC, SeqMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/timidity.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/timidity.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/timidity.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -37,7 +37,7 @@
 #if defined (UNIX)
 
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <fcntl.h>
@@ -514,24 +514,27 @@
 
 // Plugin interface
 
-class TimidityMidiPlugin : public MidiPluginObject {
+class TimidityMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "TiMidity";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "timidity";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError TimidityMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices TimidityMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError TimidityMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_TIMIDITY();
 
 	return kNoError;
@@ -540,16 +543,16 @@
 MidiDriver *MidiDriver_TIMIDITY_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	TimidityMidiPlugin p;
+	TimidityMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(TIMIDITY)
-	//REGISTER_PLUGIN_DYNAMIC(TIMIDITY, PLUGIN_TYPE_MIDI, TimidityMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(TIMIDITY, PLUGIN_TYPE_MUSIC, TimidityMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(TIMIDITY, PLUGIN_TYPE_MIDI, TimidityMidiPlugin);
+	REGISTER_PLUGIN_STATIC(TIMIDITY, PLUGIN_TYPE_MUSIC, TimidityMusicPlugin);
 //#endif
 
 #endif // defined (UNIX)

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/windows.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/windows.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/windows.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -28,7 +28,7 @@
 // winnt.h defines ARRAYSIZE, but we want our own one...
 #undef ARRAYSIZE
 
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include <mmsystem.h>
@@ -147,24 +147,29 @@
 
 // Plugin interface
 
-class WindowsMidiPlugin : public MidiPluginObject {
+class WindowsMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "Windows MIDI";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "windows";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError WindowsMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices WindowsMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError WindowsMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_WIN();
 
 	return kNoError;
@@ -173,16 +178,16 @@
 MidiDriver *MidiDriver_WIN_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	WindowsMidiPlugin p;
+	WindowsMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(WINDOWS)
-	//REGISTER_PLUGIN_DYNAMIC(WINDOWS, PLUGIN_TYPE_MIDI, WindowsMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(WINDOWS, PLUGIN_TYPE_MUSIC, WindowsMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(WINDOWS, PLUGIN_TYPE_MIDI, WindowsMidiPlugin);
+	REGISTER_PLUGIN_STATIC(WINDOWS, PLUGIN_TYPE_MUSIC, WindowsMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/ypa1.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/ypa1.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/ypa1.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -23,7 +23,7 @@
  */
 
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #include "Pa1Lib.h"
@@ -106,24 +106,29 @@
 
 // Plugin interface
 
-class YamahaPa1MidiPlugin : public MidiPluginObject {
+class YamahaPa1MusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "Yamaha Pa1";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "ypa1";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError YamahaPa1MidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices YamahaPa1MusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError YamahaPa1MusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_YamahaPa1();
 
 	return kNoError;
@@ -132,14 +137,14 @@
 MidiDriver *MidiDriver_YamahaPa1_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	YamahaPa1MidiPlugin p;
+	YamahaPa1MusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(YPA1)
-	//REGISTER_PLUGIN_DYNAMIC(YPA1, PLUGIN_TYPE_MIDI, YamahaPa1MidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(YPA1, PLUGIN_TYPE_MUSIC, YamahaPa1MusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(YPA1, PLUGIN_TYPE_MIDI, YamahaPa1MidiPlugin);
+	REGISTER_PLUGIN_STATIC(YPA1, PLUGIN_TYPE_MUSIC, YamahaPa1MusicPlugin);
 //#endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/midi/zodiac.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/midi/zodiac.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/midi/zodiac.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -23,7 +23,7 @@
  */
 
 #include "common/util.h"
-#include "sound/midiplugin.h"
+#include "sound/musicplugin.h"
 #include "sound/mpu401.h"
 
 #ifndef DISABLE_TAPWAVE
@@ -124,24 +124,29 @@
 
 // Plugin interface
 
-class ZodiacMidiPlugin : public MidiPluginObject {
+class ZodiacMusicPlugin : public MusicPluginObject {
 public:
-	virtual const char *getName() const {
+	const char *getName() const {
 		return "Tapwave Zodiac";
 	}
 
-	virtual const char *getId() const {
+	const char *getId() const {
 		return "zodiac";
 	}
 
-	virtual int getCapabilities() const {
-		return MDT_MIDI;
-	}
-
-	virtual PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
+	MusicDevices getDevices() const;
+	PluginError createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const;
 };
 
-PluginError ZodiacMidiPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
+MusicDevices ZodiacMusicPlugin::getDevices() const {
+	MusicDevices devices;
+	// TODO: Return a different music type depending on the configuration
+	// TODO: List the available devices
+	devices.push_back(MusicDevice(this, "", MT_GM));
+	return devices;
+}
+
+PluginError ZodiacMusicPlugin::createInstance(Audio::Mixer *mixer, MidiDriver **mididriver) const {
 	*mididriver = new MidiDriver_Zodiac();
 
 	return kNoError;
@@ -150,16 +155,16 @@
 MidiDriver *MidiDriver_Zodiac_create(Audio::Mixer *mixer) {
 	MidiDriver *mididriver;
 
-	ZodiacMidiPlugin p;
+	ZodiacMusicPlugin p;
 	p.createInstance(mixer, &mididriver);
 
 	return mididriver;
 }
 
 //#if PLUGIN_ENABLED_DYNAMIC(ZODIAC)
-	//REGISTER_PLUGIN_DYNAMIC(ZODIAC, PLUGIN_TYPE_MIDI, ZodiacMidiPlugin);
+	//REGISTER_PLUGIN_DYNAMIC(ZODIAC, PLUGIN_TYPE_MUSIC, ZodiacMusicPlugin);
 //#else
-	REGISTER_PLUGIN_STATIC(ZODIAC, PLUGIN_TYPE_MIDI, ZodiacMidiPlugin);
+	REGISTER_PLUGIN_STATIC(ZODIAC, PLUGIN_TYPE_MUSIC, ZodiacMusicPlugin);
 //#endif
 
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/module.mk
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/module.mk	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/module.mk	2008-06-30 23:48:24 UTC (rev 32860)
@@ -3,13 +3,13 @@
 MODULE_OBJS := \
 	fs/amigaos4/amigaos4-fs-factory.o \
 	fs/ds/ds-fs-factory.o \
-	fs/gp32/gp32-fs-factory.o \
 	fs/palmos/palmos-fs-factory.o \
 	fs/posix/posix-fs-factory.o \
 	fs/ps2/ps2-fs-factory.o \
 	fs/psp/psp-fs-factory.o \
 	fs/symbian/symbian-fs-factory.o \
 	fs/windows/windows-fs-factory.o \
+	fs/wii/wii-fs-factory.o \
 	events/default/default-events.o \
 	midi/alsa.o \
 	midi/camd.o \

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -24,9 +24,9 @@
  */
 
 #include "be_base.h"
-#include "be_save.h"
 #include "common/config-file.h"
 #include "common/config-manager.h"
+#include "backends/saves/default/default-saves.h"
 #include "backends/timer/default/default-timer.h"
 #include "sound/mixer.h"
 
@@ -100,7 +100,7 @@
 	// Create the savefile manager, if none exists yet (we check for this to
 	// allow subclasses to provide their own).
 	if (_saveMgr == 0) {
-		_saveMgr = new PalmSaveFileManager();
+		_saveMgr = new DefaultSaveFileManager();
 	}
 
 	// Create and hook up the mixer, if none exists yet (we check for this to
@@ -120,6 +120,11 @@
 	OSystem::initBackend();
 }
 
+void OSystem_PalmBase::getTimeAndDate(struct tm &t) const {
+	time_t curTime = time(0);
+	t = *localtime(&curTime);
+}
+
 uint32 OSystem_PalmBase::getMillis() {
 	return TimGetTicks() * 1000 / SysTicksPerSecond();
 }

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_base.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -26,6 +26,8 @@
 #ifndef BE_BASE_H
 #define BE_BASE_H
 
+#include <time.h>
+
 #include "PalmVersion.h"
 #include "globals.h"
 
@@ -236,6 +238,7 @@
 
 	bool pollEvent(Common::Event &event);
 
+	void getTimeAndDate(struct tm &t) const;
 	virtual uint32 getMillis();
 	virtual void delayMillis(uint msecs);
 

Deleted: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,76 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- *
- */
-
-#include "be_base.h"
-#include "common/savefile.h"
-#include "be_save.h"
-
-Common::StringList PalmSaveFileManager::listSavefiles(const char *pattern) {
-	TODO: Implement this. If you don't understand what it should do, just ask
-	(e.g. on scummvm-devel or Fingolfin). It should be pretty simple if you
-	use Common::matchString from common/util.h and read the Doxygen docs,
-	then combine this with the old code below...
-
-/*
-void PalmSaveFileManager::listSavefiles(const char *prefix, bool *marks, int num) {
-	FileRef fileRef;
-	// try to open the dir
-	Err e = VFSFileOpen(gVars->VFS.volRefNum, SCUMMVM_SAVEPATH, vfsModeRead, &fileRef);
-	memset(marks, false, num*sizeof(bool));
-
-	if (e != errNone)
-		return;
-
-	// enumerate all files
-	UInt32 dirEntryIterator = vfsIteratorStart;
-	Char filename[32];
-	FileInfoType info = {0, filename, 32};
-	UInt16 length = StrLen(prefix);
-	int slot = 0;
-
-	while (dirEntryIterator != vfsIteratorStop) {
-		e = VFSDirEntryEnumerate (fileRef, &dirEntryIterator, &info);
-
-		if (e != expErrEnumerationEmpty) {									// there is something
-
-			if (StrLen(info.nameP) == (length + 2)) {						// consider max 99, filename length is ok
-				if (StrNCaselessCompare(prefix, info.nameP, length) == 0) { // this seems to be a save file
-					if (isdigit(info.nameP[length]) && isdigit(info.nameP[length+1])) {
-
-						slot = StrAToI(filename + length);
-						if (slot >= 0 && slot < num)
-							*(marks+slot) = true;
-
-					}
-				}
-			}
-
-		}
-	}
-
-	VFSFileClose(fileRef);
-}
-
-}

Deleted: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/be_save.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,36 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- *
- */
-
-#ifndef BACKEND_SAVES_PALM_H
-#define BACKEND_SAVES_PALM_H
-
-#include "saves/default/default-saves.h"
-
-class PalmSaveFileManager : public DefaultSaveFileManager {
-public:
-	Common::StringList listSavefiles(const char *pattern);
-};
-
-#endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/extend.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/extend.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/extend.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -29,8 +29,6 @@
 
 #include "modulesrsc.h"
 
-const char *SCUMMVM_SAVEPATH = "/PALM/Programs/ScummVM/Saved";
-
 void PalmFatalError(const char *err) {
 	WinSetDrawWindow(WinGetDisplayWindow());
 	WinPalette(winPaletteSetToDefault,0,0,0);

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_kyra.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_kyra.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_kyra.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -2,6 +2,6 @@
 #define PREFIX_H
 
 #include "native_common.h"
-#define ENABLE_KYRA
+#define ENABLE_KYRA STATIC_PLUGIN
 
 #endif

Copied: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_m4.h (from rev 32738, scummvm/trunk/backends/platform/PalmOS/Src/prefixes/native_m4.h)
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_m4.h	                        (rev 0)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_m4.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -0,0 +1,7 @@
+#ifndef PREFIX_H
+#define PREFIX_H
+
+#include "native_common.h"
+#define ENABLE_M4 STATIC_PLUGIN
+
+#endif

Copied: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_made.h (from rev 32738, scummvm/trunk/backends/platform/PalmOS/Src/prefixes/native_made.h)
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_made.h	                        (rev 0)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_made.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -0,0 +1,7 @@
+#ifndef PREFIX_H
+#define PREFIX_H
+
+#include "native_common.h"
+#define ENABLE_MADE STATIC_PLUGIN
+
+#endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_sword1.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_sword1.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/PalmOS/Src/prefixes/native_sword1.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -2,7 +2,7 @@
 #define PREFIX_H
 
 #include "native_common.h"
-#define ENABLE_SWORD1
+#define ENABLE_SWORD1 STATIC_PLUGIN
 #define USE_MPEG2
 #define USE_VORBIS
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/dc/Makefile
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/dc/Makefile	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/dc/Makefile	2008-06-30 23:48:24 UTC (rev 32860)
@@ -16,6 +16,7 @@
 INCLUDES= -I./ -I$(srcdir) -I$(ronindir)/include/ -I$(srcdir)/engines
 LIBS	= -L$(ronindir)/lib -lmad -lronin -lz -lm
 EXECUTABLE = scummvm.elf
+DEPDIR = .deps
 PLUGIN_PREFIX =
 PLUGIN_SUFFIX = .plg
 PLUGIN_EXTRA_DEPS = plugin.x plugin.syms scummvm.elf
@@ -37,7 +38,7 @@
 OBJS :=	dcmain.o time.o display.o audio.o input.o selector.o icon.o \
 	label.o vmsave.o softkbd.o dcloader.o cache.o dc-fs.o
 
-MODULE_DIRS += .
+MODULE_DIRS += ./
 
 include $(srcdir)/Makefile.common
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/dc/audio.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/dc/audio.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/dc/audio.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -25,17 +25,18 @@
 
 #include <common/scummsys.h>
 #include "engines/engine.h"
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 #include "dc.h"
 
 EXTERN_C void *memcpy4s(void *s1, const void *s2, unsigned int n);
 
-void initSound()
+uint OSystem_Dreamcast::initSound()
 {
   stop_sound();
   do_sound_command(CMD_SET_FREQ_EXP(FREQ_22050_EXP));
   do_sound_command(CMD_SET_STEREO(1));
   do_sound_command(CMD_SET_BUFFER(SOUND_BUFFER_SHIFT));
+  return read_sound_int(&SOUNDSTATUS->freq);
 }
 
 void OSystem_Dreamcast::checkSound()
@@ -61,8 +62,8 @@
   if (n<100)
     return;
 
-  Audio::Mixer::mixCallback(_mixer, (byte*)temp_sound_buffer,
-			    2*SAMPLES_TO_BYTES(n));
+  _mixer->mixCallback((byte*)temp_sound_buffer,
+		      2*SAMPLES_TO_BYTES(n));
 
   if (fillpos+n > curr_ring_buffer_samples) {
     int r = curr_ring_buffer_samples - fillpos;
@@ -77,8 +78,4 @@
     fillpos = 0;
 }
 
-int OSystem_Dreamcast::getOutputSampleRate() const
-{
-  return read_sound_int(&SOUNDSTATUS->freq);
-}
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dc.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dc.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dc.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -28,6 +28,7 @@
 #include <ronin/soundcommon.h>
 #include "backends/timer/default/default-timer.h"
 #include "backends/fs/fs-factory.h"
+#include "sound/mixer_intern.h"
 
 #define NUM_BUFFERS 4
 #define SOUND_BUFFER_SHIFT 3
@@ -195,7 +196,7 @@
  private:
 
   Common::SaveFileManager *_savefile;
-  Audio::Mixer *_mixer;
+  Audio::MixerImpl *_mixer;
   DefaultTimerManager *_timer;
   SoftKeyboard _softkbd;
 
@@ -223,6 +224,7 @@
 
   int temp_sound_buffer[RING_BUFFER_SAMPLES>>SOUND_BUFFER_SHIFT];
 
+  uint initSound();
   void checkSound();
 
   void drawMouse(int xdraw, int ydraw, int w, int h,
@@ -237,6 +239,5 @@
 extern int handleInput(struct mapledev *pad,
 		       int &mouse_x, int &mouse_y,
 		       byte &shiftFlags, Interactive *inter = NULL);
-extern void initSound();
 extern bool selectGame(char *&, char *&, class Icon &);
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dcmain.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dcmain.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/dc/dcmain.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -33,7 +33,7 @@
 #include <common/config-manager.h>
 
 #include "backends/plugins/dc/dc-provider.h"
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 
 
 Icon icon;
@@ -54,8 +54,10 @@
 void OSystem_Dreamcast::initBackend()
 {
   _savefile = createSavefileManager();
-  _mixer = new Audio::Mixer();
+  _mixer = new Audio::MixerImpl(this);
   _timer = new DefaultTimerManager();
+  _mixer->setOutputRate(initSound());
+  _mixer->setReady(true);
 }
 
 
@@ -216,7 +218,6 @@
   static int argc = 1;
 
   dc_init_hardware();
-  initSound();
 
   g_system = new OSystem_Dreamcast();
   assert(g_system);

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/dc/selector.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/dc/selector.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/dc/selector.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -25,7 +25,9 @@
 
 #include <common/scummsys.h>
 #include <engines/engine.h>
+#include <engines/metaengine.h>
 #include <base/plugins.h>
+#include <base/game.h>
 #include <common/fs.h>
 #include <common/events.h>
 #include "dc.h"
@@ -149,15 +151,6 @@
 
 static Game the_game;
 
-static void detectGames(FSList &files, GameList &candidates)
-{
-  const EnginePluginList &plugins = EngineMan.getPlugins();
-  EnginePluginList::const_iterator iter = plugins.begin();
-  for (iter = plugins.begin(); iter != plugins.end(); ++iter) {
-    candidates.push_back((*iter)->detectGames(files));
-  }
-}
-
 static bool isIcon(const FilesystemNode &entry)
 {
   int l = entry.getDisplayName().size();
@@ -227,8 +220,7 @@
 	  files.push_back(*entry);
     }
 
-    GameList candidates;
-    detectGames(files, candidates);
+    GameList candidates = EngineMan.detectGames(files);
 
     for (GameList::const_iterator ge = candidates.begin();
 	ge != candidates.end(); ++ge)

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/Makefile
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/Makefile	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/Makefile	2008-06-30 23:48:24 UTC (rev 32860)
@@ -68,7 +68,8 @@
 # list of directories containing libraries, this must be the top level containing
 # include and lib
 #---------------------------------------------------------------------------------
-LIBDIRS	:=	/home/neil/devkitpror21/libnds home/neil/devkitpror21/libnds/nds
+#LIBDIRS	:=	/home/neil/devkitpror21/libnds home/neil/devkitpror21/libnds/nds
+LIBDIRS	:=	$(DEVKITPRO)/libnds
 
 
 #---------------------------------------------------------------------------------
@@ -127,7 +128,11 @@
 	@echo clean ...$(TARGET)
 	@rm -fr $(BUILD) *.bin
 
+#---------------------------------------------------------------------------------
+semiclean:
+	@echo semiclean ...$(TARGET)
 
+
 #---------------------------------------------------------------------------------
 else
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/source/main.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/source/main.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm7/source/main.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -36,7 +36,7 @@
 #include <arm7/clock.h>
 #include <stdlib.h>
 #include <string.h>
-#include <registers_alt.h>
+//#include <registers_alt.h>	// not needed in current libnds
 #include <NDS/scummvm_ipc.h>
 //////////////////////////////////////////////////////////////////////
 #ifdef USE_DEBUGGER
@@ -261,6 +261,9 @@
   REG_SPICNT = SPI_ENABLE | SPI_BAUD_1MHz;
   REG_SPIDATA = enable? (result | data): (result & ~data);
   SerialWaitBusy();
+  
+  // FIXME: This function should either return something, or have a comment
+  // explaining why it is valid for it to not return something. :-)
 }
 
 /*

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/buildkeyboard.bat
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/buildkeyboard.bat	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/buildkeyboard.bat	2008-06-30 23:48:24 UTC (rev 32860)
@@ -2,7 +2,3 @@
 ..\tools\gfx2gba -c16 -t8 -M -pkeyboard_pal.raw ..\keyboard.bmp
 del keyboard.map
 pause
-cd data
-..\tools\gfx2gba -c16 -t8 -M -pkeyboard_pal.raw ..\keyboard.bmp
-del keyboard.map
-pause
\ No newline at end of file

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/lib/readme.txt
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/lib/readme.txt	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/lib/readme.txt	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,2 +1 @@
 If building with MAD enabled, put libmad.a in here.
-If building with MAD enabled, put libmad.a in here.
\ No newline at end of file

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/makefile
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/makefile	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/makefile	2008-06-30 23:48:24 UTC (rev 32860)
@@ -1,47 +1,39 @@
+srcdir      ?= .
+DEPDIR      := .deps
+
 #DYNAMIC_MODULES = 1
-#libndsdir = $(DEVKITPRO)/libnds
-libndsdir = /home/neil/devkitpror21/libnds
+libndsdir = $(DEVKITPRO)/libnds
+#libndsdir = /home/neil/devkitpror21/libnds
 
-# Select the build you want by uncommenting one of the following lines:
+# Select the build by setting SCUMM_BUILD to a,b,c,d,e,f or g.
+# Anything else gets build a.
 
-
-
-ifeq ($(SCUMM_BUILD),a)
-        DS_BUILD_A = 1
-endif
-
-ifeq ($(SCUMM_BUILD),b)
-        DS_BUILD_B = 1
-endif
-
-ifeq ($(SCUMM_BUILD),c)
-        DS_BUILD_C = 1
-endif
-
-ifeq ($(SCUMM_BUILD),d)
-        DS_BUILD_D = 1
-endif
-
-ifeq ($(SCUMM_BUILD),e)
-        DS_BUILD_E = 1
-endif
-
-ifeq ($(SCUMM_BUILD),f)
-        DS_BUILD_F = 1
-endif
-
 ifeq ($(SCUMM_BUILD),g)
         DS_BUILD_G = 1
+else
+ ifeq ($(SCUMM_BUILD),f)
+        DS_BUILD_F = 1
+ else
+  ifeq ($(SCUMM_BUILD),e)
+        DS_BUILD_E = 1
+  else
+   ifeq ($(SCUMM_BUILD),d)
+        DS_BUILD_D = 1
+   else
+    ifeq ($(SCUMM_BUILD),c)
+        DS_BUILD_C = 1
+    else
+     ifeq ($(SCUMM_BUILD),b)
+        DS_BUILD_B = 1
+     else
+        DS_BUILD_A = 1
+     endif
+    endif
+   endif
+  endif
+ endif
 endif
 
-#DS_BUILD_A = 1
-#DS_BUILD_B = 1
-#DS_BUILD_C = 1
-#DS_BUILD_D = 1		# started!
-#DS_BUILD_E = 1
-#DS_BUILD_F = 1
-#DS_BUILD_G = 1
-
 # To do:
 # - FAT cache?
 
@@ -79,14 +71,21 @@
 
 # Command to build libmad is:
 # ./configure --host=arm-elf --enable-speed --enable-sso -enable-fpm=arm CFLAGS='-specs=ds_arm9.specs -mthumb-interwork'
+#
+# I actually had to use
+# ./configure --host=arm-elf --enable-speed --enable-sso -enable-fpm=arm CFLAGS='-specs=ds_arm9.specs -mthumb-interwork' LDFLAGS='C:/Progra~1/devkitpro/libnds/lib/libnds9.a' --disable-shared --disable-debugging
 
 USE_ARM_SOUND_ASM = 1
 ARM = 1
+USE_ARM_COSTUME_ASM = 1
 
 ifdef DS_BUILD_A
-	DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM
+	DEFINES = -DDS_SCUMM_BUILD -DDS_BUILD_A -DUSE_ARM_GFX_ASM -DUSE_ARM_COSTUME_ASM
 	LOGO = logoa.bmp
 	ENABLE_SCUMM = STATIC_PLUGIN
+	DEFINES += -DENABLE_SCUMM=STATIC_PLUGIN
+	MODULES += engines/scumm
+
 	USE_ARM_GFX_ASM = 1
 	BUILD=scummvm-A
 endif
@@ -146,10 +145,12 @@
 CFLAGS	=	-Wno-multichar -Wall\
 		-Wno-multichar -mcpu=arm9tdmi -mtune=arm9tdmi \
 		-mcpu=arm9tdmi -mtune=arm9tdmi -fomit-frame-pointer\
-		-ffast-math -mthumb-interwork
+		-mthumb-interwork -DUSE_ARM_COSTUME_ASM=1
 
+# -ffast-math 
+
 ifdef USE_DEBUGGER
-	DEFINES += -DUSE_DEBUGGER
+	DEFINES += -DUSE_DEBUGGER 
 	CFLAGS += -g
 endif
 
@@ -158,7 +159,7 @@
 	DEFINES += -DUSE_PROFILER
 endif
 
-CXXFLAGS=	$(CFLAGS) -Wno-non-virtual-dtor	 -Wno-non-virtual-dtor \
+CXXFLAGS=	$(CFLAGS) -Wno-non-virtual-dtor -Wno-unknown-pragmas -Wno-reorder  \
 		-fno-exceptions -fno-rtti -mthumb-interwork
 
 #		-mthumb
@@ -181,9 +182,9 @@
 
 LDFLAGS = -specs=ds_arm9.specs -mthumb-interwork -Wl,--wrap,time -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\
+INCLUDES= -I./ -I$(portdir)/$(BUILD) -I$(srcdir) -I$(srcdir)/common -I$(portdir)/source \
+			-I$(portdir)/data -I$(libndsdir)/include -I$(portdir)/../commoninclude\
+			-I$(libndsdir)/include -I$(libndsdir)/include/nds -I$(srcdir)/engines -I$(portdir)/source/mad\
 			-I$(portdir)/source/libcartreset -include $(srcdir)/common/scummsys.h
 
 
@@ -258,13 +259,15 @@
 #OPTLIST :=
 
 # Compiler options for files which should be optimised for speed
-OPT_SPEED := -O3
+OPT_SPEED := -O2
 
 # Compiler options for files which should be optimised for space
-OPT_SIZE := -Os -mthumb -fno-gcse -fno-schedule-insns2
+OPT_SIZE := -Os
 
 
+#-mthumb -fno-gcse -fno-schedule-insns2
 
+
 OBJS := $(DATA_OBJS) $(LIBCARTRESET_OBJS) $(PORT_OBJS) $(COMPRESSOR_OBJS) $(FAT_OBJS)
 
 
@@ -277,6 +280,9 @@
 
 include $(srcdir)/Makefile.common
 
+semiclean:
+	$(RM) $(portdir)/source/dsoptions.o $(portdir)/source/dsmain.o $(FAT_OBJS) $(DATA_OBJS) $(portdir)/source/wordcompletion.o
+
 clean:
 	$(RM) $(OBJS) $(EXECUTABLE)
 	rm -fr $(BUILD)
@@ -330,8 +336,8 @@
 ifndef HAVE_GCC3
 # If you use GCC, disable the above and enable this for intelligent
 # dependency tracking.
-.cpp.o:
-
+#.cpp.o:
+%.o:%.cpp
 	$(MKDIR) $(*D)/$(DEPDIR)
 	$(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d2" $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
 #	$(ECHO) "$(*D)/" > $(*D)/$(DEPDIR)/$(*F).d
@@ -342,7 +348,8 @@
 # rule can get you into a bad state if you Ctrl-C at the wrong moment.
 # 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:
+#.cpp.o:
+%.o:%.cpp
 #	echo !!!!!!!!!!!! $(notdir $<)
 #	ifeq ( $(notdir $<), $(findstring $(notdir $<), $(OPTLIST)) )
 #	 OPTFLAG=-O3
@@ -354,8 +361,7 @@
 #	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" $(if $(findstring $(notdir $<), $(OPTLIST)), $(OPT_SPEED), $(OPT_SIZE)) $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o
+	$(CXX) -Wp,-MMD,"$(*D)/$(DEPDIR)/$(*F).d",-MQ,"$@",-MP $(if $(findstring $(notdir $<), $(OPTLIST)), $(OPT_SPEED), $(OPT_SIZE)) $(CXXFLAGS) $(CPPFLAGS) -c $(<) -o $*.o 
 endif
 
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/adpcm_arm.s
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/adpcm_arm.s	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/adpcm_arm.s	2008-06-30 23:48:24 UTC (rev 32860)
@@ -55,14 +55,14 @@
 loop:
 	LDRH	r10,[r11,r2]	@ r10 = stepTab[stepTableIndex]
 	TST	r12,#4		@ if ((offset & 4) == 0)
-	MOVEQ	r9, #0		@	r9 = diff = 0
+	MOVEQ	r9, #0		@ 	r9 = diff = 0
 	MOVNE	r9, r10		@ else	r9 = diff = stepTab[stepTableIndex]
 
 	TST	r12,#2		@ if (offset & 2)
-	ADDNE	r9, r9, r10,ASR #1	@	diff += r10>>1
+	ADDNE	r9, r9, r10,ASR #1	@ 	diff += r10>>1
 
 	TST	r12,#1		@ if (offset & 1)
-	ADDNE	r9, r9, r10,ASR #2	@	diff += r10>>2
+	ADDNE	r9, r9, r10,ASR #2	@ 	diff += r10>>2
 
 	ADD	r9, r9, r10,ASR #3	@ diff += r10>>3
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -27,25 +27,25 @@
 
 namespace DS {
 
-void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst,
+void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst, 
 	int vsPitch, int vmScreenWidth, int textSurfacePitch) {
 
 
 	if (height <= 0) height = 1;
 	if (width < 4) return;
-
-
+	
+	
 	width &= ~4;
 //	src = (const byte *) (((int) (src)) & (~4));
 //	dst = (byte *) (((int) (dst)) & (~4));
 //	text = (const byte *) (((int) (text)) & (~4));
-
+	
 	asm (	"mov r5, %0\n"				// Height
-			"yLoop:\n"
+			"yLoop:\n"			
 			"mov r3, #0\n"				// X pos
-
+			
 			"xLoop:\n"
-
+			
 			"ldr r4, [%2, r3]\n"		// Load text layer word
 			"cmp r4, %5\n"
 			"bne singleByteCompare\n"
@@ -54,7 +54,7 @@
 			"add r3, r3, #4\n"
 			"cmp r3, %1\n"				// x == width?
 			"blt xLoop\n"
-
+			
 			"add %2, %2, %8\n"			// src += vs->pitch
 			"add %3, %3, %6\n"			// dst += _vm->_screenWidth
 			"add %4, %4, %7\n"			// text += _textSurface.pitch
@@ -62,8 +62,8 @@
 			"cmp r5, #0\n"				// y == 0?
 			"bne yLoop\n"
 			"b end\n"
-
-
+			
+			
 			"singleByteCompare:\n"
 			"ldrb r4, [%2, r3]\n"		// Load text byte
 			"cmps r4, %5, lsr #24\n"	// Compare with mask
@@ -78,7 +78,7 @@
 			"ldreqb r4, [%3, r3]\n"		// Otherwise Load src byte
 			"streqb r4, [%4, r3]\n"		// Store it
 			"add r3, r3, #1\n"
-
+			
 			"ldrb r4, [%2, r3]\n"		// Load text byte
 			"cmps r4, %5, lsr #24\n"	// Compare with mask
 			"strneb r4, [%4, r3]\n"		// Store if not equal
@@ -91,7 +91,7 @@
 			"strneb r4, [%4, r3]\n"		// Store if not equal
 			"ldreqb r4, [%3, r3]\n"		// Otherwise Load src byte
 			"streqb r4, [%4, r3]\n"		// Store it
-			"add r3, r3, #1\n"
+			"add r3, r3, #1\n"			
 
 			"cmps r3, %1\n"				// x == width?
 			"blt xLoop\n"				// Repeat
@@ -101,10 +101,10 @@
 			"sub r5, r5, #1\n"			// y -= 1
 			"cmp r5, #0\n"				// y == 0?
 			"bne yLoop\n"
-
+			
 			"end:\n"
 		: /* no output registers */
-		: "r" (height), "r" (width), "r" (text), "r" (src), "r" (dst), "r" (CHARSET_MASK_TRANSPARENCY | (CHARSET_MASK_TRANSPARENCY << 8) | (CHARSET_MASK_TRANSPARENCY << 16) | (CHARSET_MASK_TRANSPARENCY << 24)),
+		: "r" (height), "r" (width), "r" (text), "r" (src), "r" (dst), "r" (CHARSET_MASK_TRANSPARENCY | (CHARSET_MASK_TRANSPARENCY << 8) | (CHARSET_MASK_TRANSPARENCY << 16) | (CHARSET_MASK_TRANSPARENCY << 24)), 
 			"r" (vsPitch), "r" (vmScreenWidth), "r" (textSurfacePitch)
 		: "r5", "r3", "r4", "%2", "%3", "%4", "memory");
 }
@@ -115,7 +115,7 @@
 	asm("ands r0, %3, #1\n"
 		 "addne %3, %3, #1\n"
 		 "bne roll2\n"
-
+			
 		 "yLoop2:\n"
 		 "ldr r0, [%2, #0]\n"
 		 "str r0, [%0, #0]\n"
@@ -131,7 +131,7 @@
 		 "add %0, %0, %1\n"
 		 "add %2, %2, %1\n"
 		 "subs %3, %3, #2\n"
-		 "bne yLoop2\n"
+		 "bne yLoop2\n"		 
 
 		: /* no output registers */
 		: "r" (dst), "r" (dstPitch), "r" (src), "r" (height)
@@ -150,7 +150,7 @@
     for (int i=0; i<160; ++i)
     {
         DIV_BY_5[i] = (2*i+5)/10;
-    }
+    }                
 }
 
 #ifdef PERFECT_5_TO_4_RESCALING
@@ -163,13 +163,13 @@
     u32 bs3 = s3 & 0x1F;
     u32 bs4 = s4 & 0x1F;
 
-#if 0
+#if 0    
     u32 gs0 = (s0 >> 5) & 0x1F;
     u32 gs1 = (s1 >> 5) & 0x1F;
     u32 gs2 = (s2 >> 5) & 0x1F;
     u32 gs3 = (s3 >> 5) & 0x1F;
     u32 gs4 = (s4 >> 5) & 0x1F;
-
+    
     u32 rs0 = (s0 >> 10) & 0x1F;
     u32 rs1 = (s1 >> 10) & 0x1F;
     u32 rs2 = (s2 >> 10) & 0x1F;
@@ -191,22 +191,22 @@
     asm("and %0, %2, %1, lsr #10" : "=r"(rs3) : "r"(s3), "r"(mask) : );
     asm("and %0, %2, %1, lsr #10" : "=r"(rs4) : "r"(s4), "r"(mask) : );
 #endif
-
+    
     u32 rd0 = 4*rs0 +   rs1;
     u32 rd1 = 2*rs1 + rs1 + 2*rs2;
     u32 rd2 = 2*rs2 + 2*rs3 + rs3;
     u32 rd3 =   rs3 + 4*rs4;
-
+    
     u32 gd0 = 4*gs0 +   gs1;
     u32 gd1 = 2*gs1 + gs1 + 2*gs2;
     u32 gd2 = 2*gs2 + 2*gs3 + gs3;
     u32 gd3 =   gs3 + 4*gs4;
-
+    
     u32 bd0 = 4*bs0 +   bs1;
     u32 bd1 = 2*bs1 + bs1 + 2*bs2;
     u32 bd2 = 2*bs2 + 2*bs3 + bs3;
     u32 bd3 =   bs3 + 4*bs4;
-
+    
 #if 0
     // Offsetting for correct rounding
     rd0 = rd0*2+5; rd1 = rd1*2+5; rd2 = rd2*2+5; rd3 = rd3*2+5;
@@ -217,14 +217,14 @@
 	gd0 = (gd0 * 51) >> 9; gd1 = (gd1 * 51) >> 9; gd2 = (gd2 * 51) >> 9; gd3 = (gd3 * 51) >> 9;
 	bd0 = (bd0 * 51) >> 9; bd1 = (bd1 * 51) >> 9; bd2 = (bd2 * 51) >> 9; bd3 = (bd3 * 51) >> 9;
 #else
-	rd0 = DIV_BY_5[rd0]; rd1 = DIV_BY_5[rd1]; rd2 = DIV_BY_5[rd2]; rd3 = DIV_BY_5[rd3];
-	gd0 = DIV_BY_5[gd0]; gd1 = DIV_BY_5[gd1]; gd2 = DIV_BY_5[gd2]; gd3 = DIV_BY_5[gd3];
-	bd0 = DIV_BY_5[bd0]; bd1 = DIV_BY_5[bd1]; bd2 = DIV_BY_5[bd2]; bd3 = DIV_BY_5[bd3];
+	rd0 = DIV_BY_5[rd0]; rd1 = DIV_BY_5[rd1]; rd2 = DIV_BY_5[rd2]; rd3 = DIV_BY_5[rd3]; 
+	gd0 = DIV_BY_5[gd0]; gd1 = DIV_BY_5[gd1]; gd2 = DIV_BY_5[gd2]; gd3 = DIV_BY_5[gd3]; 
+	bd0 = DIV_BY_5[bd0]; bd1 = DIV_BY_5[bd1]; bd2 = DIV_BY_5[bd2]; bd3 = DIV_BY_5[bd3]; 
 #endif
-
+    
     u32 d10 = 0x80008000 | (rd1 << 26) | (gd1 << 21) | (bd1 << 16) | (rd0 << 10) | (gd0 << 5) | bd0;
     u32 d32 = 0x80008000 | (rd3 << 26) | (gd3 << 21) | (bd3 << 16) | (rd2 << 10) | (gd2 << 5) | bd2;
-
+    
     ((u32*)dest)[0] = d10;
     ((u32*)dest)[1] = d32;
 }
@@ -233,7 +233,7 @@
                                                     u16* dest)
 {
     static const u32 MASK = 0x03E07C1F;
-
+    
     u32 argbargbs0 = u32(s0) | (u32(s0) << 16);
     u32 argbargbs1 = u32(s1) | (u32(s1) << 16);
     u32 argbargbs2 = u32(s2) | (u32(s2) << 16);
@@ -245,32 +245,32 @@
     u32 grbs2 = argbargbs2 & MASK;
     u32 grbs3 = argbargbs3 & MASK;
     u32 grbs4 = argbargbs4 & MASK;
-
+    
     u32 grbd0 = (3*grbs0 +   grbs1) >> 2;
     u32 grbd1 = (  grbs1 +   grbs2) >> 1;
     u32 grbd2 = (  grbs2 +   grbs3) >> 1;
     u32 grbd3 = (  grbs3 + 3*grbs4) >> 2;
-
+    
     grbd0 &= MASK;
     grbd1 &= MASK;
     grbd2 &= MASK;
     grbd3 &= MASK;
-
+    
     u32 d0 = grbd0 | (grbd0 >> 16);
     u32 d1 = grbd1 | (grbd1 >> 16);
     u32 d2 = grbd2 | (grbd2 >> 16);
     u32 d3 = grbd3 | (grbd3 >> 16);
-
-    d0 &= 0xFFFF;
-    d1 &= 0xFFFF;
-    d2 &= 0xFFFF;
-    d3 &= 0xFFFF;
-
-    d0 |= 0x8000;
-    d1 |= 0x8000;
-    d2 |= 0x8000;
-    d3 |= 0x8000;
-
+    
+    d0 &= 0xFFFF; 
+    d1 &= 0xFFFF; 
+    d2 &= 0xFFFF; 
+    d3 &= 0xFFFF; 
+    
+    d0 |= 0x8000; 
+    d1 |= 0x8000; 
+    d2 |= 0x8000; 
+    d3 |= 0x8000; 
+    
     dest[0] = d0;
     dest[1] = d1;
     dest[2] = d2;
@@ -287,13 +287,13 @@
     u32 bd0 = (d0 << 24) >> 24;
     u32 bd1 = (d1 << 24) >> 24;
     u32 gd0 = (d0 << 16) >> 24;
-    u32 gd1 = (d1 << 16) >> 24;
+    u32 gd1 = (d1 << 16) >> 24;    
     u32 rd0 = (d0 >> 16);
     u32 rd1 = (d1 >> 16);
-
+    
 	rd0 = DIV_BY_5[rd0]; rd1 = DIV_BY_5[rd1];
 	gd0 = DIV_BY_5[gd0]; gd1 = DIV_BY_5[gd1];
-	bd0 = DIV_BY_5[bd0]; bd1 = DIV_BY_5[bd1];
+	bd0 = DIV_BY_5[bd0]; bd1 = DIV_BY_5[bd1];    
     u32 d10 = 0x80008000 | (rd1 << 26) | (gd1 << 21) | (bd1 << 16) | (rd0 << 10) | (gd0 << 5) | bd0;
     ((u32*)dest)[0] = d10;
 
@@ -307,11 +307,11 @@
     u32 rd2 = (d2 >> 16);
     u32 rd3 = (d3 >> 16);
 
-    rd2 = DIV_BY_5[rd2]; rd3 = DIV_BY_5[rd3];
-    gd2 = DIV_BY_5[gd2]; gd3 = DIV_BY_5[gd3];
-    bd2 = DIV_BY_5[bd2]; bd3 = DIV_BY_5[bd3];
+    rd2 = DIV_BY_5[rd2]; rd3 = DIV_BY_5[rd3]; 
+    gd2 = DIV_BY_5[gd2]; gd3 = DIV_BY_5[gd3]; 
+    bd2 = DIV_BY_5[bd2]; bd3 = DIV_BY_5[bd3]; 
     u32 d32 = 0x80008000 | (rd3 << 26) | (gd3 << 21) | (bd3 << 16) | (rd2 << 10) | (gd2 << 5) | bd2;
-
+    
     ((u32*)dest)[1] = d32;
 }
 
@@ -320,7 +320,7 @@
 static inline void Rescale_320xPAL8Scanline_To_256x1555Scanline(u16* dest, const u8* src, const u32* palette)
 {
     ComputeDivBy5TableIFN();
-
+    
     for (size_t i=0; i<64; ++i)
     {
         u32 s0 = palette[src[5*i+0]];
@@ -353,7 +353,7 @@
 static inline void Rescale_320x1555Scanline_To_256x1555Scanline(u16* dest, const u16* src)
 {
     ComputeDivBy5TableIFN();
-
+    
     for (size_t i=0; i<64; ++i)
     {
         u16 s0 = src[5*i+0];
@@ -384,7 +384,7 @@
 
 	for (size_t i=0; i<200; ++i)
 	{
-		Rescale_320xPAL8Scanline_To_256x1555Scanline(dest + i*destStride, src + i *srcStride, fastRam);
+		Rescale_320xPAL8Scanline_To_256x1555Scanline(dest + i*destStride, src + i *srcStride, fastRam);			
 	}
 }
 #else
@@ -396,7 +396,7 @@
 
 	for (size_t i=0; i<200; ++i)
 	{
-		Rescale_320xPAL8Scanline_To_256x1555Scanline(dest + i*destStride, src + i *srcStride, fastRam);
+		Rescale_320xPAL8Scanline_To_256x1555Scanline(dest + i*destStride, src + i *srcStride, fastRam);			
 	}
 }
 #endif

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -19,7 +19,7 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  *
  */
-
+ 
  #ifndef _BLITTERS_H_
  #define _BLITTERS_H_
 
@@ -29,22 +29,22 @@
 
 namespace DS {
 
-void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst,
+void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst, 
 	int vsPitch, int vmScreenWidth, int textSurfacePitch);
 void asmCopy8Col(byte* dst, int dstPitch, const byte* src, int height);
 void Rescale_320x256xPAL8_To_256x256x1555(u16* dest, const u8* src, int destStride, int srcStride, const u16* palette);
 void Rescale_320x256x1555_To_256x256x1555(u16* dest, const u16* src, int destStride, int srcStride);
 
 }
-
+	
 #else
 
 extern "C" {
 
-void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst,
+void asmDrawStripToScreen(int height, int width, byte const* text, byte const* src, byte* dst, 
 	int vsPitch, int vmScreenWidth, int textSurfacePitch);
 void asmCopy8Col(byte* dst, int dstPitch, const byte* src, int height);
-void Rescale_320x256xPAL8_To_256x256x1555(u16* dest, const u8* src, int destStride, int srcStride, const u16* palette);
+void Rescale_320x256xPAL8_To_256x256x1555(u16* dest, const u8* src, int destStride, int srcStride, const u16* palette, u32 numLines);
 void Rescale_320x256x1555_To_256x256x1555(u16* dest, const u16* src, int destStride, int srcStride);
 
 }

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.s
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.s	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters.s	2008-06-30 23:48:24 UTC (rev 32860)
@@ -21,7 +21,7 @@
 @ @author Robin Watts (robin at wss.co.uk)
 
 	.text
-
+	
 	.global	asmDrawStripToScreen
 	.global	asmCopy8Col
 	.global	Rescale_320x256xPAL8_To_256x256x1555
@@ -142,7 +142,7 @@
 	@ r3 = height
 	STMFD	r13!,{r14}
 	SUB	r1,r1,#4
-
+	
 	TST	r3,#1
 	ADDNE   r3,r3,#1
 	BNE	roll2
@@ -177,7 +177,7 @@
 	@ r2 = dstStride
 	@ r3 = srcStride
 	STMFD	r13!,{r4-r5,r8-r11,r14}
-
+	
 	SUB	r2,r2,#64*5		@ srcStride -= line length
 	SUB	r3,r3,#64*4		@ dstStride -= line length
 
@@ -187,7 +187,7 @@
 	MOV	r5, #200		@ r5 = y
 yLoop3:
 	MOV	r4, #64			@ r4 = x
-xLoop3:
+xLoop3:	
 	LDRH	r9, [r0],#2		@ r9 = src0
 	LDRH	r10,[r0],#2		@ r10= src1
 	LDRH	r11,[r0],#2		@ r11= src2
@@ -212,7 +212,7 @@
 	ADD	r11,r11,r12		@ r11= dst2
 	ADD	r12,r12,r14		@ r12= src3 + src4
 	ADD	r12,r12,r14,LSL #1	@ r12= src3 + src4*3 = dst3<<2
-
+	
 	AND	r9, r8, r9, LSR #2	@ r9 = dst0 (split)
 	AND	r10,r8, r10,LSR #1	@ r10= dst1 (split)
 	AND	r11,r8, r11,LSR #1	@ r11= dst2 (split)
@@ -227,7 +227,7 @@
 	ORR	r10,r10,#0x8000
 	ORR	r11,r11,#0x8000
 	ORR	r12,r12,#0x8000
-
+	
 	STRH	r9, [r1],#2
 	STRH	r10,[r1],#2
 	STRH	r11,[r1],#2
@@ -235,7 +235,7 @@
 
 	SUBS	r4,r4,#1
 	BGT	xLoop3
-
+	
 	ADD	r0,r0,r2,LSL #1
 	ADD	r1,r2,r3,LSL #1
 	SUBS	r5,r5,#1
@@ -266,7 +266,7 @@
 	ORR	r8, r8,#0x00007C00
 	ORR	r8, r8,#0x03E00000	@ r8 = mask
 	LDR	r9, [r13,#7*4]		@ r9 = palette
-
+	
 	SUB	r13,r13,#256*4		@ r13 = 1K of space on the stack.
 	MOV	r5, r13			@ r5 points to this space
 	MOV	r14,#256
@@ -277,14 +277,14 @@
 	AND	r10,r10,r8		@ r10 = separated palette entry
 	STR	r10,[r5], #4
 	BGT	palLoop
-
+	
 	SUB	r2,r2,#64*5		@ srcStride -= line length
 	SUB	r3,r3,#64*4		@ dstStride -= line length
 
 	MOV	r5,#200			@ r5 = y
 yLoop4:
 	MOV	r4,#64			@ r4 = x
-xLoop4:
+xLoop4:	
 	LDRB	r9, [r0],#1		@ r9 = src0
 	LDRB	r10,[r0],#1		@ r10= src1
 	LDRB	r11,[r0],#1		@ r11= src2
@@ -303,7 +303,7 @@
 	ADD	r11,r11,r12		@ r11= dst2
 	ADD	r12,r12,r14		@ r12= src3 + src4
 	ADD	r12,r12,r14,LSL #1	@ r12= src3 + src4*3 = dst3<<2
-
+	
 	AND	r9, r8, r9, LSR #2	@ r9 = dst0 (split)
 	AND	r10,r8, r10,LSR #1	@ r10= dst1 (split)
 	AND	r11,r8, r11,LSR #1	@ r11= dst2 (split)
@@ -318,7 +318,7 @@
 	ORR	r10,r10,#0x8000
 	ORR	r11,r11,#0x8000
 	ORR	r12,r12,#0x8000
-
+	
 	STRH	r9, [r1],#2
 	STRH	r10,[r1],#2
 	STRH	r11,[r1],#2
@@ -326,7 +326,7 @@
 
 	SUBS	r4,r4,#1
 	BGT	xLoop4
-
+	
 	ADD	r0,r0,r2
 	ADD	r1,r2,r3,LSL #1
 	SUBS	r5,r5,#1
@@ -336,4 +336,4 @@
 
 	LDMFD	r13!,{r4-r5,r8-r11,PC}
 
-
+ 	  	 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters_arm.s
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters_arm.s	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/blitters_arm.s	2008-06-30 23:48:24 UTC (rev 32860)
@@ -251,8 +251,8 @@
 	@                                      const u8   *src,
 	@                                      int         dstStride,
 	@                                      int         srcStride,
-	@                                      const u16  *pal);
-	@
+	@                                      const u16  *pal,
+	@                                      u32         numLines);
 Rescale_320x256xPAL8_To_256x256x1555:
 	@ r0 = dst
 	@ r1 = src
@@ -263,6 +263,7 @@
 	ORR	r8, r8,#0x0000FC00
 	ORR	r8, r8,#0x03E00000	@ r8 = mask
 	LDR	r9, [r13,#9*4]		@ r9 = palette
+	LDR	r7, [r13,#10*4]		@ r7 = numLines
 
 	SUB	r13,r13,#256*4		@ r13 = 1K of space on the stack.
 	MOV	r5, r13			@ r5 points to this space
@@ -280,7 +281,7 @@
 	SUB	r3,r3,#64*5		@ dstStride -= line length
 
 	MOV	r14,#0xFF		@ r14= 255
-	MOV	r5,#200			@ r5 = y
+	MOV	r5,r7			@ r5 = numLines
 yLoop4:
 	MOV	r4,#16			@ r4 = x
 xLoop4:
@@ -292,7 +293,7 @@
 	ADD	r6, r6, r6, LSL #1	@ r6 = 3*pal[src0]
 	AND	r9, r14,r10,LSR #16	@ r9 = src2
 	LDR	r9, [r13,r9, LSL #2]	@ r9 = pal[src2]
-	MOV	r10,r10,LSR #24		@ r10= src3
+ 	MOV	r10,r10,LSR #24		@ r10= src3
 	LDR	r10,[r13,r10,LSL #2]	@ r10= pal[src3]
 	ADD	r6, r6, r7		@ r6 = dst0<<2
 	AND	r6, r8, r6, LSR #2	@ r6 = dst0 (split)
@@ -322,7 +323,7 @@
 	ADD	r6, r6, r6, LSL #1	@ r6 = 3*pal[src5]
 	MOV	r9, r11,LSR #24		@ r9 = src7
 	LDR	r9, [r13,r9, LSL #2]	@ r9 = pal[src7]
-	AND	r10,r14,r12		@ r10= src8
+ 	AND	r10,r14,r12		@ r10= src8
 	LDR	r10,[r13,r10,LSL #2]	@ r10= pal[src8]
 	ADD	r6, r6, r7		@ r6 = dst4<<2
 	AND	r6, r8, r6, LSR #2	@ r6 = dst4 (split)
@@ -354,7 +355,7 @@
 	ADD	r6, r6, r6, LSL #1	@ r6 = 3*pal[src10]
 	AND	r9, r14,r10		@ r9 = src12
 	LDR	r9, [r13,r9, LSL #2]	@ r9 = pal[src12]
-	AND	r12,r14,r10,LSR #8	@ r11= src13
+ 	AND	r12,r14,r10,LSR #8	@ r11= src13
 	LDR	r12,[r13,r12,LSL #2]	@ r11= pal[src13]
 	ADD	r6, r6, r7		@ r6 = dst8<<2
 	AND	r6, r8, r6, LSR #2	@ r6 = dst8 (split)
@@ -384,7 +385,7 @@
 	ADD	r6, r6, r6, LSL #1	@ r6 = 3*pal[src15]
 	AND	r9, r14,r11,LSR #8	@ r9 = src17
 	LDR	r9, [r13,r9, LSL #2]	@ r9 = pal[src17]
-	AND	r12,r14,r11,LSR #16	@ r11= src18
+ 	AND	r12,r14,r11,LSR #16	@ r11= src18
 	LDR	r12,[r13,r12,LSL #2]	@ r11= pal[src18]
 	ADD	r6, r6, r7		@ r6 = dst12<<2
 	AND	r6, r8, r6, LSR #2	@ r6 = dst12 (split)

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.cpp
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.cpp	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.cpp	2008-06-30 23:48:24 UTC (rev 32860)
@@ -19,10 +19,10 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  *
  */
-
+ 
 #include "cdaudio.h"
-#include "ds-fs.h"
-#include "config-manager.h"
+#include "backends/fs/ds/ds-fs.h"
+#include "common/config-manager.h"
 #include "dsmain.h"
 #include "NDS/scummvm_ipc.h"
 #include "console2.h"
@@ -53,14 +53,14 @@
 	u16			fmtExtraData;	// Number of extra fmt bytes
 	u16			fmtExtra;		// Samples per block (only for IMA-ADPCM files)
 } __attribute__ ((packed));
-
+	
 struct chunkHeader {
-	char		name[4];
+	char 		name[4];	
 	u32			size;
 } __attribute__ ((packed));
 
 struct Header {
-	s16			firstSample;
+	s16 		firstSample;
 	char		stepTableIndex;
 	char		reserved;
 } __attribute__ ((packed));
@@ -112,7 +112,7 @@
 
 
 void allocBuffers() {
-
+	
 }
 
 void setActive(bool active) {
@@ -125,17 +125,17 @@
 
 void playTrack(int track, int numLoops, int startFrame, int duration) {
 	Common::String path = ConfMan.get("path");
-
+	
 	if (isPlayingFlag) {
 		stopTrack();
 	}
-
+	
 	if (trackStartsAt2) {
 		track++;
 	}
-
-
-
+	
+	
+	
 	char str[100];
 
 	if (path[strlen(path.c_str()) - 1] == '/') {
@@ -145,50 +145,50 @@
 		sprintf(str, "/track%d.wav", track);
 		path = path + str;
 	}
-
-
+	
+	
 	//1820160
-
+	
 	file = DS::std_fopen(path.c_str(), "rb");
-
+	
 	if (!file) {
 		consolePrintf("Failed to open %s!\n", path.c_str());
 		return;
 	}
-
-
+	
+	
 	DS::std_fread((const void *) &waveHeader, sizeof(waveHeader), 1, file);
-
+	
 	consolePrintf("Playing track %d\n", track);
 	consolePrintf("Format: %d\n", waveHeader.fmtFormatTag);
 	consolePrintf("Rate  : %d\n", waveHeader.fmtSamPerSec);
 	consolePrintf("Bits  : %d\n", waveHeader.fmtBitsPerSam);
 	consolePrintf("BlkSz : %d\n", waveHeader.fmtExtra);
-
+	
 	if ((waveHeader.fmtFormatTag != 17) && (waveHeader.fmtFormatTag != 20)) {
 		consolePrintf("Wave file is in the wrong format!  You must use IMA-ADPCM 4-bit mono.\n");
 		DS::std_fclose(file);
 		return;
 	}
-
+	
 	for (int r = 0; r < 8; r++) {
 		IPC->adpcm.buffer[r] = (u8 * volatile) (decoderFormat *) malloc(waveHeader.fmtBlockAlign);
 		IPC->adpcm.filled[r] = false;
 		IPC->adpcm.arm7Dirty[r] = false;
 	}
-
+	
 	// Skip chunks until we reach the data chunk
 	chunkHeader chunk;
 	DS::std_fread((const void *) &chunk, sizeof(chunkHeader), 1, file);
-
+	
 	while (!((chunk.name[0] == 'd') && (chunk.name[1] == 'a') && (chunk.name[2] == 't') && (chunk.name[3] == 'a'))) {
 		DS::std_fseek(file, chunk.size, SEEK_CUR);
 		DS::std_fread((const void *) &chunk, sizeof(chunkHeader), 1, file);
 	}
-
+	
 	dataChunkStart = DS::std_ftell(file);
-
-
+	
+	
 	static bool started = false;
 	sampleNum = 0;
 	blockCount = 0;
@@ -206,35 +206,35 @@
 		memset(audioBuffer, 0, BUFFER_SIZE * 2);
 		memset(decompressionBuffer, 0, waveHeader.fmtExtra * 2);
 		DS::playSound(audioBuffer, BUFFER_SIZE * 2, false, false, waveHeader.fmtSamPerSec);
-
-	}
+		
+	}	
 	fillPos = (IPC->streamPlayingSection + 1) & 3;
 	isPlayingFlag = true;
-
-
+	
+	
 	// Startframe is a 75Hz timer.  Dunno why, since nothing else
 	// seems to run at that rate.
 	int tenths = (startFrame * 10) / 75;
-
+	
 	// Seek to the nearest block start to the start time
 	int samples = (tenths * waveHeader.fmtSamPerSec) / 10;
 	int block = samples / waveHeader.fmtExtra;
-
-
+	
+	
 	if (duration == 0) {
 		blocksLeft = 0;
 	} else {
 		blocksLeft = ((((duration * 100) / 75) * (waveHeader.fmtSamPerSec)) / (waveHeader.fmtExtra) / 100) + 10;
 	}
 //	consolePrintf("Playing %d blocks (%d)\n\n", blocksLeft, duration);
-
+	
 	// No need to seek if we're starting from the beginning
 	if (block != 0) {
 		DS::std_fseek(file, dataChunkStart + block * waveHeader.fmtBlockAlign, SEEK_SET);
 //		consolePrintf("Startframe: %d  msec: %d (%d,%d)\n", startFrame, tenthssec, samples, block);
 	}
-
-
+	
+	
 	//decompressBlock();
 	playNextBlock();
 	DS::CD::numLoops = numLoops;
@@ -252,21 +252,21 @@
 void decompressBlock() {
 	int block[2048];
 	bool loop = false;
-
+	
 	blockCount++;
-
+	
 	if (blockCount < 10) return;
-
-
+	
+	
 	do {
 		DS::std_fread((const void *) &blockHeader, sizeof(blockHeader), 1, file);
-
+	
 		DS::std_fread(&block[0], waveHeader.fmtBlockAlign - sizeof(blockHeader), 1, file);
 
 		if (DS::std_feof(file) ) {
 			// Reached end of file, so loop
-
-
+			
+			
 			if ((numLoops == -1) || (numLoops > 1)) {
 				// Seek file to first packet
 				if (numLoops != -1) {
@@ -283,14 +283,14 @@
 				stopTrack();
 				return;
 			}
-
+			
 		} else {
 			loop = false;
 		}
-
+		
 	} while (loop);
-
-
+		
+		
 	if (blocksLeft > 0) {
 		blocksLeft--;
 	//	consolePrintf("%d ", blocksLeft);
@@ -305,37 +305,37 @@
 	          blockHeader.stepTableIndex,
 	          blockHeader.firstSample,
 	          decompressionBuffer);
-#else
+#else		
 	// First sample is in header
 	decompressionBuffer[0] = blockHeader.firstSample;
-
+	
 	// Set up initial table indeces
 	int stepTableIndex = blockHeader.stepTableIndex;
 	int prevSample = blockHeader.firstSample;
-
+	
 //	consolePrintf("Decompressing block step=%d fs=%d\n", stepTableIndex, prevSample);
 
 	for (int r = 0; r < waveHeader.fmtExtra - 1; r++) {
-
+		
 		int word = block[r >> 3];
 		int offset = 0;
-
+		
 		switch (7 - (r & 0x0007)) {
 			case 0: {
 				offset = (word & 0xF0000000) >> 28;
 				break;
 			}
-
+			
 			case 1: {
 				offset = (word & 0x0F000000) >> 24;
 				break;
 			}
-
+			
 			case 2: {
 				offset = (word & 0x00F00000) >> 20;
 				break;
 			}
-
+			
 			case 3: {
 				offset = (word & 0x000F0000) >> 16;
 				break;
@@ -361,42 +361,42 @@
 				break;
 			}
 		}
-
+		
 		int diff = 0;
-
+		
 		if (offset & 4) {
 			diff = diff + stepTab[stepTableIndex];
 		}
-
+		
 		if (offset & 2) {
 			diff = diff + (stepTab[stepTableIndex] >> 1);
 		}
-
+		
 		if (offset & 1) {
 			diff = diff + (stepTab[stepTableIndex] >> 2);
 		}
-
+		
 		diff = diff + (stepTab[stepTableIndex] >> 3);
-
+		
 		if (offset & 8) {
-			diff = -diff;
+			diff = -diff;		
 		}
-
+		
 		int newSample = prevSample + diff;
-
+		
 		if (newSample > 32767) newSample = 32767;
 		if (newSample < -32768) newSample = -32768;
-
+		
 		decompressionBuffer[r + 1] = newSample;
-
+		
 		prevSample = newSample;
-
+		
 		stepTableIndex += indexTab[offset];
-
+		
 		if (stepTableIndex > 88) stepTableIndex = 88;
 		if (stepTableIndex < 0) stepTableIndex = 0;
+		
 
-
 	}
 #endif
 }
@@ -404,21 +404,21 @@
 void playNextBlock() {
 	if (!isPlayingFlag) return;
 	int lastBlockId = -1;
-
+	
 	while (IPC->adpcm.semaphore);		// Wait for buffer to become free if needed
 	IPC->adpcm.semaphore = true;		// Lock the buffer structure to prevent clashing with the ARM7
 //	DC_FlushAll();
-
+	
 	//-8644, 25088
 	for (int block = fillPos + 1; block < fillPos + 4; block++) {
 
 		int blockId = block & 3;
-
+		
 		if (IPC->streamFillNeeded[blockId]) {
-
+			
 			IPC->streamFillNeeded[blockId] = false;
 //			DC_FlushAll();
-
+			
 /*			if (!(REG_KEYINPUT & KEY_R)) {
 				//consolePrintf("Align: %d First: %d  Step:%d  Res:%d\n", waveHeader.fmtBlockAlign, blockHeader.firstSample, blockHeader.stepTableIndex, blockHeader.reserved);
 				consolePrintf("Filling buffer %d\n", blockId);
@@ -432,19 +432,19 @@
 					}
 				}
 			}
-
+			
 			lastBlockId = blockId;
 			IPC->streamFillNeeded[blockId] = false;
 //			DC_FlushAll();
 
 		}
-
-
-
+	
+		
+		
 	}
-
-
-
+	
+	
+	
 	if (lastBlockId != -1) {
 		fillPos = lastBlockId;
 /*		if (!(REG_KEYINPUT & KEY_R)) {
@@ -459,18 +459,18 @@
 	if (!isPlayingFlag) return;
 
 	DS::std_fclose(file);
-
+	
 	isPlayingFlag = false;
-
+	
 	for (int r = 0; r < BUFFER_SIZE; r++) {
 		audioBuffer[r] = 0;
 	}
-
+	
 	for (int r= 0; r < waveHeader.fmtExtra; r++) {
 		decompressionBuffer[r] = 0;
 	}
 //	DS::stopSound(1);
-
+	
 //	free(audioBuffer);
 //	free(decompressionBuffer);
 
@@ -507,7 +507,7 @@
 bool checkCD() {
 	// Need to check whethe CD audio files are present - do this by trying to open Track1.wav.
 	consolePrintf("Attempted to open cd drive\n");
-
+	
 	if (trackExists(1)) {
 		trackStartsAt2 = false;
 		return true;

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/cdaudio.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -19,7 +19,7 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  *
  */
-
+ 
  #ifndef _CDAUDIO_H_
 #define _CDAUDIO_H_
 

Modified: scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/compressor/lz.h
===================================================================
--- scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/compressor/lz.h	2008-06-30 23:44:33 UTC (rev 32859)
+++ scummvm/branches/gsoc2008-tfmx/backends/platform/ds/arm9/source/compressor/lz.h	2008-06-30 23:48:24 UTC (rev 32860)
@@ -48,53 +48,3 @@
 
 
 #endif /* _lz_h_ */
-/*************************************************************************
-* Name:        lz.h
-* Author:      Marcus Geelnard
-* Description: LZ77 coder/decoder interface.
-* Reentrant:   Yes
-* $Id$

@@ Diff output truncated at 100000 characters. @@

This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list