Max Horn
d2b61e9bef
properly init member vars instead of using memset
...
svn-id: r8608
2003-06-22 13:48:47 +00:00
Max Horn
4ead10e4d5
Change names of the stream API in the mixer; added endStream method (stop() halts stream immediately; endStream() lets it first finish playing)
...
svn-id: r8603
2003-06-22 11:47:03 +00:00
Jonathan Gray
0a6b7ad6ac
fix compile when vorbis is enabled, loomcd is now broken with vorbis after recent changes :/
...
svn-id: r8598
2003-06-22 03:54:43 +00:00
Max Horn
4ad5a183ce
renamed SoundMixer::hasActiveChannel->hasActiveSFXChannel, and fixed the regression in it caused by removing _beginSlots (I hope); added isActiveChannel method used by scumm/sound.cpp (this allowed me to move the Channel class from mixer.h into mixer.cpp); replaced Channel::soundFinished method by isActive
...
svn-id: r8597
2003-06-22 01:55:53 +00:00
Max Horn
573a1e3e99
remove the realDestroy methods and instead use destructors; renamed insertAt to insertChannel and simplified/unified its usage; delete the mutex when exiting; cleanup
...
svn-id: r8596
2003-06-22 01:34:28 +00:00
Max Horn
bd4370c251
lots of mixer cleanup / refactoring / reengineering
...
svn-id: r8594
2003-06-21 23:29:34 +00:00
Max Horn
7c332d7fdb
modified & cleaned up the playStream/append code a bit; but this API really could stand some refinement
...
svn-id: r8592
2003-06-21 21:17:08 +00:00
Max Horn
11b2961fdb
cleanup
...
svn-id: r8584
2003-06-21 19:52:12 +00:00
Jonathan Gray
2ba86fd0e5
make gcc happy
...
svn-id: r8583
2003-06-21 15:55:08 +00:00
Jamieson Christian
f83a32464c
Fix for bug [756555] ALL: With '-ewindows' notes don't stop at quit
...
and bug [755176] SIMON2: Hanging notes
More cleanup of the thread issues associated with iMuse and MidiParser
shutdown. Untested.
svn-id: r8546
2003-06-18 22:46:17 +00:00
Marcus Comstedt
2aed2d9284
Use stdafx.h instead of manually including system headers.
...
svn-id: r8541
2003-06-18 21:10:05 +00:00
Max Horn
fcc46ac891
more cleanup
...
svn-id: r8497
2003-06-15 01:56:47 +00:00
Max Horn
6f50feb359
fixed cast warnings
...
svn-id: r8435
2003-06-11 07:14:39 +00:00
Jamieson Christian
01ba60ccef
Fixed post-mortem attempts to transmit MIDI data
...
svn-id: r8433
2003-06-11 06:43:24 +00:00
Jamieson Christian
d2c952b315
Fixed race condition in MPU401 shutdown
...
svn-id: r8432
2003-06-11 05:54:46 +00:00
Max Horn
f7e85af552
use clear_sound_proc to properly deinit the mixer (this fixes a crash-on-exit)
...
svn-id: r8410
2003-06-09 01:19:44 +00:00
Bertrand Augereau
17e6779b65
Made some conversions explicit to prevent VC.NET 2003 from complaining
...
svn-id: r8254
2003-06-01 21:52:53 +00:00
Jamieson Christian
42f6d10581
Fixed hanging notes on Smart Jump when Note Off event cannot be found.
...
(I'm not sure why the Note Off would not be found,
but at least we're properly dealing with such notes now.)
svn-id: r8250
2003-06-01 18:24:10 +00:00
Jamieson Christian
86138eda44
Documentation corrections
...
svn-id: r8224
2003-06-01 04:06:24 +00:00
Jamieson Christian
452735e320
Some last SysEx cleanup.
...
svn-id: r8223
2003-06-01 04:05:13 +00:00
Jamieson Christian
6aba98450b
Some Doxygen documentation. Just to test.
...
svn-id: r8195
2003-05-31 22:04:21 +00:00
Max Horn
e08d4f072e
more OSystem docs & cleanup
...
svn-id: r8118
2003-05-29 22:34:35 +00:00
Max Horn
417ec3a588
added TODO: get rid of create_thread
...
svn-id: r8115
2003-05-29 21:29:54 +00:00
Jamieson Christian
11e59488ef
Fixed occassional music crashes when loading games.
...
Thanks to eriktorbjorn for finding this issue.
svn-id: r7959
2003-05-25 15:47:06 +00:00
Jamieson Christian
f8e9e55fba
allNotesOff() now sends to all 16 channels, not just the first 15. Duh.
...
svn-id: r7899
2003-05-24 19:11:49 +00:00
Max Horn
0439e0fe58
fixed nasty deadlock I recently introduced
...
svn-id: r7867
2003-05-23 16:47:45 +00:00
Jamieson Christian
982883c637
Fixed problem with hanging notes on some synth modules.
...
Various little MidiParser fixes.
svn-id: r7863
2003-05-23 15:04:41 +00:00
Jamieson Christian
7bcdf0d568
Fixed tempo problems in Simon games
...
svn-id: r7853
2003-05-23 04:54:45 +00:00
Jamieson Christian
0be2b4673c
Removed annoying warning
...
svn-id: r7851
2003-05-23 04:35:50 +00:00
Jamieson Christian
08b5337b20
Fixed gcc warning
...
svn-id: r7850
2003-05-23 04:30:50 +00:00
Jamieson Christian
c6568530bd
Revamped iMuse and Player classes. Player now uses MidiParser to parse its data, which will allow it to parse other MIDI formats. To receive parsed data, Player now derives from MidiDriver to act as a "fake MIDI driver".
...
Miscellaneous upgrades and fixes to MidiParser, including the Smart Jump (which could not be tested before iMuse started making use of the MidiParser).
*** THIS IS A BIG UPGRADE! EXTENSIVE REGRESSION TESTING IS NEEDED! ***
This has been tested through the intros and a number of other scenes from MI2, FOA and S&M.
NOTE! This upgrade introduces savegame format version V19. Earlier version savegames will load, but the music will simply start over from the beginning. Only V19 and later games will properly restore the position of the music! Don't say you weren't warned....
svn-id: r7849
2003-05-23 04:19:47 +00:00
Max Horn
1383ccbdbe
make sure that the mutex protects everything that affects the buffer
...
svn-id: r7835
2003-05-22 21:34:20 +00:00
Jamieson Christian
1918dc555f
Added "smart-jump" capability to MidiParser.
...
svn-id: r7831
2003-05-22 15:34:30 +00:00
Max Horn
b4c94e4aee
pedantic warning fix
...
svn-id: r7792
2003-05-21 17:33:32 +00:00
Jamieson Christian
622e3578b4
More Simon music fixes
...
svn-id: r7769
2003-05-21 06:14:14 +00:00
Jamieson Christian
4584cb9616
Corrections to SMF Type 1 compression to Type 0.
...
Fixes simon2win title music.
svn-id: r7755
2003-05-20 20:58:59 +00:00
Jamieson Christian
a768deb83f
Simon music fixes
...
svn-id: r7744
2003-05-20 16:43:53 +00:00
Max Horn
d1391702ea
init member vars to 0
...
svn-id: r7732
2003-05-20 14:55:47 +00:00
Jamieson Christian
46a0be5ae8
Fixed regression in XMIDI parsing.
...
svn-id: r7706
2003-05-20 03:27:45 +00:00
Jamieson Christian
996614936a
Fixed anonymous structs warning.
...
svn-id: r7696
2003-05-19 19:24:22 +00:00
Jamieson Christian
3dc788da63
Moved common parsing logic into MidiParser base class.
...
Added auto-loop capability.
svn-id: r7692
2003-05-19 18:48:18 +00:00
Jamieson Christian
e8771e7684
Fixed problem updating callback
...
svn-id: r7691
2003-05-19 17:45:21 +00:00
Max Horn
3d14e5305e
fix shadow warning; removed unused var
...
svn-id: r7677
2003-05-19 09:04:50 +00:00
Max Horn
682d88cf71
fix shadow warning
...
svn-id: r7675
2003-05-19 09:01:25 +00:00
Jamieson Christian
ff41896480
Fixed Simon 1 music regression.
...
SMF parser now supports malformed Simon pitch bend events.
Implemented SMF parser jump method.
svn-id: r7669
2003-05-19 05:00:13 +00:00
Jamieson Christian
40ce9cdcc3
MidiStreamer goes away, replaced by MidiParser
...
svn-id: r7663
2003-05-19 00:50:30 +00:00
Jamieson Christian
9cbc6904a0
Fixed gcc warnings, virtual destructor problem
...
svn-id: r7656
2003-05-19 00:12:16 +00:00
Jonathan Gray
1b410c50dd
remove dup object
...
svn-id: r7655
2003-05-19 00:02:50 +00:00
Jamieson Christian
c81b58d38e
Implemented new Simon MIDI module, switching from MidiStreamer to MidiParser. Restructuring enables XMIDI support and vc_72 implementation. Various cleanup on MidiParser's and MidiDriver's.
...
svn-id: r7654
2003-05-18 23:55:53 +00:00
Jamieson Christian
febf19cb3f
SMF/GMF implementation of MidiParser
...
svn-id: r7650
2003-05-18 23:36:38 +00:00