Commit Graph

658 Commits

Author SHA1 Message Date
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
Eugene Sandulenko
a71e59fd2d CINE: Remove unnecessary check. CID 1004117 2013-11-03 01:28:03 +02:00
D G Turner
c71b149523 CINE: Ensure that Adlib driver callbacks are initialized. CID 1003411. 2013-10-02 05:34:27 +01:00
D G Turner
93e5f1fddc CINE: Fix for possible uninitialized variable usage. CID 1086890. 2013-10-02 05:09:03 +01:00
Matthew Hoops
0031c41db8 COMMON: Change kPlatformPC to kPlatformDOS
"PC" was very ambiguous and now it matches what we show in the GUI.

This also corrects sword2's platform to Windows.
2013-05-02 18:43:10 -04:00
Eugene Sandulenko
9b8aa5e135 CINE: Null terminate string. CID 1003886 2013-04-26 08:04:38 +03:00
Eugene Sandulenko
a8a267b668 CINE: Null terminate string. CID 1003884 2013-04-26 08:02:23 +03:00
Eugene Sandulenko
f70509e20b CINE: Null terminate string. CID 1003887 2013-04-26 08:01:07 +03:00
Max Horn
cdfd5f85c8 ENGINES: Silence clang warning about unused private member _vm
This affects the Console / debugger classes of multiple engines.
An alternative solution would have been to remove the unused _vm
member vars. However, it seems likely that in the future, the _vm
member could be useful for methods added to the console. So instead,
we add a simple assert(_vm) to silence the clang warning.
2013-04-18 23:50:19 +02:00
Johannes Schickel
c31d1971b5 CINE: Implement music fade out for Amiga/AtariST music. 2012-09-11 22:28:40 +02:00
Johannes Schickel
892710a0a3 CINE: Fix sfx channel use in Amiga and AtariST versions of FW.
This fixes a channel assignment issue in opcode 119. This also implements
opcode 120, which is basically a stereo channel swapped version of 119
(o1_playSample).

This affects the Amiga and AtariST versions. I put a TODO to check the DOS
version here.
2012-09-08 01:16:10 +02:00
Johannes Schickel
b48f5b78b7 CINE: Implement panning for sfx for FW Amiga and AtariST. 2012-09-08 01:16:10 +02:00
Johannes Schickel
35e61b7c7a CINE: Remove unused Sound::update method. 2012-09-08 01:16:09 +02:00
Johannes Schickel
0fe5e0e6bd CINE: Fix Paula frequency.
This should fix the frequency of sound effects.
2012-09-08 01:16:09 +02:00
Johannes Schickel
c850effc6d CINE: Implement sfx repeat and volume fade for FW Amiga/AtariST.
This fixes bug 3091660 "FW: Looping samples don't loop in Amiga version".
2012-09-08 01:16:07 +02:00
Johannes Schickel
b1074543b5 CINE: Skip resource header in loadSpl.
This implements a long standing TODO in PaulaSound::playSound.
2012-09-08 01:15:32 +02:00
Johannes Schickel
5684475169 CINE: Workaround disabled menus in FW when loading from launcher/cl.
This works around a regression from 92df76fbb3.
This should resolve the remaining issues of bug #3565362
"CINE: Savegame loading broken in FW".
2012-09-07 22:38:41 +02:00
Johannes Schickel
c06889a289 CINE: Fix sprite loading in FW.
This partly fixes bug #3565362 "CINE: Savegame loading broken in FW".
This fixes a regression from 2fd8bae319.
2012-09-07 22:38:41 +02:00
Johannes Schickel
5d84f2df43 CINE: A little bit enforcement of our formatting guidelines.
Powered by astyle & manual fixup afterwards.
2012-09-07 04:12:18 +01:00
Johannes Schickel
855a0d331f CINE: Explain the name "undrawChar" and add a possible TODO. 2012-09-07 00:52:59 +02:00
Johannes Schickel
da4e3c4f2a CINE: Make selection menu focus rectangle match the original size.
Compared against real FW Amiga under UAE and FW Dos under DOSBox.
2012-09-07 00:40:42 +02:00
Johannes Schickel
33cdddb7ec CINE: Implement proper text coloring in selection menus for Amiga.
Tested with FW Amiga.
2012-09-07 00:19:23 +02:00
Vincent Hamm
bd6751cb4a CINE: Fix drawing of sprite with mask.
Protects against cases where a non-existing script is referenced.
2012-08-20 01:48:20 +01:00
Torbjörn Andersson
629d55cdfa CINE: Apply some ScummVM formatting conventions 2012-08-14 09:09:08 +02:00
yaz0r
8fff7e29de Merge pull request #266 from yaz0r/master
Fix system menu in OS
2012-08-13 23:59:59 -07:00
Vincent Hamm
92df76fbb3 CINE: Fix system menu sometimes not appearing in OS 2012-08-13 23:58:32 -07:00
Travis Howell
54e6283cfa CINE: Fix compile error caused by excess ; 2012-08-14 16:46:19 +10:00
Vincent Hamm
478be5f07a CINE: Fix regression in savegame system 2012-08-13 23:20:10 -07:00
Vincent Hamm
ca54d69add Cine: Fix swimming sequence by allowing mouse click to be held down 2012-08-13 21:38:24 -07:00
Vincent Hamm
2fd8bae319 CINE: Fix restoring of savegame in cave 2012-08-13 20:12:07 -07:00
Johannes Schickel
90bb7a0f3f CINE: Slight formatting fixes in gfx.cpp.
Powered by astyle.
2012-08-12 19:50:00 +02:00
D G Turner
78b8fa31ca CINE: Fix typo in OS palette restore code.
This fixes most cases of incorrect palette on savegame loading.
Thanks to yaz0r for this fix.
2012-08-11 21:12:35 +01:00
D G Turner
21c057ce75 CINE: Fix lockup in Scene 5 when "operate Girl" underwater.
Traced with gdb to sound.cpp:792 i.e. _fadeOutTimer infinite loop.

