599 Commits

Author SHA1 Message Date
Torbjörn Andersson
70a2ca8b7d JANITORIAL: Silence more GCC 7 warnings
All these fall through were marked as deliberate, so again I've only
changed the comment to silence GCC.
2017-08-06 13:30:51 +02:00
Paul Gilbert
9cda101b89 TINSEL: Fix some DW2 text/voice not playing all the way through 2017-07-16 11:07:39 -04:00
Ben Castricum
6f38c1e55d ALL: game state => saved game 2016-11-29 20:15:20 +01:00
Alexander Tkachev
b665fc933d ALL: Make simpleSaveNames() a MetaEngineFeature
Added it into hasFeature() of all engines which returned `true` in
simpleSaveNames() before.

As mentioned in #788, SCI is not always using simple names, so it
doesn't have such feature now.
2016-08-24 16:07:55 +06:00
Alexander Tkachev
ab1d160ec8 ALL: Add MetaEngine::simpleSaveNames()
Engines with "simple" savenames would support "Run in background" in
save/load dialog and gradual save slots unlocking. Other engines
save/load feature would be locked until save sync is over.
2016-08-24 16:07:55 +06:00
Eugene Sandulenko
406b8cf33b TINSEL: Move debug channel registration to the very top of the engine constructor 2016-07-28 11:45:33 +03:00
Eugene Sandulenko
4dc60b525d TINSEL: Fix class initialization 2016-06-17 12:10:11 +02:00
Eugene Sandulenko
f225442ad0 TINSEL: Fix illegal memory reads.
In case of "unnamed" case (see line 582) we were memcpy'ing 31 byte from
the heap.
2016-05-31 17:12:18 +02:00
Eugene Sandulenko
89890523c2 TINSEL: Guard against illegal memory writes 2016-05-31 17:12:18 +02:00
Eugene Sandulenko
cf42883f5e TOON: Init memory before usage 2016-05-31 17:12:18 +02:00
Eugene Sandulenko
843694933d TINSEL: Fix out-of-bounds array access 2016-05-18 12:38:15 +02:00
Eugene Sandulenko
33abb6118f ALL: Change main engine header guard defines to <directory>_<engine>_H
Recently we started to use this as new semantics, although in the past
we used simly <engine>_H. Now these guard defines are consistent with
rest of the files which are used in the engines.
2016-05-17 18:21:30 +02:00
Eugene Sandulenko
a57aa55999 TINSEL: Safer string manipulation 2016-05-11 12:32:18 +02:00
Eugene Sandulenko
ea5ac5e626 TINSEL: Fix number of buffer overruns 2016-05-09 14:36:59 +02:00
Ori Avtalion
3564032330 JANITORIAL: Reduce audio header dependencies 2016-04-14 16:10:21 +03:00
Matthew Hoops
aa6ff44440 BACKENDS: Only expose one set of functions for AudioCDManager
Engines should only have to call one set of functions and not decide between the two. In fact, the 'emulation' API was documented to just call the 'real CD' API.
2016-03-13 13:57:19 +01:00
Matthew Hoops
fb6fe1332a BACKENDS: Move to an openCD() without parameters as the public API 2016-03-13 13:52:24 +01:00
Johannes Schickel
3aecd8ef2a ENGINES: Make variable names of ADGameDescription conform to our guidelines.
gameid     -> gameId
guioptions -> guiOptions
2016-03-08 19:01:38 +01:00
Johannes Schickel
0b6befdcc5 ENGINES: Make variable names of AdvancedMetaEngine conform to our guidelines.
_singleid   -> _singleId
_gameids    -> _gameIds
_guioptions -> _guiOptions
2016-03-08 19:01:13 +01:00
Johannes Schickel
cae26227a0 TINSEL: Let listSaves return list sorted on slot numbers. 2016-02-25 21:39:45 +01:00
Martin Kiewitz
1d8646ee01 TINSEL: Enable Miles Audio for DW1+DW1CD Demo only
DW1 floppy demo doesn't seem to have audio at all
2016-02-09 02:14:08 +01:00
Marcus Comstedt
2a1b80fe18 TINSEL: Fix crash on big-endian hosts 2016-02-08 21:26:37 +01:00
Marcus Comstedt
9b7ab59fbb TINSEL: Fix crash when error() is called early 2016-02-07 13:03:52 +01:00
Johannes Schickel
140d571f22 TINSEL: Only request actual save slots in listSaves. 2016-01-26 16:35:30 +01:00
Eugene Sandulenko
c7695cc929 TINSEL: Added detection for DW1 fan translation 2016-01-10 09:21:03 +01:00
Ori Avtalion
d8045c6727 JANITORIAL: Fix clang printf warnings 2016-01-07 14:55:32 +02:00
Paul Gilbert
bf4ab6d52a TINSEL: Remove redundant assert check in SetHookScene
In the original, a second SetHookScene call can validly occur due to first
placing the cover-switched book in the bookcase, and then by the thief
leaving if his arrival happens immediately.
2015-12-01 21:48:14 -05:00
Martin Kiewitz
4e852a691b TINSEL: DW1: Improve timbre file error message
it now mentions all the possible file names.
2015-10-24 20:25:48 +02:00
Martin Kiewitz
0800d67f65 TINSEL: DW1: enable Miles Audio for DOS only 2015-07-04 23:08:27 +02:00
Martin Kiewitz
3f31b5ba64 TINSEL: DW1: Miles Audio AdLib MIDPAK.AD support
- added support for MIDPAK.AD timbre files on top
FAT.OPL. FAT.OPL gets copied by installer into MIDPAK.AD for this version
- changed order of timbre file checking
- adjusted and improved comments about discworld 1 versions
2015-07-04 22:20:34 +02:00
Martin Kiewitz
b8bec0aaa0 TINSEL: DW1: Miles Audio AdLib support for FAT.OPL
eriktorbjorn owns a version of DW1, that only has FAT.OPL and no
SAMPLE.AD/SAMPLE.OPL. We check if SAMPLE.AD/.OPL are available,
if not we try our luck with FAT.OPL
2015-07-04 21:37:24 +02:00
Kirben
fba886a21f TINSEL: Add drivers sub folder in Discworld 1, for Miles audio files. 2015-07-04 13:51:45 +10:00
Matthew Hoops
a1e2986056 TINSEL: Silence a gcc warning 2015-06-28 20:05:24 -04:00
Martin Kiewitz
60903c2908 TINSEL: DW1: MT32: don't pass timbre file
because the game does not have one
2015-06-28 12:49:12 +02:00
Martin Kiewitz
63656348a7 TINSEL: DW1: add support for Miles Audio driver
- AdLib + MT32 support
2015-06-28 02:10:18 +02:00
Torbjörn Andersson
497324467f TINSEL: Move object creation from constructor to run()
Moved the creation of _midiMusic, _pcmMusic, _sound and _bmv from
the constructor to run(). It was reported on the forum that the
MT-32 emulator didn't work for Discworld, and I'm speculating that
this is because it was being initialized before the "extra path"
had been added to the search path.

