[Scummvm-cvs-logs] SF.net SVN: scummvm:[52564] scummvm/branches/gsoc2010-plugins

dhewg at users.sourceforge.net dhewg at users.sourceforge.net
Sun Sep 5 17:26:03 CEST 2010


Revision: 52564
          http://scummvm.svn.sourceforge.net/scummvm/?rev=52564&view=rev
Author:   dhewg
Date:     2010-09-05 15:26:00 +0000 (Sun, 05 Sep 2010)

Log Message:
-----------
MERGE: Merge trunk to branch.

Modified Paths:
--------------
    scummvm/branches/gsoc2010-plugins/Makefile
    scummvm/branches/gsoc2010-plugins/Makefile.common
    scummvm/branches/gsoc2010-plugins/NEWS
    scummvm/branches/gsoc2010-plugins/README
    scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-fs.cpp
    scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.cpp
    scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.h
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/gp2xwiz-graphics.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/gp2xwiz-main.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/linuxmoto/linuxmoto-main.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/n64/README.N64
    scummvm/branches/gsoc2010-plugins/backends/platform/n64/osys_n64.h
    scummvm/branches/gsoc2010-plugins/backends/platform/n64/osys_n64_base.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/n64/osys_n64_utilities.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/psp/display_manager.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/psp/display_manager.h
    scummvm/branches/gsoc2010-plugins/backends/platform/psp/mp3.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/psp/mp3.h
    scummvm/branches/gsoc2010-plugins/backends/platform/psp/tests.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/sdl/graphics.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/sdl/main.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/sdl/sdl.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/symbian/AdaptAllMMPs.pl
    scummvm/branches/gsoc2010-plugins/backends/platform/symbian/BuildPackageUpload_LocalSettings.pl
    scummvm/branches/gsoc2010-plugins/backends/platform/symbian/mmp/scummvm_base.mmp.in
    scummvm/branches/gsoc2010-plugins/backends/platform/wii/osystem.h
    scummvm/branches/gsoc2010-plugins/backends/platform/wii/osystem_events.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/wii/osystem_gfx.cpp
    scummvm/branches/gsoc2010-plugins/base/internal_version.h
    scummvm/branches/gsoc2010-plugins/base/internal_version.h.in
    scummvm/branches/gsoc2010-plugins/base/plugins.cpp
    scummvm/branches/gsoc2010-plugins/base/version.cpp
    scummvm/branches/gsoc2010-plugins/common/archive.h
    scummvm/branches/gsoc2010-plugins/common/config-manager.cpp
    scummvm/branches/gsoc2010-plugins/common/endian.h
    scummvm/branches/gsoc2010-plugins/common/macresman.cpp
    scummvm/branches/gsoc2010-plugins/common/macresman.h
    scummvm/branches/gsoc2010-plugins/common/rational.cpp
    scummvm/branches/gsoc2010-plugins/common/rect.h
    scummvm/branches/gsoc2010-plugins/common/scummsys.h
    scummvm/branches/gsoc2010-plugins/common/str.cpp
    scummvm/branches/gsoc2010-plugins/common/stream.cpp
    scummvm/branches/gsoc2010-plugins/common/stream.h
    scummvm/branches/gsoc2010-plugins/common/translation.cpp
    scummvm/branches/gsoc2010-plugins/common/translation.h
    scummvm/branches/gsoc2010-plugins/common/unzip.cpp
    scummvm/branches/gsoc2010-plugins/common/util.cpp
    scummvm/branches/gsoc2010-plugins/common/util.h
    scummvm/branches/gsoc2010-plugins/configure
    scummvm/branches/gsoc2010-plugins/engines/advancedDetector.cpp
    scummvm/branches/gsoc2010-plugins/engines/advancedDetector.h
    scummvm/branches/gsoc2010-plugins/engines/agi/agi.cpp
    scummvm/branches/gsoc2010-plugins/engines/agi/agi.h
    scummvm/branches/gsoc2010-plugins/engines/agi/cycle.cpp
    scummvm/branches/gsoc2010-plugins/engines/agi/sound_midi.cpp
    scummvm/branches/gsoc2010-plugins/engines/agos/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/dialogs.cpp
    scummvm/branches/gsoc2010-plugins/engines/draci/script.cpp
    scummvm/branches/gsoc2010-plugins/engines/engines.mk
    scummvm/branches/gsoc2010-plugins/engines/gob/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/gob/draw.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/draw.h
    scummvm/branches/gsoc2010-plugins/engines/gob/draw_fascin.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/draw_v2.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/expression.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/game.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/gob.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/hotspots.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/hotspots.h
    scummvm/branches/gsoc2010-plugins/engines/gob/init.h
    scummvm/branches/gsoc2010-plugins/engines/gob/init_v3.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/inter.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/inter.h
    scummvm/branches/gsoc2010-plugins/engines/gob/inter_fascin.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/inter_v4.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/inter_v6.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/module.mk
    scummvm/branches/gsoc2010-plugins/engines/gob/mult_v2.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/scenery.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/sound/sound.cpp
    scummvm/branches/gsoc2010-plugins/engines/gob/util.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/debugger.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/detection.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/kyra/gui.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/kyra_mr.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/resource.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/resource.h
    scummvm/branches/gsoc2010-plugins/engines/kyra/resource_intern.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/resource_intern.h
    scummvm/branches/gsoc2010-plugins/engines/kyra/screen.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/screen_v2.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/script_tim.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/sound_adlib.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/sound_midi.cpp
    scummvm/branches/gsoc2010-plugins/engines/kyra/sound_towns.cpp
    scummvm/branches/gsoc2010-plugins/engines/lure/scripts.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/globals.h
    scummvm/branches/gsoc2010-plugins/engines/m4/m4.h
    scummvm/branches/gsoc2010-plugins/engines/m4/mads_logic.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/mads_logic.h
    scummvm/branches/gsoc2010-plugins/engines/m4/mads_scene.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/mads_scene.h
    scummvm/branches/gsoc2010-plugins/engines/m4/mads_views.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/scene.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/scene.h
    scummvm/branches/gsoc2010-plugins/engines/m4/ws_machine.cpp
    scummvm/branches/gsoc2010-plugins/engines/m4/ws_sequence.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/console.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/console.h
    scummvm/branches/gsoc2010-plugins/engines/mohawk/dialogs.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/graphics.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/graphics.h
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven.h
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_external.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_external.h
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_saveload.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_scripts.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_scripts.h
    scummvm/branches/gsoc2010-plugins/engines/mohawk/riven_vars.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/video.cpp
    scummvm/branches/gsoc2010-plugins/engines/mohawk/video.h
    scummvm/branches/gsoc2010-plugins/engines/saga/scene.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/console.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/console.h
    scummvm/branches/gsoc2010-plugins/engines/sci/debug.h
    scummvm/branches/gsoc2010-plugins/engines/sci/detection.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/features.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/gc.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kernel.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kernel.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kernel_tables.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kevent.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kfile.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kgraphics.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/klists.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kmath.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kmenu.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kmovement.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kparse.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kpathing.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/kscripts.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/savegame.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/script.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/script_patches.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/seg_manager.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/segment.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/selector.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/selector.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/state.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/state.h
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/static_selectors.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/vm.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/workarounds.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/engine/workarounds.h
    scummvm/branches/gsoc2010-plugins/engines/sci/event.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/animate.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/animate.h
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/compare.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/controls.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/cursor.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/cursor.h
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/paint16.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/paint16.h
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/palette.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/picture.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/portrait.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/ports.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/ports.h
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/text16.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/transitions.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/transitions.h
    scummvm/branches/gsoc2010-plugins/engines/sci/graphics/view.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/resource.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/resource.h
    scummvm/branches/gsoc2010-plugins/engines/sci/resource_audio.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sci.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sci.h
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/drivers/map-mt32-to-gm.h
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/drivers/midi.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/midiparser_sci.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/midiparser_sci.h
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/music.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/music.h
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/soundcmd.cpp
    scummvm/branches/gsoc2010-plugins/engines/sci/sound/soundcmd.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/detection.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/gfx.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/help.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/imuse/imuse_player.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/module.mk
    scummvm/branches/gsoc2010-plugins/engines/scumm/palette.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/player_sid.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/saveload.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/saveload.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/script.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/script_v2.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/script_v3.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/script_v4.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/script_v5.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/scumm.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/scumm.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/scumm_v3.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/scumm_v5.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/sound.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/vars.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/verbs.cpp
    scummvm/branches/gsoc2010-plugins/engines/tinsel/detection_tables.h
    scummvm/branches/gsoc2010-plugins/engines/tinsel/music.cpp
    scummvm/branches/gsoc2010-plugins/engines/tinsel/tinsel.cpp
    scummvm/branches/gsoc2010-plugins/engines/tinsel/tinsel.h
    scummvm/branches/gsoc2010-plugins/graphics/VectorRendererSpec.cpp
    scummvm/branches/gsoc2010-plugins/graphics/surface.cpp
    scummvm/branches/gsoc2010-plugins/graphics/video/codecs/indeo3.cpp
    scummvm/branches/gsoc2010-plugins/graphics/video/codecs/indeo3.h
    scummvm/branches/gsoc2010-plugins/graphics/video/coktel_decoder.cpp
    scummvm/branches/gsoc2010-plugins/gui/ThemeEngine.cpp
    scummvm/branches/gsoc2010-plugins/gui/launcher.cpp
    scummvm/branches/gsoc2010-plugins/gui/options.cpp
    scummvm/branches/gsoc2010-plugins/po/POTFILES
    scummvm/branches/gsoc2010-plugins/po/ca_ES.po
    scummvm/branches/gsoc2010-plugins/po/de_DE.po
    scummvm/branches/gsoc2010-plugins/po/es_ES.po
    scummvm/branches/gsoc2010-plugins/po/fr_FR.po
    scummvm/branches/gsoc2010-plugins/po/hu_HU.po
    scummvm/branches/gsoc2010-plugins/po/it_IT.po
    scummvm/branches/gsoc2010-plugins/po/module.mk
    scummvm/branches/gsoc2010-plugins/po/ru_RU.po
    scummvm/branches/gsoc2010-plugins/po/scummvm.pot
    scummvm/branches/gsoc2010-plugins/po/uk_UA.po
    scummvm/branches/gsoc2010-plugins/sound/decoders/mp3.cpp
    scummvm/branches/gsoc2010-plugins/sound/mididrv.cpp
    scummvm/branches/gsoc2010-plugins/sound/mididrv.h
    scummvm/branches/gsoc2010-plugins/sound/mods/paula.cpp
    scummvm/branches/gsoc2010-plugins/sound/module.mk
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/towns_audio.cpp
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/towns_audio.h
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/towns_pc98_driver.cpp
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h
    scummvm/branches/gsoc2010-plugins/sound/softsynth/sid.cpp
    scummvm/branches/gsoc2010-plugins/test/common/bufferedreadstream.h
    scummvm/branches/gsoc2010-plugins/test/common/str.h
    scummvm/branches/gsoc2010-plugins/tools/README

Added Paths:
-----------
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm.gpe
    scummvm/branches/gsoc2010-plugins/backends/platform/symbian/mmp/scummvm_hugo.mmp.in
    scummvm/branches/gsoc2010-plugins/dists/engine-data/hugo.dat
    scummvm/branches/gsoc2010-plugins/engines/gob/init_fascin.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/
    scummvm/branches/gsoc2010-plugins/engines/hugo/detection.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/display.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/display.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/engine.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/engine.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/file.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/file.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/game.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/global.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/hugo.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/hugo.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/intro.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/intro.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/inventory.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/inventory.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/module.mk
    scummvm/branches/gsoc2010-plugins/engines/hugo/mouse.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/mouse.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/parser.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/parser.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/route.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/route.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/schedule.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/schedule.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/sound.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/sound.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/util.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/util.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/player_towns.cpp
    scummvm/branches/gsoc2010-plugins/engines/scumm/player_towns.h
    scummvm/branches/gsoc2010-plugins/gui/themes/translations.dat
    scummvm/branches/gsoc2010-plugins/sound/softsynth/appleiigs.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/create_hugo.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/create_hugo.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/create_hugo.sln
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/create_hugo.vcproj
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/enums.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/module.mk
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticdata.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticdisplay.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticengine.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticintro.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticmouse.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticparser.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticschedule.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticutil.h
    scummvm/branches/gsoc2010-plugins/tools/create_translations/
    scummvm/branches/gsoc2010-plugins/tools/create_translations/create_translations.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_translations/create_translations.h
    scummvm/branches/gsoc2010-plugins/tools/create_translations/module.mk
    scummvm/branches/gsoc2010-plugins/tools/create_translations/po_parser.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_translations/po_parser.h

Removed Paths:
-------------
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp
    scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm.gpe
    scummvm/branches/gsoc2010-plugins/common/messages.cpp
    scummvm/branches/gsoc2010-plugins/dists/devcpp/
    scummvm/branches/gsoc2010-plugins/engines/hugo/detection.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/display.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/display.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/engine.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/engine.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/file.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/file.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/game.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/global.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/hugo.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/hugo.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/intro.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/intro.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/inventory.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/inventory.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/module.mk
    scummvm/branches/gsoc2010-plugins/engines/hugo/mouse.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/mouse.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/parser.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/parser.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/route.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/route.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/schedule.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/schedule.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/sound.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/sound.h
    scummvm/branches/gsoc2010-plugins/engines/hugo/util.cpp
    scummvm/branches/gsoc2010-plugins/engines/hugo/util.h
    scummvm/branches/gsoc2010-plugins/engines/scumm/midiparser_eup.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/create_hugo.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/create_hugo.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/create_hugo.sln
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/dists/msvc9/create_hugo.vcproj
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/enums.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/module.mk
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticdata.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticdisplay.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticengine.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticintro.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticmouse.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticparser.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticschedule.h
    scummvm/branches/gsoc2010-plugins/tools/create_hugo/staticutil.h
    scummvm/branches/gsoc2010-plugins/tools/create_translations/create_translations.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_translations/create_translations.h
    scummvm/branches/gsoc2010-plugins/tools/create_translations/module.mk
    scummvm/branches/gsoc2010-plugins/tools/create_translations/po_parser.cpp
    scummvm/branches/gsoc2010-plugins/tools/create_translations/po_parser.h
    scummvm/branches/gsoc2010-plugins/tools/po2c

