[Scummvm-cvs-logs] SF.net SVN: scummvm:[53399] scummvm/branches/gsoc2010-opengl

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Wed Oct 13 05:57:50 CEST 2010


Revision: 53399
          http://scummvm.svn.sourceforge.net/scummvm/?rev=53399&view=rev
Author:   lordhoto
Date:     2010-10-13 03:57:44 +0000 (Wed, 13 Oct 2010)

Log Message:
-----------
OPENGL: Merged from trunk, from rev 52105 to 53396.

This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.

Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.

Revision Links:
--------------
    http://scummvm.svn.sourceforge.net/scummvm/?rev=52105&view=rev

Modified Paths:
--------------
    scummvm/branches/gsoc2010-opengl/AUTHORS
    scummvm/branches/gsoc2010-opengl/Makefile
    scummvm/branches/gsoc2010-opengl/Makefile.common
    scummvm/branches/gsoc2010-opengl/NEWS
    scummvm/branches/gsoc2010-opengl/README
    scummvm/branches/gsoc2010-opengl/backends/audiocd/default/default-audiocd.cpp
    scummvm/branches/gsoc2010-opengl/backends/events/default/default-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.h
    scummvm/branches/gsoc2010-opengl/backends/events/linuxmotosdl/linuxmotosdl-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/fs/ds/ds-fs.cpp
    scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-fs.cpp
    scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.cpp
    scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.h
    scummvm/branches/gsoc2010-opengl/backends/graphics/sdl/sdl-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/midi/timidity.cpp
    scummvm/branches/gsoc2010-opengl/backends/midi/windows.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/android/android.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dc/selector.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/ds/arm9/makefile
    scummvm/branches/gsoc2010-opengl/backends/platform/ds/arm9/source/dsmain.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/ds/arm9/source/portdefs.h
    scummvm/branches/gsoc2010-opengl/backends/platform/ds/arm9/source/touchkeyboard.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2x/build/README-GP2X
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2x/gp2x-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2x/gp2x-hw.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2x/gp2x-hw.h
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2x/gp2x.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/iphone_common.h
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/iphone_main.m
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/iphone_video.h
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/iphone_video.m
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/osys_events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/osys_main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/osys_main.h
    scummvm/branches/gsoc2010-opengl/backends/platform/iphone/osys_video.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/Makefile
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/README.N64
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/osys_n64.h
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/osys_n64_base.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/osys_n64_utilities.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/pad_rom.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/ps2/Makefile.gdb
    scummvm/branches/gsoc2010-opengl/backends/platform/ps2/Makefile.ps2
    scummvm/branches/gsoc2010-opengl/backends/platform/ps2/iop/CoDyVDfs/iop/imports.lst
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/Makefile
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/README.PSP
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/README.PSP.in
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/audio.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/audio.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/cursor.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/display_client.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/display_client.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/display_manager.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/display_manager.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/input.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/input.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/memory.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/memory.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/mp3.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/mp3.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/osys_psp.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/plugin.ld
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/powerman.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/psp_main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/pspkeyboard.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/pspkeyboard.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/rtc.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/rtc.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/tests.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/tests.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/thread.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/thread.h
    scummvm/branches/gsoc2010-opengl/backends/platform/sdl/main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/AdaptAllMMPs.pl
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/BuildPackageUpload_AllVersions.pl
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/BuildPackageUpload_LocalSettings.pl
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/README
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S60/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S60v3/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S60v3/ScummVM_A0000658_S60v3.mmp.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S60v3/ScummVM_S60v3.mmp.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S60v3/scummvm-CVS-SymbianS60v3.pkg
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S80/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/S90/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/UIQ2/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/UIQ3/BLD.INF.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/UIQ3/ScummVM_A0000658_UIQ3.mmp.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/UIQ3/ScummVM_UIQ3.mmp.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/UIQ3/scummvm-CVS-SymbianUIQ3.pkg
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/mmp/scummvm_base.mmp.in
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/res/scummvm.rss
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/src/ScummApp.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/src/ScummApp.h
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/src/ScummVMApp.h
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/src/SymbianOS.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/src/SymbianOS.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/options.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/osystem.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/osystem_events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/osystem_gfx.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/osystem_sfx.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/wii/wii.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEActionsPocket.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEActionsSmartphone.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEDevice.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CELauncherDialog.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEScaler.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/GUIElement.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/ItemAction.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/ItemSwitch.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/Panel.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/PanelItem.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/PanelKeyboard.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/SDL_ImageResource.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/Toolbar.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEgui/ToolbarHandler.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/CEkeys/EventsBuffer.h
    scummvm/branches/gsoc2010-opengl/backends/platform/wince/wince-sdl.cpp
    scummvm/branches/gsoc2010-opengl/backends/timer/psp/timer.cpp
    scummvm/branches/gsoc2010-opengl/backends/timer/psp/timer.h
    scummvm/branches/gsoc2010-opengl/backends/vkeybd/packs/vkeybdpack.py
    scummvm/branches/gsoc2010-opengl/base/commandLine.cpp
    scummvm/branches/gsoc2010-opengl/base/internal_version.h
    scummvm/branches/gsoc2010-opengl/base/main.cpp
    scummvm/branches/gsoc2010-opengl/base/plugins.cpp
    scummvm/branches/gsoc2010-opengl/base/version.cpp
    scummvm/branches/gsoc2010-opengl/common/archive.h
    scummvm/branches/gsoc2010-opengl/common/array.h
    scummvm/branches/gsoc2010-opengl/common/config-manager.cpp
    scummvm/branches/gsoc2010-opengl/common/endian.h
    scummvm/branches/gsoc2010-opengl/common/macresman.cpp
    scummvm/branches/gsoc2010-opengl/common/macresman.h
    scummvm/branches/gsoc2010-opengl/common/rational.cpp
    scummvm/branches/gsoc2010-opengl/common/rational.h
    scummvm/branches/gsoc2010-opengl/common/rect.h
    scummvm/branches/gsoc2010-opengl/common/scummsys.h
    scummvm/branches/gsoc2010-opengl/common/str.cpp
    scummvm/branches/gsoc2010-opengl/common/stream.cpp
    scummvm/branches/gsoc2010-opengl/common/stream.h
    scummvm/branches/gsoc2010-opengl/common/translation.cpp
    scummvm/branches/gsoc2010-opengl/common/translation.h
    scummvm/branches/gsoc2010-opengl/common/unzip.cpp
    scummvm/branches/gsoc2010-opengl/common/util.cpp
    scummvm/branches/gsoc2010-opengl/configure
    scummvm/branches/gsoc2010-opengl/dists/android/AndroidManifest.xml
    scummvm/branches/gsoc2010-opengl/dists/engine-data/drascula.dat
    scummvm/branches/gsoc2010-opengl/dists/iphone/Info.plist
    scummvm/branches/gsoc2010-opengl/dists/iphone/Info.plist.in
    scummvm/branches/gsoc2010-opengl/dists/iphone/scummvm.xcodeproj/project.pbxproj
    scummvm/branches/gsoc2010-opengl/dists/irix/scummvm.spec
    scummvm/branches/gsoc2010-opengl/dists/macosx/Info.plist
    scummvm/branches/gsoc2010-opengl/dists/macosx/Info.plist.in
    scummvm/branches/gsoc2010-opengl/dists/redhat/scummvm-tools.spec
    scummvm/branches/gsoc2010-opengl/dists/redhat/scummvm-tools.spec.in
    scummvm/branches/gsoc2010-opengl/dists/redhat/scummvm.spec
    scummvm/branches/gsoc2010-opengl/dists/redhat/scummvm.spec.in
    scummvm/branches/gsoc2010-opengl/dists/scummvm.rc
    scummvm/branches/gsoc2010-opengl/dists/slackware/scummvm.SlackBuild
    scummvm/branches/gsoc2010-opengl/dists/wii/meta.xml
    scummvm/branches/gsoc2010-opengl/dists/wii/meta.xml.in
    scummvm/branches/gsoc2010-opengl/engines/advancedDetector.cpp
    scummvm/branches/gsoc2010-opengl/engines/advancedDetector.h
    scummvm/branches/gsoc2010-opengl/engines/agi/agi.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/agi.h
    scummvm/branches/gsoc2010-opengl/engines/agi/cycle.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/inv.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/lzw.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/op_cmd.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/picture.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/predictive.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/sound_midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/agi/sound_pcjr.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/agos.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/animation.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/agos/items.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/midi.h
    scummvm/branches/gsoc2010-opengl/engines/agos/saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/agos/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/cine/pal.cpp
    scummvm/branches/gsoc2010-opengl/engines/cine/part.cpp
    scummvm/branches/gsoc2010-opengl/engines/cruise/menu.cpp
    scummvm/branches/gsoc2010-opengl/engines/dialogs.cpp
    scummvm/branches/gsoc2010-opengl/engines/draci/draci.cpp
    scummvm/branches/gsoc2010-opengl/engines/draci/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/draci/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/animation.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/converse.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/interface.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/objects.cpp
    scummvm/branches/gsoc2010-opengl/engines/drascula/saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/engine.cpp
    scummvm/branches/gsoc2010-opengl/engines/engines.mk
    scummvm/branches/gsoc2010-opengl/engines/gob/demos/demoplayer.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/gob/draw.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/draw.h
    scummvm/branches/gsoc2010-opengl/engines/gob/draw_fascin.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/draw_playtoons.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/draw_v1.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/draw_v2.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/expression.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/game.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/global.h
    scummvm/branches/gsoc2010-opengl/engines/gob/gob.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/gob.h
    scummvm/branches/gsoc2010-opengl/engines/gob/goblin.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/hotspots.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/hotspots.h
    scummvm/branches/gsoc2010-opengl/engines/gob/init.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/init.h
    scummvm/branches/gsoc2010-opengl/engines/gob/init_v3.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter.h
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_bargon.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_fascin.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_v1.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_v4.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_v5.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/inter_v6.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/module.mk
    scummvm/branches/gsoc2010-opengl/engines/gob/mult.h
    scummvm/branches/gsoc2010-opengl/engines/gob/mult_v1.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/mult_v2.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/palanim.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/save/savefile.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/save/savefile.h
    scummvm/branches/gsoc2010-opengl/engines/gob/save/savehandler.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/save/savehandler.h
    scummvm/branches/gsoc2010-opengl/engines/gob/scenery.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/sound/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/util.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/video.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/video.h
    scummvm/branches/gsoc2010-opengl/engines/gob/video_v1.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/video_v2.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/video_v6.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/videoplayer.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/videoplayer.h
    scummvm/branches/gsoc2010-opengl/engines/groovie/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/groovie/groovie.cpp
    scummvm/branches/gsoc2010-opengl/engines/groovie/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/debugger.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/kyra/gui.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/kyra_mr.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/kyra_v1.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/kyra_v1.h
    scummvm/branches/gsoc2010-opengl/engines/kyra/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/resource.h
    scummvm/branches/gsoc2010-opengl/engines/kyra/resource_intern.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/resource_intern.h
    scummvm/branches/gsoc2010-opengl/engines/kyra/saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/screen.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/screen_lol.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/screen_v2.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/script_tim.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sequences_lol.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sound_adlib.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sound_digital.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sound_midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sound_towns.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/sprites.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/staticres.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/text_hof.cpp
    scummvm/branches/gsoc2010-opengl/engines/kyra/text_lol.cpp
    scummvm/branches/gsoc2010-opengl/engines/lure/hotspots.cpp
    scummvm/branches/gsoc2010-opengl/engines/lure/hotspots.h
    scummvm/branches/gsoc2010-opengl/engines/lure/res.cpp
    scummvm/branches/gsoc2010-opengl/engines/lure/scripts.cpp
    scummvm/branches/gsoc2010-opengl/engines/lure/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/globals.h
    scummvm/branches/gsoc2010-opengl/engines/m4/m4.h
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_logic.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_logic.h
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_menus.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_scene.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_scene.h
    scummvm/branches/gsoc2010-opengl/engines/m4/mads_views.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/scene.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/scene.h
    scummvm/branches/gsoc2010-opengl/engines/m4/ws_machine.cpp
    scummvm/branches/gsoc2010-opengl/engines/m4/ws_sequence.cpp
    scummvm/branches/gsoc2010-opengl/engines/made/made.cpp
    scummvm/branches/gsoc2010-opengl/engines/made/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/console.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/console.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/dialogs.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/graphics.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/graphics.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/myst.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/myst_scripts.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_cursors.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_external.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_external.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_scripts.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_scripts.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/riven_vars.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/sound.h
    scummvm/branches/gsoc2010-opengl/engines/mohawk/video.cpp
    scummvm/branches/gsoc2010-opengl/engines/mohawk/video.h
    scummvm/branches/gsoc2010-opengl/engines/parallaction/balloons.cpp
    scummvm/branches/gsoc2010-opengl/engines/parallaction/disk_br.cpp
    scummvm/branches/gsoc2010-opengl/engines/parallaction/gui_ns.cpp
    scummvm/branches/gsoc2010-opengl/engines/parallaction/parallaction.cpp
    scummvm/branches/gsoc2010-opengl/engines/parallaction/sound_br.cpp
    scummvm/branches/gsoc2010-opengl/engines/parallaction/walk.cpp
    scummvm/branches/gsoc2010-opengl/engines/queen/cutaway.cpp
    scummvm/branches/gsoc2010-opengl/engines/queen/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/queen/talk.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/actor.h
    scummvm/branches/gsoc2010-opengl/engines/saga/font.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/font.h
    scummvm/branches/gsoc2010-opengl/engines/saga/interface.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/isomap.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/music.h
    scummvm/branches/gsoc2010-opengl/engines/saga/puzzle.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/scene.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/saga/sndres.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/console.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/console.h
    scummvm/branches/gsoc2010-opengl/engines/sci/debug.h
    scummvm/branches/gsoc2010-opengl/engines/sci/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/features.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/gc.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kernel.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kernel.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kernel_tables.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kevent.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kfile.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kgraphics.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/klists.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kmath.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kmenu.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kmisc.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kmovement.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kparse.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kpathing.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kscripts.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kstring.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/kvideo.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/savegame.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/savegame.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/script.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/script_patches.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/seg_manager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/segment.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/selector.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/selector.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/state.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/state.h
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/static_selectors.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/vm.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/workarounds.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/engine/workarounds.h
    scummvm/branches/gsoc2010-opengl/engines/sci/event.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/animate.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/animate.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/compare.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/controls.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/cursor.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/cursor.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/frameout.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/frameout.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/menu.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/paint16.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/palette.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/picture.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/portrait.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/ports.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/robot.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/robot.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/screen.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/text16.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/text16.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/transitions.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/transitions.h
    scummvm/branches/gsoc2010-opengl/engines/sci/graphics/view.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/module.mk
    scummvm/branches/gsoc2010-opengl/engines/sci/parser/grammar.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/parser/said.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/parser/vocabulary.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/parser/vocabulary.h
    scummvm/branches/gsoc2010-opengl/engines/sci/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/resource.h
    scummvm/branches/gsoc2010-opengl/engines/sci/resource_audio.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sci.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sci.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/adlib.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/amigamac.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/fb01.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/map-mt32-to-gm.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/mididriver.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/pcjr.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/midiparser_sci.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/midiparser_sci.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/music.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/soundcmd.cpp
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/soundcmd.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/actor.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/charset.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/charset.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/cursor.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/dialogs.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/dialogs.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/gfx.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/gfx.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/he/wiz_he.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/help.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/imuse/imuse_player.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/module.mk
    scummvm/branches/gsoc2010-opengl/engines/scumm/object.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/palette.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/player_sid.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/player_v2cms.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/room.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/saveload.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/saveload.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/script_v2.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/script_v3.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/script_v4.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/script_v5.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm-md5.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm_v0.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm_v2.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/scumm_v3.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/sound.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/string.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/vars.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/verbs.cpp
    scummvm/branches/gsoc2010-opengl/engines/sky/music/gmmusic.cpp
    scummvm/branches/gsoc2010-opengl/engines/sky/music/mt32music.cpp
    scummvm/branches/gsoc2010-opengl/engines/sky/sky.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/logic.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/router.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/screen.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/sword1.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword1/text.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword2/mouse.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword2/screen.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword2/sprite.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword2/sword2.cpp
    scummvm/branches/gsoc2010-opengl/engines/tinsel/bmv.cpp
    scummvm/branches/gsoc2010-opengl/engines/tinsel/detection_tables.h
    scummvm/branches/gsoc2010-opengl/engines/tinsel/music.cpp
    scummvm/branches/gsoc2010-opengl/engines/tinsel/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/tinsel/tinsel.cpp
    scummvm/branches/gsoc2010-opengl/engines/tinsel/tinsel.h
    scummvm/branches/gsoc2010-opengl/engines/touche/midi.cpp
    scummvm/branches/gsoc2010-opengl/graphics/VectorRenderer.cpp
    scummvm/branches/gsoc2010-opengl/graphics/VectorRendererSpec.cpp
    scummvm/branches/gsoc2010-opengl/graphics/colormasks.h
    scummvm/branches/gsoc2010-opengl/graphics/jpeg.cpp
    scummvm/branches/gsoc2010-opengl/graphics/pict.cpp
    scummvm/branches/gsoc2010-opengl/graphics/pict.h
    scummvm/branches/gsoc2010-opengl/graphics/surface.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/avi_decoder.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/avi_decoder.h
    scummvm/branches/gsoc2010-opengl/graphics/video/codecs/indeo3.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/codecs/indeo3.h
    scummvm/branches/gsoc2010-opengl/graphics/video/codecs/qdm2.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/coktel_decoder.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/qt_decoder.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/qt_decoder.h
    scummvm/branches/gsoc2010-opengl/graphics/video/smk_decoder.cpp
    scummvm/branches/gsoc2010-opengl/graphics/video/smk_decoder.h
    scummvm/branches/gsoc2010-opengl/gui/EditTextWidget.cpp
    scummvm/branches/gsoc2010-opengl/gui/GuiManager.cpp
    scummvm/branches/gsoc2010-opengl/gui/KeysDialog.h
    scummvm/branches/gsoc2010-opengl/gui/ListWidget.cpp
    scummvm/branches/gsoc2010-opengl/gui/ThemeEngine.cpp
    scummvm/branches/gsoc2010-opengl/gui/ThemeEngine.h
    scummvm/branches/gsoc2010-opengl/gui/ThemeEval.h
    scummvm/branches/gsoc2010-opengl/gui/ThemeParser.cpp
    scummvm/branches/gsoc2010-opengl/gui/Tooltip.cpp
    scummvm/branches/gsoc2010-opengl/gui/Tooltip.h
    scummvm/branches/gsoc2010-opengl/gui/browser.cpp
    scummvm/branches/gsoc2010-opengl/gui/credits.h
    scummvm/branches/gsoc2010-opengl/gui/editable.cpp
    scummvm/branches/gsoc2010-opengl/gui/editable.h
    scummvm/branches/gsoc2010-opengl/gui/launcher.cpp
    scummvm/branches/gsoc2010-opengl/gui/message.cpp
    scummvm/branches/gsoc2010-opengl/gui/options.cpp
    scummvm/branches/gsoc2010-opengl/gui/saveload.cpp
    scummvm/branches/gsoc2010-opengl/gui/themes/scummmodern/scummmodern_layout.stx
    scummvm/branches/gsoc2010-opengl/gui/themes/scummmodern/scummmodern_layout_lowres.stx
    scummvm/branches/gsoc2010-opengl/gui/themes/scummmodern.zip
    scummvm/branches/gsoc2010-opengl/gui/themes/scummtheme.py
    scummvm/branches/gsoc2010-opengl/po/POTFILES
    scummvm/branches/gsoc2010-opengl/po/ca_ES.po
    scummvm/branches/gsoc2010-opengl/po/de_DE.po
    scummvm/branches/gsoc2010-opengl/po/es_ES.po
    scummvm/branches/gsoc2010-opengl/po/fr_FR.po
    scummvm/branches/gsoc2010-opengl/po/hu_HU.po
    scummvm/branches/gsoc2010-opengl/po/it_IT.po
    scummvm/branches/gsoc2010-opengl/po/module.mk
    scummvm/branches/gsoc2010-opengl/po/ru_RU.po
    scummvm/branches/gsoc2010-opengl/po/scummvm.pot
    scummvm/branches/gsoc2010-opengl/po/uk_UA.po
    scummvm/branches/gsoc2010-opengl/ports.mk
    scummvm/branches/gsoc2010-opengl/sound/decoders/flac.cpp
    scummvm/branches/gsoc2010-opengl/sound/decoders/mac_snd.cpp
    scummvm/branches/gsoc2010-opengl/sound/decoders/mp3.cpp
    scummvm/branches/gsoc2010-opengl/sound/fmopl.cpp
    scummvm/branches/gsoc2010-opengl/sound/mididrv.cpp
    scummvm/branches/gsoc2010-opengl/sound/mididrv.h
    scummvm/branches/gsoc2010-opengl/sound/mixer.cpp
    scummvm/branches/gsoc2010-opengl/sound/mods/tfmx.cpp
    scummvm/branches/gsoc2010-opengl/sound/module.mk
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_audio.cpp
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_audio.h
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_euphony.cpp
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_pc98_driver.cpp
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_pc98_driver.h
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_pc98_fmsynth.cpp
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/towns_pc98_fmsynth.h
    scummvm/branches/gsoc2010-opengl/sound/softsynth/opl/mame.cpp
    scummvm/branches/gsoc2010-opengl/test/common/array.h
    scummvm/branches/gsoc2010-opengl/test/common/bufferedreadstream.h
    scummvm/branches/gsoc2010-opengl/test/common/rational.h
    scummvm/branches/gsoc2010-opengl/test/common/str.h
    scummvm/branches/gsoc2010-opengl/tools/README
    scummvm/branches/gsoc2010-opengl/tools/create_drascula/staticdata.h
    scummvm/branches/gsoc2010-opengl/tools/create_kyradat/tables.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_lure/create_lure_dat.h
    scummvm/branches/gsoc2010-opengl/tools/create_msvc/create_msvc.cpp
    scummvm/branches/gsoc2010-opengl/tools/credits.pl
    scummvm/branches/gsoc2010-opengl/tools/sci/scitrace.asm
    scummvm/branches/gsoc2010-opengl/tools/scumm-md5.txt
    scummvm/branches/gsoc2010-opengl/tools/skycpt/AsciiCptCompile.cpp
    scummvm/branches/gsoc2010-opengl/tools/skycpt/AsciiCptCompile.vcproj
    scummvm/branches/gsoc2010-opengl/tools/skycpt/KmpSearch.h
    scummvm/branches/gsoc2010-opengl/tools/skycpt/README
    scummvm/branches/gsoc2010-opengl/tools/skycpt/TextFile.cpp
    scummvm/branches/gsoc2010-opengl/tools/skycpt/TextFile.h
    scummvm/branches/gsoc2010-opengl/tools/skycpt/cptcompiler.cpp
    scummvm/branches/gsoc2010-opengl/tools/skycpt/stdafx.h
    scummvm/branches/gsoc2010-opengl/tools/svnpropset.sh
    scummvm/branches/gsoc2010-opengl/tools/themeparser.py

