aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
AgeCommit message (Collapse)Author
2014-01-18KYRA: Slight formatting fix.Johannes Schickel
2014-01-18KYRA: Make pointers to VQAHeader constTorbjörn Andersson
This is just to enforce the idea that VQADecoder owns the VQAHeader and that the audio/video tracks are only allowed to look at it, not change it.
2014-01-18KYRA: Restructure the VQA decoder, as suggested by clone2727Torbjörn Andersson
Untangled the audio and video track from each other, and the parsing of the stream from the decoding of its data. Also fixed a memory leak as it turns out deleting a Surface doesn't free its data. You have to call free() in it. I have only checked the intro, not every cutscene, but that seems to work fine at least.
2014-01-18KYRA: Let the VQA decoder draw directly to the backendTorbjörn Andersson
As an alternative to using the Screen class's functions, we can let the VQA decoder draw directly to the backend. This won't work if the game uses "hi-res mode", but I don't think that's ever the case for Malcolm's Revenge. I believe the KyraEngine_MR::playVQA() function ensures that the screen is properly updated after the movie has finished. This almost limits the VQA rewrite to vqa.cpp and vqa.h. Whether it's better this way than changing the Screen functions to take a 'pitch' parameter...? I don't know. But it's an alternative.
2014-01-18KYRA: Rewrite the VQA decoder, using the VideoDecoder classesTorbjörn Andersson
There isn't really a lot of benefit to this, but I think it's nicer if all our video decoders at least try to use the same infrastructure.
2014-01-16KYRA: Slight cleanup.Johannes Schickel
2013-11-24BUILD: Remove need for engine.mk in each engine directory.D G Turner
Each engine now only has to provide a single configure.engine file adding the engine into the configure script, which then produces the required other files automatically.
2013-11-24BUILD: Remove need for engine-plugin.h in engines.D G Turner
This is now generated automatically by the configure script from the engine directory names.
2013-11-24BUILD: Split engines/plugins_table header down to a file per engine.D G Turner
This is the third and final commit enabling fully pluggable engines. Now providing an engine folder contains a configure.engine, engine.mk and engine-plugin.h file, it will be picked up automatically by the configure script.
2013-11-24BUILD: Split engines.mk down to a single file per engine.D G Turner
This is the second part of allowing engines to be added dynamically. Each folder in engines/ which must contain a file named "engine.mk" containing the make definitions for that engine.
2013-11-24BUILD: Split configure.engines down to a single file per engine.D G Turner
This is the first part of allowing engines to be added dynamically. They are placed into a folder in engines/ which must contain a file named "configure.engine" to add the engine, which is pulled into the top level configure script automatically.
2013-11-20KYRA: Only pick up PAK and APK files in the game dir in Kyra1/EoB1.Johannes Schickel
This should fix annoying erroring out when invalid PAK or APK files are in the CWD (like for example some Android package files).
2013-11-10KYRA: Plug memory leak in SoundTowns::playSoundEffect.Johannes Schickel
Discovered by CID #1003909.
2013-11-10KYRA: Properly check parameters in CharacterGenerator::start.Johannes Schickel
Discoverd by CID #1003816.
2013-11-10KYRA: Properly check for empty rects in wsaFrameAnimationStep.Johannes Schickel
Discovered by covertiy (CID #1003839).
2013-11-09KYRA: Fix wrong check orderWillem Jan Palenstijn
2013-10-08KYRA: Fixed missing curly brackets. CID 1003639Eugene Sandulenko
Although I did not consult with disassembly, judging from the game logic _unkEndSeqVar4 is used for switching certain Malcolm frames, and it is apparent that this should happen only under condition, not always.
2013-09-12Merge pull request #378 from lordhoto/pluggable-engines-translationsJohannes Schickel
RFC: Pluggable Engines: I18N: Move specification of engine specific files to enginedir/POTFILES
2013-09-02LOL: fix bug #3614957 (LOL : Crash when subtitles displayed)athrxx
2013-08-12I18N: Move specification of engine specific files to enginedir/POTFILES.Johannes Schickel
This allows to keep the engines to specfiy the files for translation close to the engine sources itself. Thanks to criezy for his suggestion on this approach.
2013-08-12KYRA: Fix palette glitch when quitting while viewing the family album in Kyra3.Johannes Schickel
Thanks to eriktorbjorn for noticing.
2013-08-12KYRA: Fix palette glitch in Kyra3 when loading from main menu.Johannes Schickel
Formerly, the main menu was shown with the palette of the first screen for a short time. Thanks to eriktorbjorn for noticing this.
2013-08-08KYRA: Fix Kyra3 family album animation glitch, CID 1004139Torbjörn Andersson
The first page wasn't animated, and it's likely that some of the other right-page animations were slightly off as well.
2013-07-01KYRA: Fix (a few) font checks for systems with unsigend char.Johannes Schickel
Thanks to wjp for reporting those. This only affects games with SJIS font use.
2013-05-02COMMON: Change kPlatformPC to kPlatformDOSMatthew Hoops
"PC" was very ambiguous and now it matches what we show in the GUI. This also corrects sword2's platform to Windows.
2013-05-01KYRA: Fix loading from the Kyrandia 2 title menuTorbjörn Andersson
2013-05-01KYRA: Fix missing music in Kyra 1 DOS intro.Johannes Schickel
This is a regression from 93e69aa4da0558b05fc235684355ed38eed9863d. Thanks to eriktorbjorn to noticing that the music is missing.
2013-04-27KYRA: (EOB) - cleanup last commitathrxx
2013-04-27KYRA: (EOB) - add debugger functionsathrxx
(list_flags, set_flag, clear_flag)
2013-04-27KYRA: (EOB) - fix original savefile import/exportathrxx
(flag settings were not imported/exported in EOB 1 saves)
2013-04-27KYRA: (EOB) - minor fix in NPC sequence codeathrxx
2013-04-23KYRA: (EOB) - fix original savefile importathrxx
(some monsters were not properly assigned to their spots)
2013-04-23KYRA: (EOB) - minor changes to debuggerathrxx
- display some more info in show_position - remove unused variable
2013-04-22KYRA: (EOB) - fix bug #3596547athrxx
(EOB1: Door Buttons Don't Work)
2013-04-22KYRA: (EOB) - minor fix to door opening/closing in EOB1athrxx
2013-04-22KYRA: (EOB) - add debugger functionsathrxx
(open_door, close_door)
2013-04-22KYRA: (EOB) - add some debugger functionsathrxx
(show_position, set_position)
2013-04-21Merge pull request #324 from eriktorbjorn/kyra-midifadeJohannes Schickel
KYRA: Fix MIDI fade-out behaviour
2013-04-21KYRA: (EOB) - fix bug #3611077athrxx
2013-04-21KYRA: (EOB) - minor cleanupathrxx
2013-04-21KYRA: (EOB) - add debugger function (list_monsters)athrxx
2013-04-21KYRA: Fix MIDI fade-out behaviourTorbjörn Andersson
There are two ways that the music volume may be set: The setSourceVolume() specifies the current music volume, as ScummVM sees it. This is stored in _sources[].volume. The MIDI data itself can trigger volume events. These are handled by send(), which stores the volume - usually (always?) 100 - in _sources[_curSource].controllers[]. The volume is then adjusted by _sources[].volume. When music is faded out, setSourceVolume() is called repeatedly with progressively smaller values for the volume. What it should do, then, is to make sure that the volume is set to what was previously set to in send(), adjusted to the fading volume. At least, that's how I understand it.
2013-04-18KYRA: (LOL) - fix bug in last commit for scene_lol.cppathrxx
2013-04-18KYRA: (EOB) - silence warning about improper use of negative value in ↵athrxx
gui_eob.cpp
2013-04-18KYRA: (EOB) - fix possible null ptr dereference in gui_eob.cppathrxx
2013-04-18KYRA: (LOL) - add comment in gui_lol.cppathrxx
2013-04-18KYRA: (LOL) - add assert in items_lol.cpp (should silence warning about ↵athrxx
possible out of bounds access)
2013-04-18KYRA: (LOL) - fix warning about possible out of bounds access in lol.cppathrxx
2013-04-18KYRA: (EOB) - remove unused variable in scene_eob.cppathrxx
2013-04-18KYRA: (LOL) - fix possible null ptr dereference in scene_lol.cppathrxx