Property Changed:
----------------
    scummvm/branches/gsoc2010-plugins/
    scummvm/branches/gsoc2010-plugins/backends/platform/ds/
    scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/
    scummvm/branches/gsoc2010-plugins/backends/timer/
    scummvm/branches/gsoc2010-plugins/engines/draci/script.cpp
    scummvm/branches/gsoc2010-plugins/engines/draci/script.h
    scummvm/branches/gsoc2010-plugins/sound/softsynth/fmtowns_pc98/


Property changes on: scummvm/branches/gsoc2010-plugins
___________________________________________________________________
Modified: svn:mergeinfo
   - /scummvm/branches/gsoc2009-draci:41389-44325
/scummvm/trunk:49122-51947,52074,52089,52161,52357,52533,52536
   + /scummvm/branches/gsoc2009-draci:41389-44325
/scummvm/trunk:49122-52563

Modified: scummvm/branches/gsoc2010-plugins/Makefile
===================================================================
--- scummvm/branches/gsoc2010-plugins/Makefile	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/Makefile	2010-09-05 15:26:00 UTC (rev 52564)
@@ -42,6 +42,10 @@
 	CXXFLAGS+= -Wno-conversion -Wno-shorten-64-to-32 -Wno-sign-compare -Wno-four-char-constants
 endif
 
+# Warn if global constructors are used. Only available in GCC with LLVM backend
+# (and maybe clang?), hence off by default.
+#CXXFLAGS+= -Wglobal-constructors
+
 #######################################################################
 # Default commands - put the necessary replacements in config.mk      #
 #######################################################################

Modified: scummvm/branches/gsoc2010-plugins/Makefile.common
===================================================================
--- scummvm/branches/gsoc2010-plugins/Makefile.common	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/Makefile.common	2010-09-05 15:26:00 UTC (rev 52564)
@@ -172,12 +172,11 @@
 endif
 
 # Define the Subversion revision if available, either autodetected or
-# specified by the user
+# specified by the user, but only for base/version.cpp.
 ifneq ($(origin VER_SVNREV), undefined)
-CXXFLAGS+= -DSCUMMVM_SVN_REVISION=\"$(VER_SVNREV)\"
+base/version.o: CXXFLAGS:=$(CXXFLAGS) -DSCUMMVM_SVN_REVISION=\"$(VER_SVNREV)\"
 endif
 
-
 ######################################################################
 # Distribution settings
 ######################################################################
@@ -227,13 +226,20 @@
 DIST_FILES_DOCS:=$(addprefix $(srcdir)/,AUTHORS COPYING COPYING.BSD COPYING.LGPL COPYRIGHT NEWS README)
 
 # Themes files
-DIST_FILES_THEMES:=$(addprefix $(srcdir)/gui/themes/,scummmodern.zip)
+DIST_FILES_THEMES=scummmodern.zip
+ifdef USE_TRANSLATION
+DIST_FILES_THEMES+=translations.dat
+endif
+DIST_FILES_THEMES:=$(addprefix $(srcdir)/gui/themes/,$(DIST_FILES_THEMES))
 
 # Engine data files
 DIST_FILES_ENGINEDATA=
 ifdef ENABLE_DRASCULA
 DIST_FILES_ENGINEDATA+=drascula.dat
 endif
+ifdef ENABLE_HUGO
+DIST_FILES_ENGINEDATA+=hugo.dat
+endif
 ifdef ENABLE_KYRA
 DIST_FILES_ENGINEDATA+=kyra.dat
 endif

Modified: scummvm/branches/gsoc2010-plugins/NEWS
===================================================================
--- scummvm/branches/gsoc2010-plugins/NEWS	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/NEWS	2010-09-05 15:26:00 UTC (rev 52564)
@@ -4,6 +4,8 @@
 1.2.0 (????-??-??)
  New Ports:
    - Added Android port.
+   - Added Dingux port.
+   - Added Caanoo port (based on the GP2XWiz port).
 
  General:
    - Removed the outdated PalmOS port.
@@ -33,6 +35,7 @@
  KYRA:
    - Fixed some minor graphical glitches.
    - Implemented formerly missing recreation of some in game items.
+   - Added support for playing Kyrandia 3 with the original CD file layout.
 
  Parallaction:
    - Made part one of The Big Red Adventure completable.
@@ -44,11 +47,21 @@
    - Several improvements in Maniac Mansion NES.
 
  PSP port:
-   - Switched to new backend design which fixes minor graphical issues,
-     speeds things up, and provides 16-bit support.
-   - Enabled playback of MP3 files using the hardware decoder (ME). This means that
-     the port is now optimized for MP3 playback (as opposed to OGG).
+   - New backend design: fixed minor graphical issues and enabled 16-bit support.
+   - Enabled playback of MP3 files using the Media Engine. This means that
+     the port is optimized for MP3 files (as opposed to OGG).
+   - Many optimizations. Everything should run faster.
 
+ Wii port:
+   - Added support for USB2 mass storage devices (requires The Homebrew Channel
+     >= v1.0.8 with IOS58).
+
+ GameCube port:
+   - Added support for DVDs with the ISO9660 file system.
+   
+ GP2X port:
+   - Added support for dynamic engine plugins.
+
 1.1.2 (????-??-??)
   Broken Sword 2
    - Fixed missing speech in some cutscenes.

Modified: scummvm/branches/gsoc2010-plugins/README
===================================================================
--- scummvm/branches/gsoc2010-plugins/README	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/README	2010-09-05 15:26:00 UTC (rev 52564)
@@ -139,11 +139,11 @@
 
 2.1) Reporting Bugs:
 ---- ---------------
-To report a bug, please create a SourceForge account and follow the bugs
-link from our homepage. Please make sure the bug is reproducible, and
-still occurs in the latest SVN/Daily build version. Also check the known
-problems list (below) and the compatibility list on our website for that
-game, to ensure the issue is not already known:
+To report a bug, please create a SourceForge account and follow the
+"Bug Tracker" link from our homepage. Please make sure the bug is
+reproducible, and still occurs in the latest SVN/Daily build version.
+Also check the known problems list (below) and the compatibility list
+on our website for that game, to ensure the issue is not already known:
 
   http://www.scummvm.org/compatibility_stable.php
 
@@ -1541,12 +1541,12 @@
 
 7.6) Playing sound with Sequencer MIDI:                          [UNIX ONLY]
 ---- ----------------------------------
-If your soundcard driver supports a sequencer, you may set the environment
-variable "SCUMMVM_MIDI" to your sequencer device -- for example, to
-/dev/sequencer
+If your soundcard driver supports a sequencer, you may set the
+environment variable "SCUMMVM_MIDI" to your sequencer device -- for
+example, to /dev/sequencer
 
-If you have problems with not hearing audio in this configuration, it is
-possible you will need to set the "SCUMMVM_MIDIPORT" variable to 1 or 2.
+If you have problems with not hearing audio in this configuration, you
+may need to set the environment variable "SCUMMVM_MIDIPORT" to 1 or 2.
 This selects the port on the selected sequencer to use. Then start
 scummvm with the -eseq parameter. This should work on several cards, and
 may offer better performance and quality than AdLib emulation. However,
@@ -1556,13 +1556,13 @@
 
 7.6.1) Playing sound with ALSA sequencer:                        [UNIX ONLY]
 ------ ----------------------------------
-If you have installed the ALSA driver with the sequencer support, then
-set the environment variable SCUMMVM_PORT or the config file parameter
-alsa_port to your sequencer port. The default is to try both "65:0" and
-"17:0".
+If you have installed the ALSA driver with sequencer support, then you
+may set the environment variable "SCUMMVM_PORT" or the config file
+variable "alsa_port" to specify your sequencer port. If neither is set,
+the default behavior is to try both "65:0" and "17:0".
 
-Here is a little howto on how to use the ALSA sequencer with your
-soundcard. In all cases, to have a list of all the sequencer ports you
+Here is a brief guide on how to use the ALSA sequencer with your
+soundcard. In all cases, to obtain a list of all the sequencer ports you
 have, try the command "aconnect -o -l". This should give output similar
 to:
 
@@ -1619,12 +1619,13 @@
 
 7.6.2) Playing sound with IRIX dmedia sequencer:                 [UNIX ONLY]
 ---- ------------------------------------------
-If you are using IRIX,  driver with the sequencer support, you can
-set the environment variable SCUMMVM_PORT or the config file parameter
-dmedia_port to your sequencer port. The default is to use the first port.
+If you are using IRIX and the dmedia driver with sequencer support, you
+can set the environment variable "SCUMMVM_MIDIPORT" or the config file
+variable "dmedia_port" to specify your sequencer port. The default is to
+use the first port.
 
-To get a list of configured midi interfaces on your system, run startmidi
-without parameters. Example output:
+To get a list of configured midi interfaces on your system, run
+"startmidi" without parameters. Example output:
 
   2 MIDI interfaces configured:
           Serial Port 2
@@ -1642,9 +1643,9 @@
 7.7) Using TiMidity++ MIDI server:
 ---- -----------------------------
 If you system lacks any MIDI sequencer, but you still want better MIDI
-quality than default AdLib emulation can offer, you can try TiMidity++
-MIDI server. See http://timidity.sourceforge.net/ for download and
-install instructions.
+quality than default AdLib emulation can offer, you can try the
+TiMidity++ MIDI server. See http://timidity.sourceforge.net/ for
+download and install instructions.
 
 First, you need to start a daemon:
 
@@ -1652,7 +1653,8 @@
 
 Now you can start scummvm and try selection TiMidity music output.  By
 default, it will connect to localhost:7777, but you can change host/port
-by defining "TIMIDITY_HOST" environment variable.
+via the "TIMIDITY_HOST" environment variable. You can also specify
+a "device number" using the "SCUMMVM_MIDIPORT" environment variable.
 
 
 7.8) Using compressed audio files

Modified: scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-fs.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-fs.cpp	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-fs.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -247,11 +247,19 @@
 }
 
 Common::SeekableReadStream *PSPFilesystemNode::createReadStream() {
-	return PSPIoStream::makeFromPath(getPath(), false);
+	const uint32 READ_BUFFER_SIZE = 1024;
+	
+	Common::SeekableReadStream *stream = PspIoStream::makeFromPath(getPath(), false);
+	
+	return new PspIoBufferedReadStream(stream, READ_BUFFER_SIZE, DisposeAfterUse::YES);
 }
 
 Common::WriteStream *PSPFilesystemNode::createWriteStream() {
-	return PSPIoStream::makeFromPath(getPath(), true);
+	const uint32 WRITE_BUFFER_SIZE = 1024;
+	
+	Common::WriteStream *stream = PspIoStream::makeFromPath(getPath(), true);
+	
+	return new PspIoBufferedWriteStream(stream, WRITE_BUFFER_SIZE, DisposeAfterUse::YES);
 }
 
 #endif //#ifdef __PSP__

Modified: scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.cpp
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.cpp	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -58,58 +58,53 @@
 }
 #endif
 
+// Class PspIoStream ------------------------------------------------
 