Added Paths:
-----------
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.h
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/README-GP2XWIZ
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/bundle-debug.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.ini
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.png
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvmb.png
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/bundle-debug.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gp2xwiz-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-hw.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-hw.h
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-sdl.h
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/n64/n64.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/PXML.xml
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/README-OPENPANDORA
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/README-PND.txt
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/preview-pic.png
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/scummvm.png
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/index.html
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/pnd_make.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/runscummvm.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-options.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-options.h
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-sdl.h
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/png_loader.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/psp/png_loader.h
    scummvm/branches/gsoc2010-opengl/backends/platform/symbian/mmp/scummvm_hugo.mmp.in
    scummvm/branches/gsoc2010-opengl/dists/engine-data/create-testbed-data.sh
    scummvm/branches/gsoc2010-opengl/dists/engine-data/hugo.dat
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/music.mid
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track01.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track02.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track03.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track04.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/toon.dat
    scummvm/branches/gsoc2010-opengl/dists/iphone/icon4.png
    scummvm/branches/gsoc2010-opengl/dists/redhat/scummvm48.png
    scummvm/branches/gsoc2010-opengl/engines/gob/init_fascin.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/surface.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/surface.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/
    scummvm/branches/gsoc2010-opengl/engines/hugo/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/display_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/engine.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/engine.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/file.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/game.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/global.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/hugo.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/hugo.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v2w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v3w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/inventory.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/inventory.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/module.mk
    scummvm/branches/gsoc2010-opengl/engines/hugo/mouse.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/mouse.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/route.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/route.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/sound.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/util.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/util.h
    scummvm/branches/gsoc2010-opengl/engines/sci/sound/drivers/cms.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/gfx_towns.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/player_towns.cpp
    scummvm/branches/gsoc2010-opengl/engines/scumm/player_towns.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/
    scummvm/branches/gsoc2010-opengl/engines/sword25/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/theora_decoder.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/theora_decoder.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/yuvtorgba.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/yuvtorgba.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animation.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animation.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationdescription.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationdescription.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplate.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplateregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplateregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmapresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmapresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/dynamicbitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/dynamicbitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/fontresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/fontresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/framecounter.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/framecounter.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/art.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/art.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/b25sloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/b25sloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/image.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader_ids.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/pngloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/pngloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/renderedimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/renderedimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/swimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/swimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimagerenderer.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/panel.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/panel.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobject.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectmanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectmanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectptr.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/rootrenderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/screenshot.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/screenshot.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/staticbitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/staticbitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/text.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/text.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/timedrenderobject.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/timedrenderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/bs_stdint.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/callbackregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/callbackregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/common.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/filesystemutil.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/filesystemutil.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/inputpersistenceblock.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/inputpersistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/log.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/log.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/objectregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/outputpersistenceblock.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/outputpersistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistable.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceservice.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceservice.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resmanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resmanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resservice.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/scummvmwindow.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/scummvmwindow.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/service.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/service_ids.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/string.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/window.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/window.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/line.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/polygon.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/polygon.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/region.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/region.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/regionregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/regionregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/vertex.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/vertex.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/walkregion.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/walkregion.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/module.mk
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/lua_extensions.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luabindhelper.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luabindhelper.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luacallback.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luacallback.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luascript.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luascript.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/script.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sword25.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sword25.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/COPYRIGHT
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/HISTORY
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lapi.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lapi.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lauxlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lauxlib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lbaselib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lcode.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lcode.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldblib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldebug.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldebug.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldo.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldo.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldump.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lfunc.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lfunc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lgc.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lgc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/linit.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/liolib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llex.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llex.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llimits.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmathlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmem.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmem.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/loadlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lobject.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lopcodes.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lopcodes.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/loslib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lparser.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lparser.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstate.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstring.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstring.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstrlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltable.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltable.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltablib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltm.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lua.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lua.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/luac.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/luaconf.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lualib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lundump.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lundump.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lvm.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lvm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lzio.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lzio.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/print.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/CHANGELOG
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/FILEFORMAT
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/Makefile
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/THANKS
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lauxlib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/ldo.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lfunc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lgc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/llimits.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lopcodes.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lstate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lstring.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/ltm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lua.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lzio.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/pdep.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pluto.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pluto.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/plzio.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pptest.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pptest.lua
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/puptest.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/puptest.lua
    scummvm/branches/gsoc2010-opengl/engines/testbed/
    scummvm/branches/gsoc2010-opengl/engines/testbed/config-params.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/config-params.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/config.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/config.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/events.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/events.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/fs.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/fs.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/graphics.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/graphics.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/midi.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/misc.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/misc.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/module.mk
    scummvm/branches/gsoc2010-opengl/engines/testbed/savegame.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/savegame.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/sound.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/template.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/testbed.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/testbed.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/testsuite.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/testsuite.h
    scummvm/branches/gsoc2010-opengl/engines/toon/
    scummvm/branches/gsoc2010-opengl/engines/toon/anim.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/anim.h
    scummvm/branches/gsoc2010-opengl/engines/toon/audio.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/audio.h
    scummvm/branches/gsoc2010-opengl/engines/toon/character.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/character.h
    scummvm/branches/gsoc2010-opengl/engines/toon/conversation.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/conversation.h
    scummvm/branches/gsoc2010-opengl/engines/toon/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/drew.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/drew.h
    scummvm/branches/gsoc2010-opengl/engines/toon/flux.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/flux.h
    scummvm/branches/gsoc2010-opengl/engines/toon/font.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/font.h
    scummvm/branches/gsoc2010-opengl/engines/toon/hotspot.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/hotspot.h
    scummvm/branches/gsoc2010-opengl/engines/toon/module.mk
    scummvm/branches/gsoc2010-opengl/engines/toon/movie.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/movie.h
    scummvm/branches/gsoc2010-opengl/engines/toon/path.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/path.h
    scummvm/branches/gsoc2010-opengl/engines/toon/picture.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/picture.h
    scummvm/branches/gsoc2010-opengl/engines/toon/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/resource.h
    scummvm/branches/gsoc2010-opengl/engines/toon/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/script.h
    scummvm/branches/gsoc2010-opengl/engines/toon/script_func.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/script_func.h
    scummvm/branches/gsoc2010-opengl/engines/toon/state.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/state.h
    scummvm/branches/gsoc2010-opengl/engines/toon/text.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/text.h
    scummvm/branches/gsoc2010-opengl/engines/toon/tools.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/tools.h
    scummvm/branches/gsoc2010-opengl/engines/toon/toon.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/toon.h
    scummvm/branches/gsoc2010-opengl/gui/themes/translations.dat
    scummvm/branches/gsoc2010-opengl/sound/softsynth/cms.cpp
    scummvm/branches/gsoc2010-opengl/sound/softsynth/cms.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/create_hugo.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/create_hugo.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/create_hugo.sln
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/create_hugo.vcproj
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/enums.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticdata.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticdisplay.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticengine.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticfont.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticintro.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticmouse.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticparser.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticschedule.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticutil.h
    scummvm/branches/gsoc2010-opengl/tools/create_toon/
    scummvm/branches/gsoc2010-opengl/tools/create_toon/create_toon.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_toon/create_toon.h
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/create_toon.sln
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/create_toon.vcproj
    scummvm/branches/gsoc2010-opengl/tools/create_toon/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_toon/staticdata.h
    scummvm/branches/gsoc2010-opengl/tools/create_translations/
    scummvm/branches/gsoc2010-opengl/tools/create_translations/create_translations.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_translations/create_translations.h
    scummvm/branches/gsoc2010-opengl/tools/create_translations/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_translations/po_parser.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_translations/po_parser.h
    scummvm/branches/gsoc2010-opengl/tools/skycpt/skycpt-engine.patch

