aboutsummaryrefslogtreecommitdiff
path: root/engines
AgeCommit message (Collapse)Author
2017-11-17XEEN: Fix Coverity identified problemsPaul Gilbert
2017-11-17XEEN: Fix music channel loopPaul Gilbert
2017-11-16XEEN: Map and game flag fixesPaul Gilbert
2017-11-15XEEN: Fix some Coverity warningsPaul Gilbert
2017-11-15XEEN: Fix uninitialized instance field warningsPaul Gilbert
2017-11-14XEEN: Fix some Coverity warningsPaul Gilbert
2017-11-15Revert "DRASCULA: Revert range 4dbed774..1f1d8607"Filippos Karapetis
This reverts commit bf69b25e33189581848412e77624865aa55ba234. The original game had slight differences between the code for each chapter. Part of these changes was to simplify the code and unify some of these differences, particularly in the checks for clickable areas, where the code is using Common::Rects with contains() now. I have play tested the whole game with these changes, there are no visible regressions, and the game is still completable. Thus, I'm restoring the changes to the engine.
2017-11-14DRASCULA: Revert range 4dbed774..1f1d8607Willem Jan Palenstijn
This reverts 1f1d8607 DRASCULA: Merge the floor coordinates into _walkRect 1e1b6f7c DRASCULA: Rename gotoObject() to walkToPoint() and simplify it 2bf05c2a DRASCULA: Clean up room variables, and simplify some related checks Reverting due to unanswered questions about why the changes in behaviour in 2bf05c2a746065f373ac136c994714dae376cdbc are correct.
2017-11-14XEEN: Added missing initialization for new gamesPaul Gilbert
2017-11-14DRASCULA: Make remaining static texts translatableEugene Sandulenko
drascula.dat file version bumped
2017-11-13XEEN: Added giveBankInterest methodPaul Gilbert
2017-11-13XEEN: Added resetBlacksmithWares methodPaul Gilbert
2017-11-13XEEN: Fix compiler warningsPaul Gilbert
2017-11-13TITANIC: Fix switch fall throughsPaul Gilbert
2017-11-13COMPOSER: Fix the detection for the French Gregory versionBastien Bouclet
The commit message of 2739d8fa2 says this is for the French version. The language was set to English by mistake. Ref#6548
2017-11-12DREAMWEB: Use accurate memory reclamation for Ex transfersColin Snover
When the Ex memory regions are close to full, it is possible for the game to fail to purge objects and then crash with an OOM error even if it isn't actually out of memory. This patch calculates the amount of free memory truly needed when allocating to Ex memory to allow exactly the entire frame & text regions to be used, instead previously where a hard-coded amount of free space to maintain was used, which guaranteed that the entire memory region could not actually be used by the game. This change may be masking some underlying memory leak, or it may just be that near the end of the game the game naturally comes close to reaching the maximum memory region size. For the moment, I am assuming the latter. This commit also adds some assertion checks to the memory transfer functions to make sure the regions don't quietly overflow in other cases, since pickupConts performs transfers in a manner that doesn't ensure enough free memory exists for them to be successful. Fixes Trac#6820.
2017-11-12SCUMM: Fix race condition in MOD playerColin Snover
Fixes Trac#6272.
2017-11-12XEEN: Added How Much dialogPaul Gilbert
2017-11-12XEEN: Added resetYearlyBitsPaul Gilbert
2017-11-12XEEN: Added remainder of giveTakePaul Gilbert
2017-11-12SWORD25: Suppress GCC Cast Qualification Warnings.D G Turner
Since lua_pushlightuserdata and lua_touserdata operate on (void *) values, it is tricky to fix these warnings "correctly" without looking at invasive changes to a significant amount of Lua internal code. Since these pointers to consts are already being recast to drop the const qualifications, then removing the const on the underlying value declaration does not further expose this to change and stops the compiler warnings associated with this. Anyone with a better fix for this can restore the const qualifications later.
2017-11-12XEEN: Fix compiler warnings & AmigaOS errorsPaul Gilbert
2017-11-11XEEN: Added more giveTakePaul Gilbert
2017-11-11SCI32: Fix integer overflow calculating audio durationColin Snover
Due to the need to calculate the audio duration with millisecond precision from the file size, it is possible to overflow a 32-bit integer in games with long background audio loops, like RAMA, during the calculation of the duration. It is also not necessary to give some framerate here, so eliminate the unnecessary explicit Timestamp construction with the second argument.
2017-11-11XEEN: In progress implementing giveTakePaul Gilbert
2017-11-11ADL: Remove ADGF_TESTING for hires3+4Walter van Niftrik
2017-11-11DREAMWEB: Fix out-of-bounds read of frame animation dataColin Snover
The game reads until it sees 0xFF, which is not until frame 14 for some animations in the first interactive room of the game. This happened to work previously because the struct is packed so it would read into the b31.. members, but this was still technically an out-of-bounds read.
2017-11-11XEEN: Fix comparisons for script If opcodePaul Gilbert
2017-11-11XEEN: Debugger commands for gold and gemsPaul Gilbert
2017-11-11XEEN: Fix premature sound parsing endPaul Gilbert
2017-11-11DRASCULA: Merge the floor coordinates into _walkRectFilippos Karapetis
2017-11-11DRASCULA: Rename gotoObject() to walkToPoint() and simplify itFilippos Karapetis
2017-11-11DRASCULA: Clean up room variables, and simplify some related checksFilippos Karapetis
2017-11-11DRASCULA: Reduce the scope of framesWithoutActionFilippos Karapetis
2017-11-11DRASCULA: walkToObject is a boolean variableFilippos Karapetis
2017-11-11DRASCULA: Simplify the drawing code in BJ's roomFilippos Karapetis
2017-11-11DRASCULA: Remove superfluous variableFilippos Karapetis
2017-11-11DRASCULA: characterMoved and characterVisible are boolean variablesFilippos Karapetis
2017-11-11SWORD25: Add a constructor to initialize SoundHandle membersBastien Bouclet
Fixes #7018
2017-11-11SWORD25: Fix leaking the save thumbnail surfaceBastien Bouclet
2017-11-11ADL: Remove ADGF_TESTING for hires5+6Walter van Niftrik
2017-11-10SWORD1: Fix use of deallocated stack memoryColin Snover
FSNode::getName returns a String object, not a reference, so the pointer from c_str is valid only until the end of the statement.
2017-11-10SKY: Fix use of deallocated stack memoryColin Snover
FSNode::getName returns a String object, not a reference, so the pointer from c_str is valid only until the end of the statement.
2017-11-10Merge pull request #1041 from criezy/variadic-undefinedThierry Crozat
Fix undefined behaviour in variadic functions
2017-11-10XEEN: Fix event handling for town messagesPaul Gilbert
2017-11-10XEEN: Fix rendering of town messagesPaul Gilbert
2017-11-10ENGINES: Improve output of unknown game variant detectionColin Snover
When a user tries to add a game expecting it to be a particular game for a particular engine, but a detector from another engine happens to match some files that exist in the game directory and reports on those files instead, this can cause a lot of confusion because the detector doesn't say what engine or game it thought it matched. This patch adds the name of the matching engine as well as any matching game IDs (if applicable) to the detector's logged output. It also provides more specific guidance about where to send the detection information (to the bug tracker), and properly wraps the first part of the report to 80 columns. Refs Trac#10272.
2017-11-10ENGINES: Continue to check file presence after a hash/size mismatchColin Snover
If an early file in the game's signature list has a hash/size mismatch, it is still necessary to continue to check the rest of the candidate files for existence, since the non-existence of candidate files is supposed to disqualify a game description as matching a game to an unknown variant. By quitting the file check early, the detector had been allowing descriptions to randomly match if there happened to be an early file in the detection list with the right name but wrong hash/size, even if some of the other signature files did not exist at all.
2017-11-10CGE: Remove garbage character from commentsColin Snover
2017-11-10BBVS: Remove all bit shifts of potentially negative integersColin Snover
Previous patches that removed shifts of constant negative values to eliminate UB were valid, but did not correct all places where this engine was potentially bit shifting negative values. There is no reason to not just use multiplication and division and let the compiler make the right choice for optimisation for an architecture, so that is what this patch does.