aboutsummaryrefslogtreecommitdiff
path: root/engines/cine
AgeCommit message (Collapse)Author
2008-07-29Changed class File (and derived classes) to only support read-only access; ↵Max Horn
added a new class DumpFile for writing svn-id: r33412
2008-07-29Make sure processSeqList and purgeSeqList are only called in the main loop ↵Kari Salminen
when running Operation Stealth. Mostly a precaution as the seqList should be totally empty when running Future Wars as it doesn't use it. svn-id: r33410
2008-07-29Added purgeSeqList function (Used in mainloop now). Let's see if this helps ↵Kari Salminen
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) svn-id: r33409
2008-07-29Added a debug message to loadTempSaveOS's to check whether we loaded the ↵Kari Salminen
whole savefile. Made objectStruct's clearing also clear x and y member variables in resetEngine. svn-id: r33407
2008-07-29Rearranged parts of the Operation Stealth savegame loading routine.Kari Salminen
- 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... svn-id: r33404
2008-07-28Fixing 'warning: comparison of unsigned expression < 0 is always false'Max Horn
svn-id: r33383
2008-07-28Fixed crash when running Operation Stealth introduced in r33339 (There are ↵Kari Salminen
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). svn-id: r33380
2008-07-28Added loading of temporary Operation Stealth savegames. Needs testing!Kari Salminen
- 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. svn-id: r33379
2008-07-28Added remaining load functions needed for the Operation Stealth savegame ↵Kari Salminen
format loading (loadSeqList and loadZoneQuery). Not used yet. svn-id: r33367
2008-07-28Cut Future Wars savegame loading routine into parts that can be reused when ↵Kari Salminen
loading the Operation Stealth savegame format. svn-id: r33366
2008-07-28Now detects temporary Operation Stealth savegame format and saves it. No ↵Kari Salminen
loading yet. svn-id: r33365
2008-07-28Made the savegame loading routine choose between loading a Future Wars or an ↵Kari Salminen
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. svn-id: r33362
2008-07-27Added a preliminary saving routine for Operation Stealth (Disabled by ↵Kari Salminen
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). svn-id: r33349
2008-07-27Clear the confusing usage of NUM_MAX_VAR (It's 255 actually, not 256).Kari Salminen
svn-id: r33339
2008-07-27Cut savegame loading into smaller functional parts (resetEngine, ↵Kari Salminen
loadPlainSave etc). svn-id: r33338
2008-07-23Renamed opcodes 0x49 and 0x68:Kari Salminen
- Opcode 0x49: setDefaultMenuColor2 -> setDefaultMenuBgColor - Opcode 0x68: setDefaultMenuColor -> setPlayerCommandPosY svn-id: r33240
2008-07-22Fix warnings in CINEMax Horn
svn-id: r33202
2008-07-22Fix CineSaveGameFormat enumeration's include order (Caused problems at least ↵Kari Salminen
with GCC). svn-id: r33196
2008-07-22Fix for bug #2019355 (FW: broken compatibility with 0.11.1 saves):Kari Salminen
- 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. svn-id: r33192
2008-07-18Added savefile position comments to savegame loading routine (Helpful for ↵Kari Salminen
debugging the formats). svn-id: r33096
2008-07-17Patch #2019455: Patch for reducing the BSS size of Cine engine.Kari Salminen
svn-id: r33087
2008-07-14Fix for bug #2016647 (FW: crash with italian amiga version).Kari Salminen
- 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! svn-id: r33068
2008-07-07Fix for bathroom door opening crash in Operation Stealth's start.Kari Salminen
svn-id: r32951
2008-07-02Fully implemented processSeqListElementKari Salminen
- 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 svn-id: r32874
2008-07-01Fixed unitialized variablesMax Horn
svn-id: r32865
2008-06-30Removed TODO from checkCollision: Updating zoneQuery each time ↵Kari Salminen
checkCollision is called seems to be fine. svn-id: r32852
2008-06-30Fixed addAni (A test before using resetGfxEntityEntry was incorrect). Also ↵Kari Salminen
added comments and checked that most 8-bit values used in this function are used as signed integers. svn-id: r32850
2008-06-30Implemented resetGfxEntityEntry and made it used where appropriate (The ↵Kari Salminen
function wasn't very easy to reverse engineer so it may have flaws still, but let's hope it doesn't ;-)). svn-id: r32848
2008-06-26Implemented Operation Stealth's version of addOverlay(objectIndex, overlayType).Kari Salminen
svn-id: r32816
2008-06-26Fixed opcode:Kari Salminen
- 0x83: o2_isSeqRunning (Should it be named o2_isSeqNotRunning?) -- Added previously missing test part -- Negated the result (It was backwards before!) svn-id: r32804
2008-06-26Comments update.Kari Salminen
svn-id: r32802
2008-06-26Comments update.Kari Salminen
svn-id: r32801
2008-06-25Fix for GCC warning (Warned about testing x >= 0 when x is unsigned and ↵Kari Salminen
therefore the test is always true). svn-id: r32791
2008-06-25Implemented support for zoneQuery (Operation Stealth specific).Kari Salminen
Fixed opcodes (related to zoneQuery): - 0x08: o1_checkCollision - 0x9A: o2_wasZoneChecked NOTE: Savegame support for the zoneQuery data is broken svn-id: r32790
2008-06-25Added FIXME about the broken implementation of opcode 0x9A (o2_wasZoneChecked).Kari Salminen
svn-id: r32789
2008-06-25Implemented opcode:Kari Salminen
- 0x82: o2_modifySeqListElement (Was o2_op82) Seeks a matching element from the seqList and modifies its values. svn-id: r32786
2008-06-25Implemented opcode:Kari Salminen
- 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? svn-id: r32785
2008-06-24Fixed opcodes:Kari Salminen
- 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. svn-id: r32769
2008-06-20Merged revisions ↵Christopher Page
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 ........ svn-id: r32742
2008-06-18Fixed a small discrepancy in Delphine unpacker's command 00b's documentation ↵Kari Salminen
(Parameter range is 1..8, not 1..9). svn-id: r32730
2008-06-16Merged revisions 32668-32669,32676,32687-32689,32693,32695,32698-32701,32705 ↵Christopher Page
via svnmerge from https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk svn-id: r32720
2008-06-13Small cleanup (uint16 -> uint where still applicable).Kari Salminen
svn-id: r32689
2008-06-13More documentation for CineUnpacker-class (Practically done documenting ↵Kari Salminen
now). Also changed parameter and return value types to a more uniform style (uint16 -> uint, int -> uint where applicable etc). svn-id: r32688
2008-06-13Made CineUnpacker::unpack more robust & secure. It shouldn't crash now with ↵Kari Salminen
any input (Before making reading or writing operations they are checked to be in bounds). Also updated some comments and added some error message(s). svn-id: r32687
2008-06-12CINE: Fixed memory leaks in the CINE engineChristopher Page
svn-id: r32677
2008-06-11Merged revisions ↵Christopher Page
32564-32565,32567-32575,32577,32579-32594,32596-32603,32605-32639,32644-32646,32648-32666 via svnmerge from https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk svn-id: r32667
2008-06-11Documented CineUnpacker class.Kari Salminen
svn-id: r32665
2008-06-11No need to specify CaseSensitiveString_Hash explicitly anymoreMax Horn
svn-id: r32663
2008-06-10A little Delphine unpacker documentation addition and variable renaming.Kari Salminen
svn-id: r32660
2008-06-10Changed unpackHelper1(numBits, addCount) to unpackBytes(numBytes).Kari Salminen
svn-id: r32655