Removed Paths:
-------------
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.h
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/dingux/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gp2xwiz/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/README-GP2XWIZ
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/bundle-debug.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.ini
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvm.png
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/build/scummvmb.png
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/bundle-debug.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/scummvm-gdb.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo/scummvm.gpe
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/caanoo-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gp2xwiz-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-hw.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-hw.h
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/gph-sdl.h
    scummvm/branches/gsoc2010-opengl/backends/platform/gph/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/PXML.xml
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/README-OPENPANDORA
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/README-PND.txt
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/build.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/bundle.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/clean.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/config-alleng.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/config.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/preview-pic.png
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/icon/scummvm.png
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/index.html
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/pnd_make.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/build/runscummvm.sh
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/module.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-bundle.mk
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-events.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-graphics.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-main.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-options.cpp
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-options.h
    scummvm/branches/gsoc2010-opengl/backends/platform/openpandora/op-sdl.h
    scummvm/branches/gsoc2010-opengl/common/messages.cpp
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/music.mid
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track01.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track02.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track03.mp3
    scummvm/branches/gsoc2010-opengl/dists/engine-data/testbed-audiocd-files/track04.mp3
    scummvm/branches/gsoc2010-opengl/engines/gob/driver_vga.cpp
    scummvm/branches/gsoc2010-opengl/engines/gob/driver_vga.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/display_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/display_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/engine.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/engine.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/file.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/file_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/game.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/global.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/hugo.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/hugo.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v2w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/intro_v3w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/inventory.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/inventory.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/module.mk
    scummvm/branches/gsoc2010-opengl/engines/hugo/mouse.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/mouse.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v1w.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v2d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/parser_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/route.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/route.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule_v1d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/schedule_v3d.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/sound.h
    scummvm/branches/gsoc2010-opengl/engines/hugo/util.cpp
    scummvm/branches/gsoc2010-opengl/engines/hugo/util.h
    scummvm/branches/gsoc2010-opengl/engines/scumm/midiparser_eup.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/movieplayer_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/theora_decoder.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/theora_decoder.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/yuvtorgba.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/fmv/yuvtorgba.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animation.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animation.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationdescription.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationdescription.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplate.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplateregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/animationtemplateregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmapresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/bitmapresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/dynamicbitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/dynamicbitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/fontresource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/fontresource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/framecounter.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/framecounter.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/graphicengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/art.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/art.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/b25sloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/b25sloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/image.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/imageloader_ids.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/pngloader.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/pngloader.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/renderedimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/renderedimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/swimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/swimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimage.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimage.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/image/vectorimagerenderer.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/panel.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/panel.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobject.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectmanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectmanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectptr.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/renderobjectregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/rootrenderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/screenshot.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/screenshot.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/staticbitmap.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/staticbitmap.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/text.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/text.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/timedrenderobject.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/gfx/timedrenderobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/input/inputengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/bs_stdint.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/callbackregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/callbackregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/common.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/filesystemutil.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/filesystemutil.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/inputpersistenceblock.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/inputpersistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/kernel_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/log.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/log.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/objectregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/outputpersistenceblock.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/outputpersistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistable.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceblock.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceservice.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/persistenceservice.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resmanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resmanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resource.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/resservice.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/scummvmwindow.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/scummvmwindow.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/service.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/service_ids.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/string.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/window.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/kernel/window.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/geometry_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/line.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/polygon.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/polygon.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/region.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/region.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/regionregistry.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/regionregistry.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/vertex.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/vertex.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/walkregion.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/math/walkregion.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/module.mk
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/package/packagemanager_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/lua_extensions.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luabindhelper.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luabindhelper.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luacallback.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luacallback.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luascript.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/luascript.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/script/script.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/sfx/soundengine_script.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sword25.cpp
    scummvm/branches/gsoc2010-opengl/engines/sword25/sword25.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/COPYRIGHT
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/HISTORY
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lapi.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lapi.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lauxlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lauxlib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lbaselib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lcode.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lcode.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldblib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldebug.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldebug.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldo.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldo.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ldump.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lfunc.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lfunc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lgc.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lgc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/linit.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/liolib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llex.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llex.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/llimits.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmathlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmem.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lmem.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/loadlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lobject.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lopcodes.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lopcodes.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/loslib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lparser.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lparser.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstate.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstring.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstring.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lstrlib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltable.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltable.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltablib.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltm.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/ltm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lua.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lua.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/luac.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/luaconf.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lualib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lundump.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lundump.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lvm.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lvm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lzio.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/lzio.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/lua/print.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/CHANGELOG
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/FILEFORMAT
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/Makefile
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/THANKS
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/README
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lauxlib.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/ldo.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lfunc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lgc.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/llimits.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lobject.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lopcodes.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lstate.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lstring.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/ltm.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lua.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/lzio.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep/pdep.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pdep.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pluto.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pluto.h
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/plzio.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pptest.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/pptest.lua
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/puptest.c
    scummvm/branches/gsoc2010-opengl/engines/sword25/util/pluto/puptest.lua
    scummvm/branches/gsoc2010-opengl/engines/testbed/config-params.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/config-params.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/config.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/config.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/events.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/events.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/fs.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/fs.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/graphics.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/graphics.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/midi.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/midi.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/misc.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/misc.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/module.mk
    scummvm/branches/gsoc2010-opengl/engines/testbed/savegame.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/savegame.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/sound.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/sound.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/template.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/testbed.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/testbed.h
    scummvm/branches/gsoc2010-opengl/engines/testbed/testsuite.cpp
    scummvm/branches/gsoc2010-opengl/engines/testbed/testsuite.h
    scummvm/branches/gsoc2010-opengl/engines/toon/anim.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/anim.h
    scummvm/branches/gsoc2010-opengl/engines/toon/audio.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/audio.h
    scummvm/branches/gsoc2010-opengl/engines/toon/character.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/character.h
    scummvm/branches/gsoc2010-opengl/engines/toon/conversation.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/conversation.h
    scummvm/branches/gsoc2010-opengl/engines/toon/detection.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/drew.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/drew.h
    scummvm/branches/gsoc2010-opengl/engines/toon/flux.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/flux.h
    scummvm/branches/gsoc2010-opengl/engines/toon/font.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/font.h
    scummvm/branches/gsoc2010-opengl/engines/toon/hotspot.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/hotspot.h
    scummvm/branches/gsoc2010-opengl/engines/toon/module.mk
    scummvm/branches/gsoc2010-opengl/engines/toon/movie.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/movie.h
    scummvm/branches/gsoc2010-opengl/engines/toon/path.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/path.h
    scummvm/branches/gsoc2010-opengl/engines/toon/picture.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/picture.h
    scummvm/branches/gsoc2010-opengl/engines/toon/resource.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/resource.h
    scummvm/branches/gsoc2010-opengl/engines/toon/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/script.h
    scummvm/branches/gsoc2010-opengl/engines/toon/script_func.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/script_func.h
    scummvm/branches/gsoc2010-opengl/engines/toon/state.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/state.h
    scummvm/branches/gsoc2010-opengl/engines/toon/text.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/text.h
    scummvm/branches/gsoc2010-opengl/engines/toon/tools.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/tools.h
    scummvm/branches/gsoc2010-opengl/engines/toon/toon.cpp
    scummvm/branches/gsoc2010-opengl/engines/toon/toon.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/create_hugo.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/create_hugo.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/create_hugo.sln
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/dists/msvc9/create_hugo.vcproj
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/enums.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticdata.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticdisplay.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticengine.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticfont.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticintro.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticmouse.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticparser.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticschedule.h
    scummvm/branches/gsoc2010-opengl/tools/create_hugo/staticutil.h
    scummvm/branches/gsoc2010-opengl/tools/create_toon/create_toon.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_toon/create_toon.h
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/create_toon.sln
    scummvm/branches/gsoc2010-opengl/tools/create_toon/dists/msvc9/create_toon.vcproj
    scummvm/branches/gsoc2010-opengl/tools/create_toon/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_toon/staticdata.h
    scummvm/branches/gsoc2010-opengl/tools/create_translations/create_translations.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_translations/create_translations.h
    scummvm/branches/gsoc2010-opengl/tools/create_translations/module.mk
    scummvm/branches/gsoc2010-opengl/tools/create_translations/po_parser.cpp
    scummvm/branches/gsoc2010-opengl/tools/create_translations/po_parser.h
    scummvm/branches/gsoc2010-opengl/tools/po2c

