114 Commits

Author SHA1 Message Date
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
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
Marcus Comstedt
9b7ab59fbb TINSEL: Fix crash when error() is called early 2016-02-07 13:03:52 +01: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
Kirben
fba886a21f TINSEL: Add drivers sub folder in Discworld 1, for Miles audio files. 2015-07-04 13:51:45 +10: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
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
Torbjörn Andersson
56431cfc59 TINSEL: Fix DW2 assertion when quitting during cutscene
Call _bmv->FinishBMV() before setting g_pCurBgnd to NULL. Otherwise,
there will be an assertion if quitting during a cutscene while a
subtitle is being shown. (At least I think that's the condition.)

(Also, it seems to be a good idea to call it before EndScene(),
because even though there was no assertion, I got a lot of warnings
when I did it after.)
2013-08-10 16:56:07 +02:00
Filippos Karapetis
d45534d29d TINSEL: Remove the unused noFadeTable parameter from the fader functions 2013-04-12 07:19:52 +03:00
Filippos Karapetis
1713d7ee3c TINSEL: Always convert the inventory objects to the native endianess
This is needed for DW1 Mac
2012-12-15 08:14:54 +02:00
Filippos Karapetis
e08fa202d6 TINSEL: Handle the invalid max polygons value in DW1 Mac 2012-12-11 03:10:50 +02:00
Filippos Karapetis
b05fa7f204 TINSEL: Add resource handling of the BE resources in DW1 Mac
This is the second attempt. All the BE resources of DW1 Mac are
handled correctly now. Added READ_16, READ_32, FROM_16, FROM_32 and
TO_32 to handle all of the different cases where endianess is
already handled. Note that the game scripts are LE, so these
haven't been changed
2012-12-11 02:56:48 +02:00
Filippos Karapetis
c6cf4827d7 TINSEL: Revert most of the engine BE resource handling code
This was added in commit 3fdddd53b2b970aae3e967bebc0bff6e642a5111.
However, having handling for both BE and LE resource complicates
the engine code unnecessarily. Thus, a different approach will be
done.
2012-12-10 17:38:22 +02:00
Torbjörn Andersson
220fb66364 TINSEL: Add scrollwheel support to save/load and inventory 2012-11-24 11:06:42 +01:00
Torbjörn Andersson
0da424efb6 TINSEL: Fix typo in comment 2012-11-22 23:11:27 +01:00
Paul Gilbert
41692ef48a TINSEL: Refactored Tinsel engine to use the Common coroutine scheduler 2012-05-17 20:42:23 +10:00
Alyssa Milburn
be35baddc7 TINSEL: Rename globals to add g_ prefix. 2012-02-22 23:14:29 +01:00
Johannes Schickel
adb5342247 TINSEL: Take advantage of KeyState::hasFlags. 2011-12-30 01:53:01 +01:00
Johannes Schickel
b8dfd3366b TINSEL: Made some static data const. 2011-09-08 20:15:07 +02:00
D G Turner
c9156d369f TINSEL: Replace snprintf() usage with Common::String::format()
Safer and less portability issues.
2011-06-02 03:58:27 +01:00
Matthew Hoops
9539017ee3 ALL: initialise -> initialize 2011-05-25 11:17:11 -04:00
Max Horn
4cbe4ede66 COMMON: Registers RandomSources in constructor with the event recorder
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
2011-05-17 12:17:26 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Johannes Schickel
71bdb86e02 Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".
For further discussion check here:
https://github.com/scummvm/scummvm/pull/16

Conflicts:
	graphics/png.cpp
2011-05-01 16:54:45 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Max Horn
73f04118f3 COMMON: Rename Error to ErrorCode, introduce new Error class 2011-04-18 18:22:02 +02:00
Johannes Schickel
933c4f93f5 TINSEL: Prefer Surface::create taking a PixelFormat over the one taking a byte depth. 2011-04-17 16:33:50 +02:00
Paul Gilbert
88b3fc7c66 TINSEL: Added numeric key mappings for function keys 2011-04-08 20:43:41 +10:00
Max Horn
f333d93fe8 TINSEL: Remove unused TinselEngine::_musicVolume member 2011-03-25 14:15:52 +01:00
Max Horn
e70fd59b35 ENGINES: Further simplify pseudo MidiDrivers; fix some regressions
The regression affected AGOS and maybe some others; specifically,
the real MidiDriver would have been deleted twice -- I previously
missed that the Engine instances takes care of freeing the real
MidiDriver, not the MidiPlayer wrapping it.

This commit should clarify the ownership of the real MidiDriver for
most pseudo MidiDrivers.
2011-03-23 16:49:41 +01:00
Arnaud Boutonné
d063b074cd JANITORIAL: Suppress some useless includes
svn-id: r55091
2011-01-02 14:06:42 +00:00
Paul Gilbert
a2367d26f9 TINSEL: Preliminary functionality for reading BE data files
svn-id: r54392
2010-11-20 03:14:03 +00:00
Filippos Karapetis
144ed3e22d TINSEL: Fixed compilation with MSVC
svn-id: r54271
2010-11-16 22:09:46 +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
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
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
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
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
Paul Gilbert
70fed746df TINSEL: Fix for #3032780 - Mute not respected in DW1
svn-id: r52674
2010-09-11 05:28:54 +00:00
Eugene Sandulenko
99c9ba697c TINSEL: Fix bug #3032780: "DW: Mute setting does not work"
Bug #3032778 was fixed too as it is the duplicate.
Since there is no engine-specific logic, rely on superclass'
setupSoundSettings(), and use it on startup too.

svn-id: r52374
2010-08-25 07:41:35 +00:00
Eugene Sandulenko
4a0cdf00e1 TINSEL: fix warning
svn-id: r52149
2010-08-17 11:01:41 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Max Horn
1d4c82885d DEBUGGER: Simplify how our console debugger works / is used
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
  something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
  can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
  document it.
* Add more doxygen comments
* Cleanup

svn-id: r50963
2010-07-17 18:38:42 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00