Commit Graph

391 Commits

Author SHA1 Message Date
Johannes Schickel
01d511bf1b TINSEL: Adapt to setPalette RGBA->RGB change.
This is done by converting the internal RGBA palette data to RGB before
calling setPalette. This might not be the best solution, but looking a bit
into the engine it seems like changing all the code to work with RGB instead
of RGBA might require some bit of work.
2011-02-15 23:32:41 +01:00
Max Horn
42ab839dd6 AUDIO: Rename sound/ dir to audio/
svn-id: r55850
2011-02-09 01:09:01 +00:00
Max Horn
2d1c8a3533 ALL: Fix whitespaces / indention
svn-id: r55818
2011-02-07 23:01:06 +00:00
Max Horn
ab039812e7 COMMON: OSystem now has a PaletteManager
svn-id: r55806
2011-02-07 17:52:38 +00:00
Filippos Karapetis
9b8c04045b MIDI: Fix for bug #3170988 - "MONKEY2: Messed up MT-32 music"
This is a regression from r55256. Apparently, SCUMM has issues when sending a sustain
off on a notes off event. Thus, this has been turned into a feature, which is disabled
by default. Since MADE, SAGA and tinsel all share the same music code and play regular
MIDI files, and this feature fixes hanging notes for them, it has been enabled for them.
Also, applied a patch for a bug regarding the notes off event in MADE and tinsel,
which has been applied in SAGA already

svn-id: r55746
2011-02-02 23:27:59 +00:00
David Turner
9573b1d2f5 TINSEL: Memory Leak Fix in Coroutines.
This fixes the leak from the COR0_BEGIN_CODE macro's CoroContextTag allocation.
Setting the _sleep value to negative values prevented the deallocation of these.
Have tested for obvious regressions, but a full DW/DW2 playtest should be done to confirm that this doesn't cause any issues.
Thanks to fingolfin for indicating this solution.