Property Changed:
----------------
    scummvm/branches/gsoc2010-opengl/
    scummvm/branches/gsoc2010-opengl/engines/draci/script.cpp
    scummvm/branches/gsoc2010-opengl/engines/draci/script.h
    scummvm/branches/gsoc2010-opengl/sound/softsynth/fmtowns_pc98/


Property changes on: scummvm/branches/gsoc2010-opengl
___________________________________________________________________
Modified: svn:mergeinfo
   - /scummvm/branches/gsoc2009-draci:41389-44325
/scummvm/trunk:49204-50837,50841-51493,51495-51775,51777-52105
   + /scummvm/trunk:49204-50837,50841-51493,51495-51775,51777-53396

Modified: scummvm/branches/gsoc2010-opengl/AUTHORS
===================================================================
--- scummvm/branches/gsoc2010-opengl/AUTHORS	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/AUTHORS	2010-10-13 03:57:44 UTC (rev 53399)
@@ -449,6 +449,9 @@
    Patrick Combet   - For the original Gobliiins ADL player
    Ivan Dubrov      - For contributing the initial version of the Gobliiins
                       engine
+   Henrik Engqvist  - For generously providing hosting for our buildbot, SVN
+                      repository, planet and doxygen sites as well as tons of
+                      HD space
    DOSBox Team      - For their awesome OPL2 and OPL3 emulator
    Till Kresslein   - For design of modern ScummVM GUI
    Jezar            - For his freeverb filter implementation
@@ -482,3 +485,10 @@
    John Young, Colin Smythe and especially Terry Pratchett himself for
    sharing the source code of Discworld I & II with us.
 
+   Emilio de Paz Aragon from Alcachofa Soft for sharing the source code of
+   Drascula: The Vampire Strikes Back with us and his generosity with
+   freewaring the game.
+
+   David P. Gray from Gray Design Associate for sharing the source code of
+   the Hugo trilogy.
+

Modified: scummvm/branches/gsoc2010-opengl/Makefile
===================================================================
--- scummvm/branches/gsoc2010-opengl/Makefile	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/Makefile	2010-10-13 03:57:44 UTC (rev 53399)
@@ -34,9 +34,15 @@
 	# being helpful.
 	#CXXFLAGS+= -Wmissing-format-attribute
 
-	# Disable RTTI and exceptions, and enable checking of pointers returned by "new"
-	CXXFLAGS+= -fno-rtti -fno-exceptions -fcheck-new
+	# Disable RTTI and exceptions
+	CXXFLAGS+= -fno-rtti -fno-exceptions
+
+ifneq "$(HAVE_CLANG)" "1"
+	# enable checking of pointers returned by "new", but only when we do not
+	# build with clang
+	CXXFLAGS+= -fcheck-new
 endif
+endif
 
 ifeq "$(HAVE_CLANG)" "1"
 	CXXFLAGS+= -Wno-conversion -Wno-shorten-64-to-32 -Wno-sign-compare -Wno-four-char-constants

Modified: scummvm/branches/gsoc2010-opengl/Makefile.common
===================================================================
--- scummvm/branches/gsoc2010-opengl/Makefile.common	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/Makefile.common	2010-10-13 03:57:44 UTC (rev 53399)
@@ -226,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 scummclassic.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
@@ -251,6 +258,9 @@
 ifdef ENABLE_TEENAGENT
 DIST_FILES_ENGINEDATA+=teenagent.dat
 endif
+ifdef ENABLE_TOON
+DIST_FILES_ENGINEDATA+=toon.dat
+endif
 DIST_FILES_ENGINEDATA:=$(addprefix $(srcdir)/dists/engine-data/,$(DIST_FILES_ENGINEDATA))
 
 # pred.dic is currently only used for the AGI engine

Modified: scummvm/branches/gsoc2010-opengl/NEWS
===================================================================
--- scummvm/branches/gsoc2010-opengl/NEWS	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/NEWS	2010-10-13 03:57:44 UTC (rev 53399)
@@ -1,9 +1,68 @@
 For a more comprehensive changelog for the latest experimental SVN code, see:
         http://scummvm.svn.sourceforge.net/viewvc/scummvm/?view=log
+1.3.0 (????-??-??)
+ Drascula:
+   - Added German and French subtitles in the Von Braun cutscene (#3069981:
+     no subtitles in scene with "von Braun").
+   - Improved French translation of the game.
 
-1.2.0 (????-??-??)
+ SCI:
+   - Improved support for non-English versions of games.
+
+ SCUMM:
+   - Improved support for FM-TOWNS versions of games.
+
+
+1.2.0 (2010-10-15)
+ New Games:
+   - Added support for Fascination.
+
+ New Games (Sierra SCI0 - SCI1.1):
+   - Added support for Castle of Dr. Brain (EGA and VGA).
+   - Added support for Codename: ICEMAN.
+   - Added support for Conquests of Camelot.
+   - Added support for Conquests of the Longbow (EGA and VGA).
+   - Added support for EcoQuest: The Search for Cetus.
+   - Added support for EcoQuest 2: Lost Secret of the Rainforest.
+   - Added support for Freddy Pharkas: Frontier Pharmacist.
+   - Added support for Hoyle's Book of Games 1.
+   - Added support for Hoyle's Book of Games 2.
+   - Added support for Hoyle's Book of Games 3 (EGA and VGA).
+   - Added support for Hoyle Classic Card Games.
+   - Added support for Jones in the Fast Lane.
+   - Added support for King's Quest I (SCI remake).
+   - Added support for King's Quest IV (SCI version).
+   - Added support for King's Quest V (EGA and VGA).
+   - Added support for King's Quest VI (low and hi res).
+   - Added support for Laura Bow: The Colonel's Bequest.
+   - Added support for Laura Bow 2: The Dagger of Amon Ra.
+   - Added support for Leisure Suit Larry 1 (SCI remake) (EGA and VGA).
+   - Added support for Leisure Suit Larry 2.
+   - Added support for Leisure Suit Larry 3.
+   - Added support for Leisure Suit Larry 5 (EGA and VGA).
+   - Added support for Leisure Suit Larry 6 (low res).
+   - Added support for Mixed-up Fairy Tales.
+   - Added support for Mixed-up Mother Goose.
+   - Added support for Pepper's Adventures in Time.
+   - Added support for Police Quest I (SCI remake).
+   - Added support for Police Quest II.
+   - Added support for Police Quest III (EGA and VGA).
+   - Added support for Quest for Glory I/Hero's Quest.
+   - Added support for Quest for Glory I VGA remake.
+   - Added support for Quest for Glory II.
+   - Added support for Quest for Glory III.
+   - Added support for Slater & Charlie go camping.
+   - Added support for Space Quest I (SCI remake) (EGA and VGA).
+   - Added support for Space Quest III.
+   - Added support for Space Quest IV (EGA and VGA).
+   - Added support for Space Quest V.
+   - Added support for The Island of Dr. Brain.
+
  New Ports:
    - Added Android port.
+   - Added Dingux port.
+   - Added Caanoo port (based on the GP2XWiz port).
+   - Added OpenPandora port.
 
  General:
    - Removed the outdated PalmOS port.
@@ -21,6 +80,11 @@
    - Added support of MIDI devices.
    - Added support for accurate Tandy sound emulation. Switched to it as default.
 
