Commit Graph

29 Commits

Author SHA1 Message Date
Eugene Sandulenko
0dafa7f80f ALL: Reduce audio/ header dependency 2011-08-06 11:30:42 +01:00
Matthew Hoops
5bb4ef13c5 GROOVIE: Rename MusicPlayerMPEG4 to MusicPlayerIOS
More fitting now that other music formats can be used now
2011-05-31 14:25:20 -04:00
Matthew Hoops
aa49b38c5a Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	engines/groovie/script.cpp
2011-05-31 14:16:29 -04:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Scott Thomas
accb0c2a5d GROOVIE: Add timer for MusicPlayerMPEG4 (required for music fade in/out) 2011-04-20 23:40:03 +09:30
Scott Thomas
47c2a9adbe GROOVIE: MPEG4 player should override unload so scripts can stop music 2011-04-13 22:22:19 +09:30
Scott Thomas
f54769f987 GROOVIE: Use provided OCReMix song for T7G iOS credits 2011-04-13 22:19:21 +09:30
Matthew Hoops
9c2fc6721d GROOVIE: Hook into the new QuickTimeAudioStream code 2011-04-07 19:40:07 -04:00
Matthew Hoops
af59f33b7b GROOVIE: Add a stub MPEG4 music player 2011-04-07 10:52:58 -04: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
Max Horn
29847ea42d AUDIO: Change several fake MidiDrivers to MidiDriver_BASE subclasses
Many engines follow the advice in audio/midiparser.h and create a
"pseudo-MidiDriver" subclass. But MidiParser really only needs a tiny
subset of the MidiDriver capabilities, namely those found in
MidiDriver_BASE. So we try to subclass from that whenever possible; this
allows us to remove many stub methods, and enables further future
simplifications.
2011-03-23 15:25:47 +01:00
Max Horn
8982fff1b7 AUDIO: Add pure virtual MidiDriver::isOpen() method
This in turn enables modifying MidiDriver_MPU401::close() to allow
it to be called on a midi driver that has not yet been opened.

The specific issue that triggered me to make these changes was a
crash-upon-quit in HUGO, caused by it instantiating a midi driver,
then encountering an error (missing hugo.dat) *before* having
opened the new midi driver; the general cleanup code then tries
to close the (not yet opened) midi driver -> kaboom

Also fixed some engines which were leaking MidiDriver instances.
2011-03-22 23:51:47 +01:00
dhewg
12a561f119 GROOVIE: Mark overwritten members as virtual 2011-03-04 21:31:14 +01:00
Max Horn
42ab839dd6 AUDIO: Rename sound/ dir to audio/
svn-id: r55850
2011-02-09 01:09:01 +00:00
Jordi Vilalta Prat
33b991ee9d Groovie: Add support for the compressed MIDI files of T7G Mac.
svn-id: r50163
2010-06-22 19:21:05 +00:00
Jordi Vilalta Prat
0e95d8a5fa Groovie:
- Rewritten T7G's font code to subclass Graphics::Font and make it cleaner.
- Use theme fonts for the Mac version of T7G (which used ugly system fonts
  originally). With this the Mac version should be completable.
- Cleanup include interdependencies.

svn-id: r49487
2010-06-07 17:14:42 +00:00
Max Horn
51933629d1 Changed foo(void) to foo() in almost all non-backend source files
svn-id: r45616
2009-11-02 21:54:57 +00:00
Johannes Schickel
b33b90ecd0 Made AGOS, DRASCULA, GOB, GROOVIE, MADE, SCUMM and TINSEL properly stop CD audio playback on engine quit. (This only problem affected playback from CD, not from ripped audio files)
svn-id: r43512
2009-08-18 15:31:26 +00:00
Scott Thomas
8820b6166e T7G: Fix bug #2831041 by implementing opcode responsible for starting music partway through a video
svn-id: r43068
2009-08-05 13:57:40 +00:00
Jordi Vilalta Prat
6d3b2ec3af - Refactorized Groovie::MusicPlayer to make it extensible
- Added an empty MusicPlayerMac to let the Macintosh version of The 7th Guest start

svn-id: r42116
2009-07-05 09:34:54 +00:00
Scott Thomas
2f61d7d77b - Convert some file references from uint16 to uint32 to suit 11H
- Add some 11H opcodes

svn-id: r39313
2009-03-10 21:54:45 +00:00
Henry Bush
a0a82d911c T7G: start background music at start of input loop (0x0B). Should fix 2474078, but might break other things so I'm not going to backport it.
svn-id: r36125
2009-01-28 23:29:19 +00:00
Henry Bush
8eb7d55eca T7G: Reset midi volume to 100 on starting a track, cleanup
svn-id: r35792
2009-01-08 23:01:34 +00:00
Jordi Vilalta Prat
7122248c72 Use the proper samples file name for 11h
svn-id: r35656
2009-01-01 22:49:44 +00:00
Jordi Vilalta Prat
3f3b742cd6 T7G: Add support for custom AdLib instruments
svn-id: r35440
2008-12-19 16:55:54 +00:00
Jordi Vilalta Prat
834d2c5f27 T7G: Enhanced the Audio CD playback. Now the credits music on CD2 should play by ripping it as track 2 (not tested).
svn-id: r35167
2008-11-25 00:41:51 +00:00
Jordi Vilalta Prat
4360757236 T7G: Implemented volume fading
svn-id: r35166
2008-11-24 21:53:23 +00:00
Torbjörn Andersson
48e1316da9 Added a mutex to the Groovie MIDI player. Maybe that will fix the rare and
unpredictable crashes I've been seeing.

svn-id: r35116
2008-11-18 19:29:51 +00:00
Max Horn
bb87d39424 Patch #2271425: Groovie engine
svn-id: r35060
2008-11-14 21:32:20 +00:00