aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/saveload.cpp
AgeCommit message (Collapse)Author
2012-02-15JANITORIAL: Fix missing whitespace in pointer castTarek Soliman
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g' This seems to have caught some params as well which is not undesirable IMO. It also caught some strings containing this which is undesirable so I excluded them manually. (engines/sci/engine/kernel_tables.h)
2012-02-11Revert "SCUMM: revert savegame version to 89"Willem Jan Palenstijn
This reverts commit 65fc7225bb31e72120dcdf16e91ae377c657548d. Increasing the savegame version on a branch and then decreasing it again leads to problems with loading current savegames in old commits during a bisect.
2012-02-11SCUMM: revert savegame version to 89Tobias Gunkel
Previous versions 89-92 are merged into version 89.
2012-02-11SCUMM: save complete v0 state and initialize actors correctlyTobias Gunkel
2012-02-11SCUMM: do not convert a savegame twiceTobias Gunkel
2012-02-11SCUMM: merge object v0 id and type into one object varTobias Gunkel
2012-02-11SCUMM: changed handling of _activeInventory/_activeActor to ↵Tobias Gunkel
_activeObject(2)/_activeObject(2)Type Note: the transition is not completed yet. The code compiles but is probably not runnable as not every occurrence of _activeInventory has been properly replaced. The usage of _v0ObjectIndex and _v0ObjectInInventory should be revised too and both variables should be replaced by another mechanism (maybe by using a single variable "obj = (type << 8) | id"). - moved v0 only vars _activeInventory, _activeObject, _activeVerb from ScummEngine_v2 to ScummEngine_v0 - removed _activeActor, _activeInvExecute, _activeObject2Inv and _activeInventory. They are handled by _activeObject/_activeObjectType and _activeObject2/_activeObject2Type now. - removed _activeObject(2)Index as they only bloat the code without any benefit (?) - merge prep-name tables from ScummEngine_v2::drawPreposition() and ScummEngine_v0::drawSentenceWord() by introducing ScummEngine_v2::drawPreposition() - rename ObjectData.flags -> obj_type (quick-fix only, needs review! Maybe obj_nr and obj_type can be merged into one var: obj_nr = (obj_type << 8) | obj_nr) - o_unknown2 is negation of o_ifActiveObject (o_ifNotEqualActiveObject2) - renamed o_ifActiveObject -> o_ifEqualActiveObject2 as it acts only on _activeObject2 - renamed ScummEngine_v0::drawSentenceWord() -> ScummEngine_v0::getObjectName()
2011-11-24SCUMM: paranoia "fix" for ae5192c5d396b6ab3caf57adabeb03a832966dd3athrxx
(change sizeof check to use int16 instead of Common::Rect)
2011-11-24SCUMM: make FM-Towns save files compatible between DS and other platformsathrxx
(only applies to new save files)
2011-11-02SCUMM: Minor clean upWillem Jan Palenstijn
2011-11-01SCUMM: add comment to last commitathrxx
2011-11-01SCUMM: fix save file incompatibility between DS and other ports for non ↵athrxx
FM-TOWNS games
2011-08-27SCUMM: Properly prefix player_towns.h include with scumm/.Johannes Schickel
2011-08-27SCUMM: Also save first used color beyond 80 in Indy4 Amiga palette.Johannes Schickel
2011-08-26SCUMM: Save Indy4 Amiga specific palettes like the original did.Johannes Schickel
For older saves I added a warning and a fallback which tries to setup everything correctly. This might cause some issues, but should hopefully be just fine.
2011-08-26SCUMM: Implement proper Indy4 Amiga palette handling.Johannes Schickel
This should fix incorrect text colors in some scenes.
2011-08-07GRAPHICS: Simplify the interface of Graphics::loadThumbnail().Christoph Mallon
Now it returns the Surface, so the caller does not need to create one and pass it.
2011-06-20ALL: Remove trailing whitespacesMax Horn
This tries to make our code a bit more compliant with our code formatting conventions. For future use, this is the command I used: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-18SCUMM: regenerate 16bit palette after loading a savegame in LOOM PCEathrxx
(this avoids isssues when using savegames from different ports with different 16bit color modes)
2011-06-15SCUMM: hopefully fix 16bit mode support for SCUMM FM-TOWNS games and LOOM ↵athrxx
PCE on Android This mostly reverts 5b7754e3f095eb8a469dd4b7de5a6379f8e13c27. Instead, we try to use other 16bit modes after 555 fails.
2011-06-02ENGINES: Change 2nd param of Engine::saveGameState to Common::StringMax Horn
2011-05-13SCUMM: Turned ResTypeData into a Common::Array<Resource>, subsuming its ↵Max Horn
_resource member
2011-05-13SCUMM: Remove ResTypeData::_numMax Horn
2011-05-13SCUMM: Rename ResTypes->ResType, introduce ResId typedef, change code to use ↵Max Horn
both
2011-05-13SCUMM: Add a Resource class, refactor res code around itMax Horn
2011-05-13SCUMM: Tweak sound res syncingMax Horn
2011-05-13SCUMM: Rename ResTypeData::num to _numMax Horn
2011-05-13SCUMM: Get rid of the MemBlkHeader hackMax Horn
This uncovered at least one potentially serious bug in the inventory code, which still needs to be investigated and fixed.
2011-05-13SCUMM: Rename saveLoadResource to loadResourceOLD, remove unused save code in itMax Horn
2011-05-13SCUMM: Document and cleanup resource type modeMax Horn
2011-05-13SCUMM: Refactor how resource (types) are srepresentedMax Horn
Previously, we had a couple of arrays of size N (where N = number of resource types), one for each attribute of a resource type (such as as the number of resources of that type. Now, we have one array of size N, whose elements are a record aggregating all the attributes of each resource type.
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-12COMMON: Replace MKID_BE by MKTAGMax Horn
MKID_BE relied on unspecified behavior of the C++ compiler, and as such was always a bit unsafe. The new MKTAG macro is slightly less elegant, but does no longer depend on the behavior of the compiler. Inspired by FFmpeg, which has an almost identical macro.
2011-04-05SCUMM: Rename InfoStuff to SaveStateMetaInfosMax Horn
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850
2010-11-19COMMON: Split common/stream.h into several headersMax Horn
svn-id: r54385
2010-11-08COMMON: Push #include audiocd.h in system.h out to .cpp filesMax Horn
svn-id: r54148
2010-11-08BACKENDS: Partial merge of gsoc2010-opengl: Audio CD changes onlyMax Horn
This commit contains the AudioCDManager changes from the gsoc2010-opengl branch. The other changes in that branch are restricted to the backends directory only (plus configure). The Nintendo DS and Dreamcast ports still need to be ported over to the new Audio CD system, but that should be fairly easy to do. svn-id: r54147
2010-10-27ENGINE: Rename resetTotalPlayTime to setTotalPlayTime.Johannes Schickel
I also extended the comment for it to show two possible use cases. svn-id: r53895
2010-10-27ENGINE: Generalize SCUMM play time counting and move it into Engine.Johannes Schickel
This implements Max's idea on -devel ("Re: [Scummvm-devel] ATTN Engine authors: Advanced engine features") from 27.10.2010 on 11:12PM CEST. Unlike the SCUMM implementation it stores the play time as ms instead of s. The SCUMM engine was adapted to use this instead to reduce code duplication. svn-id: r53892
2010-10-13OPENGL: Merged from trunk, from rev 52105 to 53396.Johannes Schickel
This includes an rather hacky attempt to merge all the recent gp2x backend changes into the branch. I suppose the gp2x backend and probably all new backends, i.e. gph, dingux etc., might not compile anymore. Since I have no way of testing those it would be nice if porters could look into getting those up to speed in this branch. svn-id: r53399
2010-10-05SCUMM/FM-TOWNS: disable new graphics code in DS portFlorian Kagerer
svn-id: r53033
2010-10-01SCUMM/FM-TOWNS: fix palette and other graphics issuesFlorian Kagerer
This commit should fix at least the following bugs/feature requests: #1032859, #1252088, #1055391, #1315968, #1315938, #1742106, #812891. The FM-Towns version of Scumm games use a mixed graphics mode with 2 layers (one with 32767 colors and one with 16 colors). Among other things I have added a screen output class which emulates this dual layer approach which allows specific hardware effects like enabling and disabling layers (e.g. in the voodoo priestess scene in MI1). Old savegames (saved before this update) will load, but you’ll encounter palette glitches in the verb/inventory screen, since the 16 color palette for layer 2 is not contained in your savegame. This will be true at least for version 5 games. Certain scene change actions (which require the verb/inventory part to be redrawn) might correct this (e.g. try looking at the treasure map in MI1 and closing it). Version 3 games should be okay, since they use a static text palette which is never changed and which will be reset after loading a savegame. This update requires a USE_RGB_COLORS setting for proper operation. 8 bit users will get a warning that they’ll have to expect palette glitches . Apart from that the engine in 8 bit mode should not only still work okay, but also benefit from some of the other (non palette related) improvements (e.g. bug #1032859 should be fixed even in 8 bit mode). Japanese font drawing hasn’t been improved much yet. This will be a separate task. svn-id: r52966
2010-08-18SCUMM/FM-TOWNS: start rewriting audio codeFlorian Kagerer
- Start rewriting audio code for FM-TOWNS versions of Loom, Indy3 and Monkey Island 1 using the recently added code in towns_audio.cpp (Zak should work the same way, but I can't test, since I don't own that one). - All sound types (pcm, euphony and cd audio) now support volume and balance control (e.g. try walking into/out of the kitchen and opening/closing the door in the Scumm Bar in Monkey Island 1 or walking into/out of the circus tent). - Pcm sounds now support proper loop start/end and note offsets (e.g. try out the hammer sound in the forge in LOOM for example). - some other minor improvements - The FM-Towns versions of Indy 4 and Monkey Island 2 are not affected. I don't have Monkey Island 2, but I presume that it will work like Indy 4. Adding support for these will be a separate task, since they work quite differently. svn-id: r52198
2010-08-06Merged from trunk, from r51495 to r51775Alejandro Marzini
svn-id: r51776
2010-08-02GRAPHICS: Renamed skipThumbnailHeader to skipThumbnail.Johannes Schickel
svn-id: r51668
2010-07-13Merged from trunk, from Rev 49499 to HEADAlejandro Marzini
svn-id: r50840
2010-06-15SCUMM: Fix bug #1879604.Eugene Sandulenko
Bug 1879604: "MANIACNES: Music not played when loading game". Actually previous attempt to fix this bug was not successful since first entry of script 5 does not have needed functionality. Now we resume music manually. svn-id: r49763
2010-06-15Renamed getAudioCD to getAudioCDManager.Alejandro Marzini
svn-id: r49678
2010-06-09- Revised abstract AudioCDManager.Alejandro Marzini
- Removed AudioCDManager Singleton, and changed code for using AudioCDManager in OSystem. - Added initialization code for new AudioCDManager in BaseBackend and OSystem_SDL. svn-id: r49548