-PSPIoStream::PSPIoStream(const Common::String &path, bool writeMode)
-		: _handle(0), _path(path), _writeMode(writeMode),
-		  _ferror(false), _pos(0),
-		  _physicalPos(0), _fileSize(0), _inCache(false), _eos(false),
-		  _cacheStartOffset(-1), _cache(0),
-		  _errorSuspend(0), _errorSource(0),
-		  _errorPos(0), _errorHandle(0), _suspendCount(0) {
+PspIoStream::PspIoStream(const Common::String &path, bool writeMode)
+		: _handle(0), _path(path), _fileSize(0), _writeMode(writeMode),
+		  _physicalPos(0), _pos(0), _eos(false),	_error(false), 
+		  _errorSuspend(0), _errorSource(0), _errorPos(0), _errorHandle(0), _suspendCount(0) {
 	DEBUG_ENTER_FUNC();
 
-	// assert(!path.empty());	// do we need this?
+	//assert(!path.empty());	// do we need this?
 }
 
-PSPIoStream::~PSPIoStream() {
+PspIoStream::~PspIoStream() {
 	DEBUG_ENTER_FUNC();
 
 	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
-
-	PowerMan.unregisterForSuspend(this); // Unregister with powermanager to be suspended
-									  // Must do this before fclose() or resume() will reopen.
-
-	sceIoClose(_handle);		  	  // We don't need a critical section. Worst case, the handle gets closed on its own
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
+		
+	PowerMan.unregisterForSuspend(this); 			// Unregister with powermanager to be suspended
+													// Must do this before fclose() or resume() will reopen.
+	sceIoClose(_handle);
 	
-	if (_cache)
-		free(_cache);
-
 	PowerMan.endCriticalSection();
 }
 
 /* Function to open the file pointed to by the path.
  *
  */
-void *PSPIoStream::open() {
+void *PspIoStream::open() {
 	DEBUG_ENTER_FUNC();
+	
 	if (PowerMan.beginCriticalSection()) {
-		// No need to open. Just return the _handle resume() already opened.
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
+		// No need to open? Just return the _handle resume() already opened
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
 	}
 
-	_handle = sceIoOpen(_path.c_str(), _writeMode ? PSP_O_RDWR | PSP_O_CREAT : PSP_O_RDONLY, 0777); 	// open
-
-	if (_handle) {
-		// Get the file size. This way is much faster than going to the end of the file and back
-		SceIoStat stat;
-		sceIoGetstat(_path.c_str(), &stat);
-		_fileSize = *((uint32 *)(void *)&stat.st_size);	// 4GB file is big enough for us
-		PSP_DEBUG_PRINT("%s filesize = %d\n", _path.c_str(), _fileSize);
+	_handle = sceIoOpen(_path.c_str(), _writeMode ? PSP_O_WRONLY | PSP_O_CREAT | PSP_O_TRUNC : PSP_O_RDONLY, 0777);
+	if (!_handle) {
+		_error = true;
+		_handle = NULL;
+	}	
 	
-		// Allocate the cache
-		_cache = (char *)memalign(64, CACHE_SIZE);
-	}
+	// Get the file size. This way is much faster than going to the end of the file and back
+	SceIoStat stat;
+	sceIoGetstat(_path.c_str(), &stat);
+	_fileSize = *((uint32 *)(void *)&stat.st_size);	// 4GB file (32 bits) is big enough for us
+	
+	PSP_DEBUG_PRINT("%s filesize[%d]\n", _path.c_str(), _fileSize);
 
 	PowerMan.registerForSuspend(this);	 // Register with the powermanager to be suspended
 
@@ -118,35 +113,48 @@
 	return (void *)_handle;
 }
 
-bool PSPIoStream::err() const {
+bool PspIoStream::err() const {
 	DEBUG_ENTER_FUNC();
 	
-	if (_ferror)	// We dump since no printing to screen with suspend
-		PSP_ERROR("mem_ferror[%d], source[%d], suspend error[%d], pos[%d], \
-		_errorPos[%d], _errorHandle[%p], suspendCount[%d]\n",
-		          _ferror, _errorSource, _errorSuspend, _pos,
+	if (_error)	// We dump since no printing to screen with suspend callback
+		PSP_ERROR("mem_error[%d], source[%d], suspend error[%d], pos[%d],"
+				  "_errorPos[%d], _errorHandle[%p], suspendCount[%d]\n",
+		          _error, _errorSource, _errorSuspend, _pos,
 				  _errorPos, _errorHandle, _suspendCount);
 
-	return _ferror;
+	return _error;
 }
 
-void PSPIoStream::clearErr() {
-	_ferror = false;
+void PspIoStream::clearErr() {
+	_error = false;
 }
 
-bool PSPIoStream::eos() const {
+bool PspIoStream::eos() const {
 	return _eos;
 }
 
-int32 PSPIoStream::pos() const {
+int32 PspIoStream::pos() const {
 	return _pos;
 }
 
-int32 PSPIoStream::size() const {
+int32 PspIoStream::size() const {
 	return _fileSize;
 }
 
-bool PSPIoStream::seek(int32 offs, int whence) {
+bool PspIoStream::physicalSeekFromCur(int32 offset) {
+	
+	int ret = sceIoLseek32(_handle, offset, PSP_SEEK_CUR);
+	
+	if (ret < 0) {
+		_error = true;
+		PSP_ERROR("failed to seek in file[%s] to [%x]. Error[%x]\n", _path.c_str(), offset, ret);
+		return false;
+	}
+	_physicalPos += offset;
+	return true;
+}
+
+bool PspIoStream::seek(int32 offs, int whence) {
 	DEBUG_ENTER_FUNC();
 	PSP_DEBUG_PRINT_FUNC("offset[0x%x], whence[%d], _pos[0x%x], _physPos[0x%x]\n", offs, whence, _pos, _physicalPos);
 	_eos = false;
@@ -157,195 +165,115 @@
 		posToSearchFor = _pos;
 		break;
 	case SEEK_END:
-		posToSearchFor = _fileSize;	// unsure. Does it take us here or to EOS - 1?
+		posToSearchFor = _fileSize;
 		break;
 	}
 	posToSearchFor += offs;
-	
+
 	// Check for bad values
 	if (posToSearchFor < 0) {
-		_ferror = true;
+		_error = true;
 		return false;
-	}
-	
-	if (posToSearchFor > _fileSize) {
-		_ferror = true;
+	} else if (posToSearchFor > _fileSize) {
+		_error = true;
 		_eos = true;
 		return false;
 	}
 	
-	// See if we can find it in cache
-	if (isOffsetInCache(posToSearchFor)) {
-		PSP_DEBUG_PRINT("seek offset[0x%x] found in cache. Cache starts[0x%x]\n", posToSearchFor, _cacheStartOffset);
-		_inCache = true;		
-	} else {	// not in cache
-		_inCache = false;		
-	}	
 	_pos = posToSearchFor;
+	
 	return true;
 }
 
-uint32 PSPIoStream::read(void *ptr, uint32 len) {
+uint32 PspIoStream::read(void *ptr, uint32 len) {
 	DEBUG_ENTER_FUNC();
-	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x], ptr[%p]\n", _path.c_str(), len, ptr);
+	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x], ptr[%p], _pos[%x], _physPos[%x]\n", _path.c_str(), len, ptr, _pos, _physicalPos);
 
-	if (_ferror || _eos)
+	if (_error || _eos || len <= 0)
 		return 0;
-		
-	byte *destPtr = (byte *)ptr;
-	uint32 lenFromFile = len;		// how much we read from the actual file
-	uint32 lenFromCache = 0;		// how much we read from cache
+
 	uint32 lenRemainingInFile = _fileSize - _pos;
-	
-	if (lenFromFile > lenRemainingInFile) {
-		lenFromFile = lenRemainingInFile;
+
+	// check for getting EOS
+	if (len > lenRemainingInFile) {
+		len = lenRemainingInFile;
 		_eos = true;
 	}	
-	
-	// Are we in cache?
-	if (_inCache && isCacheValid()) {
-		uint32 offsetInCache = _pos - _cacheStartOffset;
-		// We can read at most what's in the cache or the remaining size of the file
-		lenFromCache = MIN2(lenFromFile, CACHE_SIZE - offsetInCache); // unsure
-		
-		PSP_DEBUG_PRINT("reading 0x%x bytes from cache to %p. pos[0x%x] physPos[0x%x] cacheStart[0x%x]\n", lenFromCache, destPtr, _pos, _physicalPos, _cacheStartOffset);
-		
-		memcpy(destPtr, &_cache[offsetInCache], lenFromCache);
-		_pos += lenFromCache;		
-		
-		if (lenFromCache < lenFromFile) {	// there's more to copy from the file
-			lenFromFile -= lenFromCache;
-			lenRemainingInFile -= lenFromCache;	// since we moved pos
-			destPtr += lenFromCache;
-		} else {							// we're done
-#ifdef DEBUG_BUFFERS
-			printBuffer((byte *)ptr, len);
-#endif			
-			
-			return lenFromCache;			// how much we actually read
-		}		
-	}
 
 	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
 	
+	// check if we need to seek
+	if (_pos != _physicalPos)
+		PSP_DEBUG_PRINT("seeking from %x to %x\n", _physicalPos, _pos);
+		if (!physicalSeekFromCur(_pos - _physicalPos)) {
+			_error = true;
+			return 0;
+		}	
 	
-	synchronizePhysicalPos();	// we need to update our physical position
-	
-	if (lenFromFile <= MIN_READ_SIZE) {	// We load the cache in case the read is small enough
-		// This optimization is based on the principle that reading 1 byte is as expensive as 1000 bytes
-		uint32 lenToCopyToCache = MIN2((uint32)MIN_READ_SIZE, lenRemainingInFile); // at most remaining file size
-		
-		PSP_DEBUG_PRINT("filling cache with 0x%x bytes from physicalPos[0x%x]. cacheStart[0x%x], pos[0x%x], fileSize[0x%x]\n", lenToCopyToCache, _physicalPos, _cacheStartOffset, _pos, _fileSize);
-		
-		int ret = sceIoRead(_handle, _cache, lenToCopyToCache);
-		if (ret != (int)lenToCopyToCache) {
-			PSP_ERROR("in filling cache, failed to get 0x%x bytes. Only got 0x%x\n", lenToCopyToCache, ret);
-			_ferror = true;
-		}
-		_cacheStartOffset = _physicalPos;
-		_inCache = true;
-		
-		_physicalPos += ret;
-		
-		PSP_DEBUG_PRINT("copying 0x%x bytes from cache to %p\n", lenFromFile, destPtr);
-		
-		// Copy to the destination buffer from cache
-		memcpy(destPtr, _cache, lenFromFile);
-		_pos += lenFromFile;
-		
-	} else {	// Too big for cache. No caching
-		PSP_DEBUG_PRINT("reading 0x%x bytes from file to %p. Pos[0x%x], physPos[0x%x]\n", lenFromFile, destPtr, _pos, _physicalPos);
-		int ret = sceIoRead(_handle, destPtr, lenFromFile);
+	int ret = sceIoRead(_handle, ptr, len);
 
-		_physicalPos += ret;	// Update pos
-		_pos = _physicalPos;
-
-		if (ret != (int)lenFromFile) {	// error
-			PSP_ERROR("fread returned [0x%x] instead of len[0x%x]\n", ret, lenFromFile);
-			_ferror = true;
-			_errorSource = 4;			
-		}
-		_inCache = false;
-	}
-
 	PowerMan.endCriticalSection();
-
-#ifdef DEBUG_BUFFERS
-	printBuffer((byte *)ptr, len);
-#endif	
-		
-	return lenFromCache + lenFromFile;		// total of what was copied
-}
-
-// TODO: Test if seeking backwards/forwards has any effect on performance
-inline bool PSPIoStream::synchronizePhysicalPos() {
-	if (_pos != _physicalPos) {
-		if (sceIoLseek32(_handle, _pos - _physicalPos, PSP_SEEK_CUR) < 0) {
-			_ferror = true;
-			return false;
-		}
-		_physicalPos = _pos;	
-	}
 	
-	return true;
-}
+	_physicalPos += ret;	// Update position
+	_pos = _physicalPos;
+	
+	if (ret != (int)len) {	// error
+		PSP_ERROR("sceIoRead returned [0x%x] instead of len[0x%x]\n", ret, len);
+		_error = true;
+		_errorSource = 4;			
+	}
+	return ret;
+}	
 
-inline bool PSPIoStream::isOffsetInCache(uint32 offset) {
-	if (_cacheStartOffset != -1 && 
-		offset >= (uint32)_cacheStartOffset && 
-		offset < (uint32)(_cacheStartOffset + CACHE_SIZE))
-		return true;
-	return false;
-}
-
-uint32 PSPIoStream::write(const void *ptr, uint32 len) {
+uint32 PspIoStream::write(const void *ptr, uint32 len) {
 	DEBUG_ENTER_FUNC();
-	// Check if we can access the file
-	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
+	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x], ptr[%p], _pos[%x], _physPos[%x]\n", _path.c_str(), len, ptr, _pos, _physicalPos);
 
-	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x]\n", _path.c_str(), len);
-
-	if (!len || _ferror)	// we actually get calls with len=0
+	if (!len || _error)		// we actually get some calls with len == 0!
 		return 0;
+
+	_eos = false;			// we can't have eos with write
 		
-	_eos = false;	// we can't have eos with write
-	synchronizePhysicalPos();
+	if (PowerMan.beginCriticalSection())
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
+
+	// check if we need to seek
+	if (_pos != _physicalPos)
+		if (!physicalSeekFromCur(_pos - _physicalPos)) {
+			_error = true;
+			return 0;
+		}
 	
 	int ret = sceIoWrite(_handle, ptr, len);
-
-	// If we're making the file bigger, adjust the size
-	if (_physicalPos + ret > _fileSize)
-		_fileSize = _physicalPos + ret;
-
-	_physicalPos += ret;
-	_pos = _physicalPos;
-	_inCache = false;
-	_cacheStartOffset = -1;	// invalidate cache
-
-	if (ret != (int)len) {	// Set error
-		_ferror = true;
+	
+	PowerMan.endCriticalSection();
+	
+	if (ret != (int)len) {
+		_error = true;
 		_errorSource = 5;
-		PSP_ERROR("fwrite returned[0x%x] instead of len[0x%x]\n", ret, len);
+		PSP_ERROR("sceIoWrite returned[0x%x] instead of len[0x%x]\n", ret, len);
 	}
 
-	PowerMan.endCriticalSection();
-
+	_physicalPos += ret;
+	_pos = _physicalPos;
+	
+	if (_pos > _fileSize)
+		_fileSize = _pos;	
+	
 	return ret;
 }
 
-bool PSPIoStream::flush() {
-
+bool PspIoStream::flush() {
 	return true;
 }
 
 // For the PSP, since we're building in suspend support, we moved opening
-// the actual file to an open function since we need an actual PSPIoStream object to suspend.
+// the actual file to an open function since we need an actual PspIoStream object to suspend.
 //
-PSPIoStream *PSPIoStream::makeFromPath(const Common::String &path, bool writeMode) {
+PspIoStream *PspIoStream::makeFromPath(const Common::String &path, bool writeMode) {
 	DEBUG_ENTER_FUNC();
-	PSPIoStream *stream = new PSPIoStream(path, writeMode);
+	PspIoStream *stream = new PspIoStream(path, writeMode);
 
 	if (stream->open() <= 0) {
 		delete stream;
@@ -359,7 +287,7 @@
  *  Function to suspend the IO stream (called by PowerManager)
  *  we can have no output here
  */
-int PSPIoStream::suspend() {
+int PspIoStream::suspend() {
 	DEBUG_ENTER_FUNC();
 	_suspendCount++;
 
@@ -380,7 +308,7 @@
 /*
  *  Function to resume the IO stream (called by Power Manager)
  */
-int PSPIoStream::resume() {
+int PspIoStream::resume() {
 	DEBUG_ENTER_FUNC();
 	int ret = 0;
 	_suspendCount--;
@@ -388,15 +316,15 @@
 	// We reopen our file descriptor
 	_handle = sceIoOpen(_path.c_str(), _writeMode ? PSP_O_RDWR | PSP_O_CREAT : PSP_O_RDONLY, 0777); 	// open
 	if (_handle <= 0) {
-		PSP_ERROR("Couldn't reopen file %s\n", _path.c_str());
+		_errorSuspend = ResumeError;
+		_errorPos = _pos;
 	}
 
-	// Resume our previous position
+	// Resume our previous position if needed
 	if (_handle > 0 && _pos > 0) {
 		ret = sceIoLseek32(_handle, _pos, PSP_SEEK_SET);
 		
 		_physicalPos = _pos;
-		_inCache = false;
 
 		if (ret < 0) {		// Check for problem
 			_errorSuspend = ResumeError;
@@ -407,5 +335,4 @@
 	return ret;
 }
 
-
 #endif /* __PSP__ */

Modified: scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.h
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.h	2010-09-05 15:11:22 UTC (rev 52563)
+++ scummvm/branches/gsoc2010-plugins/backends/fs/psp/psp-stream.h	2010-09-05 15:26:00 UTC (rev 52564)
@@ -33,18 +33,33 @@
 #include "common/stream.h"
 #include "common/str.h"
 
-/*
+class PspIoBufferedReadStream : public Common::BufferedSeekableReadStream {
+public:
+	PspIoBufferedReadStream(SeekableReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::YES) : BufferedSeekableReadStream(parentStream, bufSize, disposeParentStream) {}
+protected:	
+	virtual void allocBuf(uint32 bufSize) { _buf = (byte *)memalign(64, bufSize); }	// want 64 byte alignment for cache
+	virtual void deallocBuf() { free(_buf); }	
+};
+
+class PspIoBufferedWriteStream : public Common::BufferedWriteStream {
+public:
+	PspIoBufferedWriteStream(WriteStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::YES) : BufferedWriteStream(parentStream, bufSize, disposeParentStream) {}
+protected:	
+	virtual void allocBuf(uint32 bufSize) { _buf = (byte *)memalign(64, bufSize); }
+	virtual void deallocBuf() { free(_buf); }
+};
+
+/**
  *  Class to handle special suspend/resume needs of PSP IO Streams
  */
-class PSPIoStream : public Common::SeekableReadStream, public Common::WriteStream, public Common::NonCopyable, public Suspendable {
+class PspIoStream : public Common::SeekableReadStream, public Common::WriteStream, public Common::NonCopyable, public Suspendable {
 protected:
 	SceUID _handle;		// file handle
 	Common::String _path;
 	int _fileSize;
 	bool _writeMode;	// for resuming in the right mode
-	int _physicalPos;	// position in the real file
+	int _physicalPos;	// physical position in file
 	int _pos;			// position. Sometimes virtual
-	bool _inCache;		// whether we're in cache (virtual) mode
 	bool _eos;			// EOS flag
 	
 	enum {
@@ -52,36 +67,26 @@
 		ResumeError = 3
 	};
 
-	enum {
-		CACHE_SIZE = 1024,
-		MIN_READ_SIZE = 1024	// reading less than 1024 takes exactly the same time as 1024
-	};
-	
-	// For caching
-	char *_cache;
-	int _cacheStartOffset;		// starting offset of the cache. -1 when cache is invalid
-	
-	mutable int _ferror;		// file error state
+	// debug stuff
+	mutable int _error;		// file error state
 	int _errorSuspend;			// for debugging
 	mutable int _errorSource;
 	int _errorPos;
 	SceUID _errorHandle;
 	int _suspendCount;
-
-	bool synchronizePhysicalPos();		// synchronize the physical and virtual positions
-	bool isOffsetInCache(uint32 pos);	// check if an offset is found in cache
-	bool isCacheValid() { return _cacheStartOffset != -1; }
 	
+	bool physicalSeekFromCur(int32 offset);
+	
 public:
 
 	/**
 	 * Given a path, invoke fopen on that path and wrap the result in a
-	 * PSPIoStream instance.
+	 * PspIoStream instance.
 	 */
-	static PSPIoStream *makeFromPath(const Common::String &path, bool writeMode);
+	static PspIoStream *makeFromPath(const Common::String &path, bool writeMode);
 
-	PSPIoStream(const Common::String &path, bool writeMode);
-	virtual ~PSPIoStream();
+	PspIoStream(const Common::String &path, bool writeMode);
+	virtual ~PspIoStream();
 
 	void * open();		// open the file pointed to by the file path
 
@@ -96,7 +101,8 @@
 	virtual int32 size() const;
 	virtual bool seek(int32 offs, int whence = SEEK_SET);
 	virtual uint32 read(void *dataPtr, uint32 dataSize);
-
+	
+	// for suspending
 	int suspend();		/* Suspendable interface (power manager) */
 	int resume();		/* " " */
 };

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux-events.cpp	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,215 +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 "backends/platform/dingux/dingux.h"
-
-#include "graphics/scaler/aspect.h"	// for aspect2Real
-
-#if defined (DINGUX)
-
-#define PAD_UP    SDLK_UP
-#define PAD_DOWN  SDLK_DOWN
-#define PAD_LEFT  SDLK_LEFT
-#define PAD_RIGHT SDLK_RIGHT
-#define BUT_A     SDLK_LCTRL
-#define BUT_B     SDLK_LALT
-#define BUT_X     SDLK_SPACE
-#define BUT_Y     SDLK_LSHIFT
-#define BUT_SELECT   SDLK_ESCAPE
-#define BUT_START    SDLK_RETURN
-#define TRIG_L    SDLK_TAB
-#define TRIG_R    SDLK_BACKSPACE
-
-static int mapKey(SDLKey key, SDLMod mod, Uint16 unicode) {
-	if (key >= SDLK_F1 && key <= SDLK_F9) {
-		return key - SDLK_F1 + Common::ASCII_F1;
-	} else if (key >= SDLK_KP0 && key <= SDLK_KP9) {
-		return key - SDLK_KP0 + '0';
-	} else if (key >= SDLK_UP && key <= SDLK_PAGEDOWN) {
-		return key;
-	} else if (unicode) {
-		return unicode;
-	} else if (key >= 'a' && key <= 'z' && (mod & KMOD_SHIFT)) {
-		return key & ~0x20;
-	} else if (key >= SDLK_NUMLOCK && key <= SDLK_EURO) {
-		return 0;
-	}
-	return key;
-}
-
-bool OSystem_SDL_Dingux::remapKey(SDL_Event &ev, Common::Event &event) {
-	if (ev.key.keysym.sym == PAD_UP) {
-		if (ev.type == SDL_KEYDOWN) {
-			_km.y_vel = -1;
-			_km.y_down_count = 1;
-		} else {
-			_km.y_vel = 0;
-			_km.y_down_count = 0;
-		}
-
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == PAD_DOWN) {
-		if (ev.type == SDL_KEYDOWN) {
-			_km.y_vel = 1;
-			_km.y_down_count = 1;
-		} else {
-			_km.y_vel = 0;
-			_km.y_down_count = 0;
-		}
-
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == PAD_LEFT) {
-		if (ev.type == SDL_KEYDOWN) {
-			_km.x_vel = -1;
-			_km.x_down_count = 1;
-		} else {
-			_km.x_vel = 0;
-			_km.x_down_count = 0;
-		}
-
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == PAD_RIGHT) {
-		if (ev.type == SDL_KEYDOWN) {
-			_km.x_vel = 1;
-			_km.x_down_count = 1;
-		} else {
-			_km.x_vel = 0;
-			_km.x_down_count = 0;
-		}
-
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == BUT_Y) { // left mouse button
-		if (ev.type == SDL_KEYDOWN) {
-			event.type = Common::EVENT_LBUTTONDOWN;
-		} else {
-			event.type = Common::EVENT_LBUTTONUP;
-		}
-
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == BUT_B) { // right mouse button
-		if (ev.type == SDL_KEYDOWN) {
-			event.type = Common::EVENT_RBUTTONDOWN;
-		} else {
-			event.type = Common::EVENT_RBUTTONUP;
-		}
-
-		fillMouseEvent(event, _km.x, _km.y);
-
-		return true;
-	} else if (ev.key.keysym.sym == BUT_X) { // '.' skip dialogue
-		ev.key.keysym.sym = SDLK_PERIOD;
-		ev.key.keysym.mod = (SDLMod)0;
-		ev.key.keysym.unicode = '.';
-	} else if (ev.key.keysym.sym == TRIG_L) { // global menu
-		ev.key.keysym.sym = SDLK_F5;
-		event.kbd.keycode = Common::KEYCODE_F5;
-		event.kbd.ascii = Common::ASCII_F5;
-		event.kbd.flags = Common::KBD_CTRL;
-
-		if (ev.type == SDL_KEYDOWN) {
-			event.type = Common::EVENT_KEYDOWN;
-		} else {
-			event.type = Common::EVENT_KEYUP;
-		}
-
-		return true;
-	} else if (ev.key.keysym.sym == BUT_A) { // virtual keyboard
-		ev.key.keysym.sym = SDLK_0;
-
-		event.kbd.keycode = Common::KEYCODE_0;
-		event.kbd.ascii = '0';
-		event.kbd.flags = 0;
-
-		if (ev.type == SDL_KEYDOWN) {
-			event.type = Common::EVENT_KEYDOWN;
-		} else {
-			event.type = Common::EVENT_KEYUP;
-		}
-
-		return true;
-	} else if (ev.key.keysym.sym == BUT_SELECT) { // virtual keyboard
-		ev.key.keysym.sym = SDLK_F7;
-
-	} else if (ev.key.keysym.sym == BUT_START) { // F5, menu in some games
-		ev.key.keysym.sym = SDLK_F5;
-
-	}  else if (ev.key.keysym.sym == TRIG_R) { // ESC
-		ev.key.keysym.sym = SDLK_ESCAPE;
-	} else {
-		event.kbd.keycode = (Common::KeyCode)ev.key.keysym.sym;
-		event.kbd.ascii = mapKey(ev.key.keysym.sym, ev.key.keysym.mod, ev.key.keysym.unicode);
-	}
-
-	return false;
-}
-
-void OSystem_SDL_Dingux::fillMouseEvent(Common::Event &event, int x, int y) {
-	if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
-		event.mouse.x = x * 2;
-		event.mouse.y = y * 2;
-	} else {
-		event.mouse.x = x;
-		event.mouse.y = y;
-	}
-
-	// Update the "keyboard mouse" coords
-	_km.x = x;
-	_km.y = y;
-
-	// Adjust for the screen scaling
-	if (!_overlayVisible) {
-		event.mouse.x /= _videoMode.scaleFactor;
-		event.mouse.y /= _videoMode.scaleFactor;
-		if (_videoMode.aspectRatioCorrection)
-			event.mouse.y = aspect2Real(event.mouse.y);
-	}
-}
-
-void OSystem_SDL_Dingux::warpMouse(int x, int y) {
-	if (_mouseCurState.x != x || _mouseCurState.y != y) {
-		if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
-			x = x / 2;
-			y = y / 2;
-		}
-	}
-	OSystem_SDL::warpMouse(x, y);
-}
-
-#endif
-

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp (from rev 52356, scummvm/trunk/backends/platform/dingux/dingux-events.cpp)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-events.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,215 @@
+/* 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 "backends/platform/dingux/dingux.h"
+
+#include "graphics/scaler/aspect.h"	// for aspect2Real
+
+#if defined (DINGUX)
+
+#define PAD_UP    SDLK_UP
+#define PAD_DOWN  SDLK_DOWN
+#define PAD_LEFT  SDLK_LEFT
+#define PAD_RIGHT SDLK_RIGHT
+#define BUT_A     SDLK_LCTRL
+#define BUT_B     SDLK_LALT
+#define BUT_X     SDLK_SPACE
+#define BUT_Y     SDLK_LSHIFT
+#define BUT_SELECT   SDLK_ESCAPE
+#define BUT_START    SDLK_RETURN
+#define TRIG_L    SDLK_TAB
+#define TRIG_R    SDLK_BACKSPACE
+
+static int mapKey(SDLKey key, SDLMod mod, Uint16 unicode) {
+	if (key >= SDLK_F1 && key <= SDLK_F9) {
+		return key - SDLK_F1 + Common::ASCII_F1;
+	} else if (key >= SDLK_KP0 && key <= SDLK_KP9) {
+		return key - SDLK_KP0 + '0';
+	} else if (key >= SDLK_UP && key <= SDLK_PAGEDOWN) {
+		return key;
+	} else if (unicode) {
+		return unicode;
+	} else if (key >= 'a' && key <= 'z' && (mod & KMOD_SHIFT)) {
+		return key & ~0x20;
+	} else if (key >= SDLK_NUMLOCK && key <= SDLK_EURO) {
+		return 0;
+	}
+	return key;
+}
+
+bool OSystem_SDL_Dingux::remapKey(SDL_Event &ev, Common::Event &event) {
+	if (ev.key.keysym.sym == PAD_UP) {
+		if (ev.type == SDL_KEYDOWN) {
+			_km.y_vel = -1;
+			_km.y_down_count = 1;
+		} else {
+			_km.y_vel = 0;
+			_km.y_down_count = 0;
+		}
+
+		event.type = Common::EVENT_MOUSEMOVE;
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == PAD_DOWN) {
+		if (ev.type == SDL_KEYDOWN) {
+			_km.y_vel = 1;
+			_km.y_down_count = 1;
+		} else {
+			_km.y_vel = 0;
+			_km.y_down_count = 0;
+		}
+
+		event.type = Common::EVENT_MOUSEMOVE;
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == PAD_LEFT) {
+		if (ev.type == SDL_KEYDOWN) {
+			_km.x_vel = -1;
+			_km.x_down_count = 1;
+		} else {
+			_km.x_vel = 0;
+			_km.x_down_count = 0;
+		}
+
+		event.type = Common::EVENT_MOUSEMOVE;
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == PAD_RIGHT) {
+		if (ev.type == SDL_KEYDOWN) {
+			_km.x_vel = 1;
+			_km.x_down_count = 1;
+		} else {
+			_km.x_vel = 0;
+			_km.x_down_count = 0;
+		}
+
+		event.type = Common::EVENT_MOUSEMOVE;
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == BUT_Y) { // left mouse button
+		if (ev.type == SDL_KEYDOWN) {
+			event.type = Common::EVENT_LBUTTONDOWN;
+		} else {
+			event.type = Common::EVENT_LBUTTONUP;
+		}
+
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == BUT_B) { // right mouse button
+		if (ev.type == SDL_KEYDOWN) {
+			event.type = Common::EVENT_RBUTTONDOWN;
+		} else {
+			event.type = Common::EVENT_RBUTTONUP;
+		}
+
+		fillMouseEvent(event, _km.x, _km.y);
+
+		return true;
+	} else if (ev.key.keysym.sym == BUT_X) { // '.' skip dialogue
+		ev.key.keysym.sym = SDLK_PERIOD;
+		ev.key.keysym.mod = (SDLMod)0;
+		ev.key.keysym.unicode = '.';
+	} else if (ev.key.keysym.sym == TRIG_L) { // global menu
+		ev.key.keysym.sym = SDLK_F5;
+		event.kbd.keycode = Common::KEYCODE_F5;
+		event.kbd.ascii = Common::ASCII_F5;
+		event.kbd.flags = Common::KBD_CTRL;
+
+		if (ev.type == SDL_KEYDOWN) {
+			event.type = Common::EVENT_KEYDOWN;
+		} else {
+			event.type = Common::EVENT_KEYUP;
+		}
+
+		return true;
+	} else if (ev.key.keysym.sym == BUT_A) { // virtual keyboard
+		ev.key.keysym.sym = SDLK_0;
+
+		event.kbd.keycode = Common::KEYCODE_0;
+		event.kbd.ascii = '0';
+		event.kbd.flags = 0;
+
+		if (ev.type == SDL_KEYDOWN) {
+			event.type = Common::EVENT_KEYDOWN;
+		} else {
+			event.type = Common::EVENT_KEYUP;
+		}
+
+		return true;
+	} else if (ev.key.keysym.sym == BUT_SELECT) { // virtual keyboard
+		ev.key.keysym.sym = SDLK_F7;
+
+	} else if (ev.key.keysym.sym == BUT_START) { // F5, menu in some games
+		ev.key.keysym.sym = SDLK_F5;
+
+	}  else if (ev.key.keysym.sym == TRIG_R) { // ESC
+		ev.key.keysym.sym = SDLK_ESCAPE;
+	} else {
+		event.kbd.keycode = (Common::KeyCode)ev.key.keysym.sym;
+		event.kbd.ascii = mapKey(ev.key.keysym.sym, ev.key.keysym.mod, ev.key.keysym.unicode);
+	}
+
+	return false;
+}
+
+void OSystem_SDL_Dingux::fillMouseEvent(Common::Event &event, int x, int y) {
+	if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
+		event.mouse.x = x * 2;
+		event.mouse.y = y * 2;
+	} else {
+		event.mouse.x = x;
+		event.mouse.y = y;
+	}
+
+	// Update the "keyboard mouse" coords
+	_km.x = x;
+	_km.y = y;
+
+	// Adjust for the screen scaling
+	if (!_overlayVisible) {
+		event.mouse.x /= _videoMode.scaleFactor;
+		event.mouse.y /= _videoMode.scaleFactor;
+		if (_videoMode.aspectRatioCorrection)
+			event.mouse.y = aspect2Real(event.mouse.y);
+	}
+}
+
+void OSystem_SDL_Dingux::warpMouse(int x, int y) {
+	if (_mouseCurState.x != x || _mouseCurState.y != y) {
+		if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
+			x = x / 2;
+			y = y / 2;
+		}
+	}
+	OSystem_SDL::warpMouse(x, y);
+}
+
+#endif
+

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux-graphics.cpp	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,460 +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 "backends/platform/dingux/dingux.h"
-
-#include "common/mutex.h"
-#include "graphics/scaler.h"
-#include "graphics/scaler/aspect.h"
-#include "graphics/scaler/downscaler.h"
-#include "graphics/surface.h"
-
-#if defined (DINGUX)
-
-static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
-	{"1x", "Standard", GFX_NORMAL},
-	{0, 0, 0}
-};
-
-int OSystem_SDL_Dingux::getDefaultGraphicsMode() const {
-	return GFX_NORMAL;
-}
-
-const OSystem::GraphicsMode *OSystem_SDL_Dingux::getSupportedGraphicsModes() const {
-	return s_supportedGraphicsModes;
-}
-
-bool OSystem_SDL_Dingux::setGraphicsMode(int mode) {
-	Common::StackLock lock(_graphicsMutex);
-
-	assert(_transactionMode == kTransactionActive);
-
-	if (_oldVideoMode.setup && _oldVideoMode.mode == mode)
-		return true;
-
-	int newScaleFactor = 1;
-
-	switch (mode) {
-	case GFX_NORMAL:
-		newScaleFactor = 1;
-		break;
-	case GFX_HALF:
-		newScaleFactor = 1;
-		break;
-	default:
-		warning("unknown gfx mode %d", mode);
-		return false;
-	}
-
-	_transactionDetails.normal1xScaler = (mode == GFX_NORMAL);
-	if (_oldVideoMode.setup && _oldVideoMode.scaleFactor != newScaleFactor)
-		_transactionDetails.needHotswap = true;
-
-	_transactionDetails.needUpdatescreen = true;
-
-	_videoMode.mode = mode;
-	_videoMode.scaleFactor = newScaleFactor;
-
-	return true;
-}
-
-void OSystem_SDL_Dingux::setGraphicsModeIntern() {
-	Common::StackLock lock(_graphicsMutex);
-	ScalerProc *newScalerProc = 0;
-
-	switch (_videoMode.mode) {
-	case GFX_NORMAL:
-		newScalerProc = Normal1x;
-		break;
-	case GFX_HALF:
-		newScalerProc = DownscaleAllByHalf;
-		break;
-
-	default:
-		error("Unknown gfx mode %d", _videoMode.mode);
-	}
-
-	_scalerProc = newScalerProc;
-
-	if (!_screen || !_hwscreen)
-		return;
-
-	// Blit everything to the screen
-	_forceFull = true;
-
-	// Even if the old and new scale factors are the same, we may have a
-	// different scaler for the cursor now.
-	blitCursor();
-}
-
-void OSystem_SDL_Dingux::initSize(uint w, uint h) {
-	assert(_transactionMode == kTransactionActive);
-
-	// Avoid redundant res changes
-	if ((int)w == _videoMode.screenWidth && (int)h == _videoMode.screenHeight)
-		return;
-
-	_videoMode.screenWidth = w;
-	_videoMode.screenHeight = h;
-	if (w > 320 || h > 240) {
-		setGraphicsMode(GFX_HALF);
-		setGraphicsModeIntern();
-		toggleMouseGrab();
-	}
-
-	_transactionDetails.sizeChanged = true;
-}
-
-void OSystem_SDL_Dingux::drawMouse() {
-	if (!_mouseVisible || !_mouseSurface) {
-		_mouseBackup.x = _mouseBackup.y = _mouseBackup.w = _mouseBackup.h = 0;
-		return;
-	}
-
-	SDL_Rect dst;
-	int scale;
-	int hotX, hotY;
-
-	if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
-		dst.x = _mouseCurState.x / 2;
-		dst.y = _mouseCurState.y / 2;
-	} else {
-		dst.x = _mouseCurState.x;
-		dst.y = _mouseCurState.y;
-	}
-
-	if (!_overlayVisible) {
-		scale = _videoMode.scaleFactor;
-		dst.w = _mouseCurState.vW;
-		dst.h = _mouseCurState.vH;
-		hotX = _mouseCurState.vHotX;
-		hotY = _mouseCurState.vHotY;
-	} else {
-		scale = 1;
-		dst.w = _mouseCurState.rW;
-		dst.h = _mouseCurState.rH;
-		hotX = _mouseCurState.rHotX;
-		hotY = _mouseCurState.rHotY;
-	}
-
-	// The mouse is undrawn using virtual coordinates, i.e. they may be
-	// scaled and aspect-ratio corrected.
-
-	_mouseBackup.x = dst.x - hotX;
-	_mouseBackup.y = dst.y - hotY;
-	_mouseBackup.w = dst.w;
-	_mouseBackup.h = dst.h;
-
-	// We draw the pre-scaled cursor image, so now we need to adjust for
-	// scaling, shake position and aspect ratio correction manually.
-
-	if (!_overlayVisible) {
-		dst.y += _currentShakePos;
-	}
-
-	if (_videoMode.aspectRatioCorrection && !_overlayVisible)
-		dst.y = real2Aspect(dst.y);
-
-	dst.x = scale * dst.x - _mouseCurState.rHotX;
-	dst.y = scale * dst.y - _mouseCurState.rHotY;
-	dst.w = _mouseCurState.rW;
-	dst.h = _mouseCurState.rH;
-
-	// Note that SDL_BlitSurface() and addDirtyRect() will both perform any
-	// clipping necessary
-
-	if (SDL_BlitSurface(_mouseSurface, NULL, _hwscreen, &dst) != 0)
-		error("SDL_BlitSurface failed: %s", SDL_GetError());
-
-	// The screen will be updated using real surface coordinates, i.e.
-	// they will not be scaled or aspect-ratio corrected.
-	addDirtyRect(dst.x, dst.y, dst.w, dst.h, true);
-}
-
-void OSystem_SDL_Dingux::undrawMouse() {
-	const int x = _mouseBackup.x;
-	const int y = _mouseBackup.y;
-
-	// When we switch bigger overlay off mouse jumps. Argh!
-	// This is intended to prevent undrawing offscreen mouse
-	if (!_overlayVisible && (x >= _videoMode.screenWidth || y >= _videoMode.screenHeight))
-		return;
-
-	if (_mouseBackup.w != 0 && _mouseBackup.h != 0) {
-		if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
-			addDirtyRect(x*2, y*2, _mouseBackup.w*2, _mouseBackup.h*2);
-		} else {
-			addDirtyRect(x, y, _mouseBackup.w, _mouseBackup.h);
-		}
-	}
-}
-
-void OSystem_SDL_Dingux::internUpdateScreen() {
-	SDL_Surface *srcSurf, *origSurf;
-	int height, width;
-	ScalerProc *scalerProc;
-	int scale1;
-
-#if defined (DEBUG) && ! defined(_WIN32_WCE) // definitions not available for non-DEBUG here. (needed this to compile in SYMBIAN32 & linux?)
-	assert(_hwscreen != NULL);
-	assert(_hwscreen->map->sw_data != NULL);
-#endif
-
-	// If the shake position changed, fill the dirty area with blackness
-	if (_currentShakePos != _newShakePos) {
-		SDL_Rect blackrect = {0, 0, _videoMode.screenWidth * _videoMode.scaleFactor, _newShakePos * _videoMode.scaleFactor};
-
-		if (_videoMode.aspectRatioCorrection && !_overlayVisible)
-			blackrect.h = real2Aspect(blackrect.h - 1) + 1;
-
-		SDL_FillRect(_hwscreen, &blackrect, 0);
-
-		_currentShakePos = _newShakePos;
-
-		_forceFull = true;
-	}
-
-	// Check whether the palette was changed in the meantime and update the
-	// screen surface accordingly.
-	if (_screen && _paletteDirtyEnd != 0) {
-		SDL_SetColors(_screen, _currentPalette + _paletteDirtyStart,
-		              _paletteDirtyStart,
-		              _paletteDirtyEnd - _paletteDirtyStart);
-
-		_paletteDirtyEnd = 0;
-
-		_forceFull = true;
-	}
-
-#ifdef USE_OSD
-	// OSD visible (i.e. non-transparent)?
-	if (_osdAlpha != SDL_ALPHA_TRANSPARENT) {
-		// Updated alpha value
-		const int diff = SDL_GetTicks() - _osdFadeStartTime;
-		if (diff > 0) {
-			if (diff >= kOSDFadeOutDuration) {
-				// Back to full transparency
-				_osdAlpha = SDL_ALPHA_TRANSPARENT;
-			} else {
-				// Do a linear fade out...
-				const int startAlpha = SDL_ALPHA_TRANSPARENT + kOSDInitialAlpha * (SDL_ALPHA_OPAQUE - SDL_ALPHA_TRANSPARENT) / 100;
-				_osdAlpha = startAlpha + diff * (SDL_ALPHA_TRANSPARENT - startAlpha) / kOSDFadeOutDuration;
-			}
-			SDL_SetAlpha(_osdSurface, SDL_RLEACCEL | SDL_SRCCOLORKEY | SDL_SRCALPHA, _osdAlpha);
-			_forceFull = true;
-		}
-	}
-#endif
-
-	if (!_overlayVisible) {
-		origSurf = _screen;
-		srcSurf = _tmpscreen;
-		width = _videoMode.screenWidth;
-		height = _videoMode.screenHeight;
-		scalerProc = _scalerProc;
-		scale1 = _videoMode.scaleFactor;
-	} else {
-		origSurf = _overlayscreen;
-		srcSurf = _tmpscreen2;
-		width = _videoMode.overlayWidth;
-		height = _videoMode.overlayHeight;
-		scalerProc = Normal1x;
-		scale1 = 1;
-	}
-
-	// Add the area covered by the mouse cursor to the list of dirty rects if
-	// we have to redraw the mouse.
-	if (_mouseNeedsRedraw)
-		undrawMouse();
-
-	// Force a full redraw if requested
-	if (_forceFull) {
-		_numDirtyRects = 1;
-		_dirtyRectList[0].x = 0;
-		_dirtyRectList[0].y = 0;
-		_dirtyRectList[0].w = width;
-		_dirtyRectList[0].h = height;
-	}
-
-	// Only draw anything if necessary
-	if (_numDirtyRects > 0 || _mouseNeedsRedraw) {
-		SDL_Rect *r;
-		SDL_Rect dst;
-		uint32 srcPitch, dstPitch;
-		SDL_Rect *lastRect = _dirtyRectList + _numDirtyRects;
-
-		for (r = _dirtyRectList; r != lastRect; ++r) {
-			dst = *r;
-			dst.x++;	// Shift rect by one since 2xSai needs to access the data around
-			dst.y++;	// any pixel to scale it, and we want to avoid mem access crashes.
-
-			if (SDL_BlitSurface(origSurf, r, srcSurf, &dst) != 0)
-				error("SDL_BlitSurface failed: %s", SDL_GetError());
-		}
-
-		SDL_LockSurface(srcSurf);
-		SDL_LockSurface(_hwscreen);
-
-		srcPitch = srcSurf->pitch;
-		dstPitch = _hwscreen->pitch;
-
-		for (r = _dirtyRectList; r != lastRect; ++r) {
-			register int dst_y = r->y + _currentShakePos;
-			register int dst_h = 0;
-			register int dst_w = r->w;
-			register int orig_dst_y = 0;
-			register int dst_x = r->x;
-			register int src_y;
-			register int src_x;
-
-			if (dst_y < height) {
-				dst_h = r->h;
-				if (dst_h > height - dst_y)
-					dst_h = height - dst_y;
-
-				orig_dst_y = dst_y;
-				src_x = dst_x;
-				src_y = dst_y;
-
-				if (_videoMode.aspectRatioCorrection && !_overlayVisible)
-					dst_y = real2Aspect(dst_y);
-
-				assert(scalerProc != NULL);
-
-				if ((_videoMode.mode == GFX_HALF) && (scalerProc == DownscaleAllByHalf)) {
-					if (dst_x % 2 == 1) {
-						dst_x--;
-						dst_w++;
-					}
-					if (dst_y % 2 == 1) {
-						dst_y--;
-						dst_h++;
-					}
-					src_x = dst_x;
-					src_y = dst_y;
-					dst_x = dst_x / 2;
-					dst_y = dst_y / 2;
-
-					scalerProc((byte *)srcSurf->pixels + (src_x * 2 + 2) + (src_y + 1) * srcPitch, srcPitch,
-					           (byte *)_hwscreen->pixels + dst_x * 2 + dst_y * dstPitch, dstPitch, dst_w, dst_h);
-
-				} else {
-					scalerProc((byte *)srcSurf->pixels + (r->x * 2 + 2) + (r->y + 1) * srcPitch, srcPitch,
-					           (byte *)_hwscreen->pixels + r->x * 2 + dst_y * dstPitch, dstPitch, r->w, dst_h);
-				}
-			}
-
-			if (_videoMode.mode == GFX_HALF && scalerProc == DownscaleAllByHalf) {
-				r->w = r->w / 2;
-				r->h = dst_h / 2;
-			} else {
-				r->w = r->w;
-				r->h = dst_h;
-			}
-
-			r->x = dst_x;
-			r->y = dst_y;
-
-
-#ifdef USE_SCALERS
-			if (_videoMode.aspectRatioCorrection && orig_dst_y < height && !_overlayVisible)
-				r->h = stretch200To240((uint8 *) _hwscreen->pixels, dstPitch, r->w, r->h, r->x, r->y, orig_dst_y * scale1);
-#endif
-		}
-		SDL_UnlockSurface(srcSurf);
-		SDL_UnlockSurface(_hwscreen);
-
-		// Readjust the dirty rect list in case we are doing a full update.
-		// This is necessary if shaking is active.
-		if (_forceFull) {
-			_dirtyRectList[0].y = 0;
-			_dirtyRectList[0].h = (_videoMode.mode == GFX_HALF) ? effectiveScreenHeight() / 2 : effectiveScreenHeight();
-		}
-
-		drawMouse();
-
-#ifdef USE_OSD
-		if (_osdAlpha != SDL_ALPHA_TRANSPARENT) {
-			SDL_BlitSurface(_osdSurface, 0, _hwscreen, 0);
-		}
-#endif
-		// Finally, blit all our changes to the screen
-		SDL_UpdateRects(_hwscreen, _numDirtyRects, _dirtyRectList);
-	}
-
-	_numDirtyRects = 0;
-	_forceFull = false;
-	_mouseNeedsRedraw = false;
-}
-
-void OSystem_SDL_Dingux::showOverlay() {
-	if (_videoMode.mode == GFX_HALF) {
-		_mouseCurState.x = _mouseCurState.x / 2;
-		_mouseCurState.y = _mouseCurState.y / 2;
-	}
-	OSystem_SDL::showOverlay();
-}
-
-void OSystem_SDL_Dingux::hideOverlay() {
-	if (_videoMode.mode == GFX_HALF) {
-		_mouseCurState.x = _mouseCurState.x * 2;
-		_mouseCurState.y = _mouseCurState.y * 2;
-	}
-	OSystem_SDL::hideOverlay();
-}
-
-bool OSystem_SDL_Dingux::loadGFXMode() {
-	fprintf(stdout, "Game ScreenMode = %d*%d\n", _videoMode.screenWidth, _videoMode.screenHeight);
-	if (_videoMode.screenWidth > 320 || _videoMode.screenHeight > 240) {
-		_videoMode.aspectRatioCorrection = false;
-		setGraphicsMode(GFX_HALF);
-		fprintf(stdout, "GraphicsMode set to HALF\n");
-	} else {
-		setGraphicsMode(GFX_NORMAL);
-		fprintf(stdout, "GraphicsMode set to NORMAL\n");
-	}
-
-	if ((_videoMode.mode == GFX_HALF) && !_overlayVisible) {
-		_videoMode.overlayWidth = _videoMode.screenWidth / 2;
-		_videoMode.overlayHeight = _videoMode.screenHeight / 2;
-		_videoMode.fullscreen = true;
-	} else {
-
-		_videoMode.overlayWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
-		_videoMode.overlayHeight = _videoMode.screenHeight * _videoMode.scaleFactor;
-
-		if (_videoMode.aspectRatioCorrection)
-			_videoMode.overlayHeight = real2Aspect(_videoMode.overlayHeight);
-
-		_videoMode.hardwareWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
-		_videoMode.hardwareHeight = effectiveScreenHeight();
-	}
-
-
-	return OSystem_SDL::loadGFXMode();
-}
-
-#endif
-

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp (from rev 52356, scummvm/trunk/backends/platform/dingux/dingux-graphics.cpp)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux-graphics.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,468 @@
+/* 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 "backends/platform/dingux/dingux.h"
+
+#include "common/mutex.h"
+#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
+#include "graphics/scaler/downscaler.h"
+#include "graphics/surface.h"
+
+#if defined (DINGUX)
+
+static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
+	{"1x", "Standard", GFX_NORMAL},
+	{0, 0, 0}
+};
+
+int OSystem_SDL_Dingux::getDefaultGraphicsMode() const {
+	return GFX_NORMAL;
+}
+
+const OSystem::GraphicsMode *OSystem_SDL_Dingux::getSupportedGraphicsModes() const {
+	return s_supportedGraphicsModes;
+}
+
+bool OSystem_SDL_Dingux::setGraphicsMode(int mode) {
+	Common::StackLock lock(_graphicsMutex);
+
+	assert(_transactionMode == kTransactionActive);
+
+	if (_oldVideoMode.setup && _oldVideoMode.mode == mode)
+		return true;
+
+	int newScaleFactor = 1;
+
+	switch (mode) {
+	case GFX_NORMAL:
+		newScaleFactor = 1;
+		break;
+	case GFX_HALF:
+		newScaleFactor = 1;
+		break;
+	default:
+		warning("unknown gfx mode %d", mode);
+		return false;
+	}
+
+	_transactionDetails.normal1xScaler = (mode == GFX_NORMAL);
+	if (_oldVideoMode.setup && _oldVideoMode.scaleFactor != newScaleFactor)
+		_transactionDetails.needHotswap = true;
+
+	_transactionDetails.needUpdatescreen = true;
+
+	_videoMode.mode = mode;
+	_videoMode.scaleFactor = newScaleFactor;
+
+	return true;
+}
+
+void OSystem_SDL_Dingux::setGraphicsModeIntern() {
+	Common::StackLock lock(_graphicsMutex);
+	ScalerProc *newScalerProc = 0;
+
+	switch (_videoMode.mode) {
+	case GFX_NORMAL:
+		newScalerProc = Normal1x;
+		break;
+	case GFX_HALF:
+		newScalerProc = DownscaleAllByHalf;
+		break;
+
+	default:
+		error("Unknown gfx mode %d", _videoMode.mode);
+	}
+
+	_scalerProc = newScalerProc;
+
+	if (!_screen || !_hwscreen)
+		return;
+
+	// Blit everything to the screen
+	_forceFull = true;
+
+	// Even if the old and new scale factors are the same, we may have a
+	// different scaler for the cursor now.
+	blitCursor();
+}
+
+void OSystem_SDL_Dingux::initSize(uint w, uint h) {
+	assert(_transactionMode == kTransactionActive);
+
+	// Avoid redundant res changes
+	if ((int)w == _videoMode.screenWidth && (int)h == _videoMode.screenHeight)
+		return;
+
+	_videoMode.screenWidth = w;
+	_videoMode.screenHeight = h;
+	if (w > 320 || h > 240) {
+		setGraphicsMode(GFX_HALF);
+		setGraphicsModeIntern();
+		toggleMouseGrab();
+	}
+
+	_transactionDetails.sizeChanged = true;
+}
+
+void OSystem_SDL_Dingux::drawMouse() {
+	if (!_mouseVisible || !_mouseSurface) {
+		_mouseBackup.x = _mouseBackup.y = _mouseBackup.w = _mouseBackup.h = 0;
+		return;
+	}
+
+	SDL_Rect dst;
+	int scale;
+	int hotX, hotY;
+
+	if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
+		dst.x = _mouseCurState.x / 2;
+		dst.y = _mouseCurState.y / 2;
+	} else {
+		dst.x = _mouseCurState.x;
+		dst.y = _mouseCurState.y;
+	}
+
+	if (!_overlayVisible) {
+		scale = _videoMode.scaleFactor;
+		dst.w = _mouseCurState.vW;
+		dst.h = _mouseCurState.vH;
+		hotX = _mouseCurState.vHotX;
+		hotY = _mouseCurState.vHotY;
+	} else {
+		scale = 1;
+		dst.w = _mouseCurState.rW;
+		dst.h = _mouseCurState.rH;
+		hotX = _mouseCurState.rHotX;
+		hotY = _mouseCurState.rHotY;
+	}
+
+	// The mouse is undrawn using virtual coordinates, i.e. they may be
+	// scaled and aspect-ratio corrected.
+
+	_mouseBackup.x = dst.x - hotX;
+	_mouseBackup.y = dst.y - hotY;
+	_mouseBackup.w = dst.w;
+	_mouseBackup.h = dst.h;
+
+	// We draw the pre-scaled cursor image, so now we need to adjust for
+	// scaling, shake position and aspect ratio correction manually.
+
+	if (!_overlayVisible) {
+		dst.y += _currentShakePos;
+	}
+
+	if (_videoMode.aspectRatioCorrection && !_overlayVisible)
+		dst.y = real2Aspect(dst.y);
+
+	dst.x = scale * dst.x - _mouseCurState.rHotX;
+	dst.y = scale * dst.y - _mouseCurState.rHotY;
+	dst.w = _mouseCurState.rW;
+	dst.h = _mouseCurState.rH;
+
+	// Note that SDL_BlitSurface() and addDirtyRect() will both perform any
+	// clipping necessary
+
+	if (SDL_BlitSurface(_mouseSurface, NULL, _hwscreen, &dst) != 0)
+		error("SDL_BlitSurface failed: %s", SDL_GetError());
+
+	// The screen will be updated using real surface coordinates, i.e.
+	// they will not be scaled or aspect-ratio corrected.
+	addDirtyRect(dst.x, dst.y, dst.w, dst.h, true);
+}
+
+void OSystem_SDL_Dingux::undrawMouse() {
+	const int x = _mouseBackup.x;
+	const int y = _mouseBackup.y;
+
+	// When we switch bigger overlay off mouse jumps. Argh!
+	// This is intended to prevent undrawing offscreen mouse
+	if (!_overlayVisible && (x >= _videoMode.screenWidth || y >= _videoMode.screenHeight))
+		return;
+
+	if (_mouseBackup.w != 0 && _mouseBackup.h != 0) {
+		if (_videoMode.mode == GFX_HALF && !_overlayVisible) {
+			addDirtyRect(x*2, y*2, _mouseBackup.w*2, _mouseBackup.h*2);
+		} else {
+			addDirtyRect(x, y, _mouseBackup.w, _mouseBackup.h);
+		}
+	}
+}
+
+void OSystem_SDL_Dingux::internUpdateScreen() {
+	SDL_Surface *srcSurf, *origSurf;
+	int height, width;
+	ScalerProc *scalerProc;
+	int scale1;
+
+#if defined (DEBUG) && ! defined(_WIN32_WCE) // definitions not available for non-DEBUG here. (needed this to compile in SYMBIAN32 & linux?)
+	assert(_hwscreen != NULL);
+	assert(_hwscreen->map->sw_data != NULL);
+#endif
+
+	// If the shake position changed, fill the dirty area with blackness
+	if (_currentShakePos != _newShakePos) {
+		SDL_Rect blackrect = {0, 0, _videoMode.screenWidth * _videoMode.scaleFactor, _newShakePos * _videoMode.scaleFactor};
+
+		if (_videoMode.aspectRatioCorrection && !_overlayVisible)
+			blackrect.h = real2Aspect(blackrect.h - 1) + 1;
+
+		SDL_FillRect(_hwscreen, &blackrect, 0);
+
+		_currentShakePos = _newShakePos;
+
+		_forceFull = true;
+	}
+
+	// Check whether the palette was changed in the meantime and update the
+	// screen surface accordingly.
+	if (_screen && _paletteDirtyEnd != 0) {
+		SDL_SetColors(_screen, _currentPalette + _paletteDirtyStart,
+		              _paletteDirtyStart,
+		              _paletteDirtyEnd - _paletteDirtyStart);
+
+		_paletteDirtyEnd = 0;
+
+		_forceFull = true;
+	}
+
+#ifdef USE_OSD
+	// OSD visible (i.e. non-transparent)?
+	if (_osdAlpha != SDL_ALPHA_TRANSPARENT) {
+		// Updated alpha value
+		const int diff = SDL_GetTicks() - _osdFadeStartTime;
+		if (diff > 0) {
+			if (diff >= kOSDFadeOutDuration) {
+				// Back to full transparency
+				_osdAlpha = SDL_ALPHA_TRANSPARENT;
+			} else {
+				// Do a linear fade out...
+				const int startAlpha = SDL_ALPHA_TRANSPARENT + kOSDInitialAlpha * (SDL_ALPHA_OPAQUE - SDL_ALPHA_TRANSPARENT) / 100;
+				_osdAlpha = startAlpha + diff * (SDL_ALPHA_TRANSPARENT - startAlpha) / kOSDFadeOutDuration;
+			}
+			SDL_SetAlpha(_osdSurface, SDL_RLEACCEL | SDL_SRCCOLORKEY | SDL_SRCALPHA, _osdAlpha);
+			_forceFull = true;
+		}
+	}
+#endif
+
+	if (!_overlayVisible) {
+		origSurf = _screen;
+		srcSurf = _tmpscreen;
+		width = _videoMode.screenWidth;
+		height = _videoMode.screenHeight;
+		scalerProc = _scalerProc;
+		scale1 = _videoMode.scaleFactor;
+	} else {
+		origSurf = _overlayscreen;
+		srcSurf = _tmpscreen2;
+		width = _videoMode.overlayWidth;
+		height = _videoMode.overlayHeight;
+		scalerProc = Normal1x;
+		scale1 = 1;
+	}
+
+	// Add the area covered by the mouse cursor to the list of dirty rects if
+	// we have to redraw the mouse.
+	if (_mouseNeedsRedraw)
+		undrawMouse();
+
+	// Force a full redraw if requested
+	if (_forceFull) {
+		_numDirtyRects = 1;
+		_dirtyRectList[0].x = 0;
+		_dirtyRectList[0].y = 0;
+		_dirtyRectList[0].w = width;
+		_dirtyRectList[0].h = height;
+	}
+
+	// Only draw anything if necessary
+	if (_numDirtyRects > 0 || _mouseNeedsRedraw) {
+		SDL_Rect *r;
+		SDL_Rect dst;
+		uint32 srcPitch, dstPitch;
+		SDL_Rect *lastRect = _dirtyRectList + _numDirtyRects;
+
+		for (r = _dirtyRectList; r != lastRect; ++r) {
+			dst = *r;
+			dst.x++;	// Shift rect by one since 2xSai needs to access the data around
+			dst.y++;	// any pixel to scale it, and we want to avoid mem access crashes.
+
+			if (SDL_BlitSurface(origSurf, r, srcSurf, &dst) != 0)
+				error("SDL_BlitSurface failed: %s", SDL_GetError());
+		}
+
+		SDL_LockSurface(srcSurf);
+		SDL_LockSurface(_hwscreen);
+
+		srcPitch = srcSurf->pitch;
+		dstPitch = _hwscreen->pitch;
+
+		for (r = _dirtyRectList; r != lastRect; ++r) {
+			register int dst_y = r->y + _currentShakePos;
+			register int dst_h = 0;
+			register int dst_w = r->w;
+			register int orig_dst_y = 0;
+			register int dst_x = r->x;
+			register int src_y;
+			register int src_x;
+
+			if (dst_y < height) {
+				dst_h = r->h;
+				if (dst_h > height - dst_y)
+					dst_h = height - dst_y;
+
+				orig_dst_y = dst_y;
+				src_x = dst_x;
+				src_y = dst_y;
+
+				if (_videoMode.aspectRatioCorrection && !_overlayVisible)
+					dst_y = real2Aspect(dst_y);
+
+				assert(scalerProc != NULL);
+
+				if ((_videoMode.mode == GFX_HALF) && (scalerProc == DownscaleAllByHalf)) {
+					if (dst_x % 2 == 1) {
+						dst_x--;
+						dst_w++;
+					}
+					if (dst_y % 2 == 1) {
+						dst_y--;
+						dst_h++;
+					}
+					src_x = dst_x;
+					src_y = dst_y;
+					dst_x = dst_x / 2;
+					dst_y = dst_y / 2;
+
+					scalerProc((byte *)srcSurf->pixels + (src_x * 2 + 2) + (src_y + 1) * srcPitch, srcPitch,
+					           (byte *)_hwscreen->pixels + dst_x * 2 + dst_y * dstPitch, dstPitch, dst_w, dst_h);
+
+				} else {
+					scalerProc((byte *)srcSurf->pixels + (r->x * 2 + 2) + (r->y + 1) * srcPitch, srcPitch,
+					           (byte *)_hwscreen->pixels + r->x * 2 + dst_y * dstPitch, dstPitch, r->w, dst_h);
+				}
+			}
+
+			if (_videoMode.mode == GFX_HALF && scalerProc == DownscaleAllByHalf) {
+				r->w = r->w / 2;
+				r->h = dst_h / 2;
+			} else {
+				r->w = r->w;
+				r->h = dst_h;
+			}
+
+			r->x = dst_x;
+			r->y = dst_y;
+
+
+#ifdef USE_SCALERS
+			if (_videoMode.aspectRatioCorrection && orig_dst_y < height && !_overlayVisible)
+				r->h = stretch200To240((uint8 *) _hwscreen->pixels, dstPitch, r->w, r->h, r->x, r->y, orig_dst_y * scale1);
+#endif
+		}
+		SDL_UnlockSurface(srcSurf);
+		SDL_UnlockSurface(_hwscreen);
+
+		// Readjust the dirty rect list in case we are doing a full update.
+		// This is necessary if shaking is active.
+		if (_forceFull) {
+			_dirtyRectList[0].y = 0;
+			_dirtyRectList[0].h = (_videoMode.mode == GFX_HALF) ? effectiveScreenHeight() / 2 : effectiveScreenHeight();
+		}
+
+		drawMouse();
+
+#ifdef USE_OSD
+		if (_osdAlpha != SDL_ALPHA_TRANSPARENT) {
+			SDL_BlitSurface(_osdSurface, 0, _hwscreen, 0);
+		}
+#endif
+		// Finally, blit all our changes to the screen
+		SDL_UpdateRects(_hwscreen, _numDirtyRects, _dirtyRectList);
+	}
+
+	_numDirtyRects = 0;
+	_forceFull = false;
+	_mouseNeedsRedraw = false;
+}
+
+void OSystem_SDL_Dingux::showOverlay() {
+	if (_videoMode.mode == GFX_HALF) {
+		_mouseCurState.x = _mouseCurState.x / 2;
+		_mouseCurState.y = _mouseCurState.y / 2;
+	}
+	OSystem_SDL::showOverlay();
+}
+
+void OSystem_SDL_Dingux::hideOverlay() {
+	if (_videoMode.mode == GFX_HALF) {
+		_mouseCurState.x = _mouseCurState.x * 2;
+		_mouseCurState.y = _mouseCurState.y * 2;
+	}
+	OSystem_SDL::hideOverlay();
+}
+
+bool OSystem_SDL_Dingux::loadGFXMode() {
+
+	// Forcefully disable aspect ratio correction for games
+	// which starts with a native 240px height resolution.
+	// This fixes games with weird resolutions, like MM Nes (256x240)
+	if(_videoMode.screenHeight == 240) {
+		_videoMode.aspectRatioCorrection = false;
+	}
+
+	fprintf(stdout, "Game ScreenMode = %d*%d\n", _videoMode.screenWidth, _videoMode.screenHeight);
+	if (_videoMode.screenWidth > 320 || _videoMode.screenHeight > 240) {
+		_videoMode.aspectRatioCorrection = false;
+		setGraphicsMode(GFX_HALF);
+		fprintf(stdout, "GraphicsMode set to HALF\n");
+	} else {
+		setGraphicsMode(GFX_NORMAL);
+		fprintf(stdout, "GraphicsMode set to NORMAL\n");
+	}
+
+	if ((_videoMode.mode == GFX_HALF) && !_overlayVisible) {
+		_videoMode.overlayWidth = _videoMode.screenWidth / 2;
+		_videoMode.overlayHeight = _videoMode.screenHeight / 2;
+		_videoMode.fullscreen = true;
+	} else {
+
+		_videoMode.overlayWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
+		_videoMode.overlayHeight = _videoMode.screenHeight * _videoMode.scaleFactor;
+
+		if (_videoMode.aspectRatioCorrection)
+			_videoMode.overlayHeight = real2Aspect(_videoMode.overlayHeight);
+
+		_videoMode.hardwareWidth = _videoMode.screenWidth * _videoMode.scaleFactor;
+		_videoMode.hardwareHeight = effectiveScreenHeight();
+	}
+
+
+	return OSystem_SDL::loadGFXMode();
+}
+
+#endif
+

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux.cpp	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,58 +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 "backends/platform/dingux/dingux.h"
-
-#if defined(DINGUX)
-
-bool OSystem_SDL_Dingux::hasFeature(Feature f) {
-	return
-	    (f == kFeatureAspectRatioCorrection) ||
-	    (f == kFeatureCursorHasPalette);
-}
-
-void OSystem_SDL_Dingux::setFeatureState(Feature f, bool enable) {
-	switch (f) {
-	case kFeatureAspectRatioCorrection:
-		setAspectRatioCorrection(enable);
-		break;
-	default:
-		break;
-	}
-}
-
-bool OSystem_SDL_Dingux::getFeatureState(Feature f) {
-	assert(_transactionMode == kTransactionNone);
-
-	switch (f) {
-	case kFeatureAspectRatioCorrection:
-		return _videoMode.aspectRatioCorrection;
-	default:
-		return false;
-	}
-}
-
-#endif
-

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp (from rev 52356, scummvm/trunk/backends/platform/dingux/dingux.cpp)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,58 @@
+/* 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 "backends/platform/dingux/dingux.h"
+
+#if defined(DINGUX)
+
+bool OSystem_SDL_Dingux::hasFeature(Feature f) {
+	return
+	    (f == kFeatureAspectRatioCorrection) ||
+	    (f == kFeatureCursorHasPalette);
+}
+
+void OSystem_SDL_Dingux::setFeatureState(Feature f, bool enable) {
+	switch (f) {
+	case kFeatureAspectRatioCorrection:
+		setAspectRatioCorrection(enable);
+		break;
+	default:
+		break;
+	}
+}
+
+bool OSystem_SDL_Dingux::getFeatureState(Feature f) {
+	assert(_transactionMode == kTransactionNone);
+
+	switch (f) {
+	case kFeatureAspectRatioCorrection:
+		return _videoMode.aspectRatioCorrection;
+	default:
+		return false;
+	}
+}
+
+#endif
+

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux.h	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,69 +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 SDL_DINGUX_COMMON_H
-#define SDL_DINGUX_COMMON_H
-
-#include <SDL.h>
-
-#include "backends/base-backend.h"
-#include "backends/platform/sdl/sdl.h"
-
-#if defined(DINGUX)
-
-enum {
-	GFX_HALF = 12
-};
-
-class OSystem_SDL_Dingux : public OSystem_SDL {
-public:
-	virtual bool hasFeature(Feature f);
-	virtual void setFeatureState(Feature f, bool enable);
-	virtual bool getFeatureState(Feature f);
-	virtual int getDefaultGraphicsMode() const;
-
-	void initSize(uint w, uint h);
-	const OSystem::GraphicsMode *getSupportedGraphicsModes() const;
-	bool setGraphicsMode(const char *name);
-	bool setGraphicsMode(int mode);
-	void setGraphicsModeIntern();
-	void internUpdateScreen();
-	void showOverlay();
-	void hideOverlay();
-	bool loadGFXMode();
-	void drawMouse();
-	void undrawMouse();
-	void warpMouse(int, int);
-	void fillMouseEvent(Common::Event&, int, int);
-
-protected:
-	virtual bool remapKey(SDL_Event &ev, Common::Event &event);
-};
-
-
-#endif
-
-#endif
-

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h (from rev 52356, scummvm/trunk/backends/platform/dingux/dingux.h)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/dingux.h	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,69 @@
+/* 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 SDL_DINGUX_COMMON_H
+#define SDL_DINGUX_COMMON_H
+
+#include <SDL.h>
+
+#include "backends/base-backend.h"
+#include "backends/platform/sdl/sdl.h"
+
+#if defined(DINGUX)
+
+enum {
+	GFX_HALF = 12
+};
+
+class OSystem_SDL_Dingux : public OSystem_SDL {
+public:
+	virtual bool hasFeature(Feature f);
+	virtual void setFeatureState(Feature f, bool enable);
+	virtual bool getFeatureState(Feature f);
+	virtual int getDefaultGraphicsMode() const;
+
+	void initSize(uint w, uint h);
+	const OSystem::GraphicsMode *getSupportedGraphicsModes() const;
+	bool setGraphicsMode(const char *name);
+	bool setGraphicsMode(int mode);
+	void setGraphicsModeIntern();
+	void internUpdateScreen();
+	void showOverlay();
+	void hideOverlay();
+	bool loadGFXMode();
+	void drawMouse();
+	void undrawMouse();
+	void warpMouse(int, int);
+	void fillMouseEvent(Common::Event&, int, int);
+
+protected:
+	virtual bool remapKey(SDL_Event &ev, Common::Event &event);
+};
+
+
+#endif
+
+#endif
+

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/main.cpp	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,53 +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 "backends/platform/dingux/dingux.h"
-#include "backends/plugins/sdl/sdl-provider.h"
-//#include "backends/plugins/posix/posix-provider.h"
-#include "base/main.h"
-
-#if defined(DINGUX)
-
-#include <unistd.h>
-
-int main(int argc, char* argv[]) {
-
-	g_system = new OSystem_SDL_Dingux();
-	assert(g_system);
-
-#ifdef DYNAMIC_MODULES
-	PluginManager::instance().addPluginProvider(new SDLPluginProvider());
-//	PluginManager::instance().addPluginProvider(new POSIXPluginProvider());
-#endif
-
-	// Invoke the actual ScummVM main entry point:
-	int res = scummvm_main(argc, argv);
-	((OSystem_SDL *)g_system)->deinit();
-	return res;
-
-}
-
-#endif
-

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp (from rev 52356, scummvm/trunk/backends/platform/dingux/main.cpp)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/main.cpp	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,53 @@
+/* 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 "backends/platform/dingux/dingux.h"
+#include "backends/plugins/sdl/sdl-provider.h"
+//#include "backends/plugins/posix/posix-provider.h"
+#include "base/main.h"
+
+#if defined(DINGUX)
+
+#include <unistd.h>
+
+int main(int argc, char* argv[]) {
+
+	g_system = new OSystem_SDL_Dingux();
+	assert(g_system);
+
+#ifdef DYNAMIC_MODULES
+	PluginManager::instance().addPluginProvider(new SDLPluginProvider());
+//	PluginManager::instance().addPluginProvider(new POSIXPluginProvider());
+#endif
+
+	// Invoke the actual ScummVM main entry point:
+	int res = scummvm_main(argc, argv);
+	((OSystem_SDL *)g_system)->deinit();
+	return res;
+
+}
+
+#endif
+

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk
===================================================================
--- scummvm/trunk/backends/platform/dingux/module.mk	2010-08-24 17:57:35 UTC (rev 52356)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,13 +0,0 @@
-MODULE := backends/platform/dingux
-
-MODULE_OBJS := \
-	main.o \
-	dingux.o \
-	dingux-events.o \
-	dingux-graphics.o \
-
-MODULE_DIRS += \
-	backends/platform/dingux/
-
-# We don't use the rules.mk here on purpose
-OBJS := $(addprefix $(MODULE)/, $(MODULE_OBJS)) $(OBJS)

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk (from rev 52356, scummvm/trunk/backends/platform/dingux/module.mk)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/dingux/module.mk	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,13 @@
+MODULE := backends/platform/dingux
+
+MODULE_OBJS := \
+	main.o \
+	dingux.o \
+	dingux-events.o \
+	dingux-graphics.o \
+
+MODULE_DIRS += \
+	backends/platform/dingux/
+
+# We don't use the rules.mk here on purpose
+OBJS := $(addprefix $(MODULE)/, $(MODULE_OBJS)) $(OBJS)


Property changes on: scummvm/branches/gsoc2010-plugins/backends/platform/ds
___________________________________________________________________
Deleted: svn:mergeinfo
   - /scummvm/branches/gsoc2009-draci/backends/platform/ds:41389-44325
/scummvm/trunk/backends/platform/ds:49122-51947,52533


Property changes on: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz
___________________________________________________________________
Deleted: svn:mergeinfo
   - /scummvm/branches/gsoc2009-draci/backends/platform/gp2xwiz:41389-44325
/scummvm/trunk/backends/platform/gp2xwiz:49122-51947

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/build.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,12 +0,0 @@
-#!/bin/bash
-
-echo Quick script to make building all the time less painful.
-
-# Set the paths up here to support the build.
-
-cd ../../../..
-
-echo Building ScummVM for GP2X Caanoo.
-make
-
-echo Build for GP2X Caanoo - complete - Please check build logs.

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/build.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/build.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+echo Quick script to make building all the time less painful.
+
+# Set the paths up here to support the build.
+
+cd ../../../..
+
+echo Building ScummVM for GP2X Caanoo.
+make
+
+echo Build for GP2X Caanoo - complete - Please check build logs.

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/bundle-debug.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,9 +0,0 @@
-#!/bin/bash
-
-echo Quick script to make building a distribution of the GP2X Caanoo backend more consistent.
-
-cd ../../../..
-
-echo Building ScummVM for GP2X Caanoo.
-
-make caanoo-bundle-debug

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/bundle-debug.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle-debug.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+echo Quick script to make building a distribution of the GP2X Caanoo backend more consistent.
+
+cd ../../../..
+
+echo Building ScummVM for GP2X Caanoo.
+
+make caanoo-bundle-debug

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/bundle.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,9 +0,0 @@
-#!/bin/bash
-
-echo Quick script to make building a distribution of the GP2X Caanoo backend more consistent.
-
-cd ../../../..
-
-echo Building ScummVM for GP2X Caanoo.
-
-make caanoo-bundle

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/bundle.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/bundle.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+echo Quick script to make building a distribution of the GP2X Caanoo backend more consistent.
+
+cd ../../../..
+
+echo Building ScummVM for GP2X Caanoo.
+
+make caanoo-bundle

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,67 +0,0 @@
-# Special target to create bundles for the GP2X Caanoo.
-
-#bundle_name = release/scummvm-caanoo-`date '+%Y-%m-%d'`
-bundle_name = release/scummvm-caanoo
-f=$(shell which $(STRIP))
-libloc = $(shell dirname $(f))
-
-caanoo-bundle: $(EXECUTABLE)
-	$(MKDIR) "$(bundle_name)"
-	$(MKDIR) "$(bundle_name)/scummvm"
-	$(MKDIR) "$(bundle_name)/scummvm/saves"
-	$(MKDIR) "$(bundle_name)/scummvm/engine-data"
-	$(MKDIR) "$(bundle_name)/scummvm/lib"
-	
-	echo "Please put your save games in this dir" >> "$(bundle_name)/scummvm/saves/PUT_SAVES_IN_THIS_DIR"
-
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/caanoo/scummvm.gpe $(bundle_name)/scummvm/
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.png $(bundle_name)/scummvm/
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/README-GP2XWIZ $(bundle_name)/scummvm/README-CAANOO
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.ini $(bundle_name)/	
-
-	$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/
-	$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(bundle_name)/scummvm/
-	$(INSTALL) -c -m 644 $(DIST_FILES_ENGINEDATA) $(bundle_name)/scummvm/engine-data
-	$(CP) $(srcdir)/backends/vkeybd/packs/vkeybd_default.zip $(bundle_name)/scummvm/
-
-	$(STRIP) $(EXECUTABLE) -o $(bundle_name)/scummvm/$(EXECUTABLE)
-
-ifdef DYNAMIC_MODULES
-	$(INSTALL) -d "$(bundle_name)/scummvm/plugins"
-	$(INSTALL) -c -m 644 $(PLUGINS) "$(bundle_name)/scummvm/plugins"
-	$(STRIP) $(bundle_name)/scummvm/plugins/*
-endif
-	
-	tar -C $(bundle_name) -cvjf $(bundle_name).tar.bz2 .
-	rm -R ./$(bundle_name)	
-
-caanoo-bundle-debug: $(EXECUTABLE)
-	$(MKDIR) "$(bundle_name)"
-	$(MKDIR) "$(bundle_name)/scummvm"
-	$(MKDIR) "$(bundle_name)/scummvm/saves"
-	$(MKDIR) "$(bundle_name)/scummvm/engine-data"
-	$(MKDIR) "$(bundle_name)/scummvm/lib"
-	
-	echo "Please put your save games in this dir" >> "$(bundle_name)/scummvm/saves/PUT_SAVES_IN_THIS_DIR"
-
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe $(bundle_name)/scummvm/scummvm.gpe
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.png $(bundle_name)/scummvm/
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/README-GP2XWIZ $(bundle_name)/scummvm/README-CAANOO
-	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.ini $(bundle_name)/	
-
-	$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/
-	$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(bundle_name)/scummvm/
-	$(INSTALL) -c -m 644 $(DIST_FILES_ENGINEDATA) $(bundle_name)/scummvm/engine-data
-	$(CP) $(srcdir)/backends/vkeybd/packs/vkeybd_default.zip $(bundle_name)/scummvm/
-
-	$(INSTALL) -c -m 777 $(srcdir)/$(EXECUTABLE) $(bundle_name)/scummvm/$(EXECUTABLE)
-
-ifdef DYNAMIC_MODULES
-	$(INSTALL) -d "$(bundle_name)/scummvm/plugins"
-	$(INSTALL) -c -m 644 $(PLUGINS) "$(bundle_name)/scummvm/plugins"
-endif
-
-	tar -C $(bundle_name) -cvjf $(bundle_name)-debug.tar.bz2 .
-	rm -R ./$(bundle_name)	
-
-.PHONY: caanoo-bundle caanoo-bundle-debug

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/caanoo-bundle.mk	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,67 @@
+# Special target to create bundles for the GP2X Caanoo.
+
+#bundle_name = release/scummvm-caanoo-`date '+%Y-%m-%d'`
+bundle_name = release/scummvm-caanoo
+f=$(shell which $(STRIP))
+libloc = $(shell dirname $(f))
+
+caanoo-bundle: $(EXECUTABLE)
+	$(MKDIR) "$(bundle_name)"
+	$(MKDIR) "$(bundle_name)/scummvm"
+	$(MKDIR) "$(bundle_name)/scummvm/saves"
+	$(MKDIR) "$(bundle_name)/scummvm/engine-data"
+	$(MKDIR) "$(bundle_name)/scummvm/lib"
+	
+	echo "Please put your save games in this dir" >> "$(bundle_name)/scummvm/saves/PUT_SAVES_IN_THIS_DIR"
+
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/caanoo/scummvm.gpe $(bundle_name)/scummvm/
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.png $(bundle_name)/scummvm/
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/README-GP2XWIZ $(bundle_name)/scummvm/README-CAANOO
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.ini $(bundle_name)/	
+
+	$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/
+	$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(bundle_name)/scummvm/
+	$(INSTALL) -c -m 644 $(DIST_FILES_ENGINEDATA) $(bundle_name)/scummvm/engine-data
+	$(CP) $(srcdir)/backends/vkeybd/packs/vkeybd_default.zip $(bundle_name)/scummvm/
+
+	$(STRIP) $(EXECUTABLE) -o $(bundle_name)/scummvm/$(EXECUTABLE)
+
+ifdef DYNAMIC_MODULES
+	$(INSTALL) -d "$(bundle_name)/scummvm/plugins"
+	$(INSTALL) -c -m 644 $(PLUGINS) "$(bundle_name)/scummvm/plugins"
+	$(STRIP) $(bundle_name)/scummvm/plugins/*
+endif
+	
+	tar -C $(bundle_name) -cvjf $(bundle_name).tar.bz2 .
+	rm -R ./$(bundle_name)	
+
+caanoo-bundle-debug: $(EXECUTABLE)
+	$(MKDIR) "$(bundle_name)"
+	$(MKDIR) "$(bundle_name)/scummvm"
+	$(MKDIR) "$(bundle_name)/scummvm/saves"
+	$(MKDIR) "$(bundle_name)/scummvm/engine-data"
+	$(MKDIR) "$(bundle_name)/scummvm/lib"
+	
+	echo "Please put your save games in this dir" >> "$(bundle_name)/scummvm/saves/PUT_SAVES_IN_THIS_DIR"
+
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe $(bundle_name)/scummvm/scummvm.gpe
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.png $(bundle_name)/scummvm/
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/README-GP2XWIZ $(bundle_name)/scummvm/README-CAANOO
+	$(CP) $(srcdir)/backends/platform/gp2xwiz/build/scummvm.ini $(bundle_name)/	
+
+	$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) $(bundle_name)/scummvm/
+	$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(bundle_name)/scummvm/
+	$(INSTALL) -c -m 644 $(DIST_FILES_ENGINEDATA) $(bundle_name)/scummvm/engine-data
+	$(CP) $(srcdir)/backends/vkeybd/packs/vkeybd_default.zip $(bundle_name)/scummvm/
+
+	$(INSTALL) -c -m 777 $(srcdir)/$(EXECUTABLE) $(bundle_name)/scummvm/$(EXECUTABLE)
+
+ifdef DYNAMIC_MODULES
+	$(INSTALL) -d "$(bundle_name)/scummvm/plugins"
+	$(INSTALL) -c -m 644 $(PLUGINS) "$(bundle_name)/scummvm/plugins"
+endif
+
+	tar -C $(bundle_name) -cvjf $(bundle_name)-debug.tar.bz2 .
+	rm -R ./$(bundle_name)	
+
+.PHONY: caanoo-bundle caanoo-bundle-debug

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/clean.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,8 +0,0 @@
-#!/bin/sh
-
-echo Quick script to make building all the time less painful.
-
-cd ../../../..
-
-echo Cleaning ScummVM for the GP2X Wiz.
-make clean

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/clean.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/clean.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+echo Quick script to make building all the time less painful.
+
+cd ../../../..
+
+echo Cleaning ScummVM for the GP2X Wiz.
+make clean

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/config-alleng.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-echo Quick script to make running configure all the time less painful
-echo and let all the build work be done from the backend/build folder.
-
-# Assume Caanoo toolchain/build env.
-. /opt/arm-caanoo/environment-setup
-
-# Export the tool names for cross-compiling
-export DEFINES=-DNDEBUG
-
-# Edit the configure line to suit.
-cd ../../../..
-./configure --backend=caanoo --disable-mt32emu --host=caanoo --disable-alsa --disable-flac --disable-nasm --disable-vorbis --disable-hq-scalers --with-sdl-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/bin --with-mpeg2-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-tremor --with-tremor-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-zlib --with-zlib-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-mad --with-mad-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-all-engines --enable-vkeybd --enable-plugins --default-dynamic
-
-echo Generating config for GP2X Caanoo complete. Check for errors.

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/config-alleng.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config-alleng.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+echo Quick script to make running configure all the time less painful
+echo and let all the build work be done from the backend/build folder.
+
+# Assume Caanoo toolchain/build env.
+. /opt/arm-caanoo/environment-setup
+
+# Export the tool names for cross-compiling
+export DEFINES=-DNDEBUG
+
+# Edit the configure line to suit.
+cd ../../../..
+./configure --backend=caanoo --disable-mt32emu --host=caanoo --disable-alsa --disable-flac --disable-nasm --disable-vorbis --disable-hq-scalers --with-sdl-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/bin --with-mpeg2-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-tremor --with-tremor-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-zlib --with-zlib-prefix=/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr --enable-mad --with-mad-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-all-engines --enable-vkeybd --enable-plugins --default-dynamic
+
+echo Generating config for GP2X Caanoo complete. Check for errors.

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/config.sh	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-echo Quick script to make running configure all the time less painful
-echo and let all the build work be done from the backend/build folder.
-
-# Assume Caanoo toolchain/build env.
-. /opt/arm-caanoo/environment-setup
-
-# Export the tool names for cross-compiling
-export DEFINES=-DNDEBUG
-
-# Edit the configure line to suit.
-cd ../../../..
-./configure --backend=caanoo --disable-mt32emu --host=caanoo --disable-alsa --disable-flac --disable-nasm --disable-vorbis --disable-hq-scalers --with-sdl-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr/bin --with-mpeg2-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-tremor --with-tremor-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-zlib --with-zlib-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-mad --with-mad-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-vkeybd --enable-plugins --default-dynamic 
-
-echo Generating config for GP2X Caanoo complete. Check for errors.

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/config.sh)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/config.sh	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+echo Quick script to make running configure all the time less painful
+echo and let all the build work be done from the backend/build folder.
+
+# Assume Caanoo toolchain/build env.
+. /opt/arm-caanoo/environment-setup
+
+# Export the tool names for cross-compiling
+export DEFINES=-DNDEBUG
+
+# Edit the configure line to suit.
+cd ../../../..
+./configure --backend=caanoo --disable-mt32emu --host=caanoo --disable-alsa --disable-flac --disable-nasm --disable-vorbis --disable-hq-scalers --with-sdl-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr/bin --with-mpeg2-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-tremor --with-tremor-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-zlib --with-zlib-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-mad --with-mad-prefix=/opt/arm-caanoo/arm-none-linux-gnueabi/usr --enable-vkeybd --enable-plugins --default-dynamic 
+
+echo Generating config for GP2X Caanoo complete. Check for errors.

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe	2010-09-04 21:43:16 UTC (rev 52532)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe	2010-09-05 15:26:00 UTC (rev 52564)
@@ -1,16 +0,0 @@
-#!/bin/sh
-
-# Export the location of any libs ScummVM depends on
-# (to avoid installing to the NAND and overwriting the broken ones there).
-export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
-
-# Run ScummVM via GDB (so make sure you have a terminal open or serial).
-# Oh, and GDB installed of course ;)
-gdb --args ./scummvm.caanoo --fullscreen --gfx-mode=1x --config=$(pwd)/.scummvmrc 
-
-# Sync the SD card to check that everything is written.
-sync
-
-# Return to the GPH menu screen
-cd /usr/gp2x
-exec /usr/gp2x/gp2xmenu

Copied: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe (from rev 52532, scummvm/trunk/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe)
===================================================================
--- scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe	                        (rev 0)
+++ scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm-gdb.gpe	2010-09-05 15:26:00 UTC (rev 52564)
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+# Export the location of any libs ScummVM depends on
+# (to avoid installing to the NAND and overwriting the broken ones there).
+export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
+
+# Run ScummVM via GDB (so make sure you have a terminal open or serial).
+# Oh, and GDB installed of course ;)
+gdb --args ./scummvm.caanoo --fullscreen --gfx-mode=1x --config=$(pwd)/.scummvmrc 
+
+# Sync the SD card to check that everything is written.
+sync
+
+# Return to the GPH menu screen
+cd /usr/gp2x
+exec /usr/gp2x/gp2xmenu

Deleted: scummvm/branches/gsoc2010-plugins/backends/platform/gp2xwiz/caanoo/scummvm.gpe

@@ 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