[Scummvm-cvs-logs] SF.net SVN: scummvm:[33486] scummvm/branches/gsoc2008-gui

Tanoku at users.sourceforge.net Tanoku at users.sourceforge.net
Fri Aug 1 10:55:42 CEST 2008


Revision: 33486
          http://scummvm.svn.sourceforge.net/scummvm/?rev=33486&view=rev
Author:   Tanoku
Date:     2008-08-01 08:55:21 +0000 (Fri, 01 Aug 2008)

Log Message:
-----------
Merged revisions 32701,32705,32727-32728,32730-32733,32737-32738,32742,32744-32745,32747,32750-32759,32762-32764,32769,32777,32783,32785-32786,32789-32791,32798-32799,32801-32807,32809-32812,32816-32817,32819-32821,32823-32830,32832-32836,32838-32844,32846-32850,32852-32854,32858-32859,32865-32868,32873-32874,32879,32883,32895,32899,32902-32904,32910-32912,32923-32924,32930-32931,32938,32940,32948-32949,32951,32960-32964,32966-32970,32972-32974,32976,32978,32983,32986-32990,32992,32994,33002-33004,33006-33007,33009-33010,33014,33017,33021-33023,33030,33033,33052-33053,33056-33058,33061-33064,33068,33070,33072,33075,33078-33079,33083,33086-33087,33089,33094-33096,33098-33099,33104,33108-33109,33114-33117,33120,33135-33146,33160,33162,33165,33167-33169,33188-33189,33191-33193,33196,33198,33202-33203,33206,33210,33212,33218-33220,33222,33224-33226,33229-33243,33246,33248-33250,33252,33258-33261,33263,33266,33270,33272-33283,33285,33287-33290,33295-33298,33321,33325-33330,33332-33335,33337-33340,33342,33345,33347,33349-33350,33352-33357,33359-33367,33369-33371,33373,33375-33377,33379-33380,33383-33385,33387-33389,33392-33394,33400-33402,33404-33405,33407-33410,33412-33416,33418-33419,33425-33427,33432,33436-33438,33444,33446,33452-33453,33455-33459,33463-33464,33466-33471,33473-33474,33478 via svnmerge from 
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

................
  r32701 | Tanoku | 2008-06-14 16:44:06 +0200 (Sat, 14 Jun 2008) | 1 line
  
  Updated MS Visual Studio project files for MusicPlugin.
................
  r32705 | sev | 2008-06-15 09:15:58 +0200 (Sun, 15 Jun 2008) | 2 lines
  
  Make null plugin compilable
................
  r32727 | thebluegr | 2008-06-17 20:27:03 +0200 (Tue, 17 Jun 2008) | 1 line
  
  Removed duplicate code
................
  r32728 | thebluegr | 2008-06-17 23:52:58 +0200 (Tue, 17 Jun 2008) | 1 line
  
  Possible fix for bug  #1979086 - "DRASCULA: Wrong language detection(?) and crash"
................
  r32730 | buddha_ | 2008-06-18 05:31:13 +0200 (Wed, 18 Jun 2008) | 1 line
  
  Fixed a small discrepancy in Delphine unpacker's command 00b's documentation (Parameter range is 1..8, not 1..9).
................
  r32731 | john_doe | 2008-06-18 13:01:51 +0200 (Wed, 18 Jun 2008) | 4 lines
  
  - Fixed sprite drawing in Rodney's Funscreen
  - Handle mouse button up events and event number fixes in MadeEngine::handleEvents()
  - Use milliseconds -> game ticks calculation based on Windows version of the original engine
  - "Rodney's Fun Screen" -> "Rodney's Funscreen"
................
  r32732 | fingolfin | 2008-06-18 21:46:50 +0200 (Wed, 18 Jun 2008) | 1 line
  
  Setting svn:ignore for backends/fs/wii
................
  r32733 | fingolfin | 2008-06-18 23:02:52 +0200 (Wed, 18 Jun 2008) | 1 line
  
  Renamed M4Surface::empty() to clear() (two reason: empty is not a verb, and in class String it is used for a bool property)
................
  r32737 | drmccoy | 2008-06-19 18:27:49 +0200 (Thu, 19 Jun 2008) | 2 lines
  
  Only try playing object videos when the game version supports that (only Woodruff, for now)
................
  r32738 | drmccoy | 2008-06-20 00:54:17 +0200 (Fri, 20 Jun 2008) | 2 lines
  
  Fixed a palette issue in Lost in Time
................
  r32742 | cpage88 | 2008-06-20 22:20:46 +0200 (Fri, 20 Jun 2008) | 117 lines
  
  Merged revisions 31992,32088,32094,32129,32203,32208,32219,32236,32329,32332-32333,32357,32504,32519,32525,32566,32578,32641-32642,32673,32675,32677,32679-32680,32718-32719,32721,32739 via svnmerge from 
  https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/branches/gsoc2008-rtl
  
  ........
    r31992 | cpage88 | 2008-05-10 18:44:46 -0500 (Sat, 10 May 2008) | 1 line
    
    Modified game loop to return to launcher, codeblocks layouts update 1.5->1.6
  ........
    r32088 | cpage88 | 2008-05-13 11:09:57 -0500 (Tue, 13 May 2008) | 1 line
    
    used memmove() instead of memcpy() to fix memory overlap error
  ........
    r32094 | cpage88 | 2008-05-13 17:59:19 -0500 (Tue, 13 May 2008) | 1 line
    
    Fixed memory leak by deallocating memory used by window->iconPtr
  ........
    r32129 | cpage88 | 2008-05-14 18:26:32 -0500 (Wed, 14 May 2008) | 1 line
    
    Fixed memory leak when returning to launcher in AGOS engine by properly creating and deleting midi driver pointer
  ........
    r32203 | cpage88 | 2008-05-20 16:40:53 -0500 (Tue, 20 May 2008) | 1 line
    
    AGOS Engine: Began implementation for a new quit event which will cleanly return to the launcher.  This replaces the old shutdown() method within delay()
  ........
    r32208 | cpage88 | 2008-05-21 13:52:27 -0500 (Wed, 21 May 2008) | 1 line
    
    AGOS: Fixed two memory leaks when returning to the launcher (_mouseData and _zoneBuffers)
  ........
    r32219 | cpage88 | 2008-05-22 18:40:36 -0500 (Thu, 22 May 2008) | 1 line
    
    AGOS: Fixed a memory leak from earlier in a better way
  ........
    r32236 | cpage88 | 2008-05-23 19:08:13 -0500 (Fri, 23 May 2008) | 1 line
    
    AGI: Fixed two memory leaks when returning to launcher from AGI Engine
  ........
    r32329 | cpage88 | 2008-05-27 15:15:36 -0500 (Tue, 27 May 2008) | 1 line
    
    AGI: Modified AGI Engine to shutdown without using system->quit
  ........
    r32332 | cpage88 | 2008-05-27 18:26:48 -0500 (Tue, 27 May 2008) | 1 line
    
    CINE: Fixed two memory leaks when shutting down the CINE engine
  ........
    r32333 | cpage88 | 2008-05-27 19:52:45 -0500 (Tue, 27 May 2008) | 1 line
    
    CINE: Initialize exitEngine to 0 in mainLoop() to allow replay after returning to the launcher
  ........
    r32357 | cpage88 | 2008-05-28 18:28:11 -0500 (Wed, 28 May 2008) | 1 line
    
    LURE: Fixed some memory leaks when returning to the launcher from the LURE engine
  ........
    r32504 | cpage88 | 2008-06-02 16:08:49 -0500 (Mon, 02 Jun 2008) | 1 line
    
    PARA: Got rid of calls to system->quit() so that the Parallaction engine can return to the launcher.  Also fixed a couple of memory leaks.
  ........
    r32519 | cpage88 | 2008-06-03 13:24:54 -0500 (Tue, 03 Jun 2008) | 1 line
    
    PARA: Fixed some memory leaks
  ........
    r32525 | cpage88 | 2008-06-04 00:21:47 -0500 (Wed, 04 Jun 2008) | 1 line
    
    QUEEN: Modified engine to use a quit flag instead of system->quit() in order to return to the launcher
  ........
    r32566 | cpage88 | 2008-06-05 19:34:47 -0500 (Thu, 05 Jun 2008) | 1 line
    
    TOUCHE: Fixed a memory leak
  ........
    r32578 | cpage88 | 2008-06-06 11:40:39 -0500 (Fri, 06 Jun 2008) | 1 line
    
    SKY: Fixed a memory leak in SKY engine
  ........
    r32641 | cpage88 | 2008-06-09 17:26:05 -0500 (Mon, 09 Jun 2008) | 1 line
    
    TOUCHE: Reverted some comments that were used for testing purposes
  ........
    r32642 | cpage88 | 2008-06-09 18:15:17 -0500 (Mon, 09 Jun 2008) | 1 line
    
    Implemented popAllCursors() in CursorManager to ensure that all unnecessary cursors are removed from the cursor stack when returning to the launcher
  ........
    r32673 | cpage88 | 2008-06-12 11:58:02 -0500 (Thu, 12 Jun 2008) | 1 line
    
    SAGA: Fixed memory leaks in the SAGA engine
  ........
    r32675 | cpage88 | 2008-06-12 13:11:09 -0500 (Thu, 12 Jun 2008) | 1 line
    
    LURE: Fixed memory leaks in the LURE engine
  ........
    r32677 | cpage88 | 2008-06-12 13:52:43 -0500 (Thu, 12 Jun 2008) | 1 line
    
    CINE: Fixed memory leaks in the CINE engine
  ........
    r32679 | cpage88 | 2008-06-12 14:34:32 -0500 (Thu, 12 Jun 2008) | 1 line
    
    AGOS: Fixed a memory leak in the AGOS engine
  ........
    r32680 | cpage88 | 2008-06-12 14:43:54 -0500 (Thu, 12 Jun 2008) | 1 line
    
    SCUMM: Fixed a memory leak in the SCUMM engine
  ........
    r32718 | cpage88 | 2008-06-16 12:34:58 -0500 (Mon, 16 Jun 2008) | 1 line
    
    AGOS: Found a system->quit(), changed to _quit=true
  ........
    r32719 | cpage88 | 2008-06-16 13:47:32 -0500 (Mon, 16 Jun 2008) | 1 line
    
    Fixed a problem where the function that I previously implemented, popAllCursors(), was causing the mouse cursor to disapear
  ........
    r32721 | cpage88 | 2008-06-16 14:55:59 -0500 (Mon, 16 Jun 2008) | 1 line
    
    Cleaned up some unnecessary comments
  ........
    r32739 | cpage88 | 2008-06-20 14:38:38 -0500 (Fri, 20 Jun 2008) | 1 line
    
    Reverting changes to codeblocks layouts made in revision 31992
  ........
................
  r32744 | peres001 | 2008-06-22 07:42:22 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Circular references between Zone/Animation and Command are now manually removed, to allow the objects - which are stored into SharedPtr's - to be deallocated.
................
  r32745 | fingolfin | 2008-06-22 12:26:18 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Disabled return to launcher on trunk again
................
  r32747 | thebluegr | 2008-06-22 12:29:36 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Updated NEWS about Drascula support
................
  r32750 | athrxx | 2008-06-22 14:31:05 +0200 (Sun, 22 Jun 2008) | 1 line
  
  this should fix bug #1997149: KYRA2: no text in spellbook
................
  r32751 | lordhoto | 2008-06-22 14:36:38 +0200 (Sun, 22 Jun 2008) | 2 lines
  
  Cleanup.
................
  r32752 | lordhoto | 2008-06-22 14:39:40 +0200 (Sun, 22 Jun 2008) | 2 lines
  
  Update comment.