This bug was introduced by the addition of the MT-32 output driver for
Future Wars and associated mutex changes.
The _fadeOutTimer increment is done by the timer callback occuring
during the load method call, but this was excluded by the mutex.

Fixed by moving the mutex in the load method.
2012-08-11 20:08:03 +01:00
Vincent Hamm
c6c7b16089 CINE: Slight cleanup. 2012-08-11 00:11:21 +01:00
Vincent Hamm
92b5ee0a48 CINE: Fix masking in Operation Stealth. 2012-08-10 14:38:31 +01:00
D G Turner
85d87e8345 CINE: Mark Operation Stealth as Unstable.
Since the cine engine's support for Operation Stealth is still
incomplete with significant GFX glitches, this should be marked
as "ADGF_UNSTABLE" to warn users and prevent invalid bug reports.
However, it should be noted that the game is completable.
2012-07-16 21:20:01 +01:00
Willem Jan Palenstijn
9ffe3e11d9 Merge pull request #182 from fingolfin/forbid-ctype
ALL: Avoid using is* macros from ctype.h
2012-02-21 11:33:32 -08:00
Max Horn
4f8665fc83 COMMON: Move isFoo functions to namespace Common, add doxygen comments 2012-02-20 16:18:27 +01:00
Tarek Soliman
a4798602d7 JANITORIAL: Fix missing whitespace in pointer cast
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-15 10:07:10 -06:00
Max Horn
658080deed ALL: Avoid using is* macros from ctype.h
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
2012-02-15 16:51:37 +01:00
Johannes Schickel
9916d2e99c CINE: Add some comments to the MT-32 instrument code. 2011-12-19 01:10:48 +01:00
Johannes Schickel
d14e75cdc7 CINE: Make findNote behave like in the original.
This also reverts 42fd697544, which was wrong,
since I misread the assembly. Ooops.
2011-12-11 06:24:33 +01:00
Johannes Schickel
54819a5448 CINE: Fall back to AdLib, in case a user tries to use the MT-32 output with an GM device.
The driver is really specific to the Roland MT-32 right now, since it uses
MT-32 specific sysEx messages to setup instruments etc.
2011-12-11 05:11:28 +01:00
Johannes Schickel
6ba090b45a CINE: Make PC sound code thread safe, since the MIDI output might run the callback in an extra thread. 2011-12-11 05:04:08 +01:00
Johannes Schickel
42fd697544 CINE: Make findNote behave a bit more like the original. 2011-12-11 05:04:04 +01:00
Johannes Schickel
c48af08a0b CINE: Implement MT-32 output driver.
The driver is based on Future Wars. I do not own Operation Stealth, thus I do
not know whether it works fine for it.
2011-12-11 05:03:57 +01:00