It's likely that not all of these objects are needed for every
version of the game. Fixing that is left as an exercise for
someone more familiar with the different game versions than me.
2014-10-17 19:19:55 +02:00
Johannes Schickel
ae4ffe01f0 ALL: Rename Debugger::DCmd_Register to Debugger::registerCmd. 2014-05-27 02:04:08 +02:00
Johannes Schickel
daa8d57a86 ALL: Rename Debugger::DebugPrintf to Debugger::debugPrintf. 2014-05-27 02:04:07 +02:00
Johannes Schickel
9b138f4eb4 TINSEL: Make GPL headers consistent in themselves. 2014-02-18 02:39:39 +01:00
Johannes Schickel
65931d74e3 TINSEL: Take advante of Engine::initializePath.
This makes sure that the game path is only ever added once for the PSX version
of DW1. Most noticably this will make the warning about the game path being
present in SearchSet disappear on startup.
2014-01-22 18:08:32 +01:00
Johannes Schickel
ec16611f69 TINSEL: Fix for bug #6469 "TINSEL: DW1 - No Sfx/Voice in German 4 Lang GRA Version".
Regression from d4a354c17f811faa916bf548a11a88cb51c3b7b2.
2013-12-14 16:01:57 +01:00
D G Turner
ba1336ee2a TINSEL: Add missing getDebugger() for engine API. 2013-12-07 02:21:16 +00:00
Filippos Karapetis
5931df4426 TINSEL: Hopefully fix DW2 on BE systems
This reverts the endianess changes in commit c90d563 which do not work
properly in DW2 on BE systems (as GetSceneStruc()'s behavior is
different in DW2)
2013-12-05 03:12:05 +02:00
Johannes Schickel
0e017f007a Merge pull request #375 from digitall/engineAutoPlug
RFC: Pluggable Engines #2 (No Python, just evolution of current configure shell and make code)
2013-11-26 02:27:11 -08:00
Strangerke
29a63886aa TINSEL: Janitorial - Fix spacing errors 2013-11-24 19:20:12 +01:00
D G Turner
ef85456859 BUILD: Remove need for engine.mk in each engine directory.
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-24 00:48:01 +00:00
D G Turner
1ac01d2333 BUILD: Remove need for engine-plugin.h in engines.
This is now generated automatically by the configure script from the
engine directory names.
2013-11-24 00:48:01 +00:00
D G Turner
00c27a28f9 BUILD: Split engines/plugins_table header down to a file per engine.
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-24 00:48:01 +00:00
D G Turner
d77cf95a18 BUILD: Split engines.mk down to a single file per engine.
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-24 00:48:01 +00:00
D G Turner
aa947c9474 BUILD: Split configure.engines down to a single file per engine.
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-24 00:45:38 +00:00