+ Broken Sword 2
+   - Fixed missing speech in some cutscenes.
+   - Fixed a memory leak that would eventually cause the game to hang.
+     (#2976008 - BS2: Game lockup in British Museum)
+
  Drascula:
    - Fixed number of GFX glitches.
    - Made many cutscenes smoother.
@@ -33,7 +97,14 @@
  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.
 
+ LURE:
+   - Fixed bug where Goewin could get stuck in the Weregate
+   - Fixed issue with Ratpouch repeatedly moving between two rooms
+   - Fix for Goewin losing her schedule after Were-cave
+   - Fix for player getting stuck in sewer exit room
+
  Parallaction:
    - Made part one of The Big Red Adventure completable.
 
@@ -44,10 +115,10 @@
    - 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
@@ -56,12 +127,16 @@
  GameCube port:
    - Added support for DVDs with the ISO9660 file system.
 
-1.1.2 (????-??-??)
-  Broken Sword 2
-   - Fixed missing speech in some cutscenes.
-   - Fixed a memory leak that would eventually cause the game to hang.
-     (#2976008 - BS2: Game lockup in British Museum)
+ GP2X port:
+   - Added support for dynamic engine plugins (experimental).
+   - Reworked control system and better touchscreen support.
 
+ GP2XWiz/Caanoo port:
+   - Improved downscale code to minimise 'tearing' corruption.
+   - Reworked control system and better touchscreen support.
+   - Renamed backend from GP2XWIZ to GPH to better reflect
+     the supported devices.
+
 1.1.1 (2010-05-02)
  New Ports:
    - Added Nintendo 64 port. (Actually added in 1.1.0, but forgot to mention it. oops)

Modified: scummvm/branches/gsoc2010-opengl/README
===================================================================
--- scummvm/branches/gsoc2010-opengl/README	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/README	2010-10-13 03:57:44 UTC (rev 53399)
@@ -71,25 +71,37 @@
 shipped with the game, allowing you to play them on systems for which
 they were never designed!
 
-Some of the adventures ScummVM supports include Adventure Soft's Simon
-the Sorcerer 1 and 2; Revolution's Beneath A Steel Sky, Broken Sword I
-and II; Flight of the Amazon Queen; Wyrmkeep's Inherit the Earth; Coktel
-Vision's Gobliiins; Westwood Studios' The Legend of Kyrandia and games
-based on LucasArts' SCUMM (Script Creation Utility for Maniac Mansion)
-system such as Monkey Island, Day of the Tentacle, Sam and Max and more.
-You can find a thorough list with details on which games are supported
-and how well on the compatibility page. ScummVM is continually
-improving, so check back often.
+Originally it was designed to run LucasArts' SCUMM games, such as Maniac
+Mansion, Monkey Island, Day of the Tentacle or Sam and Max. SCUMM stands
+for 'Script Creation Utility for Maniac Mansion', which was the first
+game for which LucasArts designed this system. And much later it gave
+its name to ScummVM ('VM' meaning Virtual Machine).
 
+Over time support for a lot of non-SCUMM games has been added, and
+ScummVM now also supports many of Sierra's AGI and SCI games (such as King's
+Quest 1-6, Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and
+2, Beneath A Steel Sky, Lure of the Temptress, Broken Sword I and II, Flight of
+the Amazon Queen, Gobliiins 1-3, The Legend of Kyrandia series, many of
+Humongous Entertainment's children's SCUMM games (including Freddi Fish and
+Putt Putt games) and many more. You can find a full list with details on which
+adventures are supported and how well on the compatibility page. ScummVM is
+continually improving, so check back often.
+
 Among the systems on which you can play those games are regular desktop
 computers (running Windows, Linux, Mac OS X, ...), game consoles
 (Dreamcast, Nintendo DS & Wii, PS2, PSP, ...), smartphones (Android,
 iPhone, PocketPC, Symbian ...) and more.
 
-At this time ScummVM should be considered beta software, and is still
-under heavy development. Be aware that whilst we attempt to make sure
-that many games can be completed with few major bugs, crashes can
-happen.
+At this time ScummVM is still under heavy development. Be aware that
+whilst we attempt to make sure that many games can be completed with few
+major bugs, crashes can happen and we offer no warranty. That being said,
+some of the games have been supported for a long time and should work
+fine with any recent stable release. You can get a feeling of how well
+each game is working in ScummVM by looking at the compatibility page.
+Actually if you browse a bit around you might discover that ScummVM is
+even being used commercially to re-release some of the supported games on
+modern platforms. This shows that several companies are happy with the
+quality of the software and how well it can run some of the games.
 
 If you enjoy ScummVM feel free to donate using the PayPal button on the
 ScummVM homepage. This will help us buy utilities needed to develop
@@ -139,11 +151,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
 

Modified: scummvm/branches/gsoc2010-opengl/backends/audiocd/default/default-audiocd.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/audiocd/default/default-audiocd.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/audiocd/default/default-audiocd.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -110,7 +110,7 @@
 			_mixer->setChannelVolume(_handle, _cd.volume);
 	} else {
 		// Real Audio CD
-		
+
 		// Unfortunately I can't implement this atm
 		// since SDL doesn't seem to offer an interface method for this.
 
@@ -126,7 +126,7 @@
 			_mixer->setChannelBalance(_handle, _cd.balance);
 	} else {
 		// Real Audio CD
-		
+
 		// Unfortunately I can't implement this atm
 		// since SDL doesn't seem to offer an interface method for this.
 

Modified: scummvm/branches/gsoc2010-opengl/backends/events/default/default-events.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/events/default/default-events.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/events/default/default-events.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -169,6 +169,7 @@
 				// key pressed. A better fix would be for engines to stop
 				// making invalid assumptions about ascii values.
 				event.kbd.ascii = Common::KEYCODE_BACKSPACE;
+				_currentKeyDown.ascii = Common::KEYCODE_BACKSPACE;
 			}
 			break;
 

Modified: scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -42,29 +42,48 @@
 #define JOY_XAXIS 0
 #define JOY_YAXIS 1
 
-/* GP2X: Main Joystick Mappings */
+/* Quick default button states for modifiers. */
+int BUTTON_STATE_L					=	false;
+
 enum {
-	GP2X_BUTTON_UP			= 0,
-	GP2X_BUTTON_UPLEFT		= 1,
-	GP2X_BUTTON_LEFT		= 2,
-	GP2X_BUTTON_DOWNLEFT	= 3,
-	GP2X_BUTTON_DOWN		= 4,
-	GP2X_BUTTON_DOWNRIGHT	= 5,
-	GP2X_BUTTON_RIGHT		= 6,
-	GP2X_BUTTON_UPRIGHT		= 7,
-	GP2X_BUTTON_MENU		= 8,
-	GP2X_BUTTON_SELECT		= 9,
-	GP2X_BUTTON_L			= 10,
-	GP2X_BUTTON_R			= 11,
-	GP2X_BUTTON_A			= 12,
-	GP2X_BUTTON_B			= 13,
-	GP2X_BUTTON_X			= 14,
-	GP2X_BUTTON_Y			= 15,
-	GP2X_BUTTON_VOLUP		= 16,
-	GP2X_BUTTON_VOLDOWN		= 17,
-	GP2X_BUTTON_CLICK		= 18
+	/* DPAD/Stick */
+	BUTTON_UP			= 0,
+	BUTTON_UPLEFT		= 1,
+	BUTTON_LEFT			= 2,
+	BUTTON_DOWNLEFT		= 3,
+	BUTTON_DOWN			= 4,
+	BUTTON_DOWNRIGHT	= 5,
+	BUTTON_RIGHT		= 6,
+	BUTTON_UPRIGHT		= 7,
+	/* Joystick Buttons */
+	BUTTON_MENU			= 8,	// Start on F100 GP2X
+	BUTTON_SELECT		= 9,
+	BUTTON_L			= 10,
+	BUTTON_R			= 11,
+	BUTTON_A			= 12,
+	BUTTON_B			= 13,
+	BUTTON_X			= 14,
+	BUTTON_Y			= 15,
+	BUTTON_VOLUP		= 16,
+	BUTTON_VOLDOWN		= 17,
+	BUTTON_CLICK		= 18
 };
 
+enum {
+	/* Unused Joystick Buttons on the GP2X */
+	BUTTON_HOME			= 51,
+	BUTTON_HOLD			= 52,
+	BUTTON_HELP			= 53,
+	BUTTON_HELP2		= 54
+};
+
+enum {
+	/* Touchscreen TapMode */
+	TAPMODE_LEFT		= 0,
+	TAPMODE_RIGHT		= 1,
+	TAPMODE_HOVER		= 2
+};
+
 GP2XSdlEventManager::GP2XSdlEventManager(Common::EventSource *boss)
 	:
 	_buttonStateL(false),
@@ -81,6 +100,12 @@
 		event.kbd.flags |= Common::KBD_ALT;
 	if (mod & KMOD_CTRL)
 		event.kbd.flags |= Common::KBD_CTRL;
+
+	// Sticky flags
+	if (mod & KMOD_NUM)
+		event.kbd.flags |= Common::KBD_NUM;
+	if (mod & KMOD_CAPS)
+		event.kbd.flags |= Common::KBD_CAPS;
 }
 
 void GP2XSdlEventManager::moveStick() {
@@ -184,190 +209,286 @@
 	event.type = Common::EVENT_KEYUP;
 	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);
+
+	// Ctrl-Alt-<key> will change the GFX mode
 	SDLModToOSystemKeyFlags(SDL_GetModState(), event);
 