................
  r32753 | athrxx | 2008-06-22 14:41:46 +0200 (Sun, 22 Jun 2008) | 1 line
  
  missed this in last commit (bug fix for #1997149)
................
  r32754 | lordhoto | 2008-06-22 14:43:32 +0200 (Sun, 22 Jun 2008) | 2 lines
  
  Cleanup.
................
  r32755 | lordhoto | 2008-06-22 15:26:22 +0200 (Sun, 22 Jun 2008) | 2 lines
  
  Fixed getTotalPlayTime implementation for MP3InputStream.
................
  r32756 | peres001 | 2008-06-22 16:31:45 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Fixed leak when loading sounds for Amiga version of Nippon Safes.
................
  r32757 | peres001 | 2008-06-22 16:46:08 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Added constructor and destructor to Dialogue, thus fixing a long standing leak.
................
  r32758 | thebluegr | 2008-06-22 19:36:14 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Fixed 2 MSVC warnings (potentially undefined behavior and possibly uninitialized variable used)
................
  r32759 | thebluegr | 2008-06-22 19:57:06 +0200 (Sun, 22 Jun 2008) | 1 line
  
  Turned off overzealous warning 4800 - "forcing value to bool 'true' or 'false' (performance warning)"
................
  r32762 | peres001 | 2008-06-24 15:21:22 +0200 (Tue, 24 Jun 2008) | 1 line
  
  Fix for bug #2001193. Character confirmation screen didn't appear and game crashed because too many strings were added to the draw list.
................
  r32763 | lordhoto | 2008-06-24 15:59:48 +0200 (Tue, 24 Jun 2008) | 2 lines
  
  Added const to some static data.
................
  r32764 | jvprat | 2008-06-24 16:23:26 +0200 (Tue, 24 Jun 2008) | 2 lines
  
  Fixed mktemp usage in BSD systems (as noted in bug #2000931)
................
  r32769 | buddha_ | 2008-06-24 22:44:37 +0200 (Tue, 24 Jun 2008) | 7 lines
  
  Fixed opcodes:
  - 0xA0: o2_addGfxElementType20 (Was o2_addGfxElementA0)
  Implemented opcodes:
  - 0xA1: o2_removeGfxElementType20 (Was o2_removeGfxElementA0)
  - 0xA2: o2_addGfxElementType21 (Was o2_opA2)
  - 0xA3: o2_removeGfxElementType21 (Was o2_opA3)
  NOTE: Drawing of type 21 overlay elements isn't coded yet.
................
  r32777 | thebluegr | 2008-06-25 10:36:07 +0200 (Wed, 25 Jun 2008) | 1 line
  
  Possible fix for (for the drascula engine) for bug #2001583 - "WINCE: CRUISE and DRASCULA engines can not be compiled"
................
  r32783 | thebluegr | 2008-06-25 14:02:34 +0200 (Wed, 25 Jun 2008) | 1 line
  
  Added patch from bug report #2001189 - "DRASCULA: Wrong intro music in Spanish version"
................
  r32785 | buddha_ | 2008-06-25 17:09:24 +0200 (Wed, 25 Jun 2008) | 5 lines
  
  Implemented opcode:
  - 0x8D: o2_op8D (Didn't come up with a descriptive name yet)
  Compares ranges of x, y and mask parameters between two objects.
  Possibly some kind of an intersection testing function?
................
  r32786 | buddha_ | 2008-06-25 19:14:44 +0200 (Wed, 25 Jun 2008) | 4 lines
  
  Implemented opcode:
  - 0x82: o2_modifySeqListElement (Was o2_op82)
  Seeks a matching element from the seqList and modifies its values.
................
  r32789 | buddha_ | 2008-06-25 20:51:44 +0200 (Wed, 25 Jun 2008) | 1 line
  
  Added FIXME about the broken implementation of opcode 0x9A (o2_wasZoneChecked).
................
  r32790 | buddha_ | 2008-06-25 23:57:08 +0200 (Wed, 25 Jun 2008) | 5 lines
  
  Implemented support for zoneQuery (Operation Stealth specific).
  Fixed opcodes (related to zoneQuery):
  - 0x08: o1_checkCollision
  - 0x9A: o2_wasZoneChecked
  NOTE: Savegame support for the zoneQuery data is broken
................
  r32791 | buddha_ | 2008-06-26 00:13:18 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Fix for GCC warning (Warned about testing x >= 0 when x is unsigned and therefore the test is always true).
................
  r32798 | cyx | 2008-06-26 12:12:12 +0200 (Thu, 26 Jun 2008) | 1 line
  
  moved midi driver object creation to MidiPlayer class (to match delete call)
................
  r32799 | cyx | 2008-06-26 12:12:47 +0200 (Thu, 26 Jun 2008) | 1 line
  
  fix possible oob access
................
  r32801 | buddha_ | 2008-06-26 17:16:15 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Comments update.
................
  r32802 | buddha_ | 2008-06-26 17:44:26 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Comments update.
................
  r32803 | anotherguest | 2008-06-26 18:51:02 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Fixed Symbian buildsystem for new defines. Fixed ARM asm syntax for Symbian build.
................
  r32804 | buddha_ | 2008-06-26 19:29:21 +0200 (Thu, 26 Jun 2008) | 4 lines
  
  Fixed opcode:
  - 0x83: o2_isSeqRunning (Should it be named o2_isSeqNotRunning?)
  -- Added previously missing test part
  -- Negated the result (It was backwards before!)
................
  r32805 | anotherguest | 2008-06-26 20:31:33 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Changed default paths
................
  r32806 | anotherguest | 2008-06-26 20:45:46 +0200 (Thu, 26 Jun 2008) | 1 line
  
  Remove inclusion of .o in mmp.in
................
  r32807 | athrxx | 2008-06-26 21:42:59 +0200 (Thu, 26 Jun 2008) | 3 lines
  
  - improved hof music support for fm-towns (driver for *.twn tracks) (still needs quite some work)
  - some PC-98 music support since it uses a very similar driver, but this can't be considered working yet)
  - Kyra 1 PC-98 music doen't work at all since I haven't figured out yet how to turn track numbers into the corresponding music file names (might require a hard coded track map)
................
  r32809 | drmccoy | 2008-06-26 21:56:18 +0200 (Thu, 26 Jun 2008) | 2 lines
  
  Fixing compilation for me. There are still lots of "cast casts away constness" warnings, though
................
  r32810 | athrxx | 2008-06-26 22:13:04 +0200 (Thu, 26 Jun 2008) | 1 line
  
  cleanup
................
  r32811 | athrxx | 2008-06-26 22:30:43 +0200 (Thu, 26 Jun 2008) | 1 line
  
  more cleanup
................
  r32812 | athrxx | 2008-06-26 22:43:23 +0200 (Thu, 26 Jun 2008) | 1 line
  
  fix bad const casts
................
  r32816 | buddha_ | 2008-06-27 01:30:45 +0200 (Fri, 27 Jun 2008) | 1 line
  
  Implemented Operation Stealth's version of addOverlay(objectIndex, overlayType).
................
  r32817 | john_doe | 2008-06-27 11:57:38 +0200 (Fri, 27 Jun 2008) | 2 lines
  
  - Fixed umlauts in printText
  - Don't exit when a pmv video couldn't be found
................
  r32819 | athrxx | 2008-06-28 15:13:37 +0200 (Sat, 28 Jun 2008) | 2 lines
  
  - HOF: bug fix for music driver
  - KYRA1 PC98: fix music file selection
................
  r32820 | peres001 | 2008-06-28 15:31:58 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Added comment for fix for bug #2001193.
................
  r32821 | athrxx | 2008-06-28 15:40:03 +0200 (Sat, 28 Jun 2008) | 1 line
  
  hof: remove debug code
................
  r32823 | joostp | 2008-06-28 15:53:39 +0200 (Sat, 28 Jun 2008) | 2 lines
  
  add getFilesystemFactory() method to null backend
................
  r32824 | fingolfin | 2008-06-28 16:14:16 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Removed OSystem::getFilesystemFactory() default implentation, as announced
................
  r32825 | fingolfin | 2008-06-28 17:00:27 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Removed dead X11 backend
................
  r32826 | fingolfin | 2008-06-28 17:13:54 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Removed obsolete ::clearSoundCallback() code
................
  r32827 | fingolfin | 2008-06-28 17:27:40 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Doxygenified a comment
................
  r32828 | fingolfin | 2008-06-28 17:28:29 +0200 (Sat, 28 Jun 2008) | 1 line
  
  Patch ##1956946 (Audio::Mixer internal API revision) with some tweaks
................
  r32829 | athrxx | 2008-06-28 17:36:50 +0200 (Sat, 28 Jun 2008) | 1 line
  
  - implement music fading for Hof FM-Towns
................
  r32830 | eriktorbjorn | 2008-06-28 18:00:04 +0200 (Sat, 28 Jun 2008) | 2 lines
  
  Fixed warning. (Hopefully without breaking anything.)
................
  r32832 | marcus_c | 2008-06-29 00:16:51 +0200 (Sun, 29 Jun 2008) | 1 line
  
  Set $(DEPDIR).
................
  r32833 | peres001 | 2008-06-29 11:30:32 +0200 (Sun, 29 Jun 2008) | 1 line
  
  Changed all remaining code to use the GfxObj class to keep frames data. This allows for more uniform processing during rendering, and also fixes the display of dialogue faces for BRA.
................
  r32834 | peres001 | 2008-06-29 11:56:44 +0200 (Sun, 29 Jun 2008) | 1 line
  
  Merged the three render lists (for animations, doors and objects) into a single one.
................
  r32835 | djwillis | 2008-06-29 12:16:20 +0200 (Sun, 29 Jun 2008) | 1 line
  
  Small GP2X tidy (mostly svn:executable on scripts) and fixes needed to reflect "Patch ##1956946 (Audio::Mixer internal API revision)"
................
  r32836 | marcus_c | 2008-06-29 13:51:47 +0200 (Sun, 29 Jun 2008) | 1 line
  
  New Mixer API.
................
  r32838 | marcus_c | 2008-06-29 14:10:38 +0200 (Sun, 29 Jun 2008) | 1 line
  
  Updated to use new EngineMan.detectGames() API.
................
  r32839 | knakos | 2008-06-29 16:40:41 +0200 (Sun, 29 Jun 2008) | 1 line
  
  finish up new mixer changes
................
  r32840 | knakos | 2008-06-29 16:41:44 +0200 (Sun, 29 Jun 2008) | 1 line
  
  fix some quirks of the newer build system
................
  r32841 | athrxx | 2008-06-29 17:25:45 +0200 (Sun, 29 Jun 2008) | 2 lines
  
  - some more work on the Hof FM-Towns/PC98 music driver
  - move channels to a separate class
................
  r32842 | athrxx | 2008-06-29 17:59:35 +0200 (Sun, 29 Jun 2008) | 1 line
  
  cleanup
................
  r32843 | athrxx | 2008-06-29 18:07:29 +0200 (Sun, 29 Jun 2008) | 1 line
  
  fix warning
................
  r32844 | knakos | 2008-06-29 18:58:27 +0200 (Sun, 29 Jun 2008) | 1 line
  
  adding a fixme
................
  r32846 | joostp | 2008-06-30 01:36:44 +0200 (Mon, 30 Jun 2008) | 2 lines
  
  changes required for new mixer API + implement getMillis() and delayMillis() using gettimeofday() and usleep() resp.
................
  r32847 | peres001 | 2008-06-30 03:36:50 +0200 (Mon, 30 Jun 2008) | 1 line
  
  Small cleanup/shuffling of Gfx code.
................
  r32848 | buddha_ | 2008-06-30 05:33:08 +0200 (Mon, 30 Jun 2008) | 1 line
  
  Implemented resetGfxEntityEntry and made it used where appropriate (The function wasn't very easy to reverse engineer so it may have flaws still, but let's hope it doesn't ;-)).
................
  r32849 | thebluegr | 2008-06-30 10:46:20 +0200 (Mon, 30 Jun 2008) | 1 line
  
  Updated MSVC project files for commit #32828
................
  r32850 | buddha_ | 2008-06-30 19:24:23 +0200 (Mon, 30 Jun 2008) | 1 line
  
  Fixed addAni (A test before using resetGfxEntityEntry was incorrect). Also added comments and checked that most 8-bit values used in this function are used as signed integers.
................
  r32852 | buddha_ | 2008-06-30 20:15:34 +0200 (Mon, 30 Jun 2008) | 1 line
  
  Removed TODO from checkCollision: Updating zoneQuery each time checkCollision is called seems to be fine.
................
  r32853 | anotherguest | 2008-06-30 21:10:32 +0200 (Mon, 30 Jun 2008) | 1 line
  
  del instead of rm command
................
  r32854 | athrxx | 2008-06-30 23:55:08 +0200 (Mon, 30 Jun 2008) | 2 lines
  
  - this fixes Hof PC98 music initialization
  - music sounds exactly like FM-Towns for now
................
  r32858 | lordhoto | 2008-07-01 01:39:56 +0200 (Tue, 01 Jul 2008) | 2 lines
  
  Added support for Spanish fan translation of kyra3 (See fr #1994040 "KYRA3: Add support for Spanish fan translation").
................
  r32859 | lordhoto | 2008-07-01 01:44:33 +0200 (Tue, 01 Jul 2008) | 2 lines
  
  Fix game flags for detection entries of installed kyra3 versions.
................
  r32865 | fingolfin | 2008-07-01 12:33:25 +0200 (Tue, 01 Jul 2008) | 1 line
  
  Fixed unitialized variables
................
  r32866 | dreammaster | 2008-07-01 13:46:29 +0200 (Tue, 01 Jul 2008) | 1 line
  
  Made corrections to the Italian strings
................
  r32867 | dreammaster | 2008-07-01 13:48:06 +0200 (Tue, 01 Jul 2008) | 1 line
  
  New lure.dat with corrections to the Italian strings
................
  r32868 | fingolfin | 2008-07-01 16:51:44 +0200 (Tue, 01 Jul 2008) | 1 line
  
  Reverted accidental commit of Tinsel changes in engines.mk
................
  r32873 | peres001 | 2008-07-02 03:41:08 +0200 (Wed, 02 Jul 2008) | 2 lines
  
  - Changed labels to be GfxObj's, thus removing the Label object altogether.
  - Changed Item's to be almost GfxObj's, since ownership and destruction of underlying resource is an issue here (got to think some more about it).
................
  r32874 | buddha_ | 2008-07-02 06:31:50 +0200 (Wed, 02 Jul 2008) | 5 lines
  
  Fully implemented processSeqListElement
  - Added parts that were missing and fixed a couple of errors
  -- One test was backwards and a global variable was written to when it shouldn't have been
  Added global variable inputVar0 that's used in processSeqListElement
  NOTE: inputVar0 isn't updated anywhere yet, so that's a TODO
................
  r32879 | sev | 2008-07-03 10:44:29 +0200 (Thu, 03 Jul 2008) | 1 line
  
  Fix for bug #2008054: Parallaction engine doesn't compile under MSVC9
................
  r32883 | peres001 | 2008-07-03 12:31:25 +0200 (Thu, 03 Jul 2008) | 1 line
  
  Changed balloons to use GfxObj as well. Next step is to integrate balloons for BRA.
................
  r32895 | drmccoy | 2008-07-03 18:25:59 +0200 (Thu, 03 Jul 2008) | 2 lines
  
  Fixing a crash when loading a save made within the cult/bargon building (bug #2005965)
................
  r32899 | athrxx | 2008-07-03 23:09:07 +0200 (Thu, 03 Jul 2008) | 1 line
  
  minor fix for Towns/PC98 music
................
  r32902 | peres001 | 2008-07-04 02:29:21 +0200 (Fri, 04 Jul 2008) | 2 lines
  
  - Moved dialogue balloon management code from Gfx to its own class
  - Added a class to draw balloons in BRA (still without text and with wrong placement)
................
  r32903 | Kirben | 2008-07-04 02:35:39 +0200 (Fri, 04 Jul 2008) | 1 line
  
  Correct typo.
................
  r32904 | buddha_ | 2008-07-04 11:38:03 +0200 (Fri, 04 Jul 2008) | 1 line
  
  Updated MSVC project files (Added Parallaction's balloons.cpp).
................
  r32910 | sev | 2008-07-05 06:28:17 +0200 (Sat, 05 Jul 2008) | 2 lines
  
  Mention merge of Chris Page's memory leak plugging code.
................
  r32911 | lordhoto | 2008-07-05 09:47:27 +0200 (Sat, 05 Jul 2008) | 2 lines
  
  Added spanish menu strings for spanish fan translation of Kyrandia 3.
................
  r32912 | lordhoto | 2008-07-05 10:20:10 +0200 (Sat, 05 Jul 2008) | 2 lines
  
  Added support for Italian fan translation of Kyrandia 3. (see fr#2003504 "KYRA: add support for Italian version of Kyrandia 2&3")
................
  r32923 | marcus_c | 2008-07-06 00:53:17 +0200 (Sun, 06 Jul 2008) | 1 line
  
  Enable all engines.
................
  r32924 | dhewg | 2008-07-06 14:04:19 +0200 (Sun, 06 Jul 2008) | 1 line
  
  adjustments to the recent mixer api changes
................
  r32930 | eriktorbjorn | 2008-07-06 20:37:52 +0200 (Sun, 06 Jul 2008) | 4 lines
  
  Implemented Good Enough(TM) XMIDI looping. This is used by Kyrandia 2 (the
  loop hack is no longer needed, and has been removed), and will be used by
  Discworld.
................
  r32931 | eriktorbjorn | 2008-07-06 21:25:32 +0200 (Sun, 06 Jul 2008) | 4 lines
  
  Fixed silly error. The NEXT_BREAK event should, of course, jump to the event
  *after* the FOR_LOOP event. Apart from simplifying things, this should allow
  limited number of repeats to work.
................
  r32938 | drmccoy | 2008-07-07 15:01:54 +0200 (Mon, 07 Jul 2008) | 2 lines
  
  Don't let listSavefiles() search subdirectories. Files with the same name (in different directories) would cause duplicate entries for the same file.
................
  r32940 | peres001 | 2008-07-07 16:51:27 +0200 (Mon, 07 Jul 2008) | 1 line
  
  Fixed regression after label code refactoring.
................
  r32948 | thebluegr | 2008-07-07 21:40:43 +0200 (Mon, 07 Jul 2008) | 1 line
  
  Some fixes for warnings under GCC 2.95
................
  r32949 | lordhoto | 2008-07-07 22:40:35 +0200 (Mon, 07 Jul 2008) | 1 line
  
  Fix for bug #2012293 "KYRA: Bad Spanish String in menu".
................
  r32951 | buddha_ | 2008-07-08 00:02:01 +0200 (Tue, 08 Jul 2008) | 1 line
  
  Fix for bathroom door opening crash in Operation Stealth's start.
................
  r32960 | fingolfin | 2008-07-08 12:29:35 +0200 (Tue, 08 Jul 2008) | 1 line
  
  Remove reference to kPlainSoundType
................
  r32961 | sev | 2008-07-08 13:18:44 +0200 (Tue, 08 Jul 2008) | 1 line
  
  Shut couple of MSVC warnings
................
  r32962 | drmccoy | 2008-07-08 13:35:09 +0200 (Tue, 08 Jul 2008) | 2 lines
  
  Modified the EGA story image delay to work for the Mac versions as well
................
  r32963 | drmccoy | 2008-07-08 13:36:52 +0200 (Tue, 08 Jul 2008) | 3 lines
  
  Added a Gob1 version supplied by raina in the forums.
  It does look like the Mac version with a DOS executable and stripped music to me, so let's hope the Mac level image workaround works there as well.
................
  r32964 | sev | 2008-07-08 13:48:16 +0200 (Tue, 08 Jul 2008) | 1 line
  
  One more MSVC warning
................
  r32966 | eriktorbjorn | 2008-07-08 18:25:39 +0200 (Tue, 08 Jul 2008) | 4 lines
  
  On reading some more about XMIDI, I believe the NEXT and BREAK variants of the
  controller are mutually exclusive cases, i.e. a BREAK simply means forget about
  the innermost loop, and continue as if nothing had happened.
................
  r32967 | joostp | 2008-07-08 19:20:26 +0200 (Tue, 08 Jul 2008) | 2 lines
  
  changes for new Mixer API
................
  r32968 | joostp | 2008-07-08 19:41:09 +0200 (Tue, 08 Jul 2008) | 2 lines
  
  Enable static engines -- time to start thinking about prx/plugin support!
................
  r32969 | joostp | 2008-07-08 19:46:26 +0200 (Tue, 08 Jul 2008) | 2 lines
  
  set DEPDIR
................
  r32970 | tramboi | 2008-07-09 04:19:57 +0200 (Wed, 09 Jul 2008) | 3 lines
  
  New configure flag --enable-profiling to compile and link with -pg (for 
  gprof)
................
  r32972 | peres001 | 2008-07-09 04:49:20 +0200 (Wed, 09 Jul 2008) | 1 line
  
  Added a couple of NULLity checks.
................
  r32973 | fingolfin | 2008-07-09 12:42:47 +0200 (Wed, 09 Jul 2008) | 1 line
  
  cleanup / code formatting
................
  r32974 | peres001 | 2008-07-09 12:52:46 +0200 (Wed, 09 Jul 2008) | 1 line
  
  Fixed regression introduced with GfxObj: the character sprite was sometimes removed from the rendering list.
................
  r32976 | peres001 | 2008-07-09 15:27:09 +0200 (Wed, 09 Jul 2008) | 1 line
  
  Fixed leaks in NS and BRA.
................
  r32978 | agent-q | 2008-07-09 18:50:23 +0200 (Wed, 09 Jul 2008) | 1 line
  
  DS: Backend changes for new mixer code
................
  r32983 | peres001 | 2008-07-10 04:00:54 +0200 (Thu, 10 Jul 2008) | 1 line
  
  Fixed destruction of sprites in BRA.
................
  r32986 | lordhoto | 2008-07-10 13:25:43 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Workaround for gcc 2.95 compiler bug.
................
  r32987 | lordhoto | 2008-07-10 13:28:51 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Fixed mem leak in MIDI related code.
................
  r32988 | lordhoto | 2008-07-10 14:05:38 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Added filename to unknown opcode/command warnings of EMC scripts.
................
  r32989 | lordhoto | 2008-07-10 14:12:42 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Added filename to unkown command/opcode warnings for TIM scripts.
................
  r32990 | lordhoto | 2008-07-10 14:14:00 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Typo.
................
  r32992 | eriktorbjorn | 2008-07-10 18:19:17 +0200 (Thu, 10 Jul 2008) | 2 lines
  
  Fixed Kyra 3 detection regression.
................
  r32994 | tramboi | 2008-07-10 20:01:54 +0200 (Thu, 10 Jul 2008) | 1 line
  
  Fixed a few warnings
................
  r33002 | peres001 | 2008-07-11 14:55:08 +0200 (Fri, 11 Jul 2008) | 2 lines
  
  Fixed leak in sound code by explicitly deleting the midi driver.
................
  r33003 | peres001 | 2008-07-11 15:06:28 +0200 (Fri, 11 Jul 2008) | 3 lines
  
  Moved program and command execution code out of the engine, into their own brand new 
  classes.
................
  r33004 | buddha_ | 2008-07-11 15:13:28 +0200 (Fri, 11 Jul 2008) | 1 line
  
  Update MSVC project files.
................
  r33006 | peres001 | 2008-07-11 15:36:22 +0200 (Fri, 11 Jul 2008) | 1 line
  
  Cleanup.
................
  r33007 | peres001 | 2008-07-11 17:07:13 +0200 (Fri, 11 Jul 2008) | 1 line
  
  Added a script (courtesy of salty-horse) to create/set properties for source files under version control by Subversion. Specifically, the mime-type, eol-style and keywords properties are handled.
................
  r33009 | fingolfin | 2008-07-11 22:28:14 +0200 (Fri, 11 Jul 2008) | 1 line
  
  Don't use kPlainSoundType if you don't have to
................
  r33010 | fingolfin | 2008-07-11 22:28:50 +0200 (Fri, 11 Jul 2008) | 1 line
  
  cleanup
................
  r33014 | drmccoy | 2008-07-12 17:21:38 +0200 (Sat, 12 Jul 2008) | 3 lines
  
  Changed tricky variable access from pointers to a new class that minds endianess.
  This should fix a few regressions with BE games on LE systems and vice versa that I introduced when I changed how variables are stored (which was necessary to get Woodruff work on BE systems).
................
  r33017 | tramboi | 2008-07-12 22:35:44 +0200 (Sat, 12 Jul 2008) | 2 lines
  
  Minor constness fix to help with aliasing
................
  r33021 | peres001 | 2008-07-13 05:30:14 +0200 (Sun, 13 Jul 2008) | 1 line
  
  Properly implemented the OFF command. The new rendering order for graphics let this mistake finally surface.
................
  r33022 | peres001 | 2008-07-13 05:39:42 +0200 (Sun, 13 Jul 2008) | 1 line
  
  Cleanup and improved debugging output for CommandExec::run()
................
  r33023 | peres001 | 2008-07-13 08:27:31 +0200 (Sun, 13 Jul 2008) | 1 line
  
  Cleanup of walk code.
................
  r33030 | athrxx | 2008-07-13 14:20:24 +0200 (Sun, 13 Jul 2008) | 1 line
  
  - fix for bug #2016965: KYRA: does not compile in MSVC71
................
  r33033 | peres001 | 2008-07-13 15:04:36 +0200 (Sun, 13 Jul 2008) | 1 line
  
  More refactoring of walk code.
................
  r33052 | peres001 | 2008-07-14 02:13:31 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Made sure characters are not removed from the rendering list during switches.
................
  r33053 | peres001 | 2008-07-14 02:21:05 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Fixed regression in walk code. Now standing frames are correctly selected when the character encounters an unexpected blocking object in his/her path.
................
  r33056 | fingolfin | 2008-07-14 09:54:18 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Fixed code formatting
................
  r33057 | dreammaster | 2008-07-14 12:33:57 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Fix for missing data in the savegame format that could result in not being able to talk to Goewin in the apothecary after restoring a savegame
................
  r33058 | peres001 | 2008-07-14 15:35:43 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Removed all labels from the rendering list to avoid random crashes after introduction is over.
................
  r33061 | fingolfin | 2008-07-14 21:14:26 +0200 (Mon, 14 Jul 2008) | 1 line
  
  cleanup (and test for Marwan's branch.... ;)
................
  r33062 | tramboi | 2008-07-14 22:34:31 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Register spilling avoided in AGOS background drawing (and 2x unrolling)
................
  r33063 | wjpalenstijn | 2008-07-14 23:00:39 +0200 (Mon, 14 Jul 2008) | 1 line
  
  Don't draw scumm saveload dialog while reflowing layout, as that would use uninitialized values
................
  r33064 | wjpalenstijn | 2008-07-14 23:04:42 +0200 (Mon, 14 Jul 2008) | 1 line
  
  remove accidentally committed debugging code; fix shadowing warning
................
  r33068 | buddha_ | 2008-07-15 01:10:51 +0200 (Tue, 15 Jul 2008) | 8 lines
  
  Fix for bug #2016647 (FW: crash with italian amiga version).
  - Consists of a workaround for a script bug that used local
    variable 251 when it should've used global variable 251.
  - Also added a fix for a crash when failing copy protection
    in Amiga or Atari ST versions of Future Wars.
  NOTE: That any of the Amiga or Atari ST versions of Future Wars
  haven't crashed right in the beginning before seems like plain
  luck because accessing local variable 251 is out of bounds!
................
  r33070 | fingolfin | 2008-07-15 12:47:24 +0200 (Tue, 15 Jul 2008) | 1 line
  
  config.log and tmp files should be put into the configure (= current) dir, not the source dir
................
  r33072 | peres001 | 2008-07-15 12:59:58 +0200 (Tue, 15 Jul 2008) | 1 line
  
  Made frame unpacking buffer dynamic (this frees some BSS space).
................
  r33075 | fingolfin | 2008-07-15 19:13:06 +0200 (Tue, 15 Jul 2008) | 1 line
  
  Implemented audio double buffering (for now OSX only)
................
  r33078 | cyx | 2008-07-15 22:26:12 +0200 (Tue, 15 Jul 2008) | 1 line
  
  fix bug #1995042: stop previous sfx playback when starting a new sfx (matches original dos code). Also removed the "sound skipping" hack in final bam scene.
................
  r33079 | cyx | 2008-07-15 22:31:11 +0200 (Tue, 15 Jul 2008) | 2 lines
  
  fix bug #1876741: changed .SB playback rate to 11840Hz (matches dos game)
................
  r33083 | tramboi | 2008-07-16 11:08:44 +0200 (Wed, 16 Jul 2008) | 3 lines
  
  Split the drawVertImage function in the agos engine to make it clearer 
  and easier to profile
................
  r33086 | peres001 | 2008-07-17 02:38:11 +0200 (Thu, 17 Jul 2008) | 1 line
  
  Fixed regression bug in dialogue, which de-facto allowed user to skip in-game protection.
................
  r33087 | buddha_ | 2008-07-17 09:13:41 +0200 (Thu, 17 Jul 2008) | 1 line
  
  Patch #2019455: Patch for reducing the BSS size of Cine engine.
................
  r33089 | fingolfin | 2008-07-17 17:56:24 +0200 (Thu, 17 Jul 2008) | 1 line
  
  Committing PS2 changes on behalf of the other Max ;)
................
  r33094 | eriktorbjorn | 2008-07-18 06:16:00 +0200 (Fri, 18 Jul 2008) | 4 lines
  
  Don't crash if you try to use music file #2 as music file #1. When the music
  wasn't found, it would close the file even if something else was already
  playing from it. (Some music is in both files.)
................
  r33095 | dreammaster | 2008-07-18 11:36:49 +0200 (Fri, 18 Jul 2008) | 2 lines
  
  In OSystem_SDL::closeMixer moved the call to SDL_CloseAudio to before the deletion of the _mixer variable in  to fix an assert that was being generated in OSystem_SDL::mixCallback
................
  r33096 | buddha_ | 2008-07-18 16:01:53 +0200 (Fri, 18 Jul 2008) | 1 line
  
  Added savefile position comments to savegame loading routine (Helpful for debugging the formats).
................
  r33098 | anotherguest | 2008-07-18 21:02:40 +0200 (Fri, 18 Jul 2008) | 1 line
  
  Symbian soundsmixer update. (Compile fix)
................
  r33099 | anotherguest | 2008-07-18 22:40:48 +0200 (Fri, 18 Jul 2008) | 1 line
  
  Introduced cache for filereading to fix slowness in AGOS among others.
................
  r33104 | anotherguest | 2008-07-19 00:07:52 +0200 (Sat, 19 Jul 2008) | 1 line
  
  Fixed typo in filehandling
................
  r33108 | anotherguest | 2008-07-19 09:08:37 +0200 (Sat, 19 Jul 2008) | 1 line
  
  eof was not working properly with caching
................
  r33109 | anotherguest | 2008-07-19 09:44:12 +0200 (Sat, 19 Jul 2008) | 1 line
  
  Enable support to turn off ALL variations. all variation is most often the one used 
................
  r33114 | fingolfin | 2008-07-19 23:42:31 +0200 (Sat, 19 Jul 2008) | 1 line
  
  Removed -Wundef from the default list of compiler flags, and changed PLUGIN_ENABLED_DYNAMIC to not use 'defined()', thus avoiding compiler problems on e.g. BeOS
................
  r33115 | sunmax | 2008-07-20 03:30:47 +0200 (Sun, 20 Jul 2008) | 9 lines
  
  1. Re-added "rpckbd" as in 0.11.0
  
  2. Committed only its source, you will need to do a make inside its folder
     before being able to compile our beloved PlayStation2 backend.
  
  Enjoy,
   -max
................
  r33116 | sunmax | 2008-07-20 03:40:08 +0200 (Sun, 20 Jul 2008) | 4 lines
  
  Added the empty "elf" folder for the PS2 scummvm binary,
  so that developers won't have to mkdir it by hand.
................
  r33117 | sunmax | 2008-07-20 03:44:40 +0200 (Sun, 20 Jul 2008) | 5 lines
  
  Added "DEPDIR := .deps" in Makefile.ps2
  
  Thanks Max [the other one] for pointing it out!
................
  r33120 | knakos | 2008-07-20 13:15:29 +0200 (Sun, 20 Jul 2008) | 1 line
  
  workaround for bogus findfirstfile. kyra now starts up correctly
................
  r33135 | fingolfin | 2008-07-20 18:27:12 +0200 (Sun, 20 Jul 2008) | 1 line
  
  cleanup
................
  r33136 | fingolfin | 2008-07-20 18:28:06 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Fixed nasty bug in findPlainGameDescriptor -- contrary to is documentation, it would not return 0 upon failure to find a match, but rather a (0,0) record.
................
  r33137 | fingolfin | 2008-07-20 18:42:56 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Fixed potential issue in Common::String when asserting a substring of a string X back to X (memcpy -> memmove); also added some other sanity checks, and merged some duplicate code into a new method String::initWithCStr
................
  r33138 | fingolfin | 2008-07-20 18:47:34 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Two new TODO/FIXME comments for class File
................
  r33139 | fingolfin | 2008-07-20 18:47:52 +0200 (Sun, 20 Jul 2008) | 1 line
  
  New SeekableReadStream::readLine_NEW() method, closely modelled after fgets, w/o the line length limitations of the old eekableReadStream::readLine() (which it will replace, after the feature freeze has been lifted)
................
  r33140 | fingolfin | 2008-07-20 18:52:25 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Fix for bug #1971499: ALL: config manager crashes when reading too long lines
................
  r33141 | knakos | 2008-07-20 18:55:51 +0200 (Sun, 20 Jul 2008) | 1 line
  
  modified patch #1882942 - optimize and kill code for really old platforms
................
  r33142 | knakos | 2008-07-20 19:04:27 +0200 (Sun, 20 Jul 2008) | 1 line
  
  a little more cleanup
................
  r33143 | marcus_c | 2008-07-20 19:56:43 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Solaris tr does not like character classes in some locales.  Use "C" locale.
................
  r33144 | marcus_c | 2008-07-20 19:58:14 +0200 (Sun, 20 Jul 2008) | 1 line
  
  Deps now go in the .deps directory.
................
  r33145 | athrxx | 2008-07-20 20:00:00 +0200 (Sun, 20 Jul 2008) | 1 line
  
  KYRA: disable incomplete PC-98 audio support for 0.12.0 release (use towns audio instead)
................
  r33146 | eriktorbjorn | 2008-07-20 21:25:16 +0200 (Sun, 20 Jul 2008) | 2 lines
  
  Commented out some more PC-98 audio stuff, to avoid warnings.
................
  r33160 | sev | 2008-07-21 07:09:29 +0200 (Mon, 21 Jul 2008) | 2 lines
  
  This is 0.13.0svn now
................
  r33162 | peres001 | 2008-07-21 08:08:30 +0200 (Mon, 21 Jul 2008) | 1 line
  
  Massive refactoring of dialogue code, which is now implemented as a finite state machine. Related code in other files has been updated has well.
................
  r33165 | peres001 | 2008-07-21 11:25:40 +0200 (Mon, 21 Jul 2008) | 1 line
  
  Some refactoring for tracking of floating labels.
................
  r33167 | tramboi | 2008-07-21 12:13:44 +0200 (Mon, 21 Jul 2008) | 1 line
  
  Avoid branching in the inner loop of AGOS drawVertImageCompressed
................
  r33168 | Kirben | 2008-07-21 12:32:20 +0200 (Mon, 21 Jul 2008) | 1 line
  
  Spacing.
................
  r33169 | buddha_ | 2008-07-21 13:33:30 +0200 (Mon, 21 Jul 2008) | 1 line
  
  Silence a warning which complains about using an uninitialized variable.
................
  r33188 | peres001 | 2008-07-22 11:00:39 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Changed comment display code so that input polling is integrated into the main loop, instead of being performed in a blocking way from a separate routine.
................
  r33189 | peres001 | 2008-07-22 11:12:10 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Removed unneeded input code.
................
  r33191 | peres001 | 2008-07-22 12:12:20 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Fixed regression in dialogue code: certain commands weren't executed anymore after dialogue ended.
................
  r33192 | buddha_ | 2008-07-22 12:15:58 +0200 (Tue, 22 Jul 2008) | 14 lines
  
  Fix for bug #2019355 (FW: broken compatibility with 0.11.1 saves):
  - Changed savegame loading related functions to use SeekableReadStream
    rather than InSaveFile so MemoryReadStream can be used transparently.
  - Fixed loadResourcesFromSave to load multiframe animations correctly
    and to load 0.11.0/0.11.1 Future Wars savegames which used a slightly
    different format.
  - Added a savegame format detector that tries to detect between the old
    Future Wars savegame format, the new one and a broken revision of the
    new one.
  - Changed makeLoad to first load the savegame fully into memory and only
    then handle it (If the savegame's packed then it's unpacked first). If
    the packed savegame can't tell its unpacked size (i.e. it's using zlib
    format) then we'll try to load up to 256kB of the savegame data.
  Thanks to wjp for his help with nailing this release critical bug.
................
  r33193 | peres001 | 2008-07-22 12:17:19 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Fix build.
................
  r33196 | buddha_ | 2008-07-22 14:17:44 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Fix CineSaveGameFormat enumeration's include order (Caused problems at least with GCC).
................
  r33198 | peres001 | 2008-07-22 14:35:46 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Merged inventory input code from different files.
................
  r33202 | fingolfin | 2008-07-22 16:38:54 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Fix warnings in CINE
................
  r33203 | fingolfin | 2008-07-22 16:39:26 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Added String::trim() method
................
  r33206 | aquadran | 2008-07-22 17:24:39 +0200 (Tue, 22 Jul 2008) | 1 line
  
  shutup valgrind warning
................
  r33210 | anotherguest | 2008-07-22 20:52:13 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Fixed seek problem when cached data is used.
................
  r33212 | anotherguest | 2008-07-22 21:09:10 +0200 (Tue, 22 Jul 2008) | 1 line
  
  Disable hashmemory pool for Symbian OS
................
  r33218 | anotherguest | 2008-07-22 22:13:57 +0200 (Tue, 22 Jul 2008) | 2 lines
  
  AddedAdded MAD as default feature
................
  r33219 | peres001 | 2008-07-23 03:07:39 +0200 (Wed, 23 Jul 2008) | 1 line
  
  More merging of input code.
................
  r33220 | peres001 | 2008-07-23 04:01:15 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Fixed mouse cursor when closing inventory.
................
  r33222 | drmccoy | 2008-07-23 04:41:02 +0200 (Wed, 23 Jul 2008) | 2 lines
  
  More savegame-endianness fixes :/
................
  r33224 | peres001 | 2008-07-23 04:45:09 +0200 (Wed, 23 Jul 2008) | 1 line
  
  More decoupling of inventory code.
................
  r33225 | peres001 | 2008-07-23 09:31:35 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Removed useless event management code and made readInput() more general.
................
  r33226 | peres001 | 2008-07-23 09:52:43 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Removed the historical waitUntilLeftClick function and adapted code to use the more general readInput and waitForButtonEvent.
................
  r33229 | Kirben | 2008-07-23 11:01:33 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Update NEWS.
................
  r33230 | fingolfin | 2008-07-23 11:02:47 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added Tinsel engine to main repos (no news item for it ON PURPOSE)
................
  r33231 | dreammaster | 2008-07-23 11:28:23 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Replaced the out of date file list in the MSVC8 project with the proper file list
................
  r33232 | dreammaster | 2008-07-23 11:37:15 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added the Tinsel engine to the Scummvm MSVC8 Solution
................
  r33233 | buddha_ | 2008-07-23 11:45:44 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Updated rest of the MSVC project and solution files for Tinsel.
................
  r33234 | fingolfin | 2008-07-23 11:53:29 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Fix String::trim to work right for shared strings; augemented test cases to cover this
................
  r33235 | fingolfin | 2008-07-23 12:27:24 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Got rid of some typedefs
................
  r33236 | fingolfin | 2008-07-23 12:29:37 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Removed some dead code
................
  r33237 | fingolfin | 2008-07-23 12:33:36 +0200 (Wed, 23 Jul 2008) | 1 line
  
  cleanup; removed const  bNoScroll variable
................
  r33238 | dreammaster | 2008-07-23 12:54:59 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added extra defines and include for Tinsel project
................
  r33239 | buddha_ | 2008-07-23 14:15:02 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Enable Tinsel also for MSVC 7 & 7.1 & 9 in addition to MSVC 8.
................
  r33240 | buddha_ | 2008-07-23 16:19:31 +0200 (Wed, 23 Jul 2008) | 3 lines
  
  Renamed opcodes 0x49 and 0x68:
  - Opcode 0x49: setDefaultMenuColor2 -> setDefaultMenuBgColor
  - Opcode 0x68: setDefaultMenuColor  -> setPlayerCommandPosY
................
  r33241 | fingolfin | 2008-07-23 16:42:27 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Moved POLYGON struct into polygon.cpp; got rid of some more typedefs
................
  r33242 | fingolfin | 2008-07-23 16:43:41 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added svn:ignore attribute
................
  r33243 | fingolfin | 2008-07-23 16:44:33 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added Tinsel to credits & NEWS
................
  r33246 | fingolfin | 2008-07-23 18:33:53 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Added convenience method String::makeUnique(); simplified String::operator=(char c); extended String unit tests
................
  r33248 | fingolfin | 2008-07-23 18:49:45 +0200 (Wed, 23 Jul 2008) | 1 line
  
  Reorder stuff a little bit, moving private String methods together: cleanup
................
  r33249 | fingolfin | 2008-07-23 18:55:52 +0200 (Wed, 23 Jul 2008) | 1 line
  
  TINSEL: Renamed CoroutineInstall back to ProcessCreate; got rid of yet another typedef; more cleanup
................
  r33250 | fingolfin | 2008-07-23 19:01:42 +0200 (Wed, 23 Jul 2008) | 1 line
  
  cleanup
................
  r33252 | sev | 2008-07-23 21:50:57 +0200 (Wed, 23 Jul 2008) | 2 lines
  
  Fix bug which was triggered by file named 'a' in current directory.
................
  r33258 | peres001 | 2008-07-24 10:04:17 +0200 (Thu, 24 Jul 2008) | 1 line
  
  Can't test a SharedPtr for nullity!
................
  r33259 | fingolfin | 2008-07-24 10:59:17 +0200 (Thu, 24 Jul 2008) | 1 line
  
  Moved scheduler / process managment code into a new class Scheduler
................
  r33260 | peres001 | 2008-07-24 11:24:32 +0200 (Thu, 24 Jul 2008) | 3 lines
  
  * Moved end intro and end game sequences code to gui.
  * Rewrote all gui code to be run inside the main loop
  * Added code to avoid crashes when a scene with no standard background is drawn
................
  r33261 | peres001 | 2008-07-24 11:42:44 +0200 (Thu, 24 Jul 2008) | 1 line
  
  Fixed leak in new gui code.
................
  r33263 | fingolfin | 2008-07-24 12:31:37 +0200 (Thu, 24 Jul 2008) | 1 line
  
  cleanup
................
  r33266 | eriktorbjorn | 2008-07-25 00:12:48 +0200 (Fri, 25 Jul 2008) | 2 lines
  
  Make sure _musicVolume and _sfxVolume are clipped to fit in a byte.
................
  r33270 | peres001 | 2008-07-25 04:37:55 +0200 (Fri, 25 Jul 2008) | 3 lines
  
  * Merged old input management flags into a single mouse status variable.
  * Mouse is now displayed when it is needed, and hidden when it is not ;)
................
  r33272 | peres001 | 2008-07-25 08:35:02 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Converted BRA to work with the new menu approach. It is not yet well plugged-in as in NS, but it suffices for the moment.
................
  r33273 | peres001 | 2008-07-25 10:27:44 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Made character visible in BRA.
................
  r33274 | fingolfin | 2008-07-25 11:05:04 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: Updating the palette should only require a call to OSystem::updateScreen and not a blit
................
  r33275 | fingolfin | 2008-07-25 11:12:03 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: Get rid of Graphics::Surface class
................
  r33276 | fingolfin | 2008-07-25 11:13:08 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: ActorTag & PolyTag abused a SCNHANDLE and some global enums to keep a trinary state -- fixed that by introducing a new enum HotSpotTag
................
  r33277 | fingolfin | 2008-07-25 11:15:03 +0200 (Fri, 25 Jul 2008) | 1 line
  
  cleanup
................
  r33278 | fingolfin | 2008-07-25 11:15:32 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: Got rid of NO_TAG (not used)
................
  r33279 | fingolfin | 2008-07-25 11:16:33 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Added Common::Rect::isEmpty() method
................
  r33280 | fingolfin | 2008-07-25 11:17:47 +0200 (Fri, 25 Jul 2008) | 1 line
  
  More tinsel cleanup
................
  r33281 | fingolfin | 2008-07-25 11:18:39 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: Fixed forgotten ClearScreen(0) call
................
  r33282 | fingolfin | 2008-07-25 11:19:06 +0200 (Fri, 25 Jul 2008) | 1 line
  
  TINSEL: Got rid of PIMAGE, PINT_CONTEXT, PINV_OBJECT, PINV_DEF, PCONFBOX, PCONFINIT
................
  r33283 | dreammaster | 2008-07-25 11:36:18 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Fix to prevent attempt to delete a non-initialised object during game exit
................
  r33285 | joostp | 2008-07-25 12:20:05 +0200 (Fri, 25 Jul 2008) | 2 lines
  
  change PPINIT struct to use ScummVM datatypes, so sizeof(PPINIT) is 28 on ppc/OSX as well.
................
  r33287 | buddha_ | 2008-07-25 13:39:58 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Update MSVC project files for Parallaction.
................
  r33288 | drmccoy | 2008-07-25 14:59:46 +0200 (Fri, 25 Jul 2008) | 2 lines
  
  Fixed the inventory bug that's been reported in the forums
................
  r33289 | peres001 | 2008-07-25 18:01:25 +0200 (Fri, 25 Jul 2008) | 2 lines
  
  * Changed walk code to use Common::Point instead of the clumsy WalkNode.
  * Changed walk code to use object copy instead of managing pointers.
................
  r33290 | peres001 | 2008-07-25 18:08:10 +0200 (Fri, 25 Jul 2008) | 1 line
  
  Changed the remaining references to Nodes into Points.
................
  r33295 | peres001 | 2008-07-26 04:09:50 +0200 (Sat, 26 Jul 2008) | 1 line
  
  BRA now parses path data from the scripts.
................
  r33296 | peres001 | 2008-07-26 06:01:11 +0200 (Sat, 26 Jul 2008) | 2 lines
  
  * Added walk calculations to BRA (doesn't walk yet, though).
  * Adapted Character and Animation to handle both versions of the engine.
................
  r33297 | peres001 | 2008-07-26 07:37:52 +0200 (Sat, 26 Jul 2008) | 1 line
  
  Cleanup.
................
  r33298 | peres001 | 2008-07-26 07:56:39 +0200 (Sat, 26 Jul 2008) | 1 line
  
  More cleanup.
................
  r33321 | Kirben | 2008-07-27 03:54:40 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Fix buffer overflow in error message.
................
  r33325 | peres001 | 2008-07-27 10:35:00 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Doug from BRA can now walk in his hotel room. He still stops in bizarre poses, though.
................
  r33326 | vinterstum | 2008-07-27 12:15:57 +0200 (Sun, 27 Jul 2008) | 1 line
  
  The iPhone backend is now (mostly) up to speed again, and works for firmware 2.0
................
  r33327 | Kirben | 2008-07-27 12:36:26 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Search common directory, when loading frames and talks in Amiga verison of BRA.
................
  r33328 | peres001 | 2008-07-27 12:37:54 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Added rudimental support for location changes when walking through doors. The best part of this commit is that Doug now stops in a normal position.
................
  r33329 | Kirben | 2008-07-27 12:43:15 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Add music/sound loading in Amiga version of BRA.
................
  r33330 | lordhoto | 2008-07-27 13:07:38 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Fixed win32 plugin provider.
................
  r33332 | lordhoto | 2008-07-27 14:05:40 +0200 (Sun, 27 Jul 2008) | 2 lines
  
  Fixed macro.
................
  r33333 | lordhoto | 2008-07-27 14:09:10 +0200 (Sun, 27 Jul 2008) | 2 lines
  
  Fixed typo.
................
  r33334 | lordhoto | 2008-07-27 14:12:40 +0200 (Sun, 27 Jul 2008) | 3 lines
  
  - Fixed fadePalette for HoF and Kyra3
  - Fixed bug in wsaFrameAnimationStep
................
  r33335 | peres001 | 2008-07-27 15:43:40 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Inventory icons are now loaded correctly (not yet displayed). BRA doesn't crash anymore when pressing the right button. :)
................
  r33337 | peres001 | 2008-07-27 16:21:16 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Moved inventory cursor drawing code to InventoryRenderer.
................
  r33338 | buddha_ | 2008-07-27 16:33:37 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Cut savegame loading into smaller functional parts (resetEngine, loadPlainSave etc).
................
  r33339 | buddha_ | 2008-07-27 16:36:53 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Clear the confusing usage of NUM_MAX_VAR (It's 255 actually, not 256).
................
  r33340 | anotherguest | 2008-07-27 20:22:23 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Fix for ftell error when caching. HOF now starts properly
................
  r33342 | sev | 2008-07-27 23:14:31 +0200 (Sun, 27 Jul 2008) | 2 lines
  
  Patch from bugreport #2020561: "MMNES : Incorrect detection (US/GB)"
................
  r33345 | anotherguest | 2008-07-27 23:35:39 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Fixed the Symbian default savepath, but adding the needed \ at the end.
................
  r33347 | anotherguest | 2008-07-27 23:37:47 +0200 (Sun, 27 Jul 2008) | 1 line
  
  Fixed the Symbian default savepath, but adding the needed \ at the end and now as a string.
................
  r33349 | buddha_ | 2008-07-28 00:50:36 +0200 (Mon, 28 Jul 2008) | 3 lines
  
  Added a preliminary saving routine for Operation Stealth (Disabled by default, needs more work still. WIP!).
  Added backgrounds' name saving (8 names in Operation Stealth instead of just 1 like in Future Wars).
  Added 256 color palette saving and restoring (One of the palettes isn't properly handled yet though).
................
  r33350 | peres001 | 2008-07-28 04:56:17 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Fixed constructor for WindowsFilesystemNode. On Windows, trailing slashes can be added only to directory names.
................
  r33352 | peres001 | 2008-07-28 07:18:23 +0200 (Mon, 28 Jul 2008) | 3 lines
  
  * Changed Disk code in BRA to use FilesystemNode (duplication has become truly visible!).
  * Fixed Inventory items loading.
................
  r33353 | peres001 | 2008-07-28 07:21:11 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Some unneeded references slipped in with the last commit.
................
  r33354 | Kirben | 2008-07-28 07:38:24 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Fix compile.
................
  r33355 | peres001 | 2008-07-28 08:06:35 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Inventory is now properly rendered. Item selection is not yet working.
................
  r33356 | Kirben | 2008-07-28 08:18:39 +0200 (Mon, 28 Jul 2008) | 1 line
  
  There is no mask or path directories for part0 of BRA (Amiga), so always check whether they exist.
................
  r33357 | Kirben | 2008-07-28 09:20:55 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Add basic support for running Amiga and PC demos of BRA.
................
  r33359 | peres001 | 2008-07-28 10:25:06 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Some instrumentation for script debugging.
................
  r33360 | peres001 | 2008-07-28 10:25:52 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Added support for text in BRA DOS demo.
................
  r33361 | Kirben | 2008-07-28 10:44:14 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Correct character name set by character location parser.
................
  r33362 | buddha_ | 2008-07-28 10:44:49 +0200 (Mon, 28 Jul 2008) | 3 lines
  
  Made the savegame loading routine choose between loading a Future Wars or an Operation Stealth savegame format.
  Added a stub for loading the Operation Stealth's temporary savegame format (Not yet implemented).
  Made mouse cursor change to a disk icon when loading a savegame and back to normal after its done.
................
  r33363 | peres001 | 2008-07-28 10:56:37 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Added a post processing step to runScripts, so that Animation can be validated after buggy scripts have been executed.
................
  r33364 | peres001 | 2008-07-28 11:00:00 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Preliminary code for traps.
................
  r33365 | buddha_ | 2008-07-28 12:09:00 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Now detects temporary Operation Stealth savegame format and saves it. No loading yet.
................
  r33366 | buddha_ | 2008-07-28 12:44:54 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Cut Future Wars savegame loading routine into parts that can be reused when loading the Operation Stealth savegame format.
................
  r33367 | buddha_ | 2008-07-28 12:54:53 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Added remaining load functions needed for the Operation Stealth savegame format loading (loadSeqList and loadZoneQuery). Not used yet.
................
  r33369 | peres001 | 2008-07-28 13:47:03 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Tiny readability aid for parser code.
................
  r33370 | peres001 | 2008-07-28 13:48:04 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Implemented opcodes for picking up/dropping/opening/closing items.
................
  r33371 | peres001 | 2008-07-28 13:50:36 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Pick up/drop/open/close actions are now available in game.
................
  r33373 | thebluegr | 2008-07-28 14:46:30 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Cleanup
................
  r33375 | peres001 | 2008-07-28 16:02:46 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Fixed loading of static items.
................
  r33376 | peres001 | 2008-07-28 16:22:44 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Moved validation step from revision 33363, so that it is executed for all animations.
................
  r33377 | peres001 | 2008-07-28 16:23:49 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Yet another hack to deal with labels... Must rethink this crap from scratch.
................
  r33379 | buddha_ | 2008-07-28 18:02:40 +0200 (Mon, 28 Jul 2008) | 6 lines
  
  Added loading of temporary Operation Stealth savegames. Needs testing!
  - Music related settings and adBgVar0 & adBgVar1 aren't loaded currently.
  Modified resetEngine to also reset more of the Operation Stealth specific variables.
  Added getter for background scrolling value.
  Changed additional background indices 1 & 2 from byte to uint16.
  Made savegame loading functions return !in.ioFailed() as return value instead of true as previously.
................
  r33380 | buddha_ | 2008-07-28 18:46:20 +0200 (Mon, 28 Jul 2008) | 1 line
  
  Fixed crash when running Operation Stealth introduced in r33339 (There are actually 256 global variables although only 255 of them are saved and loaded from savegames. The last one is VAR_BYPASS_PROTECTION and it is written to in the mainLoop so that's why there was a crash).
................
  r33383 | fingolfin | 2008-07-29 00:21:11 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Fixing 'warning: comparison of unsigned expression < 0 is always false'
................
  r33384 | peres001 | 2008-07-29 01:21:03 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Enforcing use of nullZonePtr only for nulling out pointers, as it is useless for comparisons.
................
  r33385 | fingolfin | 2008-07-29 02:02:06 +0200 (Tue, 29 Jul 2008) | 1 line
  
  SDL: Properly init vars related to mixer double buffering
................
  r33387 | fingolfin | 2008-07-29 02:49:44 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Changed output of --test-detector: multiple hits with same gameid now only are a warning, not a failure
................
  r33388 | fingolfin | 2008-07-29 02:50:12 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Changed advanced detector to *always* use the FSNode API for detection (i.e. killed second code path which used File::open trial&error directory 'scanning')
................
  r33389 | fingolfin | 2008-07-29 02:54:28 +0200 (Tue, 29 Jul 2008) | 1 line
  
  BASE: in runGame, do not set addDefaultDirectory() the game path before invoking createInstance() -- detectors must use FSNode for detection, not rely on File::open
................
  r33392 | peres001 | 2008-07-29 05:14:35 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  * Fixed positioning of balloons and faces in BRA (dos, at least).
  * Adapted loading of faces.
................
  r33393 | Kirben | 2008-07-29 06:00:07 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Add check common directories, in loadScenery() for Amiga version of BRA.
................
  r33394 | Kirben | 2008-07-29 06:06:10 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Mask files don't always exist in Amiga version of BRA, in paricular NULL.msk.
................
  r33400 | lordhoto | 2008-07-29 11:16:53 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  Added a reset method to SharedPtr, which allows NULLifying it.
................
  r33401 | lordhoto | 2008-07-29 11:23:54 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  Formatting.
................
  r33402 | peres001 | 2008-07-29 11:44:05 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Added dialogue text rendering for BRA.
................
  r33404 | buddha_ | 2008-07-29 12:13:53 +0200 (Tue, 29 Jul 2008) | 6 lines
  
  Rearranged parts of the Operation Stealth savegame loading routine.
  - Emulating the Future Wars savegame loading routine and hoping for the best.
  - Fixes an array out of bounds access when loading the global scripts.
  Now the loading crashes in the mainloop in processSeqList!
  But at least we got a bit farther this time. More fixing to come...
................
  r33405 | peres001 | 2008-07-29 12:22:50 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  * Added flexible verb configuration for both NS and BRA.
  * Objects can now be really opened and closed in BRA.
................
  r33407 | buddha_ | 2008-07-29 14:56:32 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Added a debug message to loadTempSaveOS's to check whether we loaded the whole savefile. Made objectStruct's clearing also clear x and y member variables in resetEngine.
................
  r33408 | peres001 | 2008-07-29 14:59:55 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  * Implemented pause/resume of command execution
  * Implemented command opcode MOVE (not the script instruction).
................
  r33409 | buddha_ | 2008-07-29 15:44:14 +0200 (Tue, 29 Jul 2008) | 7 lines
  
  Added purgeSeqList function (Used in mainloop now). Let's see if this helps any...
  Renamed functions:
  * addScriptToList0 -> addScriptToGlobalScripts
  * executeList0     -> executeGlobalScripts
  * executeList1     -> executeObjectScripts
  * purgeList1       -> purgeObjectScripts (Also added a clarifying TODO to this function)
  * purgeList0       -> purgeGlobalScripts (Also added a clarifying TODO to this function)
................
  r33410 | buddha_ | 2008-07-29 15:46:42 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Make sure processSeqList and purgeSeqList are only called in the main loop when running Operation Stealth. Mostly a precaution as the seqList should be totally empty when running Future Wars as it doesn't use it.
................
  r33412 | fingolfin | 2008-07-29 18:09:10 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Changed class File (and derived classes) to only support read-only access; added a new class DumpFile for writing
................
  r33413 | fingolfin | 2008-07-29 18:12:42 +0200 (Tue, 29 Jul 2008) | 1 line
  
  CONFIGMAN: Store domains in the order they were added
................
  r33414 | fingolfin | 2008-07-29 18:16:15 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Added convenience accessor method GameDescriptor::preferredtarget
................
  r33415 | fingolfin | 2008-07-29 18:29:28 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Mass detector: sort all newly detected games by target name before adding them to the config manager
................
  r33416 | lordhoto | 2008-07-29 19:00:15 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  Added documentation for the functions in algorithm.h.
................
  r33418 | fingolfin | 2008-07-29 19:38:07 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Set svn:ignore for tools/create_drascula
................
  r33419 | fingolfin | 2008-07-29 19:42:19 +0200 (Tue, 29 Jul 2008) | 1 line
  
  Added two new classes, BufferedReadStream & BufferedSeekableReadStream, as proposed on scummvm-devel
................
  r33425 | lordhoto | 2008-07-29 22:09:30 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  Documentation for func.h.
................
  r33426 | lordhoto | 2008-07-29 22:15:29 +0200 (Tue, 29 Jul 2008) | 2 lines
  
  Little fix for documentation.
................
  r33427 | lordhoto | 2008-07-29 22:21:54 +0200 (Tue, 29 Jul 2008) | 3 lines
  
  - Formatting
  - Improved Functor#Mem::isValid implementations.
................
  r33432 | peres001 | 2008-07-30 08:25:17 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Reordered initialization lists to silence warning.
................
  r33436 | fingolfin | 2008-07-30 09:39:41 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Changed BufferedReadStream to not permanently decrease its buffer size at the end of a stream (this would fail when using BufferedSeekableReadStream and then seeking back from the end); this also fixes a bug which let you seek back beyond the start of a stream (not that we currently support that in other streams)
................
  r33437 | peres001 | 2008-07-30 09:58:25 +0200 (Wed, 30 Jul 2008) | 2 lines
  
  * Unified implementation of flow control opcodes in NS and BRA
  * Simplified script execution loop and context
................
  r33438 | thebluegr | 2008-07-30 10:23:04 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Make sure that save game descriptions are 0-terminated
................
  r33444 | buddha_ | 2008-07-30 13:03:52 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Added some debug aids related to addAni and the processSeqList crashing.
................
  r33446 | buddha_ | 2008-07-30 13:36:14 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Debug printing a couple more relevant variables in addAni.
................
  r33452 | peres001 | 2008-07-30 17:01:15 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Reordered initialization order to kill a ton of warnings.
................
  r33453 | fingolfin | 2008-07-30 17:16:57 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Advanced detector: split out part of detectGame into a new function detectGameFilebased; some cleanup
................
  r33455 | fingolfin | 2008-07-30 17:38:42 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Simplified advanced detector file sys scanning code
................
  r33456 | fingolfin | 2008-07-30 17:44:34 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Revert my accidental commit of the OSystem changes (oops)
................
  r33457 | fingolfin | 2008-07-30 17:48:16 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Simplify/optimize/cleanup detectGameFilebased further
................
  r33458 | peres001 | 2008-07-30 18:06:46 +0200 (Wed, 30 Jul 2008) | 1 line
  
  Fixed Win32 build, after Fingolfin's commits (probably because of the revert in revision 33456).
................
  r33459 | fingolfin | 2008-07-30 18:26:38 +0200 (Wed, 30 Jul 2008) | 1 line
  
  This time properly reverted my accidental commits of the osystem&configman patch (I didn't mean to commit it in the first place, still waiting for any replies to my corresponding scummvm-devel mail). Sorry for messing up so badly
................
  r33463 | lordhoto | 2008-07-31 12:47:15 +0200 (Thu, 31 Jul 2008) | 2 lines
  
  Committed slightly modified patch #2029395 "KYRA: Lands of Lore Intro + Character selection".
................
  r33464 | lordhoto | 2008-07-31 12:52:29 +0200 (Thu, 31 Jul 2008) | 2 lines
  
  Removed debugging leftover.
................
  r33466 | buddha_ | 2008-07-31 13:16:48 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Update MSVC project files for Kyra Lands of Lore additions.
................
  r33467 | peres001 | 2008-07-31 13:29:37 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Set correct font for dialogues in BRA Amiga.
................
  r33468 | peres001 | 2008-07-31 14:26:12 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Changed Gfx::_backgroundInfo to be a pointer. This temporarily kills all z-buffering.
................
  r33469 | peres001 | 2008-07-31 14:50:43 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Made changing of background more flexible, in that the engine can now configure its BackgroundInfo before passing it to Gfx.
................
  r33470 | lordhoto | 2008-07-31 15:36:13 +0200 (Thu, 31 Jul 2008) | 3 lines
  
  - Added Common::mem_fun_ref for object references instead of pointers.
  - Added simple tests for a little bit functionallity from common/func.h
................
  r33471 | eriktorbjorn | 2008-07-31 15:45:58 +0200 (Thu, 31 Jul 2008) | 4 lines
  
  Applied my patch #2030058 ("Workaround for incorrectly compressed FotAQ"), and
  made a mention in NEWS that speech is played correctly now. Of course, we
  should still provide a correctly compressed version at some point.
................
  r33473 | peres001 | 2008-07-31 16:20:51 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Disabled masks in BRA Amiga, because the decoding is not known yet.
................
  r33474 | peres001 | 2008-07-31 17:15:42 +0200 (Thu, 31 Jul 2008) | 2 lines
  
  * Removed references to the current _backgroundInfo from parser code.
  * Re-enabled masks (in BRA DOS).
................
  r33478 | anotherguest | 2008-07-31 19:33:48 +0200 (Thu, 31 Jul 2008) | 1 line
  
  Enabled the correct features for standard builds
................

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

Modified Paths:
--------------
    scummvm/branches/gsoc2008-gui/AUTHORS
    scummvm/branches/gsoc2008-gui/Makefile
    scummvm/branches/gsoc2008-gui/NEWS
    scummvm/branches/gsoc2008-gui/backends/fs/windows/windows-fs.cpp
    scummvm/branches/gsoc2008-gui/backends/midi/quicktime.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/dc/Makefile
    scummvm/branches/gsoc2008-gui/backends/platform/dc/audio.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/dc/dc.h
    scummvm/branches/gsoc2008-gui/backends/platform/dc/dcmain.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/dc/selector.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.h
    scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.h
    scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/wordcompletion.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X.html
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x-common.h
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/blit_arm.s
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.h
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.m
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_main.m
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.h
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.m
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.h
    scummvm/branches/gsoc2008-gui/backends/platform/null/null.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/Makefile.ps2
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/fileio.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/irxboot.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/systemps2.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/systemps2.h
    scummvm/branches/gsoc2008-gui/backends/platform/psp/Makefile
    scummvm/branches/gsoc2008-gui/backends/platform/psp/osys_psp.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/psp/osys_psp.h
    scummvm/branches/gsoc2008-gui/backends/platform/sdl/sdl.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/sdl/sdl.h
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/AdaptAllMMPs.pl
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/BuildPackageUpload_AllVersions.pl
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/BuildPackageUpload_LocalSettings.pl
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/README
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/S60v3/ScummVM_S60v3.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/UIQ3/ScummVM_UIQ3.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_agi.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_agos.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_base.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_cine.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_cruise.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_drascula.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_gob.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_kyra.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_lure.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_m4.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_made.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_parallaction.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_queen.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_saga.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_scumm.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_sky.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_sword1.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_sword2.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/mmp/scummvm_touche.mmp.in
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/src/SymbianOS.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/src/SymbianOS.h
    scummvm/branches/gsoc2008-gui/backends/platform/symbian/src/portdefs.h
    scummvm/branches/gsoc2008-gui/backends/platform/wii/osystem.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/wii/osystem.h
    scummvm/branches/gsoc2008-gui/backends/platform/wii/osystem_sfx.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/wince/Makefile
    scummvm/branches/gsoc2008-gui/backends/platform/wince/missing/missing.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/wince/wince-sdl.cpp
    scummvm/branches/gsoc2008-gui/backends/platform/wince/wince-sdl.h
    scummvm/branches/gsoc2008-gui/backends/plugins/win32/win32-provider.cpp
    scummvm/branches/gsoc2008-gui/backends/saves/default/default-saves.cpp
    scummvm/branches/gsoc2008-gui/backends/timer/default/default-timer.h
    scummvm/branches/gsoc2008-gui/base/commandLine.cpp
    scummvm/branches/gsoc2008-gui/base/game.cpp
    scummvm/branches/gsoc2008-gui/base/game.h
    scummvm/branches/gsoc2008-gui/base/internal_version.h
    scummvm/branches/gsoc2008-gui/base/main.cpp
    scummvm/branches/gsoc2008-gui/base/plugins.cpp
    scummvm/branches/gsoc2008-gui/base/plugins.h
    scummvm/branches/gsoc2008-gui/common/advancedDetector.cpp
    scummvm/branches/gsoc2008-gui/common/advancedDetector.h
    scummvm/branches/gsoc2008-gui/common/algorithm.h
    scummvm/branches/gsoc2008-gui/common/config-file.cpp
    scummvm/branches/gsoc2008-gui/common/config-manager.cpp
    scummvm/branches/gsoc2008-gui/common/file.cpp
    scummvm/branches/gsoc2008-gui/common/file.h
    scummvm/branches/gsoc2008-gui/common/func.h
    scummvm/branches/gsoc2008-gui/common/hashmap.h
    scummvm/branches/gsoc2008-gui/common/ptr.h
    scummvm/branches/gsoc2008-gui/common/rect.h
    scummvm/branches/gsoc2008-gui/common/scummsys.h
    scummvm/branches/gsoc2008-gui/common/str.cpp
    scummvm/branches/gsoc2008-gui/common/str.h
    scummvm/branches/gsoc2008-gui/common/stream.cpp
    scummvm/branches/gsoc2008-gui/common/stream.h
    scummvm/branches/gsoc2008-gui/common/system.cpp
    scummvm/branches/gsoc2008-gui/common/system.h
    scummvm/branches/gsoc2008-gui/common/unarj.cpp
    scummvm/branches/gsoc2008-gui/common/unarj.h
    scummvm/branches/gsoc2008-gui/common/xmlparser.h
    scummvm/branches/gsoc2008-gui/configure
    scummvm/branches/gsoc2008-gui/dists/engine-data/lure.dat
    scummvm/branches/gsoc2008-gui/dists/msvc7/kyra.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc7/parallaction.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc7/scummvm.sln
    scummvm/branches/gsoc2008-gui/dists/msvc7/scummvm.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc71/kyra.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc71/parallaction.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc71/scummvm.sln
    scummvm/branches/gsoc2008-gui/dists/msvc71/scummvm.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc8/kyra.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc8/parallaction.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc8/scummvm.sln
    scummvm/branches/gsoc2008-gui/dists/msvc8/scummvm.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc9/kyra.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc9/parallaction.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc9/scummvm.sln
    scummvm/branches/gsoc2008-gui/dists/msvc9/scummvm.vcproj
    scummvm/branches/gsoc2008-gui/dists/redhat/scummvm.spec
    scummvm/branches/gsoc2008-gui/dists/scummvm.rc
    scummvm/branches/gsoc2008-gui/dists/slackware/scummvm.SlackBuild
    scummvm/branches/gsoc2008-gui/engines/agi/agi.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/agos.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/agos.h
    scummvm/branches/gsoc2008-gui/engines/agos/animation.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/debug.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/draw.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/event.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/gfx.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/input.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/intern.h
    scummvm/branches/gsoc2008-gui/engines/agos/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/script.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/script_e1.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/script_s1.cpp
    scummvm/branches/gsoc2008-gui/engines/agos/subroutine.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/anim.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/anim.h
    scummvm/branches/gsoc2008-gui/engines/cine/bg.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/bg.h
    scummvm/branches/gsoc2008-gui/engines/cine/bg_list.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/bg_list.h
    scummvm/branches/gsoc2008-gui/engines/cine/cine.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/cine.h
    scummvm/branches/gsoc2008-gui/engines/cine/gfx.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/gfx.h
    scummvm/branches/gsoc2008-gui/engines/cine/main_loop.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/object.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/object.h
    scummvm/branches/gsoc2008-gui/engines/cine/pal.h
    scummvm/branches/gsoc2008-gui/engines/cine/part.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/prc.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/prc.h
    scummvm/branches/gsoc2008-gui/engines/cine/script.h
    scummvm/branches/gsoc2008-gui/engines/cine/script_fw.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/script_os.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/texte.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/texte.h
    scummvm/branches/gsoc2008-gui/engines/cine/unpack.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/various.cpp
    scummvm/branches/gsoc2008-gui/engines/cine/various.h
    scummvm/branches/gsoc2008-gui/engines/cruise/cruise_main.h
    scummvm/branches/gsoc2008-gui/engines/cruise/volume.cpp
    scummvm/branches/gsoc2008-gui/engines/drascula/animation.cpp
    scummvm/branches/gsoc2008-gui/engines/drascula/drascula.h
    scummvm/branches/gsoc2008-gui/engines/drascula/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/drascula/palette.cpp
    scummvm/branches/gsoc2008-gui/engines/drascula/rooms.cpp
    scummvm/branches/gsoc2008-gui/engines/engines.mk
    scummvm/branches/gsoc2008-gui/engines/gob/dataio.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/dataio.h
    scummvm/branches/gsoc2008-gui/engines/gob/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/driver_vga.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/gob.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/gob.h
    scummvm/branches/gsoc2008-gui/engines/gob/goblin.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/goblin.h
    scummvm/branches/gsoc2008-gui/engines/gob/goblin_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/inter.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/inter.h
    scummvm/branches/gsoc2008-gui/engines/gob/inter_v1.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/inter_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/mult.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/mult.h
    scummvm/branches/gsoc2008-gui/engines/gob/mult_v1.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/mult_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/saveload.h
    scummvm/branches/gsoc2008-gui/engines/gob/saveload_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/saveload_v3.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/saveload_v4.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/scenery.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/sound/sound.h
    scummvm/branches/gsoc2008-gui/engines/gob/sound/soundmixer.h
    scummvm/branches/gsoc2008-gui/engines/gob/variables.cpp
    scummvm/branches/gsoc2008-gui/engines/gob/variables.h
    scummvm/branches/gsoc2008-gui/engines/gob/videoplayer.cpp
    scummvm/branches/gsoc2008-gui/engines/igor/igor.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/animator_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/gui_hof.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/gui_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/gui_lok.h
    scummvm/branches/gsoc2008-gui/engines/kyra/items_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_hof.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_mr.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_mr.h
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_v1.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_v1.h
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/kyra_v2.h
    scummvm/branches/gsoc2008-gui/engines/kyra/module.mk
    scummvm/branches/gsoc2008-gui/engines/kyra/resource.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/scene_hof.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/scene_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/screen.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/screen.h
    scummvm/branches/gsoc2008-gui/engines/kyra/screen_v2.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/screen_v2.h
    scummvm/branches/gsoc2008-gui/engines/kyra/script.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/script.h
    scummvm/branches/gsoc2008-gui/engines/kyra/script_hof.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/script_tim.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/script_tim.h
    scummvm/branches/gsoc2008-gui/engines/kyra/seqplayer.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/sequences_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/sound.h
    scummvm/branches/gsoc2008-gui/engines/kyra/sound_adlib.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/sound_lok.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/sound_towns.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/staticres.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/wsamovie.h
    scummvm/branches/gsoc2008-gui/engines/lure/lure.cpp
    scummvm/branches/gsoc2008-gui/engines/lure/lure.h
    scummvm/branches/gsoc2008-gui/engines/lure/luredefs.h
    scummvm/branches/gsoc2008-gui/engines/lure/menu.cpp
    scummvm/branches/gsoc2008-gui/engines/lure/menu.h
    scummvm/branches/gsoc2008-gui/engines/lure/palette.cpp
    scummvm/branches/gsoc2008-gui/engines/lure/palette.h
    scummvm/branches/gsoc2008-gui/engines/lure/res.cpp
    scummvm/branches/gsoc2008-gui/engines/lure/res_struct.cpp
    scummvm/branches/gsoc2008-gui/engines/lure/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/assets.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/converse.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/globals.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/globals.h
    scummvm/branches/gsoc2008-gui/engines/m4/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/graphics.h
    scummvm/branches/gsoc2008-gui/engines/m4/m4_views.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/mads_anim.cpp
    scummvm/branches/gsoc2008-gui/engines/m4/viewmgr.cpp
    scummvm/branches/gsoc2008-gui/engines/made/database.cpp
    scummvm/branches/gsoc2008-gui/engines/made/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/made/made.cpp
    scummvm/branches/gsoc2008-gui/engines/made/made.h
    scummvm/branches/gsoc2008-gui/engines/made/pmvplayer.cpp
    scummvm/branches/gsoc2008-gui/engines/made/screen.cpp
    scummvm/branches/gsoc2008-gui/engines/made/scriptfuncs.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/callables_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/debug.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/dialogue.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/disk.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/disk_br.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/disk_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/exec_br.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/exec_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/font.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/gfxbase.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/graphics.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/gui_br.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/gui_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/input.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/input.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/inventory.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/inventory.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/module.mk
    scummvm/branches/gsoc2008-gui/engines/parallaction/objects.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/objects.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/parallaction.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/parallaction.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/parallaction_br.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/parallaction_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/parser.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/parser.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/parser_br.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/parser_ns.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/walk.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/walk.h
    scummvm/branches/gsoc2008-gui/engines/queen/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/graphics.h
    scummvm/branches/gsoc2008-gui/engines/queen/input.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/input.h
    scummvm/branches/gsoc2008-gui/engines/queen/journal.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/queen.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/resource.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/queen/sound.h
    scummvm/branches/gsoc2008-gui/engines/saga/animation.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/font.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/font.h
    scummvm/branches/gsoc2008-gui/engines/saga/font_map.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/interface.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/introproc_ihnm.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/rscfile.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/saga.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/saga.h
    scummvm/branches/gsoc2008-gui/engines/saga/script.cpp
    scummvm/branches/gsoc2008-gui/engines/saga/sprite.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/charset.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/debugger.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/dialogs.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/dialogs.h
    scummvm/branches/gsoc2008-gui/engines/scumm/file.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/file.h
    scummvm/branches/gsoc2008-gui/engines/scumm/file_nes.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/file_nes.h
    scummvm/branches/gsoc2008-gui/engines/scumm/gfxARM.s
    scummvm/branches/gsoc2008-gui/engines/scumm/he/resource_he.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/he/script_v60he.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/he/script_v72he.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/he/script_v80he.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/he/wiz_he.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/imuse_digi/dimuse.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/imuse_digi/dimuse_track.h
    scummvm/branches/gsoc2008-gui/engines/scumm/resource.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/scumm/scumm-md5.h
    scummvm/branches/gsoc2008-gui/engines/scumm/smush/codec47ARM.s
    scummvm/branches/gsoc2008-gui/engines/scumm/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/sky/disk.cpp
    scummvm/branches/gsoc2008-gui/engines/sky/music/adlibmusic.cpp
    scummvm/branches/gsoc2008-gui/engines/sword1/resman.cpp
    scummvm/branches/gsoc2008-gui/engines/sword2/music.cpp
    scummvm/branches/gsoc2008-gui/engines/sword2/resman.cpp
    scummvm/branches/gsoc2008-gui/engines/sword2/sound.h
    scummvm/branches/gsoc2008-gui/engines/touche/midi.cpp
    scummvm/branches/gsoc2008-gui/engines/touche/midi.h
    scummvm/branches/gsoc2008-gui/engines/touche/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/touche/touche.cpp
    scummvm/branches/gsoc2008-gui/graphics/cursorman.cpp
    scummvm/branches/gsoc2008-gui/graphics/cursorman.h
    scummvm/branches/gsoc2008-gui/graphics/font.cpp
    scummvm/branches/gsoc2008-gui/graphics/iff.cpp
    scummvm/branches/gsoc2008-gui/gui/credits.h
    scummvm/branches/gsoc2008-gui/gui/launcher.cpp
    scummvm/branches/gsoc2008-gui/gui/massadd.cpp
    scummvm/branches/gsoc2008-gui/gui/newgui.cpp
    scummvm/branches/gsoc2008-gui/ports.mk
    scummvm/branches/gsoc2008-gui/sound/midiparser_smf.cpp
    scummvm/branches/gsoc2008-gui/sound/midiparser_xmidi.cpp
    scummvm/branches/gsoc2008-gui/sound/mixer.cpp
    scummvm/branches/gsoc2008-gui/sound/mixer.h
    scummvm/branches/gsoc2008-gui/sound/mp3.cpp
    scummvm/branches/gsoc2008-gui/sound/softsynth/mt32.cpp
    scummvm/branches/gsoc2008-gui/test/common/ptr.h
    scummvm/branches/gsoc2008-gui/test/common/seekablesubreadstream.h
    scummvm/branches/gsoc2008-gui/test/common/str.h
    scummvm/branches/gsoc2008-gui/test/common/subreadstream.h
    scummvm/branches/gsoc2008-gui/tools/create_lure/create_lure_dat.cpp
    scummvm/branches/gsoc2008-gui/tools/credits.pl
    scummvm/branches/gsoc2008-gui/tools/scumm-md5.txt

Added Paths:
-----------
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/elf/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/ps2kbd.c
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/us_keymap.h
    scummvm/branches/gsoc2008-gui/dists/msvc8/tinsel.vcproj
    scummvm/branches/gsoc2008-gui/dists/msvc9/tinsel.vcproj
    scummvm/branches/gsoc2008-gui/engines/kyra/lol.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/lol.h
    scummvm/branches/gsoc2008-gui/engines/kyra/screen_lol.cpp
    scummvm/branches/gsoc2008-gui/engines/kyra/screen_lol.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/balloons.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/exec.h
    scummvm/branches/gsoc2008-gui/engines/parallaction/gui.cpp
    scummvm/branches/gsoc2008-gui/engines/parallaction/gui.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/
    scummvm/branches/gsoc2008-gui/engines/tinsel/actors.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/actors.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/anim.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/anim.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/background.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/background.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/bg.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cliprect.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cliprect.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/config.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/config.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/coroutine.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/cursor.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cursor.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/debugger.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/debugger.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/dw.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/effect.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/events.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/events.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/faders.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/faders.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/film.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/font.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/font.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/graphics.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/handle.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/handle.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/heapmem.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/heapmem.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/inventory.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/inventory.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/mareels.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/module.mk
    scummvm/branches/gsoc2008-gui/engines/tinsel/move.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/move.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/multiobj.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/multiobj.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/music.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/music.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/object.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/object.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/palette.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/palette.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/pcode.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/pcode.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/pdisplay.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/pid.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/play.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/polygons.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/polygons.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/rince.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/rince.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/savescn.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/savescn.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scene.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scene.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/sched.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/sched.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scn.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scn.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scroll.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scroll.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/serializer.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/sound.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/strres.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/strres.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/text.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/text.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/timers.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/timers.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinlib.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinlib.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinsel.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinsel.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/token.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/token.h
    scummvm/branches/gsoc2008-gui/sound/mixer_intern.h
    scummvm/branches/gsoc2008-gui/test/common/bufferedreadstream.h
    scummvm/branches/gsoc2008-gui/test/common/bufferedseekablereadstream.h
    scummvm/branches/gsoc2008-gui/test/common/func.h
    scummvm/branches/gsoc2008-gui/tools/svnpropset.sh

Removed Paths:
-------------
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/ps2kbd.c
    scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/us_keymap.h
    scummvm/branches/gsoc2008-gui/backends/platform/x11/
    scummvm/branches/gsoc2008-gui/engines/tinsel/actors.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/actors.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/anim.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/anim.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/background.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/background.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/bg.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cliprect.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cliprect.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/config.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/config.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/coroutine.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/cursor.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/cursor.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/debugger.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/debugger.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/detection.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/dw.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/effect.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/events.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/events.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/faders.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/faders.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/film.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/font.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/font.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/graphics.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/graphics.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/handle.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/handle.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/heapmem.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/heapmem.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/inventory.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/inventory.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/mareels.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/module.mk
    scummvm/branches/gsoc2008-gui/engines/tinsel/move.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/move.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/multiobj.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/multiobj.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/music.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/music.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/object.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/object.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/palette.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/palette.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/pcode.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/pcode.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/pdisplay.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/pid.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/play.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/polygons.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/polygons.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/rince.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/rince.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/saveload.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/savescn.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/savescn.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scene.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scene.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/sched.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/sched.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scn.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scn.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/scroll.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/scroll.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/serializer.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/sound.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/sound.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/strres.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/strres.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/text.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/text.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/timers.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/timers.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinlib.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinlib.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinsel.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/tinsel.h
    scummvm/branches/gsoc2008-gui/engines/tinsel/token.cpp
    scummvm/branches/gsoc2008-gui/engines/tinsel/token.h

Property Changed:
----------------
    scummvm/branches/gsoc2008-gui/
    scummvm/branches/gsoc2008-gui/backends/fs/wii/
    scummvm/branches/gsoc2008-gui/backends/platform/dc/
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/build.sh
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/bundle.sh
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/clean.sh
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh
    scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/scummvm.gpe
    scummvm/branches/gsoc2008-gui/tools/create_drascula/


Property changes on: scummvm/branches/gsoc2008-gui
___________________________________________________________________
Modified: svnmerge-integrated
   - /scummvm/trunk:1-32700
   + /scummvm/trunk:1-33481

Modified: scummvm/branches/gsoc2008-gui/AUTHORS
===================================================================
--- scummvm/branches/gsoc2008-gui/AUTHORS	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/AUTHORS	2008-08-01 08:55:21 UTC (rev 33486)
@@ -94,10 +94,19 @@
 
     SAGA:
        Torbjorn Andersson   
+       Sven Hesse           
        Filippos Karapetis   
        Andrew Kurushin      
        Eugene Sandulenko    
 
+    Tinsel;:
+       Torbjorn Andersson   
+       Paul Gilbert         
+       Sven Hesse           
+       Max Horn             
+       Filippos Karapetis   
+       Joost Peters         
+
     Touche:
        Gregory Montoir      
 

Modified: scummvm/branches/gsoc2008-gui/Makefile
===================================================================
--- scummvm/branches/gsoc2008-gui/Makefile	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/Makefile	2008-08-01 08:55:21 UTC (rev 33486)
@@ -25,7 +25,7 @@
 CXXFLAGS+= -Wno-long-long -Wno-multichar -Wno-unknown-pragmas -Wno-reorder
 # Enable even more warnings...
 CXXFLAGS+= -pedantic -Wpointer-arith -Wcast-qual -Wcast-align
-CXXFLAGS+= -Wshadow -Wimplicit -Wundef -Wnon-virtual-dtor -Wwrite-strings
+CXXFLAGS+= -Wshadow -Wimplicit -Wnon-virtual-dtor -Wwrite-strings
 
 # Disable RTTI and exceptions, and enabled checking of pointers returned by "new"
 CXXFLAGS+= -fno-rtti -fno-exceptions -fcheck-new

Modified: scummvm/branches/gsoc2008-gui/NEWS
===================================================================
--- scummvm/branches/gsoc2008-gui/NEWS	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/NEWS	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,27 +1,44 @@
 For a more comprehensive changelog for the latest experimental SVN code, see:
         http://scummvm.sourceforge.net/daily/ChangeLog
 
+0.13.0 (????-??-??)
+ New Games:
+   - Added support for Discworld.
+
 0.12.0 (????-??-??)
  New Games:
-   - Added support for The Legend of Kyrandia: Book Two: Hand of Fate
-   - Added support for The Legend of Kyrandia: Book Three: Malcolm's Revenge
-   - Added support for Lost in Time
-   - Added support for The Bizarre Adventures of Woodruff and the Schnibble
-   - Added support for the PC version of Waxworks
+   - Added support for The Legend of Kyrandia: Book Two: Hand of Fate.
+   - Added support for The Legend of Kyrandia: Book Three: Malcolm's Revenge.
+   - Added support for Lost in Time.
+   - Added support for The Bizarre Adventures of Woodruff and the Schnibble.
+   - Added support for the PC version of Waxworks.
    - Added support for the Macintosh version of I Have no Mouth, and I
-     must Scream
+     must Scream.
+   - Added support for Drascula: The Vampire Strikes Back.
    
  General:
    - Added CAMD MIDI driver for AmigaOS4.
    - Revived the PS2 port (was already in 0.11.1 but was forgotten in the
      release notes).
+   - Plugged numerous memory leaks in all engines (part of GSoC'08 task),
+   - Added audio double buffering to the SDL backend, which fixes the 
+     problems with the MT-32 emulator on Mac OS X (for now only enabled
+     on Mac OS X).
 
  AGOS:
+   - Fixed crashes during certain music in Amiga versions of Elvira 1 and
+     Simon the Sorcerer 1.
    - Fixed palette issues in Amiga versions of Simon the Sorcerer 1.
 
+ Queen:
+   - Speech is played at the correct sample rate. (It used to be pitched a bit
+     too low.)
+
  SCUMM:
    - Rewrote parts of Digital iMUSE, fixing some bugs.
    - Rewrote the internal timer code, fixing some speed issues in e.g. COMI.
+   - Improved support for sound effects in Amiga version of Zak McKracken.
+   - Added support for mixed Adlib/MIDI mode in Monkey Island 1 (Floppy).
 
 0.11.1 (2008-02-29)
  SCUMM:
@@ -673,9 +690,10 @@
   OS X.
 - Loading COMI savegames for disk 2 doesn't anymore require disk 1 first.
 - Rewritten iMUSE engine, and many Music fixes (exp. Monkey Island 2).
-- Support for music in Humongous games and simon2dos/simon2talkie (XMIDI
+- Support for music in DOS versions of Humongous Entertainment games and
+  Simon the Sorcerer 2 (XMIDI format).
+- Support for music in floppy demo of Simon the Sorcerer 1 (Proprietary
   format).
-- Support for music in simon1demo (Proprietary format).
 - Complete music support for Simon the Sorcerer 2.
 - Improved music and sound support in Zak256.
 - Added Aspect Ratio option.


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


Modified: scummvm/branches/gsoc2008-gui/backends/fs/windows/windows-fs.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/fs/windows/windows-fs.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/fs/windows/windows-fs.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -245,7 +245,7 @@
 		_isDirectory = ((fileAttribs & FILE_ATTRIBUTE_DIRECTORY) != 0);
 		_isValid = true;
 		// Add a trailing slash, if necessary.
-		if (_path.lastChar() != '\\') {
+		if (_isDirectory && _path.lastChar() != '\\') {
 			_path += '\\';
 		}
 	}

Modified: scummvm/branches/gsoc2008-gui/backends/midi/quicktime.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/midi/quicktime.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/midi/quicktime.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -132,8 +132,7 @@
 	return MERR_DEVICE_NOT_AVAILABLE;
 }
 
-void MidiDriver_QT::close()
-{
+void MidiDriver_QT::close() {
 	MidiDriver_MPU401::close();
 	dispose();
 }
@@ -248,8 +247,7 @@
 	NASetController(qtNoteAllocator, qtNoteChannel[channel], kControllerPitchBend, theBend);
 }
 
-void MidiDriver_QT::dispose()
-{
+void MidiDriver_QT::dispose() {
 	for (int i = 0; i < 16; i++) {
 		if (qtNoteChannel[i] != 0)
 			NADisposeNoteChannel(qtNoteAllocator, qtNoteChannel[i]);


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/dc
___________________________________________________________________
Modified: svn:ignore
   - *.d
gui
graphics
sound
common
base
backends
tools
plugins
engines
scummvm.elf
scummvm.bin
SCUMMVM.BIN
*.PLG


   + .deps
gui
graphics
sound
common
base
backends
tools
plugins
engines
scummvm.elf
scummvm.bin
SCUMMVM.BIN
*.PLG



Modified: scummvm/branches/gsoc2008-gui/backends/platform/dc/Makefile
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/dc/Makefile	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/dc/Makefile	2008-08-01 08:55:21 UTC (rev 33486)
@@ -16,6 +16,7 @@
 INCLUDES= -I./ -I$(srcdir) -I$(ronindir)/include/ -I$(srcdir)/engines
 LIBS	= -L$(ronindir)/lib -lmad -lronin -lz -lm
 EXECUTABLE = scummvm.elf
+DEPDIR = .deps
 PLUGIN_PREFIX =
 PLUGIN_SUFFIX = .plg
 PLUGIN_EXTRA_DEPS = plugin.x plugin.syms scummvm.elf
@@ -32,12 +33,37 @@
 DEFINES += -DDYNAMIC_MODULES
 PRE_OBJS_FLAGS = -Wl,--whole-archive
 POST_OBJS_FLAGS = -Wl,--no-whole-archive
+ENABLED=DYNAMIC_PLUGIN
+else
+ENABLED=STATIC_PLUGIN
 endif
 
+ENABLE_SCUMM = $(ENABLED)
+ENABLE_SCUMM_7_8 = $(ENABLED)
+ENABLE_HE = $(ENABLED)
+ENABLE_AGI = $(ENABLED)
+ENABLE_AGOS = $(ENABLED)
+ENABLE_CINE = $(ENABLED)
+ENABLE_CRUISE = $(ENABLED)
+ENABLE_DRASCULA = $(ENABLED)
+ENABLE_GOB = $(ENABLED)
+ENABLE_IGOR = $(ENABLED)
+ENABLE_KYRA = $(ENABLED)
+ENABLE_LURE = $(ENABLED)
+ENABLE_M4 = $(ENABLED)
+ENABLE_MADE = $(ENABLED)
+ENABLE_PARALLACTION = $(ENABLED)
+ENABLE_QUEEN = $(ENABLED)
+ENABLE_SAGA = $(ENABLED)
+ENABLE_SKY = $(ENABLED)
+ENABLE_SWORD1 = $(ENABLED)
+ENABLE_SWORD2 = $(ENABLED)
+ENABLE_TOUCHE = $(ENABLED)
+
 OBJS :=	dcmain.o time.o display.o audio.o input.o selector.o icon.o \
 	label.o vmsave.o softkbd.o dcloader.o cache.o dc-fs.o
 
-MODULE_DIRS += .
+MODULE_DIRS += ./
 
 include $(srcdir)/Makefile.common
 
@@ -49,7 +75,7 @@
 
 plugin_dist :
 	for p in plugins/*.plg; do \
-	  sh-elf-strip -g -o "`basename \"$$p\" | tr '[:lower:]' '[:upper:]'`" "$$p"; \
+	  sh-elf-strip -g -o "`basename \"$$p\" | LC_CTYPE=C tr '[:lower:]' '[:upper:]'`" "$$p"; \
 	done
 
 dist : SCUMMVM.BIN plugins plugin_dist

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

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

Modified: scummvm/branches/gsoc2008-gui/backends/platform/dc/dcmain.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/dc/dcmain.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/dc/dcmain.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -33,7 +33,7 @@
 #include <common/config-manager.h>
 
 #include "backends/plugins/dc/dc-provider.h"
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 
 
 Icon icon;
@@ -54,8 +54,10 @@
 void OSystem_Dreamcast::initBackend()
 {
   _savefile = createSavefileManager();
-  _mixer = new Audio::Mixer();
+  _mixer = new Audio::MixerImpl(this);
   _timer = new DefaultTimerManager();
+  _mixer->setOutputRate(initSound());
+  _mixer->setReady(true);
 }
 
 
@@ -216,7 +218,6 @@
   static int argc = 1;
 
   dc_init_hardware();
-  initSound();
 
   g_system = new OSystem_Dreamcast();
   assert(g_system);

Modified: scummvm/branches/gsoc2008-gui/backends/platform/dc/selector.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/dc/selector.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/dc/selector.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -25,7 +25,9 @@
 
 #include <common/scummsys.h>
 #include <engines/engine.h>
+#include <engines/metaengine.h>
 #include <base/plugins.h>
+#include <base/game.h>
 #include <common/fs.h>
 #include <common/events.h>
 #include "dc.h"
@@ -149,15 +151,6 @@
 
 static Game the_game;
 
-static void detectGames(FSList &files, GameList &candidates)
-{
-  const EnginePluginList &plugins = EngineMan.getPlugins();
-  EnginePluginList::const_iterator iter = plugins.begin();
-  for (iter = plugins.begin(); iter != plugins.end(); ++iter) {
-    candidates.push_back((*iter)->detectGames(files));
-  }
-}
-
 static bool isIcon(const FilesystemNode &entry)
 {
   int l = entry.getDisplayName().size();
@@ -227,8 +220,7 @@
 	  files.push_back(*entry);
     }
 
-    GameList candidates;
-    detectGames(files, candidates);
+    GameList candidates = EngineMan.detectGames(files);
 
     for (GameList::const_iterator ge = candidates.begin();
 	ge != candidates.end(); ++ge)

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -168,7 +168,7 @@
 u8 gameID;
 
 bool snapToBorder = false;
-bool consoleEnable = false;
+bool consoleEnable = true;
 bool gameScreenSwap = false;
 bool isCpuScalerEnabled();
 //#define HEAVY_LOGGING
@@ -899,12 +899,6 @@
 		return BG_GFX + 0x10000;		// 16bit qty!
 }
 
-void setSoundProc(OSystem_DS::SoundProc proc, void* param) {
-//	consolePrintf("Set sound callback");
-	soundCallback = proc;
-	soundParam = param;
-}
-
 // The sound system in ScummVM seems to always return stereo interleaved samples.
 // Here, I'm treating an 11Khz stereo stream as a 22Khz mono stream, which works sorta ok, but is
 // a horrible bodge.  Any advice on how to change the engine to output mono would be greatly
@@ -914,7 +908,8 @@
 	consolePrintf("doSoundCallback...");
 	#endif
 
-	if (soundCallback) {
+	if (OSystem_DS::instance())
+	if (OSystem_DS::instance()->getMixerImpl()) {
 		lastCallbackFrame = frameCount;
 		
 		for (int r = IPC->playingSection; r < IPC->playingSection + 4; r++) {
@@ -923,7 +918,7 @@
 			if (IPC->fillNeeded[chunk]) {
 				IPC->fillNeeded[chunk] = false;
 				DC_FlushAll();
-				soundCallback(soundParam, (byte *) (soundBuffer + ((bufferSamples >> 2) * chunk)), bufferSamples >> 1);
+				OSystem_DS::instance()->getMixerImpl()->mixCallback((byte *) (soundBuffer + ((bufferSamples >> 2) * chunk)), bufferSamples >> 1);
 				IPC->fillNeeded[chunk] = false;
 				DC_FlushAll();
 			}

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/dsmain.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -88,7 +88,6 @@
 void 	doTimerCallback();												// Call callback function if required
 
 // Sound
-void 	setSoundProc(OSystem_DS::SoundProc proc, void* param);			// Setup a callback function for sound
 void 	doSoundCallback();												// Call function if sound buffers need more data
 void 	playSound(const void* data, u32 length, bool loop, bool adpcm = false, int rate = 22050);		// Start a sound
 void 	stopSound(int channel);

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -67,10 +67,12 @@
 	ConfMan.setInt("autosave_period", 0);
 	ConfMan.setBool("FM_medium_quality", true);
 
-	_mixer = new DSAudioMixer;
-	_timer = new DSTimerManager;
-	DS::setSoundProc(Audio::Mixer::mixCallback, _mixer);
-    DS::setTimerCallback(&OSystem_DS::timerHandler, 10);
+	_mixer = new DSAudioMixer(this);
+	_timer = new DSTimerManager();
+    	DS::setTimerCallback(&OSystem_DS::timerHandler, 10);
+
+	_mixer->setOutputRate(11025 /*DS::getSoundFrequency()*/);
+	_mixer->setReady(true);
     
 	OSystem::initBackend();
 }
@@ -139,7 +141,7 @@
 		green >>= 3;
 		blue >>= 3;
 		
-//		if (r != 255)
+		if (r != 255)
 		{		
 			BG_PALETTE[r] = red | (green << 5) | (blue << 10);
 			if (!DS::getKeyboardEnable()) {
@@ -158,13 +160,13 @@
 	// Ensure we copy using 16 bit quantities due to limitation of VRAM addressing
 	
 
-	u16* image = (u16 *) DS::get8BitBackBuffer();
+	const u16* image = (const u16 *) DS::get8BitBackBuffer();
 	for (int y = 0; y <  DS::getGameHeight(); y++)
 	{
 		DC_FlushRange(image + (y << 8), DS::getGameWidth());
 		for (int x = 0; x < DS::getGameWidth() >> 1; x++)
 		{
-			*(((u16 *) (surf->pixels)) + y * (DS::getGameWidth() >> 1) + x) = image[y << 8 + x];
+			*(((u16 *) (surf->pixels)) + y * (DS::getGameWidth() >> 1) + x) = image[(y << 8) + x];
 		}
 	}
 
@@ -277,7 +279,7 @@
 
 void OSystem_DS::copyRectToOverlay (const OverlayColor *buf, int pitch, int x, int y, int w, int h) {
 	u16* bg = (u16 *) DS::get16BitBackBuffer();
-	u16* src = (u16 *) buf;
+	const u16* src = (const u16 *) buf;
 		
 //	if (x + w > 256) w = 256 - x;
 	//if (x + h > 256) h = 256 - y;
@@ -433,13 +435,7 @@
 void OSystem_DS::deleteMutex(MutexRef mutex) {
 }
 
-void OSystem_DS::clearSoundCallback() {
-//	consolePrintf("Clearing sound callback");
-//	DS::setSoundProc(NULL, NULL);
-}
-
-int OSystem_DS::getOutputSampleRate() const
-{
+int OSystem_DS::getOutputSampleRate() const {
 	return DS::getSoundFrequency();
 }
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/osystem_ds.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -30,10 +30,13 @@
 #include "gbampsave.h"
 #include "backends/saves/default/default-saves.h"
 #include "backends/timer/default/default-timer.h"
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 #include "graphics/surface.h"
 
-class DSAudioMixer : public Audio::Mixer {	
+class DSAudioMixer : public Audio::MixerImpl {	
+
+public:
+	DSAudioMixer(OSystem* system) : Audio::MixerImpl(system) { }
 };
 
 class DSTimerManager : public DefaultTimerManager {	
@@ -62,7 +65,7 @@
 	Graphics::Surface* createTempFrameBuffer();
 
 public:
-	typedef void (*SoundProc)(void *param, byte *buf, int len);
+	typedef void (*SoundProc)(byte *buf, int len);
 	typedef int  (*TimerProc)(int interval);
 
 	OSystem_DS();
@@ -114,7 +117,6 @@
 	virtual void unlockMutex(MutexRef mutex);
 	virtual void deleteMutex(MutexRef mutex);
 
-	virtual void clearSoundCallback();
 	virtual int getOutputSampleRate() const;
 
 	virtual bool openCD(int drive);
@@ -147,6 +149,8 @@
 	virtual void unlockScreen();
 	
 	virtual Audio::Mixer* getMixer() { return _mixer; }
+	Audio::MixerImpl* getMixerImpl() { return _mixer; }
+
 	virtual Common::TimerManager* getTimerManager() { return _timer; }
 	static int timerHandler(int t);
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/wordcompletion.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/wordcompletion.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ds/arm9/source/wordcompletion.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,6 +1,6 @@
 #include "wordcompletion.h"
-#include "engines/agi/agi.h"
 #include "osystem_ds.h"
+#include "engines/agi/agi.h"	// Caution for #define for NUM_CHANNELS, causes problems in mixer_intern.h
 
 #ifdef ENABLE_AGI
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,4 +1,4 @@
-ScummVM - GP2X SPECIFIC README - 0.10.0 SVN
+ScummVM - GP2X SPECIFIC README - HEAD SVN
 ------------------------------------------------------------------------
 
 Contents:

Modified: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X.html
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X.html	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/README-GP2X.html	2008-08-01 08:55:21 UTC (rev 33486)
@@ -2,12 +2,15 @@
 <html>
 <head>
   <title>ScummVM - GP2X SPECIFIC README</title>
+
+
 </head>
 
 
 <body>
 
-<span style="font-weight: bold;">ScummVM - GP2X SPECIFIC README - 0.10.0 SVN<br>
+<span style="font-weight: bold;">ScummVM -
+GP2X SPECIFIC README - HEAD SVN<br>
 
 </span>
 <hr style="width: 100%; height: 2px;"><br>
@@ -16,52 +19,65 @@
 
 <ul>
 
-  <li><a href="#About_the_backendport">About the backend/port</a></li>
+  <li><a href="#About_the_backendport">About the
+backend/port</a></li>
 
-  <li><a href="#Game_compatibility">Game compatability</a></li>
+  <li><a href="#Game_compatibility">Game
+compatability</a></li>
 
   <li><a href="#Included_engines">Included engines</a></li>
 
-  <li><a href="#Supported_audio_options">Supported audio options</a></li>
+  <li><a href="#Supported_audio_options">Supported
+audio options</a></li>
 
-  <li><a href="#Supported_cut-scene_options">Supported cut-scene options</a></li>
+  <li><a href="#Supported_cut-scene_options">Supported
+cut-scene options</a></li>
 
   <li><a href="#Recent_changes">Recent changes</a></li>
 
   <li><a href="#How_to_save">How to save</a></li>
 
-  <li><a href="#Controller_mappings">Controller mappings</a></li>
+  <li><a href="#Controller_mappings">Controller
+mappings</a></li>
 
   <li><a href="#Know_issues">Know issues</a></li>
 
   <li><a href="#Major_TODOs">Major TODO's</a></li>
 
-  <li><a href="#Additional_resourceslinks">Additional resources/links</a></li>
+  <li><a href="#Additional_resourceslinks">Additional
+resources/links</a></li>
 
   <li><a href="#Credits">Credits</a></li>
 
 </ul>
+
 <br>
+
 <hr style="width: 100%; height: 2px;"><a style="font-weight: bold;" name="About_the_backendport"></a><span style="font-weight: bold;">About the backend/port</span><br>
 
 <br>
 
-This is the readme for the offficial GP2X ScummVM backend (also known as the GP2X port).<br>
+This is the readme for the offficial GP2X ScummVM backend (also known
+as the GP2X port).<br>
 
 <br>
 
-This is an SVN test release of ScummVM for the GP2X, it would be appreciated
+This is an SVN test release of ScummVM for the GP2X, it would be
+appreciated
 if this SVN test distribution was not mirrored and that people be
-directed to <a href="http://www.distant-earth.com/scummvm">http://www.distant-earth.com/scummvm</a> instead for updated SVN builds.<br>
+directed to <a href="http://www.distant-earth.com/scummvm">http://www.distant-earth.com/scummvm</a>
+instead for updated SVN builds.<br>
 
 <br>
 
 Full supported official releases of the GP2X ScummVM backend are made
-in line with main official releases and are avalalble from the <a href="http://www.scummvm.org/downloads.php">ScummVM downloads page</a>.<br>
+in line with main official releases and are avalalble from the <a href="http://www.scummvm.org/downloads.php">ScummVM
+downloads page</a>.<br>
 
 <br>
 
-This build is in an active state of development and as such no ‘expected’ behavior can be guaranteed ;).<br>
+This build is in an active state of development and as such no
+‘expected’ behavior can be guaranteed ;).<br>
 
 <br>
 
@@ -69,48 +85,60 @@
 
 <br>
 
-Please refer to the <a href="http://forums.scummvm.org/viewforum.php?f=14">GP2X ScummVM forum</a> and <a href="http://wiki.scummvm.org/index.php/GP2X">WiKi</a> for the latest information on the port.<br>
+Please refer to the <a href="http://forums.scummvm.org/viewforum.php?f=14">GP2X
+ScummVM forum</a> and <a href="http://wiki.scummvm.org/index.php/GP2X">WiKi</a>
+for the latest information on the port.<br>
+
 <br>
 
 <hr style="width: 100%; height: 2px;"><a style="font-weight: bold;" name="Game_compatibility"></a><span style="font-weight: bold;">Game compatibility</span><br>
 
 <br>
 
-For information on the compatability of a specific game please refer to the <a href="http://wiki.scummvm.org/index.php/GP2X#Compatibility_List">GP2X compatability section of the ScummVM WiKi</a>.<br>
+For information on the compatability of a specific game please refer to
+the <a href="http://wiki.scummvm.org/index.php/GP2X#Compatibility_List">GP2X
+compatability section of the ScummVM WiKi</a>.<br>
 
 <br>
 
-Please note the version and date of the ScummVM build you are running when reviewing the above list.<br>
+Please note the version and date of the ScummVM build you are running
+when reviewing the above list.<br>
 
 <br>
 
 <hr style="width: 100%; height: 2px;"><a style="font-weight: bold;" name="Included_engines"></a><span style="font-weight: bold;">Included engines</span><br>
 
 <br>
+
 Just because an engine is included does not mean any/all of its games
 are supported. Please check game compatability for more infomation.<br>
+
 <ul>
-  <li>
-Scumm - (All games supported by ScummVM should work to some extent, using the hardware scalar if needed)</li>
+
+  <li>Scumm - (All games supported by ScummVM should work to some
+extent, using the hardware scalar if needed)</li>
+
   <li>AGOS (AKA Simon) - (Simon the Sorcerer one and two).</li>
+
   <li>Sky - (Beneath a Steel Sky)</li>
-  <li>
-Sword - (Broken Sword 1) - This engine uses the hardware scalar to
+
+  <li>Sword - (Broken Sword 1) - This engine uses the hardware
+scalar to
 downsize the graphics to fix on the GP2X. It is NOT very nice to look
 at.</li>
-  <li>
-Sword2 - (Broken Sword 2) - This engine uses the hardware
+
+  <li>Sword2 - (Broken Sword 2) - This engine uses the hardware
 scalar to downsize the graphics to fix on the GP2X. It is NOT very nice
 to look at.</li>
-  <li>
-Gob - (Goblins one)</li>
-  <li>
-Queen - (Flight of the Amazon Queen)</li>
-  <li>
-Kyra - (The Legend of Kyrandia)</li>
+
+  <li>Gob - (Goblins one)</li>
+
+  <li>Queen - (Flight of the Amazon Queen)</li>
+
+  <li>Kyra - (The Legend of Kyrandia)</li>
+
 </ul>
 
-
 All other game engines are disabled in this release.<br>
 
 <br style="font-weight: bold;">
@@ -155,13 +183,18 @@
 
 Enabled hardware scalar code.<br>
 
-Now built using SDL 1.2.9 for the parts of the port that use SDL (some parts now hit the hardware directly).<br>
+Now built using SDL 1.2.9 for the parts of the port that use SDL (some
+parts now hit the hardware directly).<br>
 
-Enabled new launcher - (Ensure defaulttheme.zip is in the same folder as the executable).<br>
+Enabled new launcher - (Ensure defaulttheme.zip is in the same folder
+as the executable).<br>
 
-Aspect Ratio Correction can now be disabled ‘per game’. When adding a game you can find this option on the GFX tab. <br>
+Aspect Ratio Correction can now be disabled ‘per
+game’. When adding a game you can find this option on the GFX
+tab. <br>
 
-Note: This will cause the game to run with a black border at the bottom as it will be rendered to a 320*200 frame.<br>
+Note: This will cause the game to run with a black border at the bottom
+as it will be rendered to a 320*200 frame.<br>
 
 <br>
 
@@ -169,7 +202,9 @@
 
 <br>
 
-<span style="font-weight: bold;">NOTE:</span> Everything is saved to the SD card, saves are stored in the <span style="font-weight: bold;">saves</span> folder under your main ScummVM executable unless you set another save location.<br>
+<span style="font-weight: bold;">NOTE:</span>
+Everything is saved to the SD card, saves are stored in the <span style="font-weight: bold;">saves</span> folder under
+your main ScummVM executable unless you set another save location.<br>
 
 <br>
 
@@ -178,7 +213,8 @@
 
 <br>
 
-The save process below is for Scumm engine games but the principle is the same for all.<br>
+The save process below is for Scumm engine games but the
+principle is the same for all.<br>
 
 <br>
 
@@ -198,11 +234,13 @@
 
 <br>
 
-Basically the emulated keys you can use are equivelent to the values buttons are mapped to, <br>
+Basically the emulated keys you can use are equivelent to the values
+buttons are mapped to, <br>
 
 <br>
 
-I have a virtual keyboard like the GP32 one (left/right on the stick to pick chars) to add in at some point ;-)<br>
+I have a virtual keyboard like the GP32 one (left/right on the stick to
+pick chars) to add in at some point ;-)<br>
 
 <br>
 
@@ -262,9 +300,11 @@
 
 <br>
 
-Possible random crash (well SegFault). I have had this happen twice and have not tracked down the cause. <br>
+Possible random crash (well SegFault). I have had this happen twice and
+have not tracked down the cause. <br>
 
-It happens very infrequently, both times it was in the DOTT CD intro. Saving often is never a bad idea anyhow.<br>
+It happens very infrequently, both times it was in the DOTT CD intro.
+Saving often is never a bad idea anyhow.<br>
 
 <br>
 
@@ -272,11 +312,14 @@
 
 <br>
 
-Fix save support when using the Sky engine (Beneath a Steel Sky) - You CAN'T save at the moment but auto save works.<br>
+Fix save support when using the Sky engine (Beneath a Steel Sky) - You
+CAN'T save at the moment but auto save works.<br>
 
-Look into inconsistencies with AGOS engine and map Y key to a button combination to allow clean quitting (Simon 1/2).<br>
+Look into inconsistencies with AGOS engine and map Y key to a button
+combination to allow clean quitting (Simon 1/2).<br>
 
-Add splash-screen and pre-ScummVM config menu (CPU speed, LCD timings etc.) - Partly done.<br>
+Add splash-screen and pre-ScummVM config menu (CPU speed, LCD timings
+etc.) - Partly done.<br>
 
 Fix TV out, maybe make it an option in the pre-ScummVM config menu.<br>
 
@@ -284,17 +327,29 @@
 
 <br style="font-weight: bold;">
 
-<hr style="width: 100%; height: 2px;"><a style="font-weight: bold;" name="Additional_resourceslinks"></a><span style="font-weight: bold;">Additional resources/links</span><br>
+<hr style="width: 100%; height: 2px;"><a style="font-weight: bold;" name="Additional_resourceslinks"></a><span style="font-weight: bold;">Additional resources/links<br>
 
+<br>
+
+</span><span style="font-weight: bold;">Note:</span>
+When providing feedback,
+requests, forum posts, bug reports or anything like that always include
+a mention of the version of ScummVM you are using (the build version,
+date and time can be seen in the main game launcher window).<br>
+
 <ul>
 
-  <li><a href="http://wiki.scummvm.org/index.php/GP2X">ScummVM WiKi GP2X page</a></li>
+  <li><a href="http://wiki.scummvm.org/index.php/GP2X">ScummVM
+WiKi GP2X page</a></li>
 
-  <li><a href="http://forums.scummvm.org/viewforum.php?f=14">ScummVM forums GP2X forum</a></li>
+  <li><a href="http://forums.scummvm.org/viewforum.php?f=14">ScummVM
+forums GP2X forum</a></li>
 
-  <li><a href="http://www.distant-earth.com/scummvm">My own ScummVM page</a> (for SVN/test builds)</li>
+  <li><a href="http://www.distant-earth.com/scummvm">My
+own ScummVM page</a> (for SVN/test builds)</li>
 
-  <li><a href="http://www.scummvm.org">Main ScummVM site</a> (for official supported release builds)</li>
+  <li><a href="http://www.scummvm.org">Main ScummVM
+site</a> (for official supported release builds)</li>
 
 </ul>
 


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/build.sh
___________________________________________________________________
Added: svn:executable
   + *


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/bundle.sh
___________________________________________________________________
Added: svn:executable
   + *


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/clean.sh
___________________________________________________________________
Added: svn:executable
   + *

Modified: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh	2008-08-01 08:55:21 UTC (rev 33486)
@@ -17,7 +17,7 @@
 
 # Edit the configure line to suit.
 cd ../../../..
-./configure --backend=gp2x --disable-mt32emu --host=gp2x --disable-flac --disable-nasm --disable-hq-scalers --with-sdl-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6/bin --with-mpeg2-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-tremor --with-tremor-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-zlib --with-zlib-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-mad --with-mad-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6
-#--enable-plugins
+./configure --backend=gp2x --disable-mt32emu --host=gp2x --disable-flac --disable-nasm --disable-hq-scalers --with-sdl-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6/bin --with-mpeg2-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-tremor --with-tremor-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-zlib --with-zlib-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-mad --with-mad-prefix=/opt/open2x/gcc-4.1.1-glibc-2.3.6 --enable-made --enable-m4 
+#--enable-plugins --default-dynamic
 
 echo Generating config for GP2X complete. Check for errors.


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/config.sh
___________________________________________________________________
Added: svn:executable
   + *


Property changes on: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/build/scummvm.gpe
___________________________________________________________________
Added: svn:executable
   + *

Modified: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x-common.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x-common.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x-common.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -37,7 +37,7 @@
 #include <SDL_gp2x.h>
 
 namespace Audio {
-	class Mixer;
+	class MixerImpl;
 }
 
 namespace Common {
@@ -128,12 +128,10 @@
 	virtual bool pollEvent(Common::Event &event); // overloaded by CE backend
 
 	// Set function that generates samples
-	typedef void (*SoundProc)(void *param, byte *buf, int len);
-	virtual bool setSoundCallback(SoundProc proc, void *param); // overloaded by CE backend
+	void setupMixer();
+	static void mixCallback(void *s, byte *samples, int len);
 	virtual Audio::Mixer *getMixer();
 
-	void clearSoundCallback();
-
 	// Poll CD status
 	// Returns true if cd audio is playing
 	bool pollCD();
@@ -181,7 +179,6 @@
 	int getGraphicsMode() const;
 
 	bool openCD(int drive);
-	int getOutputSampleRate() const;
 
 	bool hasFeature(Feature f);
 	void setFeatureState(Feature f, bool enable);
@@ -369,7 +366,7 @@
 	Common::SaveFileManager *_savefile;
 	FilesystemFactory *getFilesystemFactory();
 
-	Audio::Mixer *_mixer;
+	Audio::MixerImpl *_mixer;
 
 	SDL_TimerID _timerID;
 	Common::TimerManager *_timer;

Modified: scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/gp2x/gp2x.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -40,7 +40,7 @@
 #include "backends/timer/default/default-timer.h"
 #include "backends/plugins/posix/posix-provider.h"
 #include "backends/fs/posix/posix-fs-factory.h" // for getFilesystemFactory()
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -225,8 +225,7 @@
 	// Create and hook up the mixer, if none exists yet (we check for this to
 	// allow subclasses to provide their own).
 	if (_mixer == 0) {
-		_mixer = new Audio::Mixer();
-		setSoundCallback(Audio::Mixer::mixCallback, _mixer);
+		setupMixer();
 	}
 
 	// Create and hook up the timer manager, if none exists yet (we check for
@@ -445,47 +444,71 @@
 #pragma mark --- Audio ---
 #pragma mark -
 
-bool OSystem_GP2X::setSoundCallback(SoundProc proc, void *param) {
+void OSystem_GP2X::mixCallback(void *sys, byte *samples, int len) {
+	OSystem_GP2X *this_ = (OSystem_GP2X *)sys;
+	assert(this_);
+
+	if (this_->_mixer)
+		this_->_mixer->mixCallback(samples, len);
+}
+
+void OSystem_GP2X::setupMixer() {
 	SDL_AudioSpec desired;
 	SDL_AudioSpec obtained;
 
-	memset(&desired, 0, sizeof(desired));
+	//memset(&desired, 0, sizeof(desired));
 
+	// Determine the desired output sampling frequency.
 	_samplesPerSec = 0;
-
 	if (ConfMan.hasKey("output_rate"))
 		_samplesPerSec = ConfMan.getInt("output_rate");
-
 	if (_samplesPerSec <= 0)
 		_samplesPerSec = SAMPLES_PER_SEC;
 
+
 	//Quick EVIL Hack - DJWillis
 	_samplesPerSec = 11025;
 
+	// Determine the sample buffer size. We want it to store enough data for
+	// about 1/16th of a second. Note that it must be a power of two.
+	// So e.g. at 22050 Hz, we request a sample buffer size of 2048.
+	int samples = 8192;
+	while (16 * samples >= _samplesPerSec) {
+		samples >>= 1;
+	}
+
+	memset(&desired, 0, sizeof(desired));
 	desired.freq = _samplesPerSec;
 	desired.format = AUDIO_S16SYS;
 	desired.channels = 2;
 	//desired.samples = (uint16)samples;
 	desired.samples = 128; // Samples hack
-	desired.callback = proc;
-	desired.userdata = param;
+	desired.callback = mixCallback;
+	desired.userdata = this;
+
+	// Create the mixer instance
+	assert(!_mixer);
+	_mixer = new Audio::MixerImpl(this);
+	assert(_mixer);
+
 	if (SDL_OpenAudio(&desired, &obtained) != 0) {
 		warning("Could not open audio device: %s", SDL_GetError());
-		return false;
+		_samplesPerSec = 0;
+		_mixer->setReady(false);
+	} else {
+		// Note: This should be the obtained output rate, but it seems that at
+		// least on some platforms SDL will lie and claim it did get the rate
+		// even if it didn't. Probably only happens for "weird" rates, though.
+		_samplesPerSec = obtained.freq;
+		debug(1, "Output sample rate: %d Hz", _samplesPerSec);
+
+		// Tell the mixer that we are ready and start the sound processing
+		_mixer->setOutputRate(_samplesPerSec);
+		_mixer->setReady(true);
+		SDL_PauseAudio(0);
 	}
-	_samplesPerSec = obtained.freq;
-	SDL_PauseAudio(0);
-	return true;
 }
 
-void OSystem_GP2X::clearSoundCallback() {
-	SDL_CloseAudio();
-}
-
-int OSystem_GP2X::getOutputSampleRate() const {
-	return _samplesPerSec;
-}
-
 Audio::Mixer *OSystem_GP2X::getMixer() {
 	assert(_mixer);
 	return _mixer;

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/blit_arm.s
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/blit_arm.s	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/blit_arm.s	2008-08-01 08:55:21 UTC (rev 33486)
@@ -36,47 +36,47 @@
 	@ r3 = h
 	@ <> = _screenWidth
 	@ <> = _screenHeight
-	MOV	r12,r13
-	STMFD	r13!,{r4-r11,r14}
-	LDMFD	r12,{r12,r14}		@ r12 = _screenWidth
+	mov		r12,r13
+	stmfd	r13!,{r4-r11,r14}
+	ldmfd	r12,{r12,r14}		@ r12 = _screenWidth
 					@ r14 = _screenHeight
-	ADD	r14,r14,r3		@ r14 = _screenHeight + h
-	MVN	r11,#0
-	MLA	r11,r3,r12,r11		@ r11= _screenWidth*h-1
-	ADD	r12,r12,r12
+	add	r14,r14,r3		@ r14 = _screenHeight + h
+	mvn	r11,#0
+	mla	r11,r3,r12,r11		@ r11= _screenWidth*h-1
+	add	r12,r12,r12
 xloop:
-	SUBS	r4,r3,#5		@ r4 = y = h
-	BLE	thin
+	subs	r4,r3,#5		@ r4 = y = h
+	ble		thin
 yloop:
-	LDRH	r5, [r1],r12		@ r5 = *src    src += _screenWidth
-	LDRH	r6, [r1],r12		@ r6 = *src    src += _screenWidth
-	LDRH	r7, [r1],r12		@ r7 = *src    src += _screenWidth
-	LDRH	r8, [r1],r12		@ r8 = *src    src += _screenWidth
-	LDRH	r9, [r1],r12		@ r9 = *src    src += _screenWidth
-	LDRH	r10,[r1],r12		@ r10= *src    src += _screenWidth
-	SUBS	r4,r4,#6
-	STRH	r5, [r0],#2		@ *dst++ = r5
-	STRH	r6, [r0],#2		@ *dst++ = r6
-	STRH	r7, [r0],#2		@ *dst++ = r7
-	STRH	r8, [r0],#2		@ *dst++ = r8
-	STRH	r9, [r0],#2		@ *dst++ = r9
-	STRH	r10,[r0],#2		@ *dst++ = r10
-	BGT	yloop
+	ldrh	r5, [r1],r12		@ r5 = *src    src += _screenWidth
+	ldrh	r6, [r1],r12		@ r6 = *src    src += _screenWidth
+	ldrh	r7, [r1],r12		@ r7 = *src    src += _screenWidth
+	ldrh	r8, [r1],r12		@ r8 = *src    src += _screenWidth
+	ldrh	r9, [r1],r12		@ r9 = *src    src += _screenWidth
+	ldrh	r10,[r1],r12		@ r10= *src    src += _screenWidth
+	subs	r4,r4,#6
+	strh	r5, [r0],#2		@ *dst++ = r5
+	strh	r6, [r0],#2		@ *dst++ = r6
+	strh	r7, [r0],#2		@ *dst++ = r7
+	strh	r8, [r0],#2		@ *dst++ = r8
+	strh	r9, [r0],#2		@ *dst++ = r9
+	strh	r10,[r0],#2		@ *dst++ = r10
+	bgt		yloop
 thin:
-	ADDS	r4,r4,#5
-	BEQ	lineend
+	adds	r4,r4,#5
+	beq		lineend
 thin_loop:
-	LDRH	r5,[r1],r12		@ r5 = *src    src += _screenWidth
-	SUBS	r4,r4,#1
-	STRH	r5,[r0],#2		@ *dst++ = r5
-	BGT	thin_loop
+	ldrh	r5,[r1],r12		@ r5 = *src    src += _screenWidth
+	subs	r4,r4,#1
+	strh	r5,[r0],#2		@ *dst++ = r5
+	bgt	thin_loop
 lineend:
-	SUB	r0,r0,r14,LSL #1	@ dst -= _screenHeight + h
-	SUB	r1,r1,r11,LSL #1	@ src += 1-_screenWidth*h
-	SUBS	r2,r2,#1
-	BGT	xloop
+	sub	r0,r0,r14,LSL #1	@ dst -= _screenHeight + h
+	sub	r1,r1,r11,LSL #1	@ src += 1-_screenWidth*h
+	subs	r2,r2,#1
+	bgt	xloop
 
-	LDMFD	r13!,{r4-r11,PC}
+	ldmfd	r13!,{r4-r11,PC}
 
 _blitLandscapeScreenRect8bpp:
 	@ r0 = dst
@@ -86,55 +86,55 @@
 	@ <> = _palette
 	@ <> = _screenWidth
 	@ <> = _screenHeight
-	MOV	r12,r13
-	STMFD	r13!,{r4-r11,r14}
-	LDMFD	r12,{r11,r12,r14}	@ r11 = _palette
+	mov		r12,r13
+	stmfd	r13!,{r4-r11,r14}
+	ldmfd	r12,{r11,r12,r14}	@ r11 = _palette
 					@ r12 = _screenWidth
 					@ r14 = _screenHeight
-	ADD	r14,r14,r3		@ r14 = _screenHeight + h
-	MVN	r6,#0
-	MLA	r6,r3,r12,r6		@ r6 = _screenWidth*h-1
+	add		r14,r14,r3		@ r14 = _screenHeight + h
+	mvn		r6,#0
+	mla		r6,r3,r12,r6		@ r6 = _screenWidth*h-1
 xloop8:
-	MOV	r4,r3			@ r4 = y = h
-	SUBS	r4,r3,#4		@ r4 = y = h
-	BLE	thin8
+	mov		r4,r3			@ r4 = y = h
+	subs	r4,r3,#4		@ r4 = y = h
+	ble		thin8
 yloop8:
-	LDRB	r5, [r1],r12		@ r5 = *src    src += _screenWidth
-	LDRB	r7, [r1],r12		@ r7 = *src    src += _screenWidth
-	LDRB	r8, [r1],r12		@ r8 = *src    src += _screenWidth
-	LDRB	r9, [r1],r12		@ r9 = *src    src += _screenWidth
-	LDRB	r10,[r1],r12		@ r10= *src    src += _screenWidth
-	ADD	r5, r5, r5
-	ADD	r7, r7, r7
-	ADD	r8, r8, r8
-	ADD	r9, r9, r9
-	ADD	r10,r10,r10
-	LDRH	r5, [r11,r5]
-	LDRH	r7, [r11,r7]
-	LDRH	r8, [r11,r8]
-	LDRH	r9, [r11,r9]
-	LDRH	r10,[r11,r10]
-	SUBS	r4,r4,#5
-	STRH	r5, [r0],#2		@ *dst++ = r5
-	STRH	r7, [r0],#2		@ *dst++ = r7
-	STRH	r8, [r0],#2		@ *dst++ = r8
-	STRH	r9, [r0],#2		@ *dst++ = r9
-	STRH	r10,[r0],#2		@ *dst++ = r10
-	BGT	yloop8
+	ldrb	r5, [r1],r12		@ r5 = *src    src += _screenWidth
+	ldrb	r7, [r1],r12		@ r7 = *src    src += _screenWidth
+	ldrb	r8, [r1],r12		@ r8 = *src    src += _screenWidth
+	ldrb	r9, [r1],r12		@ r9 = *src    src += _screenWidth
+	ldrb	r10,[r1],r12		@ r10= *src    src += _screenWidth
+	add	r5, r5, r5
+	add	r7, r7, r7
+	add	r8, r8, r8
+	add	r9, r9, r9
+	add	r10,r10,r10
+	ldrh	r5, [r11,r5]
+	ldrh	r7, [r11,r7]
+	ldrh	r8, [r11,r8]
+	ldrh	r9, [r11,r9]
+	ldrh	r10,[r11,r10]
+	subs	r4,r4,#5
+	strh	r5, [r0],#2		@ *dst++ = r5
+	strh	r7, [r0],#2		@ *dst++ = r7
+	strh	r8, [r0],#2		@ *dst++ = r8
+	strh	r9, [r0],#2		@ *dst++ = r9
+	strh	r10,[r0],#2		@ *dst++ = r10
+	bgt	yloop8
 thin8:
-	ADDS	r4,r4,#4
-	BEQ	lineend8
+	adds	r4,r4,#4
+	beq		lineend8
 thin_loop8:
-	LDRB	r5,[r1],r12		@ r5 = *src    src += _screenWidth
-	ADD	r5,r5,r5
-	LDRH	r5,[r11,r5]
-	SUBS	r4,r4,#1
-	STRH	r5,[r0],#2		@ *dst++ = r5
-	BGT	thin_loop8
+	ldrb	r5,[r1],r12		@ r5 = *src    src += _screenWidth
+	add	r5,r5,r5
+	ldrh	r5,[r11,r5]
+	subs	r4,r4,#1
+	strh	r5,[r0],#2		@ *dst++ = r5
+	bgt	thin_loop8
 lineend8:
-	SUB	r0,r0,r14,LSL #1	@ dst -= _screenHeight + h
-	SUB	r1,r1,r6		@ src += 1-_screenWidth*h
-	SUBS	r2,r2,#1
-	BGT	xloop8
+	sub	r0,r0,r14,LSL #1	@ dst -= _screenHeight + h
+	sub	r1,r1,r6		@ src += 1-_screenWidth*h
+	subs	r2,r2,#1
+	bgt	xloop8
 
-	LDMFD	r13!,{r4-r11,PC}
+	ldmfd	r13!,{r4-r11,PC}

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -26,11 +26,7 @@
 #import <UIKit/UIKit.h>
 #import <UIKit/UITextView.h>
 
- at protocol KeyboardInputProtocol
-- (void)handleKeyPress:(unichar)c;
- at end
-
- at interface SoftKeyboard : UIKeyboard<KeyboardInputProtocol> {
+ at interface SoftKeyboard : UIView {
 	id inputDelegate;
 	UITextView* inputView;
 }

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.m
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.m	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_keyboard.m	2008-08-01 08:55:21 UTC (rev 33486)
@@ -25,19 +25,6 @@
 
 #import "iphone_keyboard.h"
 
-// Override settings of the default keyboard implementation
- at implementation UIKeyboardImpl (DisableFeatures)
-
-- (BOOL)autoCapitalizationPreference {
-	return false;
-}
-
-- (BOOL)autoCorrectionPreference {
-	return false;
-}
-
- at end
-
 @implementation TextInputHandler
 
 - (id)initWithKeyboard:(SoftKeyboard*)keyboard; {
@@ -67,7 +54,8 @@
 @implementation SoftKeyboard
 
 - (id)initWithFrame:(CGRect)frame {
-	self = [super initWithFrame:frame];
+	//self = [super initWithFrame:frame];
+	self = [super initWithFrame:CGRectMake(0.0f, 0.0f, 0.0f, 0.0f)];
 	inputDelegate = nil;
 	inputView = [[TextInputHandler alloc] initWithKeyboard:self];
 	return self;

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_main.m
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_main.m	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_main.m	2008-08-01 08:55:21 UTC (rev 33486)
@@ -46,9 +46,14 @@
 	gArgc = argc;
 	gArgv = argv;
 
-	[[NSAutoreleasePool alloc] init];
+    NSAutoreleasePool *autoreleasePool = [ 
+        [ NSAutoreleasePool alloc ] init
+    ];
 
-    return UIApplicationMain(argc, argv, [iPhoneMain class]);
+    UIApplicationUseLegacyEvents(1);
+    int returnCode = UIApplicationMain(argc, argv, [iPhoneMain class]);
+    [ autoreleasePool release ];
+    return returnCode;
 }
 
 @implementation iPhoneMain
@@ -74,8 +79,11 @@
 - (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
 	// hide the status bar
 	[UIHardware _setStatusBarHeight:0.0f];
-	[self setStatusBarMode:2 orientation:0 duration:0.0f fenceID:0];
+	//[self setStatusBarMode:2 orientation:0 duration:0.0f fenceID:0];
 
+	//[self setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:NO];
+	[self setStatusBarHidden:YES animated:YES];
+
 	_window = [[UIWindow alloc] initWithContentRect:  [UIHardware fullScreenApplicationContentRect]];
 	[_window retain];
 
@@ -96,7 +104,7 @@
 - (void)applicationResume:(GSEventRef)event {
 	[self removeApplicationBadge];
 	[UIHardware _setStatusBarHeight:0.0f];
-	[self setStatusBarMode:2 orientation:0 duration:0.0f fenceID:0];
+	[self setStatusBarHidden:YES animated:YES];
 	[_view applicationResume];
 }
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -27,12 +27,11 @@
 #define _IPHONE_VIDEO__H
 
 #import <UIKit/UIKit.h>
-#import <UIKit/UIView-Geometry.h>
 #import <GraphicsServices/GraphicsServices.h>
 #import <Foundation/Foundation.h>
 #import <CoreSurface/CoreSurface.h>
-#import <LayerKit/LKLayer.h>
 
+#import <QuartzCore/QuartzCore.h>
 #import "iphone_keyboard.h"
 
 @interface iPhoneView : UIView
@@ -41,7 +40,7 @@
 	NSMutableArray* _events;
 	NSLock* _lock;
 	SoftKeyboard* _keyboardView;
-	LKLayer* _screenLayer;
+	CALayer* _screenLayer;
 
 	int _fullWidth;
 	int _fullHeight;

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.m
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.m	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/iphone_video.m	2008-08-01 08:55:21 UTC (rev 33486)
@@ -31,8 +31,8 @@
 #import <GraphicsServices/GraphicsServices.h>
 #import <Foundation/Foundation.h>
 #import <CoreSurface/CoreSurface.h>
-#import <LayerKit/LKLayer.h>
 #import <UIKit/UIKeyboardLayoutQWERTY.h>
+#import <QuartzCore/QuartzCore.h>
 
 static iPhoneView *sharedInstance = nil;
 static int _width = 0;
@@ -53,8 +53,8 @@
 }
 
 void iPhone_updateScreenRect(int x1, int y1, int x2, int y2) {
-	NSRect rect = NSMakeRect(x1, y1, x2, y2);
-	[sharedInstance performSelectorOnMainThread:@selector(updateScreenRect:) withObject: [NSValue valueWithRect:rect] waitUntilDone: NO];
+	//CGRect rect = CGRectMake(x1, y1, x2, y2);
+	//[sharedInstance performSelectorOnMainThread:@selector(updateScreenRect:) withObject: [NSValue valueWithRect:rect] waitUntilDone: NO];
 }
 
 void iPhone_lockSurface() {
@@ -146,9 +146,9 @@
 }
 
 - (void)updateScreenRect:(id)rect {
-	NSRect nsRect = [rect rectValue];
-	CGRect cgRect = CGRectMake(nsRect.origin.x, nsRect.origin.y, nsRect.size.width, nsRect.size.height);
-	[sharedInstance setNeedsDisplayInRect: cgRect];
+	// NSRect nsRect = [rect rectValue];
+	// CGRect cgRect = CGRectMake(nsRect.origin.x, nsRect.origin.y, nsRect.size.width, nsRect.size.height);
+	// [sharedInstance setNeedsDisplayInRect: cgRect];
 }
 
 - (void)initSurface {
@@ -178,7 +178,7 @@
 	//printf("Surface created.\n");
 	CoreSurfaceBufferLock(_screenSurface, 3);
 
-	LKLayer* screenLayer = [[LKLayer layer] retain];
+	CALayer* screenLayer = [[CALayer layer] retain];
 
 	if (_keyboardView != nil) {
 		[_keyboardView removeFromSuperview];
@@ -213,7 +213,7 @@
 			_keyboardView = [[SoftKeyboard alloc] initWithFrame:keyFrame];
 			[_keyboardView setInputDelegate:self];
 		}
-
+		
 		[self addSubview:[_keyboardView inputView]];
 		[self addSubview: _keyboardView];
 		[[_keyboardView inputView] becomeFirstResponder];
@@ -283,11 +283,13 @@
 }
 
 - (void)mouseDown:(GSEvent*)event {
-	struct CGPoint point = GSEventGetLocationInWindow(event);
-
+	//printf("mouseDown()\n");
+	CGRect rect = GSEventGetLocationInWindow(event);
+	CGPoint point = CGPointMake(rect.origin.x, rect.origin.y);
+	
 	if (!getLocalMouseCoords(&point))
 		return;
-
+	
 	[self addEvent:
 		[[NSDictionary alloc] initWithObjectsAndKeys:
 		 [NSNumber numberWithInt:kInputMouseDown], @"type",
@@ -298,12 +300,18 @@
 	];
 }
 
+- (void)touchesBegan {
+	//printf("touchesBegan()\n");	
+}
+	
 - (void)mouseUp:(GSEvent*)event {
-	struct CGPoint point = GSEventGetLocationInWindow(event);
-
+	//printf("mouseUp()\n");
+	CGRect rect = GSEventGetLocationInWindow(event);
+	CGPoint point = CGPointMake(rect.origin.x, rect.origin.y);
+	
 	if (!getLocalMouseCoords(&point))
 		return;
-
+	
 	[self addEvent:
 		[[NSDictionary alloc] initWithObjectsAndKeys:
 		 [NSNumber numberWithInt:kInputMouseUp], @"type",
@@ -316,11 +324,12 @@
 
 - (void)mouseDragged:(GSEvent*)event {
 	//printf("mouseDragged()\n");
-	struct CGPoint point = GSEventGetLocationInWindow(event);
-
+	CGRect rect = GSEventGetLocationInWindow(event);
+	CGPoint point = CGPointMake(rect.origin.x, rect.origin.y);
+	
 	if (!getLocalMouseCoords(&point))
 		return;
-
+	
 	[self addEvent:
 		[[NSDictionary alloc] initWithObjectsAndKeys:
 		 [NSNumber numberWithInt:kInputMouseDragged], @"type",
@@ -333,19 +342,21 @@
 
 - (void)mouseEntered:(GSEvent*)event {
 	//printf("mouseEntered()\n");
-	// struct CGPoint point = GSEventGetLocationInWindow(event);
-	//
-	// if (!getLocalMouseCoords(&point))
-	//	return;
-	//
-	// [self addEvent:
-	//	[[NSDictionary alloc] initWithObjectsAndKeys:
-	//	 [NSNumber numberWithInt:kInputMouseSecondToggled], @"type",
-	//	 [NSNumber numberWithFloat:point.x], @"x",
-	//	 [NSNumber numberWithFloat:point.y], @"y",
-	//	 nil
-	//	]
-	// ];
+	CGRect rect = GSEventGetLocationInWindow(event);
+	CGPoint point = CGPointMake(rect.origin.x, rect.origin.y);
+
+	
+	if (!getLocalMouseCoords(&point))
+		return;
+	
+	[self addEvent:
+		[[NSDictionary alloc] initWithObjectsAndKeys:
+		 [NSNumber numberWithInt:kInputMouseSecondToggled], @"type",
+		 [NSNumber numberWithFloat:point.x], @"x",
+		 [NSNumber numberWithFloat:point.y], @"y",
+		 nil
+		]
+	];
 }
 
 - (void)mouseExited:(GSEvent*)event {
@@ -361,19 +372,19 @@
 - (void)mouseMoved:(GSEvent*)event
 {
 	//printf("mouseMoved()\n");
-	struct CGPoint point = GSEventGetLocationInWindow(event);
-
-	if (!getLocalMouseCoords(&point))
-		return;
-
-	[self addEvent:
-		[[NSDictionary alloc] initWithObjectsAndKeys:
-		 [NSNumber numberWithInt:kInputMouseSecondToggled], @"type",
-		 [NSNumber numberWithFloat:point.x], @"x",
-		 [NSNumber numberWithFloat:point.y], @"y",
-		 nil
-		]
-	];
+	// struct CGPoint point = GSEventGetLocationInWindow(event);
+	// 
+	// if (!getLocalMouseCoords(&point))
+	// 	return;
+	// 
+	// [self addEvent:
+	// 	[[NSDictionary alloc] initWithObjectsAndKeys:
+	// 	 [NSNumber numberWithInt:kInputMouseSecondToggled], @"type",
+	// 	 [NSNumber numberWithFloat:point.x], @"x",
+	// 	 [NSNumber numberWithFloat:point.y], @"y",
+	// 	 nil
+	// 	]
+	// ];
 }
 
 - (void)handleKeyPress:(unichar)c {
@@ -391,7 +402,7 @@
 	return TRUE;
 }
 
-- (int)swipe:(UIViewSwipeDirection)num withEvent:(GSEvent*)event {
+- (int)swipe:(int)num withEvent:(GSEvent*)event {
 	//printf("swipe: %i\n", num);
 
 	[self addEvent:

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -25,8 +25,6 @@
 
 #if defined(IPHONE_BACKEND)
 
-#include <CoreGraphics/CGDirectDisplay.h>
-#include <CoreSurface/CoreSurface.h>
 #include <unistd.h>
 #include <pthread.h>
 
@@ -41,11 +39,16 @@
 #include "backends/saves/default/default-saves.h"
 #include "backends/timer/default/default-timer.h"
 #include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 #include "gui/message.h"
 
 #include "osys_iphone.h"
 #include "blit_arm.h"
+#include <sys/time.h>
 
+#include <CoreGraphics/CGDirectDisplay.h>
+#include <CoreSurface/CoreSurface.h>
+
 const OSystem::GraphicsMode OSystem_IPHONE::s_supportedGraphicsModes[] = {
 	{0, 0, 0}
 };
@@ -86,12 +89,12 @@
 
 void OSystem_IPHONE::initBackend() {
 	_savefile = new DefaultSaveFileManager();
-	_mixer = new Audio::Mixer();
 	_timer = new DefaultTimerManager();
 
 	gettimeofday(&_startTime, NULL);
 
-	setSoundCallback(Audio::Mixer::mixCallback, _mixer);
+	setupMixer();
+
 	setTimerCallback(&OSystem_IPHONE::timerHandler, 10);
 
 	OSystem::initBackend();
@@ -871,7 +874,7 @@
 				suspendLoop();
 				break;
 
-			case kInputKeyPressed:
+			case kInputKeyPressed: {
 				int keyPressed = (int)xUnit;
 				int ascii = keyPressed;
 				//printf("key: %i\n", keyPressed);
@@ -932,6 +935,7 @@
 				event.kbd.ascii = _queuedInputEvent.kbd.ascii = ascii;
 				_needEventRestPeriod = true;
 				break;
+			}
 
 			case kInputSwipe: {
 				Common::KeyCode keycode = Common::KEYCODE_INVALID;
@@ -1088,11 +1092,22 @@
 		AudioQueueStop(s_AudioQueue.queue, false);
 }
 
-bool OSystem_IPHONE::setSoundCallback(SoundProc proc, void *param) {
+void OSystem_IPHONE::mixCallback(void *sys, byte *samples, int len) {
+	OSystem_IPHONE *this_ = (OSystem_IPHONE *)sys;
+	assert(this_);
+
+	if (this_->_mixer)
+		this_->_mixer->mixCallback(samples, len);
+}
+
+void OSystem_IPHONE::setupMixer() {
 	//printf("setSoundCallback()\n");
-	s_soundCallback = proc;
-	s_soundParam = param;
+	_mixer = new Audio::MixerImpl(this);
 
+	s_soundCallback = mixCallback;
+	s_soundParam = this;
+
+
 	s_AudioQueue.dataFormat.mSampleRate = AUDIO_SAMPLE_RATE;
 	s_AudioQueue.dataFormat.mFormatID = kAudioFormatLinearPCM;
 	s_AudioQueue.dataFormat.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;
@@ -1105,7 +1120,8 @@
 
 	if (AudioQueueNewOutput(&s_AudioQueue.dataFormat, AQBufferCallback, &s_AudioQueue, 0, kCFRunLoopCommonModes, 0, &s_AudioQueue.queue)) {
 		printf("Couldn't set the AudioQueue callback!\n");
-		return false;
+		_mixer->setReady(false);
+		return;
 	}
 
 	uint32 bufferBytes = s_AudioQueue.frameCount * s_AudioQueue.dataFormat.mBytesPerFrame;
@@ -1113,7 +1129,8 @@
 	for (int i = 0; i < AUDIO_BUFFERS; i++) {
 		if (AudioQueueAllocateBuffer(s_AudioQueue.queue, bufferBytes, &s_AudioQueue.buffers[i])) {
 			printf("Error allocating AudioQueue buffer!\n");
-			return false;
+			_mixer->setReady(false);		
+			return;
 		}
 
 		AQBufferCallback(&s_AudioQueue, s_AudioQueue.queue, s_AudioQueue.buffers[i]);
@@ -1122,16 +1139,14 @@
 	AudioQueueSetParameter(s_AudioQueue.queue, kAudioQueueParam_Volume, 1.0);
 	if (AudioQueueStart(s_AudioQueue.queue, NULL)) {
 		printf("Error starting the AudioQueue!\n");
-		return false;
+		_mixer->setReady(false);		
+		return;
 	}
-
-	return true;
+	
+	_mixer->setOutputRate(AUDIO_SAMPLE_RATE);
+	_mixer->setReady(true);
 }
 
-void OSystem_IPHONE::clearSoundCallback() {
-	debug("clearSoundCallback()\n");
-}
-
 int OSystem_IPHONE::getOutputSampleRate() const {
 	return AUDIO_SAMPLE_RATE;
 }
@@ -1150,6 +1165,11 @@
 void OSystem_IPHONE::quit() {
 }
 
+void OSystem_IPHONE::getTimeAndDate(struct tm &t) const {
+	time_t curTime = time(0);
+	t = *localtime(&curTime);
+}
+
 void OSystem_IPHONE::setWindowCaption(const char *caption) {
 }
 
@@ -1173,17 +1193,11 @@
 }
 
 const char* OSystem_IPHONE::getConfigPath() {
-	if (s_is113OrHigher)
-		return SCUMMVM_PREFS_PATH;
-	else
-		return SCUMMVM_OLD_PREFS_PATH;
+	return SCUMMVM_PREFS_PATH;
 }
 
 const char* OSystem_IPHONE::getSavePath() {
-	if (s_is113OrHigher)
-		return SCUMMVM_SAVE_PATH;
-	else
-		return SCUMMVM_OLD_SAVE_PATH;
+	return SCUMMVM_SAVE_PATH;
 }
 
 void OSystem_IPHONE::migrateApp() {
@@ -1197,7 +1211,7 @@
 		if (!file.exists()) {
 			system("mkdir " SCUMMVM_ROOT_PATH);
 			system("mkdir " SCUMMVM_SAVE_PATH);
-
+			
 			// Copy over the prefs file
 			system("cp " SCUMMVM_OLD_PREFS_PATH " " SCUMMVM_PREFS_PATH);
 
@@ -1211,24 +1225,24 @@
 
 void iphone_main(int argc, char *argv[]) {
 
-	OSystem_IPHONE::migrateApp();
+	//OSystem_IPHONE::migrateApp();
 
-	// Redirect stdout and stderr if we're launching from the Springboard.
-	if (argc == 2 && strcmp(argv[1], "--launchedFromSB") == 0) {
-		FILE *newfp = fopen("/tmp/scummvm.log", "a");
-		if (newfp != NULL) {
-			fclose(stdout);
-			fclose(stderr);
-			*stdout = *newfp;
-			*stderr = *newfp;
-			setbuf(stdout, NULL);
-			setbuf(stderr, NULL);
+	FILE *newfp = fopen("/var/mobile/.scummvm.log", "a");
+	if (newfp != NULL) {
+		fclose(stdout);
+		fclose(stderr);
+		*stdout = *newfp;
+		*stderr = *newfp;
+		setbuf(stdout, NULL);
+		setbuf(stderr, NULL);
 
-			//extern int gDebugLevel;
-			//gDebugLevel = 10;
-		}
+		//extern int gDebugLevel;
+		//gDebugLevel = 10;
 	}
 
+	system("mkdir " SCUMMVM_ROOT_PATH);
+	system("mkdir " SCUMMVM_SAVE_PATH);
+
 	g_system = OSystem_IPHONE_create();
 	assert(g_system);
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.h
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.h	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/iphone/osys_iphone.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -29,6 +29,8 @@
 #include "iphone_common.h"
 #include "common/system.h"
 #include "common/events.h"
+#include "sound/mixer_intern.h"
+#include "backends/fs/posix/posix-fs-factory.h"
 
 #include <AudioToolbox/AudioQueue.h>
 
@@ -62,7 +64,7 @@
 	static bool s_is113OrHigher;
 
 	Common::SaveFileManager *_savefile;
-	Audio::Mixer *_mixer;
+	Audio::MixerImpl *_mixer;
 	Common::TimerManager *_timer;
 
 	Graphics::Surface _framebuffer;
@@ -152,13 +154,16 @@
 	virtual void unlockMutex(MutexRef mutex);
 	virtual void deleteMutex(MutexRef mutex);
 
-	virtual bool setSoundCallback(SoundProc proc, void *param);
-	virtual void clearSoundCallback();
+	static void mixCallback(void *sys, byte *samples, int len);
+	virtual void setupMixer(void);
 	virtual int getOutputSampleRate() const;
 	virtual void setTimerCallback(TimerProc callback, int interval);
 
 	virtual void quit();
 
+	FilesystemFactory *getFilesystemFactory() { return &POSIXFilesystemFactory::instance(); }
+	virtual void getTimeAndDate(struct tm &t) const;
+
 	virtual void setWindowCaption(const char *caption);
 
 	virtual Common::SaveFileManager *getSavefileManager();

Modified: scummvm/branches/gsoc2008-gui/backends/platform/null/null.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/null/null.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/null/null.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -28,18 +28,37 @@
 
 #if defined(USE_NULL_DRIVER)
 
+#ifdef UNIX
+#include <unistd.h>
+#include <sys/time.h>
+#endif
+
 #include "common/rect.h"
 
 #include "backends/saves/default/default-saves.h"
 #include "backends/timer/default/default-timer.h"
-#include "sound/mixer.h"
+#include "sound/mixer_intern.h"
 
+/*
+ * Include header files needed for the getFilesystemFactory() method.
+ */
+#if defined(__amigaos4__)
+	#include "backends/fs/amigaos4/amigaos4-fs-factory.h"
+#elif defined(UNIX)
+	#include "backends/fs/posix/posix-fs-factory.h"
+#elif defined(WIN32)
+	#include "backends/fs/windows/windows-fs-factory.h"
+#endif
+
+
+
 class OSystem_NULL : public OSystem {
 protected:
 	Common::SaveFileManager *_savefile;
-	Audio::Mixer *_mixer;
+	Audio::MixerImpl *_mixer;
 	Common::TimerManager *_timer;
 
+	timeval _startTime;
 public:
 
 	OSystem_NULL();
@@ -93,8 +112,6 @@
 
 	typedef void (*SoundProc)(void *param, byte *buf, int len);
 	virtual bool setSoundCallback(SoundProc proc, void *param);
-	virtual void clearSoundCallback();
-	virtual int getOutputSampleRate() const;
 
 	virtual void quit();
 
@@ -102,7 +119,10 @@
 
 	virtual Common::SaveFileManager *getSavefileManager();
 	virtual Audio::Mixer *getMixer();
+	virtual void getTimeAndDate(struct tm &t) const;
 	virtual Common::TimerManager *getTimerManager();
+	FilesystemFactory *getFilesystemFactory();
+
 };
 
 static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
@@ -123,9 +143,14 @@
 
 void OSystem_NULL::initBackend() {
 	_savefile = new DefaultSaveFileManager();
-	_mixer = new Audio::Mixer();
+	_mixer = new Audio::MixerImpl(this);
 	_timer = new DefaultTimerManager();
 
+	_mixer->setOutputRate(22050);
+	_mixer->setReady(false);
+
+	gettimeofday(&_startTime, NULL);
+
 	// Note that both the mixer and the timer manager are useless
 	// this way; they need to be hooked into the system somehow to
 	// be functional. Of course, can't do that in a NULL backend :).
@@ -244,10 +269,20 @@
 }
 
 uint32 OSystem_NULL::getMillis() {
+#ifdef UNIX
+	timeval curTime;
+	gettimeofday(&curTime, NULL);
+	return (uint32)(((curTime.tv_sec - _startTime.tv_sec) * 1000) + \
+			((curTime.tv_usec - _startTime.tv_usec) / 1000));
+#else
 	return 0;
+#endif
 }
 
 void OSystem_NULL::delayMillis(uint msecs) {
+#ifdef UNIX
+	usleep(msecs * 1000);
+#endif
 }
 
 OSystem::MutexRef OSystem_NULL::createMutex(void) {
@@ -267,13 +302,6 @@
 	return true;
 }
 
-void OSystem_NULL::clearSoundCallback() {
-}
-
-int OSystem_NULL::getOutputSampleRate() const {
-	return 22050;
-}
-
 void OSystem_NULL::quit() {
 }
 
@@ -295,6 +323,22 @@
 	return _timer;
 }
 
+void OSystem_NULL::getTimeAndDate(struct tm &t) const {
+}
+
+FilesystemFactory *OSystem_NULL::getFilesystemFactory() {
+	#if defined(__amigaos4__)
+		return &AmigaOSFilesystemFactory::instance();
+	#elif defined(UNIX)
+		return &POSIXFilesystemFactory::instance();
+	#elif defined(WIN32)
+		return &WindowsFilesystemFactory::instance();
+	#else
+		#error Unknown and unsupported backend in OSystem_NULL::getFilesystemFactory
+	#endif
+}
+
+
 OSystem *OSystem_NULL_create() {
 	return new OSystem_NULL();
 }

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ps2/Makefile.ps2
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/Makefile.ps2	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/Makefile.ps2	2008-08-01 08:55:21 UTC (rev 33486)
@@ -19,16 +19,17 @@
 srcdir = ../../..
 VPATH = $(srcdir)
 INCDIR = ../../../
+DEPDIR = .deps
 
 DEFINES  = -DUSE_VORBIS -DUSE_TREMOR -DUSE_MAD -DUSE_MPEG2 -DUSE_ZLIB -D_EE -D__PLAYSTATION2__ -O2 -Wall -Wno-multichar
 
 # PS2SDK-Ports from ps2dev.org's SVN repository for libmad, zlib and ucl
-PS2SDK_PORTS = /home/robby/libStuffNew/ps2sdk-ports
+PS2SDK_PORTS = /mnt/winxp/scummvm/ports
 PS2SDK_PORTS_INCS = /ucl /zlib/include /libmad/ee/include
 PS2SDK_PORTS_LIBS = /ucl /zlib/lib /libmad/ee/lib
 
 # we also need SjPcm, Tremor and libmpeg2
-MORE_LIBS_DIR = /home/robby/libStuff
+MORE_LIBS_DIR = /mnt/winxp/scummvm/ports
 MORE_LIBS_INCS = /SjPcm/ee/src /mpeg2dec/include /tremor
 MORE_LIBS_LIBS = /SjPcm/ee/lib /mpeg2dec/libmpeg2 /tremor/tremor
 

Modified: scummvm/branches/gsoc2008-gui/backends/platform/ps2/fileio.cpp
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/fileio.cpp	2008-07-31 22:04:12 UTC (rev 33485)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/fileio.cpp	2008-08-01 08:55:21 UTC (rev 33486)
@@ -340,8 +340,6 @@
 		assert(cacheListSema >= 0);
 	}
 
-	//printf("ps2_fopen: %s, %s\n", fname, mode);
-
 	if (((mode[0] != 'r') && (mode[0] != 'w')) || ((mode[1] != '\0') && (mode[1] != 'b'))) {
 		printf("unsupported mode \"%s\" for file \"%s\"\n", mode, fname);
 		return NULL;
@@ -363,6 +361,8 @@
 	} else {
 		// Regular access to one of the devices
 
+		printf("ps2_fopen = %s\n", fname); // romeo : temp
+
 		if (!rdOnly)
 			return NULL; // we only provide readaccess for cd,dvd,hdd,usb
 
@@ -378,19 +378,22 @@
 		}
 
 		int64 cacheId = -1;
-		if (rdOnly && tocManager.haveEntries())
+		if (tocManager.haveEntries())
 			cacheId = tocManager.fileExists(fname);
 
 		if (cacheId != 0) {
 			Ps2File *file = findInCache(cacheId);
-			if (file)
+			if (file) {
+				printf("  findInCache(%x)\n", cacheId); // romeo : temp
 				return (FILE*)file;
+			}
 
 			bool isAudioFile = strstr(fname, ".bun") || strstr(fname, ".BUN") || strstr(fname, ".Bun");
 			file = new Ps2ReadFile(cacheId, isAudioFile);
 
 			if (file->open(fname)) {
 				openFileCount++;
+				printf("  new cacheID = %x\n", cacheId); // romeo : temp
 				return (FILE*)file;
 			} else
 				delete file;
@@ -579,7 +582,7 @@
 	}
 	char readPath[256];
 	sprintf(readPath, "%s/", _root);
-	printf("readDir: %s\n", readPath);
+	printf("readDir: %s    (root: %s )\n", readPath, root);
 	readDir(readPath, &_rootNode, 0);
 }
 
@@ -587,28 +590,62 @@
 	if (level <= 2) { // we don't scan deeper than that
 		iox_dirent_t dirent;
 		int fd = fio.dopen(path);
+		TocNode *eNode = NULL; // = *node; // entry node
+		bool first = true;
+
+		printf("path=%s - level=%d fd=%d\n", path, level, fd); // romeo : temp
 		if (fd >= 0) {
-			while (fio.dread(fd, &dirent) > 0)
-				if (dirent.name[0] != '.') { // skip '.' and '..'
+			while (fio.dread(fd, &dirent) > 0) {
+				if (dirent.name[0] != '.') { // skip '.' & '..' - romeo : check
+				                             // --- do we have them on PS2?
 					*node = new TocNode;
+					if (first) {
+						eNode = *node;
+						first = false;
+					}
 					(*node)->sub = (*node)->next = NULL;
-
 					(*node)->nameLen = strlen(dirent.name);
 					memcpy((*node)->name, dirent.name, (*node)->nameLen + 1);
 
-					if (dirent.stat.mode & FIO_S_IFDIR) { // directory
+					if (dirent.stat.mode & FIO_S_IFDIR) {
 						(*node)->isDir = true;
-						char nextPath[256];
-						sprintf(nextPath, "%s%s/", path, dirent.name);
-						readDir(nextPath, &((*node)->sub), level + 1);
-					} else
+						printf("dirent.name = %s [DIR]\n", dirent.name);
+					}
+					else {
 						(*node)->isDir = false;
+						printf("dirent.name = %s\n", dirent.name);
+					}
+
 					node = &((*node)->next);
 				}
+			}
+
 			fio.dclose(fd);
-		} else
-			printf("Can't open path: %s\n", path);
+		}
+
+		TocNode *iNode = eNode;
+		char nextPath[256];
+
+		while (iNode) {
+			if (iNode->isDir == true) {
+				sprintf(nextPath, "%s%s/", path, iNode->name);
+				readDir(nextPath, &(iNode->sub), level + 1);
+			}
+			iNode = iNode->next;
+		}
+
 	}
+
+	/*
+		** Wizard of Oz' trick (to get all games running from USB on PS2):
+
+		1. Make a list of files / dirs in level #0 (dclose before continuing)
+
+		2. Go through the dirs : dopen / dread them / mark dirs / dclose
+
+		   It's a safe recursion, cause it recurses on 'isDir' nodes
+		   after dclosing the higher hierarchy
+	*/
 }
 
 int64 TocManager::fileExists(const char *name) {

Deleted: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile
===================================================================
--- scummvm/trunk/backends/platform/ps2/iop/rpckbd/Makefile	2008-07-31 17:33:48 UTC (rev 33478)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,30 +0,0 @@
-# _____     ___ ____     ___ ____
-#  ____|   |    ____|   |        | |____|
-# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
-#-----------------------------------------------------------------------
-# Copyright 2001-2004, ps2dev - http://www.ps2dev.org
-# Licenced under Academic Free License version 2.0
-# Review ps2sdk README & LICENSE files for further details.
-#
-# $Id$
-
-
-IOP_OBJS_DIR = obj/
-IOP_BIN_DIR = bin/
-IOP_SRC_DIR = src/
-IOP_INC_DIR = include/
-
-IOP_BIN=bin/rpckbd.irx
-IOP_OBJS=obj/ps2kbd.o obj/imports.o
-
-IOP_CFLAGS=-Wall
-IOP_INCS += -I$(PS2SDKSRC)/iop/usb/usbd/include
-
-all: $(IOP_OBJS_DIR) $(IOP_BIN_DIR) $(IOP_BIN)
-
-clean:
-	rm -f -r $(IOP_OBJS_DIR) $(IOP_BIN_DIR)
-
-include $(PS2SDKSRC)/Defs.make
-include $(PS2SDKSRC)/iop/Rules.make
-include $(PS2SDKSRC)/iop/Rules.release

Copied: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile (from rev 33478, scummvm/trunk/backends/platform/ps2/iop/rpckbd/Makefile)
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile	                        (rev 0)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/Makefile	2008-08-01 08:55:21 UTC (rev 33486)
@@ -0,0 +1,30 @@
+# _____     ___ ____     ___ ____
+#  ____|   |    ____|   |        | |____|
+# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
+#-----------------------------------------------------------------------
+# Copyright 2001-2004, ps2dev - http://www.ps2dev.org
+# Licenced under Academic Free License version 2.0
+# Review ps2sdk README & LICENSE files for further details.
+#
+# $Id$
+
+
+IOP_OBJS_DIR = obj/
+IOP_BIN_DIR = bin/
+IOP_SRC_DIR = src/
+IOP_INC_DIR = include/
+
+IOP_BIN=bin/rpckbd.irx
+IOP_OBJS=obj/ps2kbd.o obj/imports.o
+
+IOP_CFLAGS=-Wall
+IOP_INCS += -I$(PS2SDKSRC)/iop/usb/usbd/include
+
+all: $(IOP_OBJS_DIR) $(IOP_BIN_DIR) $(IOP_BIN)
+
+clean:
+	rm -f -r $(IOP_OBJS_DIR) $(IOP_BIN_DIR)
+
+include $(PS2SDKSRC)/Defs.make
+include $(PS2SDKSRC)/iop/Rules.make
+include $(PS2SDKSRC)/iop/Rules.release

Deleted: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h
===================================================================
--- scummvm/trunk/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h	2008-07-31 17:33:48 UTC (rev 33478)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,90 +0,0 @@
-/*
-# _____     ___ ____     ___ ____
-#  ____|   |    ____|   |        | |____|
-# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
-#-----------------------------------------------------------------------
-# Copyright 2001-2004, ps2dev - http://www.ps2dev.org
-# Licenced under Academic Free License version 2.0
-# Review ps2sdk README & LICENSE files for further details.
-#
-# $Id$
-# USB Keyboard Driver for PS2
-*/
-
-#ifndef __PS2KBD_H__
-#define __PS2KBD_H__
-
-#define PS2KBD_RPC_ID	0xb0b0b80
-
-#define PS2KBD_LED_NUMLOCK   1
-#define PS2KBD_LED_CAPSLOCK  2
-#define PS2KBD_LED_SCRLOCK   4
-#define PS2KBD_LED_COMPOSE   8
-#define PS2KBD_LED_KANA      16
-
-#define PS2KBD_LED_MASK      0x1F;
-
-#define PS2KBD_ESCAPE_KEY    0x1B
-
-#define PS2KBD_LEFT_CTRL   (1 << 0)
-#define PS2KBD_LEFT_SHIFT  (1 << 1)
-#define PS2KBD_LEFT_ALT    (1 << 2)
-#define PS2KBD_LEFT_GUI    (1 << 3)
-#define PS2KBD_RIGHT_CTRL  (1 << 4)
-#define PS2KBD_RIGHT_SHIFT (1 << 5)
-#define PS2KBD_RIGHT_ALT   (1 << 6)
-#define PS2KBD_RIGHT_GUI   (1 << 7)
-
-#define PS2KBD_CTRL    (PS2KBD_LEFT_CTRL | PS2KBD_RIGHT_CTRL)
-#define PS2KBD_SHIFT  (PS2KBD_LEFT_SHIFT | PS2KBD_RIGHT_SHIFT)
-#define PS2KBD_ALT    (PS2KBD_LEFT_ALT | PS2KBD_RIGHT_ALT)
-#define PS2KBD_GUI    (PS2KBD_LEFT_GUI | PS2KBD_RIGHT_GUI)
-
-#define PS2KBD_RAWKEY_UP   0xF0
-#define PS2KBD_RAWKEY_DOWN 0xF1
-
-typedef struct _kbd_rawkey {
-  u8 state;
-  u8 key;
-} kbd_rawkey __attribute__ ((packed));
-
-#define PS2KBD_READMODE_NORMAL 1
-#define PS2KBD_READMODE_RAW    2
-
-/* Notes on read mode */
-/* In normal readmode (default) read multiples of 1 character off the keyboard file. These are 
-   processed by the keymaps so that you get back ASCII data */
-/* In raw readmode must read multiples of 2. First byte indicates state (i.e. Up or Down)
-   Second byte is the USB key code for that key. This table is presented in the USB HID Usage Tables manaual
-   from usb.org */
-
-#define PS2KBD_KEYMAP_SIZE 256
-
-typedef struct _kbd_keymap
-
-{
-  u8 keymap[PS2KBD_KEYMAP_SIZE];
-  u8 shiftkeymap[PS2KBD_KEYMAP_SIZE];
-  u8 keycap[PS2KBD_KEYMAP_SIZE];
-} kbd_keymap;
-
-
-/* IRPC function numbers */
-#define KBD_RPC_SETREADMODE     1 /* Sets up keymapped or raw mode */
-#define KBD_RPC_SETLEDS         2 /* Sets the LED state for ALL keyboards connected */
-#define KBD_RPC_SETREPEATRATE   3 /* Sets the repeat rate of the keyboard */
-#define KBD_RPC_SETKEYMAP       4 /* Sets the keymap for the standard keys, non shifted and shifted */
-#define KBD_RPC_SETCTRLMAP      5 /* Sets the control key mapping */
-#define KBD_RPC_SETALTMAP       6 /* Sets the alt key mapping */
-#define KBD_RPC_SETSPECIALMAP   7 /* Sets the special key mapping */
-#define KBD_RPC_FLUSHBUFFER     9 /* Flush the internal buffer, probably best after a keymap change */
-#define KBD_RPC_RESETKEYMAP    10 /* Reset keymaps to default states */
-#define KBD_RPC_READKEY		   11
-#define KBD_RPC_READRAW		   12
-
-/* Note on keymaps. In normal keymap a 0 would indicate no key */
-/* Key maps are represented by 3 256*8bit tables. First table maps USB key to a char when not shifted */
-/* Second table maps USB key to a char when shifted */
-/* Third table contains boolean values. If 1 then the key is shifted/unshifted in capslock, else capslock is ignored */
-
-#endif

Copied: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h (from rev 33478, scummvm/trunk/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h)
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h	                        (rev 0)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/include/ps2kbd.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -0,0 +1,90 @@
+/*
+# _____     ___ ____     ___ ____
+#  ____|   |    ____|   |        | |____|
+# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
+#-----------------------------------------------------------------------
+# Copyright 2001-2004, ps2dev - http://www.ps2dev.org
+# Licenced under Academic Free License version 2.0
+# Review ps2sdk README & LICENSE files for further details.
+#
+# $Id$
+# USB Keyboard Driver for PS2
+*/
+
+#ifndef __PS2KBD_H__
+#define __PS2KBD_H__
+
+#define PS2KBD_RPC_ID	0xb0b0b80
+
+#define PS2KBD_LED_NUMLOCK   1
+#define PS2KBD_LED_CAPSLOCK  2
+#define PS2KBD_LED_SCRLOCK   4
+#define PS2KBD_LED_COMPOSE   8
+#define PS2KBD_LED_KANA      16
+
+#define PS2KBD_LED_MASK      0x1F;
+
+#define PS2KBD_ESCAPE_KEY    0x1B
+
+#define PS2KBD_LEFT_CTRL   (1 << 0)
+#define PS2KBD_LEFT_SHIFT  (1 << 1)
+#define PS2KBD_LEFT_ALT    (1 << 2)
+#define PS2KBD_LEFT_GUI    (1 << 3)
+#define PS2KBD_RIGHT_CTRL  (1 << 4)
+#define PS2KBD_RIGHT_SHIFT (1 << 5)
+#define PS2KBD_RIGHT_ALT   (1 << 6)
+#define PS2KBD_RIGHT_GUI   (1 << 7)
+
+#define PS2KBD_CTRL    (PS2KBD_LEFT_CTRL | PS2KBD_RIGHT_CTRL)
+#define PS2KBD_SHIFT  (PS2KBD_LEFT_SHIFT | PS2KBD_RIGHT_SHIFT)
+#define PS2KBD_ALT    (PS2KBD_LEFT_ALT | PS2KBD_RIGHT_ALT)
+#define PS2KBD_GUI    (PS2KBD_LEFT_GUI | PS2KBD_RIGHT_GUI)
+
+#define PS2KBD_RAWKEY_UP   0xF0
+#define PS2KBD_RAWKEY_DOWN 0xF1
+
+typedef struct _kbd_rawkey {
+  u8 state;
+  u8 key;
+} kbd_rawkey __attribute__ ((packed));
+
+#define PS2KBD_READMODE_NORMAL 1
+#define PS2KBD_READMODE_RAW    2
+
+/* Notes on read mode */
+/* In normal readmode (default) read multiples of 1 character off the keyboard file. These are 
+   processed by the keymaps so that you get back ASCII data */
+/* In raw readmode must read multiples of 2. First byte indicates state (i.e. Up or Down)
+   Second byte is the USB key code for that key. This table is presented in the USB HID Usage Tables manaual
+   from usb.org */
+
+#define PS2KBD_KEYMAP_SIZE 256
+
+typedef struct _kbd_keymap
+
+{
+  u8 keymap[PS2KBD_KEYMAP_SIZE];
+  u8 shiftkeymap[PS2KBD_KEYMAP_SIZE];
+  u8 keycap[PS2KBD_KEYMAP_SIZE];
+} kbd_keymap;
+
+
+/* IRPC function numbers */
+#define KBD_RPC_SETREADMODE     1 /* Sets up keymapped or raw mode */
+#define KBD_RPC_SETLEDS         2 /* Sets the LED state for ALL keyboards connected */
+#define KBD_RPC_SETREPEATRATE   3 /* Sets the repeat rate of the keyboard */
+#define KBD_RPC_SETKEYMAP       4 /* Sets the keymap for the standard keys, non shifted and shifted */
+#define KBD_RPC_SETCTRLMAP      5 /* Sets the control key mapping */
+#define KBD_RPC_SETALTMAP       6 /* Sets the alt key mapping */
+#define KBD_RPC_SETSPECIALMAP   7 /* Sets the special key mapping */
+#define KBD_RPC_FLUSHBUFFER     9 /* Flush the internal buffer, probably best after a keymap change */
+#define KBD_RPC_RESETKEYMAP    10 /* Reset keymaps to default states */
+#define KBD_RPC_READKEY		   11
+#define KBD_RPC_READRAW		   12
+
+/* Note on keymaps. In normal keymap a 0 would indicate no key */
+/* Key maps are represented by 3 256*8bit tables. First table maps USB key to a char when not shifted */
+/* Second table maps USB key to a char when shifted */
+/* Third table contains boolean values. If 1 then the key is shifted/unshifted in capslock, else capslock is ignored */
+
+#endif

Deleted: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst
===================================================================
--- scummvm/trunk/backends/platform/ps2/iop/rpckbd/src/imports.lst	2008-07-31 17:33:48 UTC (rev 33478)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,58 +0,0 @@
-
-sysclib_IMPORTS_start
-I_memset
-I_strcmp
-I_memcpy
-sysclib_IMPORTS_end
-
-loadcore_IMPORTS_start
-I_FlushDcache
-loadcore_IMPORTS_end
-
-sifcmd_IMPORTS_start
-I_sceSifInitRpc
-I_sceSifSetRpcQueue
-I_sceSifRegisterRpc
-I_sceSifRpcLoop
-sifcmd_IMPORTS_end
-
-stdio_IMPORTS_start
-I_printf
-stdio_IMPORTS_end
-
-thsemap_IMPORTS_start
-I_CreateSema
-I_SignalSema
-I_WaitSema
-I_PollSema
-I_DeleteSema
-thsemap_IMPORTS_end
-
-thbase_IMPORTS_start
-I_StartThread
-I_CreateThread
-I_USec2SysClock
-I_iSetAlarm
-I_SetAlarm
-I_CancelAlarm
-thbase_IMPORTS_end
-
-thevent_IMPORTS_start
-I_WaitEventFlag
-I_iSetEventFlag
-I_CreateEventFlag
-thevent_IMPORTS_end
-
-sysmem_IMPORTS_start
-I_AllocSysMemory
-I_FreeSysMemory
-sysmem_IMPORTS_end
-
-usbd_IMPORTS_start
-I_UsbGetDeviceStaticDescriptor
-I_UsbOpenEndpoint
-I_UsbSetDevicePrivateData
-I_UsbTransfer
-I_UsbRegisterDriver
-usbd_IMPORTS_end
-

Copied: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst (from rev 33478, scummvm/trunk/backends/platform/ps2/iop/rpckbd/src/imports.lst)
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst	                        (rev 0)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/imports.lst	2008-08-01 08:55:21 UTC (rev 33486)
@@ -0,0 +1,58 @@
+
+sysclib_IMPORTS_start
+I_memset
+I_strcmp
+I_memcpy
+sysclib_IMPORTS_end
+
+loadcore_IMPORTS_start
+I_FlushDcache
+loadcore_IMPORTS_end
+
+sifcmd_IMPORTS_start
+I_sceSifInitRpc
+I_sceSifSetRpcQueue
+I_sceSifRegisterRpc
+I_sceSifRpcLoop
+sifcmd_IMPORTS_end
+
+stdio_IMPORTS_start
+I_printf
+stdio_IMPORTS_end
+
+thsemap_IMPORTS_start
+I_CreateSema
+I_SignalSema
+I_WaitSema
+I_PollSema
+I_DeleteSema
+thsemap_IMPORTS_end
+
+thbase_IMPORTS_start
+I_StartThread
+I_CreateThread
+I_USec2SysClock
+I_iSetAlarm
+I_SetAlarm
+I_CancelAlarm
+thbase_IMPORTS_end
+
+thevent_IMPORTS_start
+I_WaitEventFlag
+I_iSetEventFlag
+I_CreateEventFlag
+thevent_IMPORTS_end
+
+sysmem_IMPORTS_start
+I_AllocSysMemory
+I_FreeSysMemory
+sysmem_IMPORTS_end
+
+usbd_IMPORTS_start
+I_UsbGetDeviceStaticDescriptor
+I_UsbOpenEndpoint
+I_UsbSetDevicePrivateData
+I_UsbTransfer
+I_UsbRegisterDriver
+usbd_IMPORTS_end
+

Deleted: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h
===================================================================
--- scummvm/trunk/backends/platform/ps2/iop/rpckbd/src/irx_imports.h	2008-07-31 17:33:48 UTC (rev 33478)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,35 +0,0 @@
-/*
-# _____     ___ ____     ___ ____
-#  ____|   |    ____|   |        | |____|
-# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
-#-----------------------------------------------------------------------
-# Copyright (c) 2003 Marcus R. Brown <mrbrown at 0xd6.org> 
-# Licenced under Academic Free License version 2.0
-# Review ps2sdk README & LICENSE files for further details.
-#
-# $Id$
-# Defines all IRX imports.
-*/
-
-#ifndef IOP_IRX_IMPORTS_H
-#define IOP_IRX_IMPORTS_H
-
-#include "irx.h"
-
-/* Please keep these in alphabetical order!  */
-#include "dmacman.h"
-#include "intrman.h"
-#include "libsd.h"
-#include "loadcore.h"
-#include "sifcmd.h"
-#include "stdio.h"
-#include "sysclib.h"
-#include "sysmem.h"
-#include "thbase.h"
-#include "thevent.h"
-#include "thmsgbx.h"
-#include "thsemap.h"
-#include "usbd.h"
-#include "vblank.h"
-
-#endif /* IOP_IRX_IMPORTS_H */

Copied: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h (from rev 33478, scummvm/trunk/backends/platform/ps2/iop/rpckbd/src/irx_imports.h)
===================================================================
--- scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h	                        (rev 0)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/irx_imports.h	2008-08-01 08:55:21 UTC (rev 33486)
@@ -0,0 +1,35 @@
+/*
+# _____     ___ ____     ___ ____
+#  ____|   |    ____|   |        | |____|
+# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
+#-----------------------------------------------------------------------
+# Copyright (c) 2003 Marcus R. Brown <mrbrown at 0xd6.org> 
+# Licenced under Academic Free License version 2.0
+# Review ps2sdk README & LICENSE files for further details.
+#
+# $Id$
+# Defines all IRX imports.
+*/
+
+#ifndef IOP_IRX_IMPORTS_H
+#define IOP_IRX_IMPORTS_H
+
+#include "irx.h"
+
+/* Please keep these in alphabetical order!  */
+#include "dmacman.h"
+#include "intrman.h"
+#include "libsd.h"
+#include "loadcore.h"
+#include "sifcmd.h"
+#include "stdio.h"
+#include "sysclib.h"
+#include "sysmem.h"
+#include "thbase.h"
+#include "thevent.h"
+#include "thmsgbx.h"
+#include "thsemap.h"
+#include "usbd.h"
+#include "vblank.h"
+
+#endif /* IOP_IRX_IMPORTS_H */

Deleted: scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/ps2kbd.c
===================================================================
--- scummvm/trunk/backends/platform/ps2/iop/rpckbd/src/ps2kbd.c	2008-07-31 17:33:48 UTC (rev 33478)
+++ scummvm/branches/gsoc2008-gui/backends/platform/ps2/iop/rpckbd/src/ps2kbd.c	2008-08-01 08:55:21 UTC (rev 33486)
@@ -1,1199 +0,0 @@
-/*
-# _____     ___ ____     ___ ____
-#  ____|   |    ____|   |        | |____|
-# |     ___|   |____ ___|    ____| |    \    PS2DEV Open Source Project.
-#-----------------------------------------------------------------------
-# Copyright 2001-2005, ps2dev - http://www.ps2dev.org
-# Licenced under Academic Free License version 2.0
-# Review ps2sdk README & LICENSE files for further details.
-#
-# $Id$
-# USB Keyboard Driver for PS2
-*/
-
-#include "types.h"
-#include "ioman.h"
-#include "loadcore.h"
-#include "stdio.h"
-#include "sifcmd.h"
-#include "sifrpc.h"
-#include "sysclib.h"
-#include "sysmem.h"
-#include "usbd.h"
-#include "usbd_macro.h"
-#include "thbase.h"
-#include "thevent.h"
-#include "thsemap.h"
-
-#include "ps2kbd.h"
-#include "us_keymap.h"
-
-#define PS2KBD_VERSION 0x100
-
-#define USB_SUBCLASS_BOOT 1
-#define USB_HIDPROTO_KEYBOARD 1
-
-#define PS2KBD_MAXDEV 2
-#define PS2KBD_MAXKEYS 6
-
-#define PS2KBD_DEFLINELEN 4096
-#define PS2KBD_DEFREPEATRATE 100
-/* Default repeat rate in milliseconds */
-#define PS2KBD_REPEATWAIT 1000
-/* Number of milliseconds to wait before starting key repeat */
-#define USB_KEYB_NUMLOCK 0x53
-#define USB_KEYB_CAPSLOCK 0x39
-#define USB_KEYB_SCRLOCK 0x47
-
-#define USB_KEYB_NUMPAD_START 0x54
-#define USB_KEYB_NUMPAD_END 0x63
-
-#define SEMA_ZERO -419
-#define SEMA_DELETED -425
-
-int ps2kbd_init();
-void ps2kbd_config_set(int resultCode, int bytes, void *arg);
-void ps2kbd_idlemode_set(int resultCode, int bytes, void *arg);
-void ps2kbd_data_recv(int resultCode, int bytes, void *arg);
-int ps2kbd_probe(int devId);
-int ps2kbd_connect(int devId);
-int ps2kbd_disconnect(int devId);
-void usb_getstring(int endp, int index, char *desc);
-
-typedef struct _kbd_data_recv
-
-{
-  u8 mod_keys;
-  u8 reserved;
-  u8 keycodes[PS2KBD_MAXKEYS];
-} kbd_data_recv;
-
-typedef struct _keyb_dev
-
-{
-  int configEndp;
-  int dataEndp;
-  int packetSize;
-  int devId;
-  int interfaceNo;    /* Holds the interface number selected on this device */
-  char repeatkeys[2];
-  u32 eventmask;
-  u8 ledStatus;     /* Maintains state on the led status */
-  kbd_data_recv oldData;
-  kbd_data_recv data; /* Holds the data for the transfers */
-} kbd_dev;
-
-/* Global Variables */
-
-int kbd_readmode;
-u32 kbd_repeatrate;
-kbd_dev *devices[PS2KBD_MAXDEV]; /* Holds a list of current devices */
-int dev_count;
-UsbDriver kbd_driver = { NULL, NULL, "PS2Kbd", ps2kbd_probe, ps2kbd_connect, ps2kbd_disconnect };
-u8 *lineBuffer;
-u32 lineStartP, lineEndP;
-int lineSema;
-int bufferSema;
-u32 lineSize;
-u8 keymap[PS2KBD_KEYMAP_SIZE];         /* Normal key map */
-u8 shiftkeymap[PS2KBD_KEYMAP_SIZE];  /* Shifted key map */
-u8 keycap[PS2KBD_KEYMAP_SIZE];          /* Does this key get shifted by capslock ? */
-u8 special_keys[PS2KBD_KEYMAP_SIZE];
-u8 control_map[PS2KBD_KEYMAP_SIZE];
-u8 alt_map[PS2KBD_KEYMAP_SIZE];
-//static struct fileio_driver kbd_fdriver;
-iop_device_t kbd_filedrv;
-u8 keyModValue[8] = { 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7 };
-int repeat_tid;
-int eventid;   /* Id of the repeat event */
-
-int _start ()
-{
-  FlushDcache();
-
-  ps2kbd_init();
-
-  printf("PS2KBD - USB Keyboard Library\n");
-
-  return 0;
-
-}
-
-int ps2kbd_probe(int devId)
-
-{
-  UsbDeviceDescriptor *dev;
-  UsbConfigDescriptor *conf;
-  UsbInterfaceDescriptor *intf;
-  UsbEndpointDescriptor *endp;
-  //UsbStringDescriptor *str;
-
-  if(dev_count >= PS2KBD_MAXDEV)
-    {
-      printf("ERROR: Maximum keyboard devices reached\n");
-      return 0;
-    }
-
-  //printf("PS2Kbd_probe devId %d\n", devId);
-
-  dev = UsbGetDeviceStaticDescriptor(devId, NULL, USB_DT_DEVICE); /* Get device descriptor */
-  if(!dev) 
-    {
-      printf("ERROR: Couldn't get device descriptor\n");
-      return 0;
-    }
-
-  //printf("Device class %d, Size %d, Man %d, Product %d Cpnfigurations %d\n", dev->bDeviceClass, dev->bMaxPacketSize0, dev->iManufacturer, dev->iProduct, dev->bNumConfigurations);
-  /* Check that the device class is specified in the interfaces and it has at least one configuration */
-  if((dev->bDeviceClass != USB_CLASS_PER_INTERFACE) || (dev->bNumConfigurations < 1))
-    {
-      //printf("This is not the droid you're looking for\n");
-      return 0;
-    }
-
-  conf = UsbGetDeviceStaticDescriptor(devId, dev, USB_DT_CONFIG);
-  if(!conf)
-    {
-      printf("ERROR: Couldn't get configuration descriptor\n");
-      return 0;
-    }
-  //printf("Config Length %d Total %d Interfaces %d\n", conf->bLength, conf->wTotalLength, conf->bNumInterfaces);
-
-  if((conf->bNumInterfaces < 1) || (conf->wTotalLength < (sizeof(UsbConfigDescriptor) + sizeof(UsbInterfaceDescriptor))))
-    {
-      printf("ERROR: No interfaces available\n");
-      return 0;
-    }
-     
-  intf = (UsbInterfaceDescriptor *) ((char *) conf + conf->bLength); /* Get first interface */
-/*   printf("Interface Length %d Endpoints %d Class %d Sub %d Proto %d\n", intf->bLength, */
-/* 	 intf->bNumEndpoints, intf->bInterfaceClass, intf->bInterfaceSubClass, */
-/* 	 intf->bInterfaceProtocol); */
-
-  if((intf->bInterfaceClass != USB_CLASS_HID) || (intf->bInterfaceSubClass != USB_SUBCLASS_BOOT) ||
-     (intf->bInterfaceProtocol != USB_HIDPROTO_KEYBOARD) || (intf->bNumEndpoints < 1))
-
-    {
-      //printf("We came, we saw, we told it to fuck off\n");
-      return 0;
-    }
-
-  endp = (UsbEndpointDescriptor *) ((char *) intf + intf->bLength);
-  endp = (UsbEndpointDescriptor *) ((char *) endp + endp->bLength); /* Go to the data endpoint */
-
-  //printf("Endpoint 1 Addr %d, Attr %d, MaxPacket %d\n", endp->bEndpointAddress, endp->bmAttributes, endp->wMaxPacketSizeLB);
-  
-  if(((endp->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) != USB_ENDPOINT_XFER_INT) ||
-     ((endp->bEndpointAddress & USB_ENDPOINT_DIR_MASK) != USB_DIR_IN))
-    {
-      printf("ERROR: Endpoint not interrupt type and/or an input\n");
-      return 0;
-    }
-
-  printf("PS2KBD: Found a keyboard device\n");
-
-  return 1;
-}
-
-int ps2kbd_connect(int devId)
-
-{
-  /* Assume we can only get here if we have already checked the device is kosher */
-
-  UsbDeviceDescriptor *dev;
-  UsbConfigDescriptor *conf;
-  UsbInterfaceDescriptor *intf;
-  UsbEndpointDescriptor *endp;
-  kbd_dev *currDev;
-  int devLoop;
-
-  //printf("PS2Kbd_connect devId %d\n", devId);
-
-  dev = UsbGetDeviceStaticDescriptor(devId, NULL, USB_DT_DEVICE); /* Get device descriptor */
-  if(!dev) 
-    {
-      printf("ERROR: Couldn't get device descriptor\n");
-      return 1;
-    }
-
-  conf = UsbGetDeviceStaticDescriptor(devId, dev, USB_DT_CONFIG);
-  if(!conf)
-    {
-      printf("ERROR: Couldn't get configuration descriptor\n");
-      return 1;
-    }
-     
-  intf = (UsbInterfaceDescriptor *) ((char *) conf + conf->bLength); /* Get first interface */
-  endp = (UsbEndpointDescriptor *) ((char *) intf + intf->bLength);
-  endp = (UsbEndpointDescriptor *) ((char *) endp + endp->bLength); /* Go to the data endpoint */
-
-  for(devLoop = 0; devLoop < PS2KBD_MAXDEV; devLoop++)
-    {
-      if(devices[devLoop] == NULL)
-	{
-	  break;
-	}
-    }
-
-  if(devLoop == PS2KBD_MAXDEV)
-    {
-      /* How the f*** did we end up here ??? */
-      printf("ERROR: Device Weirdness!!\n");
-      return 1;
-    }
-
-  currDev = (kbd_dev *) AllocSysMemory(0, sizeof(kbd_dev), NULL);
-  if(!currDev)
-    {
-      printf("ERROR: Couldn't allocate a device point for the kbd\n");
-      return 1;
-    }
-
-  devices[devLoop] = currDev;
-  memset(currDev, 0, sizeof(kbd_dev));
-  currDev->configEndp = UsbOpenEndpoint(devId, NULL);
-  currDev->dataEndp = UsbOpenEndpoint(devId, endp);
-  currDev->packetSize = endp->wMaxPacketSizeLB | ((int) endp->wMaxPacketSizeHB << 8);
-  currDev->eventmask = (1 << devLoop);
-  if(currDev->packetSize > sizeof(kbd_data_recv))
-    {
-      currDev->packetSize = sizeof(kbd_data_recv);
-    }
-
-  if(dev->iManufacturer != 0)
-    {
-      usb_getstring(currDev->configEndp, dev->iManufacturer, "Keyboard Manufacturer");
-    }
-
-  if(dev->iProduct != 0)
-    {
-      usb_getstring(currDev->configEndp, dev->iProduct, "Keyboard Product");
-    }
-
-  currDev->devId = devId;
-  currDev->interfaceNo = intf->bInterfaceNumber;
-  currDev->ledStatus = 0;
-
-  UsbSetDevicePrivateData(devId, currDev); /* Set the index for the device data */
-
-  //printf("Configuration value %d\n", conf->bConfigurationValue);
-  UsbSetDeviceConfiguration(currDev->configEndp, conf->bConfigurationValue, ps2kbd_config_set, currDev);
-
-  dev_count++; /* Increment device count */
-  printf("PS2KBD: Connected device\n");
-
-  return 0;
-}
-
-int ps2kbd_disconnect(int devId)
-
-{
-  int devLoop;
-  printf("PS2Kbd_disconnect devId %d\n", devId);
-
-  for(devLoop = 0; devLoop < PS2KBD_MAXDEV; devLoop++)
-    {
-      if((devices[devLoop]) && (devices[devLoop]->devId == devId))
-	{
-	  dev_count--;
-	  FreeSysMemory(devices[devLoop]);
-	  devices[devLoop] = NULL;
-	  printf("PS2KBD: Disconnected device\n");
-	  break;
-	}
-    }
-
-  return 0;
-}
-
-typedef struct _string_descriptor
-
-{
-  u8 buf[200];
-  char *desc;
-} string_descriptor; 
-
-void ps2kbd_getstring_set(int resultCode, int bytes, void *arg)
-
-{
-  UsbStringDescriptor *str = (UsbStringDescriptor *) arg;
-  string_descriptor *strBuf = (string_descriptor *) arg;
-  char string[50];
-  int strLoop;
-
-/*   printf("=========getstring=========\n"); */
-
-/*   printf("PS2KEYBOARD: GET_DESCRIPTOR res %d, bytes %d, arg %p\n", resultCode, bytes, arg); */
-
-  if(resultCode == USB_RC_OK)
-    {
-      memset(string, 0, 50);
-      for(strLoop = 0; strLoop < ((bytes - 2) / 2); strLoop++)
-	{
-	  string[strLoop] = str->wData[strLoop] & 0xFF;
-	}
-      printf("%s: %s\n", strBuf->desc, string);
-    }
-  
-  FreeSysMemory(arg);
-}
-
-void usb_getstring(int endp, int index, char *desc)
-
-{
-  u8 *data;
-  string_descriptor *str;
-  int ret; 
-
-  data = (u8 *) AllocSysMemory(0, sizeof(string_descriptor), NULL);
-  str = (string_descriptor *) data;
-
-  if(data != NULL)
-    {
-      str->desc = desc;
-      ret = UsbControlTransfer(endp, 0x80, USB_REQ_GET_DESCRIPTOR, (USB_DT_STRING << 8) | index, 
-			       0, sizeof(string_descriptor) - 4, data, ps2kbd_getstring_set, data);
-      if(ret != USB_RC_OK)
-	{
-	  printf("PS2KBD: Error sending string descriptor request\n");
-	  FreeSysMemory(data);
-	}
-    }
-}
-
-void ps2kbd_config_set(int resultCode, int bytes, void *arg)
-     /* Called when we have finished choosing our configuration */
-
-{
-  kbd_dev *dev;
-
-  if(resultCode != USB_RC_OK)
-    {
-      printf("PS2KEYBOARD: Configuration set error res %d, bytes %d, arg %p\n", resultCode, bytes, arg);
-      return;
-    }
-
-  //printf("PS2KEYBOARD: Configuration set res %d, bytes %d, arg %p\n", resultCode, bytes, arg);
-  /* Do a interrupt data transfer */
-
-  dev = (kbd_dev *) arg;
-  if(dev != NULL)
-    {
-      int ret;
-      
-      ret = UsbControlTransfer(dev->configEndp, 0x21, USB_REQ_SET_IDLE, 0, dev->interfaceNo, 0, NULL, ps2kbd_idlemode_set, arg);
-    }
-}
-
-void ps2kbd_idlemode_set(int resultCode, int bytes, void *arg)
-
-{
-  kbd_dev *dev;
-
-
-
-  if(resultCode != USB_RC_OK)
-    {
-      printf("PS2KBD: Idlemode set error res %d, bytes %d, arg %p\n", resultCode, bytes, arg);
-      return;
-    }
-  
-  dev = (kbd_dev *) arg;
-  if(dev != NULL)
-    {
-      int ret;
-      
-      ret = UsbInterruptTransfer(dev->dataEndp, &dev->data, dev->packetSize, ps2kbd_data_recv, arg);
-    }
-}
-
-void ps2kbd_led_set(int resultCode, int bytes, void *arg)
-
-{
-  //printf("LED Set\n");
-}
-
-void ps2kbd_build_uniquekeys(u8 *res, const u8 *new, const u8 *old)
-
-     /* Builds a list of unique keys */
-
-{
-  int loopNew, loopOld;
-  int loopRes = 0;
-  int foundKey;
-
-  for(loopNew = 0; loopNew < PS2KBD_MAXKEYS; loopNew++)
-    {
-      if(new[loopNew] != 0)
-	{
-	  foundKey = 0;
-	  for(loopOld = 0; loopOld < PS2KBD_MAXKEYS; loopOld++)
-	    {
-	      if(new[loopNew] == old[loopOld])
-		{
-		  foundKey = 1;
-		  break;
-		}
-	    }
-	  if(!foundKey)
-	    {
-	      res[loopRes++] = new[loopNew];
-	    }
-	}
-    }
-}
-
-u32 ps2kbd_repeathandler(void *arg)
-
-{
-  kbd_dev *dev = arg;
-  iop_sys_clock_t t;
-  //printf("Repeat handler\n");
-
-  iSetEventFlag(eventid, dev->eventmask);
-
-  USec2SysClock(kbd_repeatrate * 1000, &t);
-  iSetAlarm(&t, ps2kbd_repeathandler, arg);
-
-  return t.hi;
-}
-
-void ps2kbd_getkeys(u8 keyMods, u8 ledStatus, const u8 *keys, kbd_dev *dev)
-
-{
-  int loopKey;
-  int tempPos = 0;
-  int byteCount = 0;
-  u8 currChars[2];
-
-  if(lineStartP < lineEndP)
-    {
-      tempPos = lineStartP + lineSize;
-    }
-  else
-    {
-      tempPos = lineStartP;
-    }
-  
-  for(loopKey = 0; loopKey < PS2KBD_MAXKEYS; loopKey++)
-    {
-      u8 currKey = keys[loopKey];
-
-      currChars[0] = 0;
-      currChars[1] = 0;
-
-      if(lineEndP == (tempPos - 1))
-	{
-	  break;
-	}
-
-      if(currKey) /* If this is a valid key */
-	{
-	  if((currKey >= USB_KEYB_NUMPAD_START) && (currKey <= USB_KEYB_NUMPAD_END))
-	    /* Handle numpad specially */
-	    {
-	      if(ledStatus & PS2KBD_LED_NUMLOCK)
-		{
-		  if(keymap[currKey])
-		    {
-		      currChars[0] = keymap[currKey];
-		    }
-		}
-	      else
-		{
-		  if(special_keys[currKey])
-		    {
-		      currChars[0] = PS2KBD_ESCAPE_KEY;
-		      currChars[1] = special_keys[currKey];
-		    }
-		  else if(keymap[currKey] != '5') /* Make sure this isnt a 5 key :) */
-		    {
-		      currChars[0] = keymap[currKey];
-		    }
-		}
-	    }
-	  else if(special_keys[currKey]) /* This is a special key */
-	    {
-	      currChars[0] = PS2KBD_ESCAPE_KEY;
-	      currChars[1] = special_keys[currKey];
-	    }
-	  else if(keyMods & PS2KBD_CTRL) /* CTRL */
-	    {
-	      if(control_map[currKey])
-		{
-		  currChars[0] = control_map[currKey];
-		}
-	    }
-	  else if(keyMods & PS2KBD_ALT) /* ALT */
-	    {
-	      if(alt_map[currKey])
-		{
-		  currChars[0] = alt_map[currKey];
-		}
-	    }
-	  else if(keyMods & PS2KBD_SHIFT) /* SHIFT */
-	    {
-	      if((ledStatus & PS2KBD_LED_CAPSLOCK) && (keycap[currKey]))
-		{
-		  currChars[0] = keymap[currKey];
-		}
-	      else
-		{
-		  currChars[0] = shiftkeymap[currKey];
-		}
-	    }
-	  else /* Normal key */
-	    {
-	      if(keymap[keys[loopKey]])
-		{
-		  if((ledStatus & PS2KBD_LED_CAPSLOCK) && (keycap[currKey]))
-		    {
-		      currChars[0] = shiftkeymap[currKey];
-		    }
-		  else
-		    {
-		      currChars[0] = keymap[currKey];
-		    }
-		}
-	    }
-	}
-
-      if((currChars[0] == PS2KBD_ESCAPE_KEY) && (currChars[1] != 0))
-	{
-	  if(lineEndP != (tempPos - 2))
-	    {
-	      lineBuffer[lineEndP++] = currChars[0];
-	      lineEndP %= lineSize;
-	      lineBuffer[lineEndP++] = currChars[1];
-	      lineEndP %= lineSize;
-	      byteCount += 2;
-	    }
-	  dev->repeatkeys[0] = currChars[0];
-	  dev->repeatkeys[1] = currChars[1];
-	}
-      else if(currChars[0] != 0)
-	{
-	  lineBuffer[lineEndP++] = currChars[0];
-	  lineEndP %= lineSize;
-	  byteCount++;
-	  dev->repeatkeys[0] = currChars[0];
-	  dev->repeatkeys[1] = 0;
-	}
-    }
-
-  if(byteCount > 0) 
-    {
-      iop_sys_clock_t t;
-      /* Set alarm to do repeat rate */
-      //printf("repeatkeys %d %d\n", kbd_repeatkeys[0], kbd_repeatkeys[1]);
-      USec2SysClock(PS2KBD_REPEATWAIT * 1000, &t);
-      SetAlarm(&t, ps2kbd_repeathandler, dev);
-    }
-
-  for(loopKey = 0; loopKey < byteCount; loopKey++) /* Signal the sema to indicate data */
-    {
-      SignalSema(bufferSema);
-    }
-
-/*   lineBuffer[PS2KBD_DEFLINELEN - 1] = 0; */
-/*   printf(lineBuffer); */
-  //printf("lineStart %d, lineEnd %d\n", lineStartP, lineEndP);
-}
-
-
-void ps2kbd_getkeys_raw(u8 newKeyMods, u8 oldKeyMods, u8 *new, const u8 *old)
-
-{
-  int loopKey;
-  u8 currKey;
-  u8 keyMods = newKeyMods ^ oldKeyMods;
-  u8 keyModsMap = newKeyMods & keyMods;
-  int tempPos = 0;
-  int byteCount = 0;
-
-  if(lineStartP < lineEndP)
-    {
-      tempPos = lineStartP + lineSize;
-    }
-  else
-    {
-      tempPos = lineStartP;
-    }
-  
-  for(loopKey = 0; loopKey < 8; loopKey++)
-    {
-      int currMod = (1 << loopKey);
-      if(keyMods & currMod) 
-	{
-	  if(lineEndP == (tempPos - 2))
-	    {
-	      return;
-	    }
-
-	  currKey = keyModValue[loopKey];
-
-	  if(keyModsMap & currMod) /* If key pressed */
-	    {
-	      lineBuffer[lineEndP++] = PS2KBD_RAWKEY_DOWN;
-	      //printf("Key down\n");
-	    }
-	  else
-	    {
-	      lineBuffer[lineEndP++] = PS2KBD_RAWKEY_UP;
-	      //printf("Key up\n");
-	    }
-
-	  lineEndP %= lineSize;
-	  lineBuffer[lineEndP++] = currKey;
-	  lineEndP %= lineSize;
-	  byteCount += 2;
-	  //printf("Key %d\n", currKey);
-	}
-    }
-
-  for(loopKey = 0; loopKey < PS2KBD_MAXKEYS; loopKey++)
-    {
-      if(lineEndP == (tempPos - 2))
-	{
-	  return;
-	}
-
-      if(new[loopKey] != 0)
-	{
-	  lineBuffer[lineEndP++] = PS2KBD_RAWKEY_DOWN;

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