aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/scumm.h
AgeCommit message (Collapse)Author
2012-05-31SCUMM: Backyard Baseball 2003 uses a unique variable for the subtitle ↵Travis Howell
setting, fixes changing subtitles via ScummVM.
2012-02-26COMMON: Move RenderMode and GUIOptions functionality into separate filesMax Horn
2012-02-11SCUMM: cleanup and separation of objIsActor()/objToActor()/actorToObj() for ↵Tobias Gunkel
v0 and other engines
2012-02-11SCUMM: _currentLights is v0 onlyTobias Gunkel
2012-02-11SCUMM: introduce constants for _userState for cleaner and easier to ↵Tobias Gunkel
understand code
2012-02-11SCUMM: Fix actor ID handling in v0Tobias Gunkel
Some object functions allow actor IDs and object IDs as parameters. They are easily distinguishable in engines > 0 as actor IDs are < _numActors and object IDs are bigger. In v0 this is not the case as there are objects with IDs like 3 and 5 (e.g. the hamster). So object ID handling was unified for v0 and the other engines by introducing objIsActor(), objToActor() and ActorToObj().
2012-02-11SCUMM: merge _activeObjectNr/_activeObjectType and _cmdObjectNr/_cmdObjectTypeTobias Gunkel
2012-02-11SCUMM: fix debugger for v0Tobias Gunkel
2012-02-11SCUMM: use command stack and SentenceTab in mm c64Tobias Gunkel
- MM C64 uses command stack (SentenceTab, doSentence()) now - _cmdObject... added for current SentenceTab. The _active... variables are only used to build a sentence in the inventory but never by a script. -> many routines are not needed anymore and are removed
2012-02-11SCUMM: start handling object type and id correctly in mm c64Tobias Gunkel
- removed complicated and unnecessary _v0ObjectIndex, _v0ObjectInInventory, _v0ObjectFlag vars - started to merge object id and type into one object value (type<<8|id) - verb preposition ids do not dependent on language -> remove from VerbSettings Note: - objects with type=0 are foreground objects. They have a state, an owner and a bg overlay image. - objects with type=1 are bg objects. They do not have a state or owner and are already contained in the bg image. The do not have an entry in objectState/OwnerTable
2011-08-27SCUMM: Also save first used color beyond 80 in Indy4 Amiga palette.Johannes Schickel
2011-08-26SCUMM: Mark some more ScummEngine members Indy4 Amiga specific.Johannes Schickel
2011-08-26SCUMM: Implement proper Indy4 Amiga palette handling.Johannes Schickel
This should fix incorrect text colors in some scenes.
2011-08-06ALL: Reduce audio/ header dependencyEugene Sandulenko
2011-08-03SCUMM: Remove BluesBirthday dependency on the binaryMatthew Hoops
The game scripts detected Yellow or Red variants based on what binary was present. That could potentially cause problems with a Mac dump in case someone dumped into MacBinary format.
2011-07-09SCUMM: fix DS compilationathrxx
2011-07-09SCUMM: cleanup sjis font rendering codeathrxx
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-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-25ALL: behaviour -> behaviorMatthew Hoops
2011-05-25ALL: neighbour -> neighborMatthew Hoops
2011-05-13SCUMM: Rename ResTypes->ResType, introduce ResId typedef, change code to use ↵Max Horn
both
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: Move class ResourceManager to its own headerMax Horn
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-04-28JANITORIAL: Format forward declarations to follow conventionOri Avtalion
2011-04-27SCUMM: Add separate game id's for soccermls and soccer2004Matthew Hoops
There are subtle differences in their u32 code that we need to handle
2011-04-18COMMON: Rename Error to ErrorCode, introduce new Error classMax Horn
2011-04-05SCUMM: Move _heV7RoomIntOffsets from ScummEngine to ScummEngine_v70heMax Horn
2011-04-05SCUMM: Move _heV7DiskOffsets from ScummEngine to ScummEngine_v70heMax Horn
2011-04-05SCUMM: Split ScummEngine::generateFilename, move HE specifics to class ↵Max Horn
ScummEngine_v60he
2011-04-05SCUMM: Rename InfoStuff to SaveStateMetaInfosMax Horn
2011-04-05SCUMM: Move ActorHE into its own header, move some HE specific stuff out of ↵Max Horn
scumm.h
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850
2010-12-02SCUMM: Fix bug in V12 games causing chars to be lost when wrapping talk textMax Horn
svn-id: r54729
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-25SCUMM: Add patch #3093541 - MMC64: Actor Walk / Object Fix.Travis Howell
svn-id: r53806
2010-10-23SCUMM: Add workaround to allow saved games to be shared between Macintosh ↵Travis Howell
and Windows versions of Backyard Baseball 2001. svn-id: r53729
2010-10-23SCUMM: Fix buffer overflow, that was causing crashes when saving in Backyard ↵Travis Howell
Baseball 2001/2003. svn-id: r53726
2010-10-18SCUMM: Fix potential bug in ScummEngine::resStrLen.Max Horn
In particular, it might happen that ScummEngine::resStrLen is called while the _scriptPointer is stale. In that case, it would be working with the stale pointer. If the code calling it then uses fetchScript*() methods to read the string whose length was just computed, then it would read potentially *different* data (e.g. copyScriptString or loadPtrToResource could have been affected). I am not sure if this actually could have caused bugs somewhere; it might even be provable that a script relocation cannot happen in all places that invoke resStrLen. But for now it's much easier to make the code safe than to verify that theory ;). Also simplified some related code. svn-id: r53572
2010-10-18SCUMM: Move common code from ScummEngine::fetchScript* to new method.Max Horn
The new method is called refreshScriptPointer(). Also renamed getScriptEntryPoint() to resetScriptPointer() in an attempt to highlight both the similarity and difference between the two. svn-id: r53571
2010-10-17SCUMM/FM-TOWNS: more improvements to japanese font drawingFlorian Kagerer
- made use of LordHotos graphics/sjis code to reduce code duplication - japanese mode for version 3 and 5 works fine now with few exceptions (some line spacing glitches in MI1 intro etc.) svn-id: r53554
2010-10-15ENGINES: Enhance namespace comments a bitMax Horn
svn-id: r53484
2010-10-07SCUMM/FM-TOWNS: improved sfx support for indy4 and monkey2Florian Kagerer
svn-id: r53052
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