-	// Ctrl-Alt-<key> will change the GFX mode
-	if ((event.kbd.flags & (Common::KBD_CTRL | Common::KBD_ALT)) == (Common::KBD_CTRL | Common::KBD_ALT)) {
+	// Set the scroll lock sticky flag
+	if (_scrollLock)
+		event.kbd.flags |= Common::KBD_SCRL;
+
+	if (isScalerHotkey(event))
 		// Swallow these key up events
 		return false;
-	}
 
 	return true;
 }
 
 bool GP2XSdlEventManager::handleJoyButtonDown(SDL_Event &ev, Common::Event &event) {
+
 	_stickBtn[ev.jbutton.button] = 1;
-	if (ev.jbutton.button == GP2X_BUTTON_B) {
-		event.type = Common::EVENT_LBUTTONDOWN;
+	event.kbd.flags = 0;
+
+	switch (ev.jbutton.button) {
+	case BUTTON_UP:
+	case BUTTON_UPLEFT:
+	case BUTTON_LEFT:
+	case BUTTON_DOWNLEFT:
+	case BUTTON_DOWN:
+	case BUTTON_DOWNRIGHT:
+	case BUTTON_RIGHT:
+	case BUTTON_UPRIGHT:
+		moveStick();
+		event.type = Common::EVENT_MOUSEMOVE;
 		fillMouseEvent(event, _km.x, _km.y);
-#ifdef GP2X
-	} else if (ev.jbutton.button == GP2X_BUTTON_CLICK) {
-		event.type = Common::EVENT_LBUTTONDOWN;
-		fillMouseEvent(event, _km.x, _km.y);
-#endif
-	} else if (ev.jbutton.button == GP2X_BUTTON_X) {
+		break;
+	case BUTTON_B:
+	case BUTTON_CLICK:
+		if (BUTTON_STATE_L == true) {
+			((GP2XSdlGraphicsManager *)((OSystem_SDL *)g_system)->getGraphicsManager())->toogleZoomOnMouse();
+			fillMouseEvent(event, _km.x, _km.y);
+		} else {
+			event.type = Common::EVENT_LBUTTONDOWN;
+			fillMouseEvent(event, _km.x, _km.y);
+		}
+		break;
+	case BUTTON_X:
 		event.type = Common::EVENT_RBUTTONDOWN;
 		fillMouseEvent(event, _km.x, _km.y);
-	} else if (_stickBtn[GP2X_BUTTON_L] && (ev.jbutton.button == GP2X_BUTTON_SELECT)) {
-		event.type = Common::EVENT_QUIT;
-	} else if (ev.jbutton.button < 8) {
-		moveStick();
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-	} else {
+		break;
+	case BUTTON_L:
+		BUTTON_STATE_L = true;
+		break;
+	case BUTTON_R:
 		event.type = Common::EVENT_KEYDOWN;
-		event.kbd.flags = 0;
-		switch (ev.jbutton.button) {
-			case GP2X_BUTTON_L:
-				_buttonStateL = true;
-				break;
-			case GP2X_BUTTON_R:
-				if (_buttonStateL) {
+		if (BUTTON_STATE_L == true) {
 #ifdef ENABLE_VKEYBD
-					event.kbd.keycode = Common::KEYCODE_F7;
-					event.kbd.ascii = mapKey(SDLK_F7, ev.key.keysym.mod, 0);
+			event.kbd.keycode = Common::KEYCODE_F7;
+			event.kbd.ascii = mapKey(SDLK_F7, ev.key.keysym.mod, 0);
 #else
-					event.kbd.keycode = Common::KEYCODE_0;
-					event.kbd.ascii = mapKey(SDLK_0, ev.key.keysym.mod, 0);
+			event.kbd.keycode = Common::KEYCODE_0;
+			event.kbd.ascii = mapKey(SDLK_0, ev.key.keysym.mod, 0);
 #endif
-				} else {
-					event.kbd.keycode = Common::KEYCODE_RETURN;
-					event.kbd.ascii = mapKey(SDLK_RETURN, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_SELECT:
-				if (_buttonStateL) {
-					event.type = Common::EVENT_QUIT;
-				} else {
-					event.kbd.keycode = Common::KEYCODE_ESCAPE;
-					event.kbd.ascii = mapKey(SDLK_ESCAPE, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_A:
-				if (_buttonStateL) {
-					event.type = Common::EVENT_PREDICTIVE_DIALOG;
-				} else {
-				event.kbd.keycode = Common::KEYCODE_PERIOD;
-				event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_Y:
-#ifdef GP2X
-				if (_buttonStateL) {
-					((GP2XSdlGraphicsManager *)((OSystem_SDL *)g_system)->getGraphicsManager())->toggleZoomOnMouse();
-				} else {
-#endif
-					event.kbd.keycode = Common::KEYCODE_SPACE;
-					event.kbd.ascii = mapKey(SDLK_SPACE, ev.key.keysym.mod, 0);
-#ifdef GP2X
-				}
-#endif
-				break;
-			case GP2X_BUTTON_MENU:
-				if (_buttonStateL) {
-					event.type = Common::EVENT_MAINMENU;
-				} else {
-					event.kbd.keycode = Common::KEYCODE_F5;
-					event.kbd.ascii = mapKey(SDLK_F5, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_VOLUP:
-#ifdef GP2X
-				GP2X_HW::mixerMoveVolume(2);
-				if (GP2X_HW::volumeLevel == 100) {
-#else
-				WIZ_HW::mixerMoveVolume(2);
-				if (WIZ_HW::volumeLevel == 100) {
-#endif
-					g_system->displayMessageOnOSD("Maximum Volume");
-				} else {
-					g_system->displayMessageOnOSD("Increasing Volume");
-				}
-				break;
+		} else {
+			event.kbd.keycode = Common::KEYCODE_RETURN;
+			event.kbd.ascii = mapKey(SDLK_RETURN, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_SELECT:
+	case BUTTON_HOME:
+		event.type = Common::EVENT_KEYDOWN;
+		if (BUTTON_STATE_L == true) {
+			event.type = Common::EVENT_QUIT;
+		} else {
+			event.kbd.keycode = Common::KEYCODE_ESCAPE;
+			event.kbd.ascii = mapKey(SDLK_ESCAPE, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_A:
+		event.type = Common::EVENT_KEYDOWN;
+		if (BUTTON_STATE_L == true) {
+			event.type = Common::EVENT_PREDICTIVE_DIALOG;
+		} else {
+		event.kbd.keycode = Common::KEYCODE_PERIOD;
+		event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_Y:
+		event.type = Common::EVENT_KEYDOWN;
+		if (BUTTON_STATE_L == true) {
+			GPH::ToggleTapMode();
+			if (GPH::tapmodeLevel == TAPMODE_LEFT) {
+				g_system->displayMessageOnOSD("Touchscreen 'Tap Mode' - Left Click");
+			} else if (GPH::tapmodeLevel == TAPMODE_RIGHT) {
+				g_system->displayMessageOnOSD("Touchscreen 'Tap Mode' - Right Click");
+			} else if (GPH::tapmodeLevel == TAPMODE_HOVER) {
+				g_system->displayMessageOnOSD("Touchscreen 'Tap Mode' - Hover (No Click)");
+ 			}
+		} else {
+			event.kbd.keycode = Common::KEYCODE_SPACE;
+			event.kbd.ascii = mapKey(SDLK_SPACE, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_MENU:
+	case BUTTON_HELP:
+		event.type = Common::EVENT_KEYDOWN;
+		if (BUTTON_STATE_L == true) {
+			event.type = Common::EVENT_MAINMENU;
+		} else {
+			event.kbd.keycode = Common::KEYCODE_F5;
+			event.kbd.ascii = mapKey(SDLK_F5, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_VOLUP:
+		GP2X_HW::mixerMoveVolume(2);
+		if (GP2X_HW::volumeLevel == 100) {
+			g_system->displayMessageOnOSD("Maximum Volume");
+		} else {
+			g_system->displayMessageOnOSD("Increasing Volume");
+		}
+		break;
 
-			case GP2X_BUTTON_VOLDOWN:
-#ifdef GP2X
-				GP2X_HW::mixerMoveVolume(1);
-				if (GP2X_HW::volumeLevel == 0) {
-#else
-				WIZ_HW::mixerMoveVolume(1);
-				if (WIZ_HW::volumeLevel == 0) {
-#endif
-					g_system->displayMessageOnOSD("Minimal Volume");
-				} else {
-					g_system->displayMessageOnOSD("Decreasing Volume");
-				}
-				break;
+	case BUTTON_VOLDOWN:
+		GP2X_HW::mixerMoveVolume(1);
+		if (GP2X_HW::volumeLevel == 0) {
+			g_system->displayMessageOnOSD("Minimal Volume");
+		} else {
+			g_system->displayMessageOnOSD("Decreasing Volume");
 		}
+		break;
+	case BUTTON_HOLD:
+		event.type = Common::EVENT_QUIT;
+		break;
+	case BUTTON_HELP2:
+		GPH::ToggleTapMode();
+		if (GPH::tapmodeLevel == TAPMODE_LEFT) {
+			g_system->displayMessageOnOSD("Touchscreen 'Tap Mode': Left Click");
+		} else if (GPH::tapmodeLevel == TAPMODE_RIGHT) {
+			g_system->displayMessageOnOSD("Touchscreen 'Tap Mode': Right Click");
+		} else if (GPH::tapmodeLevel == TAPMODE_HOVER) {
+			g_system->displayMessageOnOSD("Touchscreen 'Tap Mode': Hover (No Click)");
+		}
+		break;
 	}
 	return true;
 }
 
 bool GP2XSdlEventManager::handleJoyButtonUp(SDL_Event &ev, Common::Event &event) {
 	_stickBtn[ev.jbutton.button] = 0;
-	if (ev.jbutton.button == GP2X_BUTTON_B) {
-		event.type = Common::EVENT_LBUTTONUP;
+	event.kbd.flags = 0;
+
+	switch (ev.jbutton.button) {
+	case BUTTON_UP:
+	case BUTTON_UPLEFT:
+	case BUTTON_LEFT:
+	case BUTTON_DOWNLEFT:
+	case BUTTON_DOWN:
+	case BUTTON_DOWNRIGHT:
+	case BUTTON_RIGHT:
+	case BUTTON_UPRIGHT:
+		moveStick();
+		event.type = Common::EVENT_MOUSEMOVE;
 		fillMouseEvent(event, _km.x, _km.y);
-#ifdef GP2X
-	} else if (ev.jbutton.button == GP2X_BUTTON_CLICK) {
-		event.type = Common::EVENT_LBUTTONUP;
-		fillMouseEvent(event, _km.x, _km.y);
-#endif
-	} else if (ev.jbutton.button == GP2X_BUTTON_X) {
+		break;
+	case BUTTON_B:
+	case BUTTON_CLICK:
+		if (BUTTON_STATE_L == true) {
+			break;
+		} else {
+			event.type = Common::EVENT_LBUTTONUP;
+			fillMouseEvent(event, _km.x, _km.y);
+		}
+		break;
+	case BUTTON_X:
 		event.type = Common::EVENT_RBUTTONUP;
 		fillMouseEvent(event, _km.x, _km.y);
-	} else if (ev.jbutton.button < 8) {
-		moveStick();
-		event.type = Common::EVENT_MOUSEMOVE;
-		fillMouseEvent(event, _km.x, _km.y);
-	} else {
+		break;
+	case BUTTON_L:
+		BUTTON_STATE_L = false;
+		break;
+	case BUTTON_SELECT:
+	case BUTTON_HOME:
 		event.type = Common::EVENT_KEYUP;
-		event.kbd.flags = 0;
-		switch (ev.jbutton.button) {
-			case GP2X_BUTTON_SELECT:
-				event.kbd.keycode = Common::KEYCODE_ESCAPE;
-				event.kbd.ascii = mapKey(SDLK_ESCAPE, ev.key.keysym.mod, 0);
-				break;
-			case GP2X_BUTTON_A:
-				event.kbd.keycode = Common::KEYCODE_PERIOD;
-				event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
-				break;
-			case GP2X_BUTTON_Y:
-				event.kbd.keycode = Common::KEYCODE_SPACE;
-				event.kbd.ascii = mapKey(SDLK_SPACE, ev.key.keysym.mod, 0);
-				break;
-			case GP2X_BUTTON_MENU:
-				if (_buttonStateL == true) {
-					event.type = Common::EVENT_MAINMENU;
-				} else {
-					event.kbd.keycode = Common::KEYCODE_F5;
-					event.kbd.ascii = mapKey(SDLK_F5, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_L:
-				_buttonStateL = false;
-				break;
-			case GP2X_BUTTON_R:
-				if (_buttonStateL == true) {
+		event.kbd.keycode = Common::KEYCODE_ESCAPE;
+		event.kbd.ascii = mapKey(SDLK_ESCAPE, ev.key.keysym.mod, 0);
+		break;
+	case BUTTON_A:
+		event.type = Common::EVENT_KEYUP;
+		event.kbd.keycode = Common::KEYCODE_PERIOD;
+		event.kbd.ascii = mapKey(SDLK_PERIOD, ev.key.keysym.mod, 0);
+		break;
+	case BUTTON_Y:
+		event.type = Common::EVENT_KEYUP;
+		event.kbd.keycode = Common::KEYCODE_SPACE;
+		event.kbd.ascii = mapKey(SDLK_SPACE, ev.key.keysym.mod, 0);
+		break;
+	case BUTTON_MENU:
+	case BUTTON_HELP:
+		event.type = Common::EVENT_KEYUP;
+		if (BUTTON_STATE_L == true) {
+			event.type = Common::EVENT_MAINMENU;
+		} else {
+			event.kbd.keycode = Common::KEYCODE_F5;
+			event.kbd.ascii = mapKey(SDLK_F5, ev.key.keysym.mod, 0);
+		}
+		break;
+	case BUTTON_R:
+		event.type = Common::EVENT_KEYUP;
+		if (BUTTON_STATE_L == true) {
 #ifdef ENABLE_VKEYBD
-					event.kbd.keycode = Common::KEYCODE_F7;
-					event.kbd.ascii = mapKey(SDLK_F7, ev.key.keysym.mod, 0);
+			event.kbd.keycode = Common::KEYCODE_F7;
+			event.kbd.ascii = mapKey(SDLK_F7, ev.key.keysym.mod, 0);
 #else
-					event.kbd.keycode = Common::KEYCODE_0;
-					event.kbd.ascii = mapKey(SDLK_0, ev.key.keysym.mod, 0);
+			event.kbd.keycode = Common::KEYCODE_0;
+			event.kbd.ascii = mapKey(SDLK_0, ev.key.keysym.mod, 0);
 #endif
-				} else {
-					event.kbd.keycode = Common::KEYCODE_RETURN;
-					event.kbd.ascii = mapKey(SDLK_RETURN, ev.key.keysym.mod, 0);
-				}
-				break;
-			case GP2X_BUTTON_VOLUP:
-				break;
-			case GP2X_BUTTON_VOLDOWN:
-				break;
+		} else {
+			event.kbd.keycode = Common::KEYCODE_RETURN;
+			event.kbd.ascii = mapKey(SDLK_RETURN, ev.key.keysym.mod, 0);
 		}
+		break;
+	case BUTTON_VOLUP:
+		break;
+	case BUTTON_VOLDOWN:
+		break;
+	case BUTTON_HOLD:
+		break;
+	case BUTTON_HELP2:
+		break;
 	}
 	return true;
 }
 
+bool GP2XSdlEventManager::handleJoyAxisMotion(SDL_Event &ev, Common::Event &event) {
+	int axis = ev.jaxis.value;
+	if ( axis > JOY_DEADZONE) {
+		axis -= JOY_DEADZONE;
+		event.type = Common::EVENT_MOUSEMOVE;
+	} else if ( axis < -JOY_DEADZONE ) {
+		axis += JOY_DEADZONE;
+		event.type = Common::EVENT_MOUSEMOVE;
+	} else
+		axis = 0;
+
+	if ( ev.jaxis.axis == JOY_XAXIS) {
+#ifdef JOY_ANALOG
+		_km.x_vel = axis/2000;
+		_km.x_down_count = 0;
+#else
+		if (axis != 0) {
+			_km.x_vel = (axis > 0) ? 1:-1;
+			_km.x_down_count = 1;
+		} else {
+			_km.x_vel = 0;
+			_km.x_down_count = 0;
+		}
 #endif
+ 
+	} else if (ev.jaxis.axis == JOY_YAXIS) {
+#ifndef JOY_INVERT_Y
+		axis = -axis;
+#endif
+#ifdef JOY_ANALOG
+		_km.y_vel = -axis / 2000;
+		_km.y_down_count = 0;
+#else
+		if (axis != 0) {
+			_km.y_vel = (-axis > 0) ? 1: -1;
+			_km.y_down_count = 1;
+		} else {
+			_km.y_vel = 0;
+			_km.y_down_count = 0;
+		}
+#endif
+	}
+
+	fillMouseEvent(event, _km.x, _km.y);
+	return true;
+}
+
+bool GP2XSdlEventManager::remapKey(SDL_Event &ev, Common::Event &event) {
+	return false;
+}
+
+
+#endif

Modified: scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.h
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.h	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/events/gp2xsdl/gp2xsdl-events.h	2010-10-13 03:57:44 UTC (rev 53399)
@@ -50,8 +50,11 @@
 	virtual bool handleKeyUp(SDL_Event &ev, Common::Event &event);
 	virtual bool handleJoyButtonDown(SDL_Event &ev, Common::Event &event);
 	virtual bool handleJoyButtonUp(SDL_Event &ev, Common::Event &event);
+	virtual bool GP2XSdlEventManager::handleJoyAxisMotion(SDL_Event &ev, Common::Event &event);
 
 	virtual void SDLModToOSystemKeyFlags(SDLMod mod, Common::Event &event);
+
+	virtual bool GP2XSdlEventManager::remapKey(SDL_Event &ev, Common::Event &event);
 };
 
 #endif

Modified: scummvm/branches/gsoc2010-opengl/backends/events/linuxmotosdl/linuxmotosdl-events.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/events/linuxmotosdl/linuxmotosdl-events.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/events/linuxmotosdl/linuxmotosdl-events.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -125,7 +125,7 @@
 	// VirtualKeyboard - Right Soft key
 	else if (ev.key.keysym.sym == SDLK_F11) {
 		ev.key.keysym.sym = SDLK_F7;
-	}      
+	}
 #endif
 
 // Joystick to Mouse

Modified: scummvm/branches/gsoc2010-opengl/backends/fs/ds/ds-fs.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/fs/ds/ds-fs.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/fs/ds/ds-fs.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -631,7 +631,10 @@
 		return 0;
 
 	if ((handle == stderr) || (handle == stdout)) {
+#ifndef DISABLE_TEXT_CONSOLE
+		nocashMessage((char *) ptr);
 //		consolePrintf((char *) ptr);
+#endif
 		return size;
 	}
 

Modified: scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-fs.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-fs.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-fs.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -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 Common::BufferedSeekableReadStream(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 Common::BufferedWriteStream(stream, WRITE_BUFFER_SIZE, DisposeAfterUse::YES);
 }
 
 #endif //#ifdef __PSP__

Modified: scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -24,16 +24,11 @@
  */
 #ifdef __PSP__
 
-#include <pspiofilemgr_stat.h>
 #include <pspiofilemgr.h>
-#include <SDL/SDL_thread.h>
-#include <SDL/SDL_mutex.h>
 
 #include "backends/platform/psp/powerman.h"
 #include "backends/fs/psp/psp-stream.h"
 
-#include <errno.h>
-
 #define MIN2(a,b) ((a < b) ? a : b)
 #define MIN3(a,b,c) ( (a < b) ? (a < c ? a : c) : (b < c ? b : c) )
 
@@ -48,327 +43,237 @@
 #ifdef DEBUG_BUFFERS
 void printBuffer(byte *ptr, uint32 len) {
 	uint32 printLen = len <= 10 ? len : 10;
-	
+
 	for (int i = 0; i < printLen; i++) {
-		PSP_INFO_PRINT("%x ", ptr[i]);		
+		PSP_INFO_PRINT("%x ", ptr[i]);
 	}
-	
+
 	if (len > 10) {
 		PSP_INFO_PRINT("... ");
 		for (int i = len - 10; i < len; i++)
 			PSP_INFO_PRINT("%x ", ptr[i]);
 	}
-	
+
 	PSP_INFO_PRINT("\n");
 }
 #endif
 
+// Class PspIoStream ------------------------------------------------
 
-PSPIoStream::PSPIoStream(const Common::String &path, bool writeMode)
-		: StdioStream((void *)1), _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?
-
-	_handle = (void *)0;		// Need to do this since base class asserts not 0.
+	//assert(!path.empty());	// do we need this?
 }
 
-PSPIoStream::~PSPIoStream() {
+PspIoStream::~PspIoStream() {
 	DEBUG_ENTER_FUNC();
 
 	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
 
-	PowerMan.unregisterForSuspend(this); // Unregister with powermanager to be suspended
-									  // Must do this before fclose() or resume() will reopen.
+	PowerMan.unregisterForSuspend(this); 			// Unregister with powermanager to be suspended
+													// Must do this before fclose() or resume() will reopen.
+	sceIoClose(_handle);
 
-	fclose((FILE *)_handle);		  // We don't need a critical section. Worst case, the handle gets closed on its own
-	
-	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 = fopen(_path.c_str(), _writeMode ? "wb" : "rb"); 	// 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);
-	
-		// Allocate the cache
-		_cache = (char *)memalign(64, CACHE_SIZE);
+	_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;
 	}
 
+	// 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
 
 	PowerMan.endCriticalSection();
 
-	return _handle;
+	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;
-	
+
 	int32 posToSearchFor = 0;
 	switch (whence) {
 	case SEEK_CUR:
 		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;		
+
+	_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");
-	
-	
-	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);
-		
-		size_t ret = fread(_cache, 1, lenToCopyToCache, (FILE *)_handle);
-		if (ret != lenToCopyToCache) {
-			PSP_ERROR("in filling cache, failed to get 0x%x bytes. Only got 0x%x\n", lenToCopyToCache, ret);
-			_ferror = true;
-			clearerr((FILE *)_handle);
-		}
-		_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);
-		size_t ret = fread(destPtr, 1, lenFromFile, (FILE *)_handle);
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
 
-		_physicalPos += ret;	// Update pos
-		_pos = _physicalPos;
-
-		if (ret != lenFromFile) {	// error
-			PSP_ERROR("fread returned [0x%x] instead of len[0x%x]\n", ret, lenFromFile);
-			_ferror = true;
-			clearerr((FILE *)_handle);
-			_errorSource = 4;			
+	// 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;
 		}
-		_inCache = false;
-	}
 
+	int ret = sceIoRead(_handle, ptr, len);
+
 	PowerMan.endCriticalSection();
 
-#ifdef DEBUG_BUFFERS
-	printBuffer((byte *)ptr, len);
-#endif	
-		
-	return lenFromCache + lenFromFile;		// total of what was copied
-}
+	_physicalPos += ret;	// Update position
+	_pos = _physicalPos;
 
-// TODO: Test if seeking backwards/forwards has any effect on performance
-inline bool PSPIoStream::synchronizePhysicalPos() {
-	if (_pos != _physicalPos) {
-		if (fseek((FILE *)_handle, _pos - _physicalPos, SEEK_CUR) != 0)
-			return false;
-		_physicalPos = _pos;	
+	if (ret != (int)len) {	// error
+		PSP_ERROR("sceIoRead returned [0x%x] instead of len[0x%x]\n", ret, len);
+		_error = true;
+		_errorSource = 4;
 	}
-	
-	return true;
+	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
+	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x], ptr[%p], _pos[%x], _physPos[%x]\n", _path.c_str(), len, ptr, _pos, _physicalPos);
+
+	if (!len || _error)		// we actually get some calls with len == 0!
+		return 0;
+
+	_eos = false;			// we can't have eos with write
+
 	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
+		PSP_DEBUG_PRINT_FUNC("suspended\n");
 
-	PSP_DEBUG_PRINT_FUNC("filename[%s], len[0x%x]\n", _path.c_str(), len);
+	// check if we need to seek
+	if (_pos != _physicalPos)
+		if (!physicalSeekFromCur(_pos - _physicalPos)) {
+			_error = true;
+			return 0;
+		}
 
-	if (_ferror)
-		return 0;
-		
-	_eos = false;	// we can't have eos with write
-	synchronizePhysicalPos();
-	
-	size_t ret = fwrite(ptr, 1, len, (FILE *)_handle);
+	int ret = sceIoWrite(_handle, ptr, len);
 
-	// If we're making the file bigger, adjust the size
-	if (_physicalPos + (int)ret > _fileSize)
-		_fileSize = _physicalPos + ret;
-	_physicalPos += ret;
-	_pos = _physicalPos;
-	_inCache = false;
-	_cacheStartOffset = -1;	// invalidate cache
+	PowerMan.endCriticalSection();
 
-	if (ret != len) {	// Set error
-		_ferror = true;
-		clearerr((FILE *)_handle);
-		_pos = ftell((FILE *)_handle);	// Update pos
+	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() {
-	DEBUG_ENTER_FUNC();
-	// Enter critical section
-	if (PowerMan.beginCriticalSection())
-		PSP_DEBUG_PRINT_FUNC("Suspended\n");
-
-	int ret = fflush((FILE *)_handle);
-
-	if (ret != 0) {
-		_ferror = true;
-		clearerr((FILE *)_handle);
-		_errorSource = 6;
-		PSP_ERROR("fflush returned ret[%d]\n", ret);
-	}
-
-	PowerMan.endCriticalSection();
-
-	return (ret == 0);
+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;
@@ -382,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++;
 
@@ -393,8 +298,8 @@
 	}
 
 	if (_handle > 0) {
-		fclose((FILE *)_handle);		// close our file descriptor
-		_handle = (void *)0xFFFFFFFF;	// Set handle to non-null invalid value so makeFromPath doesn't return error
+		sceIoClose(_handle);		// close our file descriptor
+		_handle = 0xFFFFFFFF;		// Set handle to non-null invalid value so makeFromPath doesn't return error
 	}
 
 	return 0;
@@ -403,25 +308,25 @@
 /*
  *  Function to resume the IO stream (called by Power Manager)
  */
-int PSPIoStream::resume() {
+int PspIoStream::resume() {
 	DEBUG_ENTER_FUNC();
 	int ret = 0;
 	_suspendCount--;
 
 	// We reopen our file descriptor
-	_handle = fopen(_path.c_str(), _writeMode ? "wb" : "rb");
+	_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 = fseek((FILE *)_handle, _pos, SEEK_SET);
-		
+		ret = sceIoLseek32(_handle, _pos, PSP_SEEK_SET);
+
 		_physicalPos = _pos;
-		_inCache = false;
 
-		if (ret != 0) {		// Check for problem
+		if (ret < 0) {		// Check for problem
 			_errorSuspend = ResumeError;
 			_errorPos = _pos;
 			_errorHandle = _handle;
@@ -430,5 +335,4 @@
 	return ret;
 }
 
-
 #endif /* __PSP__ */

Modified: scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.h
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.h	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/fs/psp/psp-stream.h	2010-10-13 03:57:44 UTC (rev 53399)
@@ -26,58 +26,51 @@
 #ifndef PSPSTREAM_H_
 #define PSPSTREAM_H_
 
-#include "backends/fs/stdiostream.h"
+#include <pspkerneltypes.h>
 #include "backends/platform/psp/powerman.h"
-#include "common/list.h"
+//#include "common/list.h"
+#include "common/noncopyable.h"
+#include "common/stream.h"
+#include "common/str.h"
 
-/*
+/**
  *  Class to handle special suspend/resume needs of PSP IO Streams
  */
-class PSPIoStream : public StdioStream, 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 {
 		SuspendError = 2,
 		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;
-	void * _errorHandle;
+	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
 
@@ -93,6 +86,7 @@
 	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();		/* " " */
 };

Modified: scummvm/branches/gsoc2010-opengl/backends/graphics/sdl/sdl-graphics.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/graphics/sdl/sdl-graphics.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/graphics/sdl/sdl-graphics.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -61,6 +61,8 @@
 	{0, 0, 0}
 };
 
+DECLARE_TRANSLATION_ADDITIONAL_CONTEXT("Normal (no scaling)", "lowres")
+
 // Table of relative scalers magnitudes
 // [definedScale - 1][scaleFactor - 1]
 static ScalerProc *scalersMagn[3][3] = {
@@ -397,7 +399,7 @@
 	// available format, it will get one that is "cheap" to
 	// use.
 	const Graphics::PixelFormat RGBList[] = {
-#ifdef ENABLE_32BIT
+#ifdef USE_RGB_COLOR
 		// RGBA8888, ARGB8888, RGB888
 		Graphics::PixelFormat(4, 8, 8, 8, 8, 24, 16, 8, 0),
 		Graphics::PixelFormat(4, 8, 8, 8, 8, 16, 8, 0, 24),
@@ -411,7 +413,7 @@
 		Graphics::PixelFormat(2, 4, 4, 4, 4, 8, 4, 0, 12)
 	};
 	const Graphics::PixelFormat BGRList[] = {
-#ifdef ENABLE_32BIT
+#ifdef USE_RGB_COLOR
 		// ABGR8888, BGRA8888, BGR888
 		Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24),
 		Graphics::PixelFormat(4, 8, 8, 8, 8, 8, 16, 24, 0),
@@ -685,7 +687,7 @@
 	}
 
 	if (!bestMode) {
-		warning("Unable to enforce the desired aspect ratio!");
+		warning("Unable to enforce the desired aspect ratio");
 		return;
 	}
 	width = bestMode->w;
@@ -940,7 +942,7 @@
 #endif
 
 	// If the shake position changed, fill the dirty area with blackness
-	if (_currentShakePos != _newShakePos || 
+	if (_currentShakePos != _newShakePos ||
 		(_mouseNeedsRedraw && _mouseBackup.y <= _currentShakePos)) {
 		SDL_Rect blackrect = {0, 0, _videoMode.screenWidth * _videoMode.scaleFactor, _newShakePos * _videoMode.scaleFactor};
 
@@ -1561,9 +1563,11 @@
 void SdlGraphicsManager::warpMouse(int x, int y) {
 	int y1 = y;
 
-	// Don't change mouse position, when mouse is outside of our window (in case of windowed mode)
-	if (!(SDL_GetAppState( ) & SDL_APPMOUSEFOCUS))
+	// Don't change actual mouse position, when mouse is outside of our window (in case of windowed mode)
+	if (!(SDL_GetAppState( ) & SDL_APPMOUSEFOCUS)) {
+		setMousePos(x, y); // but change game cursor position
 		return;
+	}
 
 	if (_videoMode.aspectRatioCorrection && !_overlayVisible)
 		y1 = real2Aspect(y);

Modified: scummvm/branches/gsoc2010-opengl/backends/midi/timidity.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/midi/timidity.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/midi/timidity.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -34,8 +34,10 @@
  *
  */
 
-#if defined (UNIX)
+#include "common/scummsys.h"
 
+#if defined(USE_TIMIDITY)
+
 #include "common/util.h"
 #include "common/endian.h"
 #include "common/str.h"

Modified: scummvm/branches/gsoc2010-opengl/backends/midi/windows.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/midi/windows.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/midi/windows.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -106,7 +106,7 @@
 		return;
 
 	if (WaitForSingleObject (_streamEvent, 2000) == WAIT_TIMEOUT) {
-		warning ("Could not send SysEx - MMSYSTEM is still trying to send data.");
+		warning ("Could not send SysEx - MMSYSTEM is still trying to send data");
 		return;
 	}
 

Modified: scummvm/branches/gsoc2010-opengl/backends/platform/android/android.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/platform/android/android.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/android/android.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -400,7 +400,7 @@
 	jsize len = env->GetArrayLength(jbuf);
 	jbyte* buf = env->GetByteArrayElements(jbuf, NULL);
 	if (buf == NULL) {
-		warning("Unable to get Java audio byte array. Skipping.");
+		warning("Unable to get Java audio byte array. Skipping");
 		return;
 	}
 	Audio::MixerImpl* mixer =
@@ -1135,7 +1135,7 @@
 
 	pthread_mutex_t *mutex = new pthread_mutex_t;
 	if (pthread_mutex_init(mutex, &attr) != 0) {
-		warning("pthread_mutex_init() failed!");
+		warning("pthread_mutex_init() failed");
 		delete mutex;
 		return NULL;
 	}
@@ -1144,18 +1144,18 @@
 
 void OSystem_Android::lockMutex(MutexRef mutex) {
 	if (pthread_mutex_lock((pthread_mutex_t*)mutex) != 0)
-		warning("pthread_mutex_lock() failed!");
+		warning("pthread_mutex_lock() failed");
 }
 
 void OSystem_Android::unlockMutex(MutexRef mutex) {
 	if (pthread_mutex_unlock((pthread_mutex_t*)mutex) != 0)
-		warning("pthread_mutex_unlock() failed!");
+		warning("pthread_mutex_unlock() failed");
 }
 
 void OSystem_Android::deleteMutex(MutexRef mutex) {
 	pthread_mutex_t* m = (pthread_mutex_t*)mutex;
 	if (pthread_mutex_destroy(m) != 0)
-		warning("pthread_mutex_destroy() failed!");
+		warning("pthread_mutex_destroy() failed");
 	else
 		delete m;
 }
@@ -1330,7 +1330,7 @@
 static void ScummVM_setSurfaceSize(JNIEnv* env, jobject self,
 								   jint width, jint height) {
 	OSystem_Android* cpp_obj = OSystem_Android::fromJavaObject(env, self);
-	cpp_obj->setSurfaceSize(width, height);	
+	cpp_obj->setSurfaceSize(width, height);
 }
 
 const static JNINativeMethod gMethods[] = {

Modified: scummvm/branches/gsoc2010-opengl/backends/platform/dc/selector.cpp
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/platform/dc/selector.cpp	2010-10-13 03:49:54 UTC (rev 53398)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dc/selector.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -272,7 +272,7 @@
 			 games[curr_game].dir,
 			 games[curr_game].language,
 			 games[curr_game].platform, games, curr_game)) {
-	    
+
 	    strcpy(games[curr_game].text, ge->description().c_str());
 #if 0
 	    printf("Registered game <%s> (l:%d p:%d) in <%s> <%s> because of <%s> <*>\n",

Deleted: scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX
===================================================================
--- scummvm/trunk/backends/platform/dingux/README.DINGUX	2010-10-13 00:53:53 UTC (rev 53396)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX	2010-10-13 03:57:44 UTC (rev 53399)
@@ -1,68 +0,0 @@
-ScummVM-DINGUX README
-==============================================================================
-
-Requirements
-============
-- Dingoo A320/A330
-- Dingux installed on SD card
-- Fixed Tremor libs in dingux rootfs (see below)
-
-Controls
-============
-- Dpad: move mouse cursor
-- Y: left mouse button click
-- A: '0' key
-- B: right mouse button click
-- X: '.' key (skips dialogue line in some engines)
-- Left Trigger: open global menu
-- Right Trigger: ESC button, scene skip in some engines
-- Select: opens virtual keyboard
-- Start: F5 key, game menu in some engines
-
-Installation from binaries
-==============================
-Mount your dingux SD card in your pc, then copy the directory "scummvm" found in
-the release package to a directory inside /pathtosdcard/local/dirofyourchoice
-(on windows it would be SDLETTER:\local\dirofyourchoice).
-At this point is sufficient to point your launcher (eg. gmenu2x) to scummvm.gpe
-file included into the scummvm directory you copied to the SD card, and then launch it.
-
-Building from binaries
-==============================
-* ToDO *
-
-Kernel and rootfs WARNINGS
-==============================
-All the dingux root images (rootfs) i found floating on the net have
-broken tremor libraries, which make scummvm crash in a bad way.
-One solution is to replace the libraries in your rootfs by injecting these fixed ones:
-http://hkzlab.ipv7.net/files/misc/dingux/dingux_fixed_tremor_libs.zip
-After having added these libs, scummvm should work on your standard dingux kernel,
-but this doesn't mean it will work perfectly:
-non-opendingux kernels doesn't have lcd double buffering leading to a lot of annoying
-tearing on screen.
-
-The best way to address all the problems in one shot, is to use an opendingux kernel for
-your dingoo, which has some interesting advantages:
-- The kernel gets updated and kept in sync with main linux tree
-- Double buffering and centering of screen image
-- Support for swap on compressed ram
-I have prepared a rootfs image with fixed libs and swap-on-zram to use together with opendingux kernels:
-http://hkzlab.ipv7.net/files/misc/dingux/opendingux/opendingux_kernel_rootfs.zip
-The kernel and rootfs images in the zip file is what i use for developing scummvm on dingux.
-
-BTW, i have built images for the A330 and A320 with ILI9325 controllers too,
-but these version aren't tested (i have an A320 with ILI9331, but if someone wants to
-donate an A330 to a poor scummvm developer so i can try the port there too... :P)
-
-If you need a launcher with opendingux cpu frequency scaler support, you can find gmenu2x here:
-http://www.treewalker.org/dingux/cpufreq.html
-
-I've also prepared a rootfs image for use on normal dingux kernels (non-opendingux ones).
-It's based on elta's rootfs image with just the fixed libs replaced.
-http://hkzlab.ipv7.net/files/misc/dingux/normal_dingux/rootfs_elta_fixtremor.zip
-I still raccomand the use of opendingux kernel + rootfs, but if you don't, this roofs
-image plus another kernel (eg. SiENcE's one) should be do the job.
-
-Enjoy
-

Copied: scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX (from rev 53396, scummvm/trunk/backends/platform/dingux/README.DINGUX)
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX	                        (rev 0)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/README.DINGUX	2010-10-13 03:57:44 UTC (rev 53399)
@@ -0,0 +1,68 @@
+ScummVM-DINGUX README
+==============================================================================
+
+Requirements
+============
+- Dingoo A320/A330
+- Dingux installed on SD card
+- Fixed Tremor libs in dingux rootfs (see below)
+
+Controls
+============
+- Dpad: move mouse cursor
+- Y: left mouse button click
+- A: '0' key
+- B: right mouse button click
+- X: '.' key (skips dialogue line in some engines)
+- Left Trigger: open global menu
+- Right Trigger: ESC button, scene skip in some engines
+- Select: opens virtual keyboard
+- Start: F5 key, game menu in some engines
+
+Installation from binaries
+==============================
+Mount your dingux SD card in your pc, then copy the directory "scummvm" found in
+the release package to a directory inside /pathtosdcard/local/dirofyourchoice
+(on windows it would be SDLETTER:\local\dirofyourchoice).
+At this point is sufficient to point your launcher (eg. gmenu2x) to scummvm.gpe
+file included into the scummvm directory you copied to the SD card, and then launch it.
+
+Building from binaries
+==============================
+* ToDO *
+
+Kernel and rootfs WARNINGS
+==============================
+All the dingux root images (rootfs) i found floating on the net have
+broken tremor libraries, which make scummvm crash in a bad way.
+One solution is to replace the libraries in your rootfs by injecting these fixed ones:
+http://hkzlab.ipv7.net/files/misc/dingux/dingux_fixed_tremor_libs.zip
+After having added these libs, scummvm should work on your standard dingux kernel,
+but this doesn't mean it will work perfectly:
+non-opendingux kernels doesn't have lcd double buffering leading to a lot of annoying
+tearing on screen.
+
+The best way to address all the problems in one shot, is to use an opendingux kernel for
+your dingoo, which has some interesting advantages:
+- The kernel gets updated and kept in sync with main linux tree
+- Double buffering and centering of screen image
+- Support for swap on compressed ram
+I have prepared a rootfs image with fixed libs and swap-on-zram to use together with opendingux kernels:
+http://hkzlab.ipv7.net/files/misc/dingux/opendingux/opendingux_kernel_rootfs.zip
+The kernel and rootfs images in the zip file is what i use for developing scummvm on dingux.
+
+BTW, i have built images for the A330 and A320 with ILI9325 controllers too,
+but these version aren't tested (i have an A320 with ILI9331, but if someone wants to
+donate an A330 to a poor scummvm developer so i can try the port there too... :P)
+
+If you need a launcher with opendingux cpu frequency scaler support, you can find gmenu2x here:
+http://www.treewalker.org/dingux/cpufreq.html
+
+I've also prepared a rootfs image for use on normal dingux kernels (non-opendingux ones).
+It's based on elta's rootfs image with just the fixed libs replaced.
+http://hkzlab.ipv7.net/files/misc/dingux/normal_dingux/rootfs_elta_fixtremor.zip
+I still raccomand the use of opendingux kernel + rootfs, but if you don't, this roofs
+image plus another kernel (eg. SiENcE's one) should be do the job.
+
+Enjoy
+

Deleted: scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux-events.cpp	2010-10-13 00:53:53 UTC (rev 53396)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -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) { // key '0'
-		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-opengl/backends/platform/dingux/dingux-events.cpp (from rev 53396, scummvm/trunk/backends/platform/dingux/dingux-events.cpp)
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-events.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -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) { // key '0'
+		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-opengl/backends/platform/dingux/dingux-graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/dingux/dingux-graphics.cpp	2010-10-13 00:53:53 UTC (rev 53396)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -1,468 +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() {
-
-	// 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
-

Copied: scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp (from rev 53396, scummvm/trunk/backends/platform/dingux/dingux-graphics.cpp)
===================================================================
--- scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp	                        (rev 0)
+++ scummvm/branches/gsoc2010-opengl/backends/platform/dingux/dingux-graphics.cpp	2010-10-13 03:57:44 UTC (rev 53399)
@@ -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;

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