svn-id: r55671
2011-01-30 23:21:40 +00:00
Arnaud Boutonné
d063b074cd JANITORIAL: Suppress some useless includes
svn-id: r55091
2011-01-02 14:06:42 +00:00
Max Horn
6edc86a19b DEBUG: Let GUI::Debugger::preEnter and postEnter (un)pause the engine
svn-id: r54815
2010-12-07 18:54:21 +00:00
Max Horn
9a0c20a45f TINSEL: Improve support for DW mac demo (see bug #3110936)
svn-id: r54811
2010-12-07 18:00:18 +00:00
Max Horn
a914b97559 TINSEL: Fix support for file names with a trailing dot
When copying data files with 8.3 names from a CD, they sometimes end up
with a trailing dot, e.g. "INDEX." instead of "INDEX". Comon::File
supports this, but in r54392 Tinsel stopped using Common::File.

This commit also removes the useless SeekableSubReadStream wrapper
around the actual file stream.

svn-id: r54446
2010-11-23 22:33:26 +00:00
Max Horn
b485d0ee49 TINSEL: Turn TinselFile into a SeekableReadStream
svn-id: r54439
2010-11-23 22:26:43 +00:00
Max Horn
c9fdaa7417 TINSEL: Restrict use of memstream.h & substream.h
svn-id: r54437
2010-11-23 22:26:09 +00:00
Paul Gilbert
a2367d26f9 TINSEL: Preliminary functionality for reading BE data files
svn-id: r54392
2010-11-20 03:14:03 +00:00
Max Horn
2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Max Horn
5ceb54d088 TINSEL: Get rid of some global variables
These were actually all "harmless" (i.e. where no obstructions
to RTL support). Still good to get rid of 'em!

svn-id: r54286
2010-11-17 12:13:23 +00:00
Filippos Karapetis
144ed3e22d TINSEL: Fixed compilation with MSVC
svn-id: r54271
2010-11-16 22:09:46 +00:00
Max Horn
c734fc2b3e TINSEL: Remove unnecessary 'static'
svn-id: r54263
2010-11-16 09:54:11 +00:00
Max Horn
1dbf8d73d5 TINSEL: Mark all (?) global vars with a FIXME comment
Use of global vars is what prevents RTL from working in Tinsel (and
probably in other engines). More specifically, the fact that many
global vars are not explicitly inited when the engine is (re)launched.

svn-id: r54262
2010-11-16 09:53:55 +00:00
Max Horn
ada9c9af60 TINSEL: Removed unnecessary 'static'
svn-id: r54261
2010-11-16 09:53:08 +00:00
Max Horn
059944e59c COMMON: Push #include audiocd.h in system.h out to .cpp files
svn-id: r54148
2010-11-08 23:07:42 +00:00
Max Horn
82e473bc3b BACKENDS: Partial merge of gsoc2010-opengl: Audio CD changes only
This commit contains the AudioCDManager changes from the gsoc2010-opengl
branch. The other changes in that branch are restricted to the backends
directory only (plus configure).

The Nintendo DS and Dreamcast ports still need to be ported over to
the new Audio CD system, but that should be fairly easy to do.

svn-id: r54147
2010-11-08 22:53:36 +00:00
Max Horn
4d3a07b494 COMMON: Rename and tweak MD5 functions
* names now comply to our naming conventions
* the function computeStreamMD5AsString which computes the MD5
  as a hex string now returns it as a Common::String
* add doxygen comments

svn-id: r54121
2010-11-07 17:16:59 +00:00
Max Horn
c5598664ce DETECTOR: Get rid of ADGF_KEEPMATCH
Also fix some typos, and minor tweaks

svn-id: r54118
2010-11-07 17:15:27 +00:00
Max Horn
cba30ee716 TINSEL: Correcting my previous commit, oops
svn-id: r54030
2010-11-01 21:36:39 +00:00
Max Horn
9cadcf4c5b TINSEL: Fix a leak in DW2, and a potential OOB in NextTaggedActor
svn-id: r54029
2010-11-01 21:06:04 +00:00
Filippos Karapetis
7f1a9699fa TINSEL: Fixed two places that weren't reset when exiting to the launcher and reentering the game. There could be (and most likely are) others as well
svn-id: r54028
2010-11-01 20:59:17 +00:00
Max Horn
ff01247526 TINSEL: Explain why exactly RTL is disabled
The very same issue probably affects more engines, possibly even some
which have RTL enabled.

svn-id: r54027
2010-11-01 20:49:55 +00:00
Max Horn
9a350f4398 ENGINES: Get rid of some (f)printfs
svn-id: r54011
2010-11-01 16:04:47 +00:00
Max Horn
a984fb17c2 GUI: Add GCC_PRINTF to GUI::Debugger::DebugPrintf & fix resulting warnings
svn-id: r54007
2010-11-01 16:03:35 +00:00
Ori Avtalion
ed8bfb00b9 TINSEL: Reintroduce DUMMY variable removed in r53932
This placates compilers that complain about the semicolon in
"CORO_BEGIN_CONTEXT;"

svn-id: r53992
2010-10-31 22:33:13 +00:00
Max Horn
5c49ae8a9c TINSEL: cleanup
svn-id: r53991
2010-10-31 21:50:48 +00:00
Max Horn
a487da3c19 TINSEL: Remove redundant if()
svn-id: r53936
2010-10-30 00:34:41 +00:00
Max Horn
36d17c74d1 TINSEL: Remove unnecessary CORO_PARAM from ObjectTextOut
As a nice side effect, this gets rid of 25 out of 64 occurrences
of nullContext in the TINSEL code.

svn-id: r53935
2010-10-30 00:34:21 +00:00
Max Horn
ac94cf2742 TINSEL: Fix subtle leak in coroutine code, some minor tweaks
* Fix a bug which caused coroutines invoked with nullContext to
  leak their state.
  Sadly, nullContext is underdocumented, yet very delicate and
  full of subtleties... ./
* Move nullContext decl from sched.cpp to coroutine.cpp
* Enhance a few doxygen comments

svn-id: r53934
2010-10-30 00:33:54 +00:00
Max Horn
afb5986c9e TINSEL: Dispose state of active coroutines in Scheduler destructor
This fixes some leaks that occurred when exiting the game resp.
returning to launcher. Note that we still leak some coroutines when
exiting after loading a savegame.

svn-id: r53933
2010-10-30 00:33:31 +00:00
Max Horn
55a8bd9e35 TINSEL: Add COROUTINE_DEBUG macro to ease debugging coroutine code
svn-id: r53932
2010-10-30 00:33:11 +00:00
Paul Gilbert
fe06b7d151 TINSEL: Fix for #3091314 - Added extra detection entries for Multi-lingual DW1
This adds in German, Italian, and Spanish as detection entries, so a user can immediately select what language to run the game in.

svn-id: r53724
2010-10-22 23:39:29 +00:00
Paul Gilbert
b8ff3eb491 TINSEL: Ignore SV_SPEECHDELAY in DW2 Demo
This stops the long delays at the start of playing each sample

svn-id: r53717
2010-10-22 22:09:59 +00:00
Paul Gilbert
610c5eb336 TINSEL: Load samples file for DW2 Demo
svn-id: r53714
2010-10-22 21:49:21 +00:00
Paul Gilbert
d771d98a92 TINSEL: Fix incorrectly mapped opcode in DW2 Demo
svn-id: r53712
2010-10-22 21:33:31 +00:00
Paul Gilbert
a88d7b2905 TINSEL: Remove unused function
svn-id: r53711
2010-10-22 21:23:44 +00:00
Paul Gilbert
ffa8b9d61a TINSEL: Compilation fix
svn-id: r53709
2010-10-22 21:17:54 +00:00
Paul Gilbert
96723838c6 TINSEL: Added new opcode set for the DW2 Demo
svn-id: r53708
2010-10-22 21:08:27 +00:00
Paul Gilbert
9e9739c074 TINSEL: Added detection entry for DW2 Demo
svn-id: r53707
2010-10-22 21:07:28 +00:00
Max Horn
4ccce19876 ENGINES: Enhance namespace comments a bit
svn-id: r53484
2010-10-15 12:48:19 +00:00
Paul Gilbert
168670acb2 TINSEL: Fix for #3087863 - Code analysis warnings
svn-id: r53471
2010-10-15 08:52:22 +00:00
Johannes Schickel
75e8452b6e OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.

Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.

svn-id: r53399
2010-10-13 03:57:44 +00:00
Max Horn
2db927c223 TINSEL: Remove redundant '_Windows' check
svn-id: r52932
2010-09-28 19:06:03 +00:00
Johannes Schickel
6588398ce6 MIDI: Send a reset MIDI device signal on startup.
This is currently done in the engine code. I adapted AGI, AGOS, DRACI,
GROOVIE, LURE, MADE, QUEEN, SAGA, SKY, TINSEL and TOUCHE to send a reset
device on startup. The sound output still works fine (started up a game
from every engine), so this should hopefully not introduce any regressions.

As far as I can tell it seems that SCUMM does send a proper device reset, so
I did not touch it. KYRA only sends a proper reset for MT-32 currently. I am
not sure about SCI though.

This fixes bug #3066826 "SIMON: MIDI notes off when using RTL after SCI".

svn-id: r52736
2010-09-15 22:00:20 +00:00
Eugene Sandulenko
f7f5a561eb TINSEL: Remove unused variable
svn-id: r52684
2010-09-12 14:18:40 +00:00