Jonathan Gray
3c1b5648ae
Rest of the changes required for tremor to actually work.
...
Based on patches against 0.7.1 by Jolan Luff.
svn-id: r18641
2005-08-10 06:16:26 +00:00
Eugene Sandulenko
6b4484472b
Remove trailing whitespaces.
...
svn-id: r18604
2005-07-30 21:11:48 +00:00
Torbjörn Andersson
f7749e4789
I believe this fixes a GCC 4 compile error, but I can't run the MT-32
...
emulator (my computer is too slow, and anyway I don't have the necessary
data files) so I haven't tested it other than by compiling it.
See bug #1224138 for details.
svn-id: r18558
2005-07-19 17:30:49 +00:00
Max Horn
8a59ff208c
Fix more GCC 4.0 warnings
...
svn-id: r18533
2005-07-11 00:48:27 +00:00
Jerome Fisher
407dd03e28
- Small changes to sync with Munt.
...
svn-id: r18488
2005-07-03 22:56:51 +00:00
Jonathan Gray
2e273bad42
Enhanced tremor support from Jolan Luff.
...
The configure script now works as follows for detection:
Tremor only: use tremor
Vorbis only: use vorbis
Both: use vorbis
This behaviour can be changed with newly added configure script options.
svn-id: r18478
2005-06-30 09:14:36 +00:00
Max Horn
48a00b6846
Fix warning
...
svn-id: r18469
2005-06-26 23:47:19 +00:00
Lars Persson
f001a43830
Updated Scummvm MP3 implementation with patch so it works with Symbian multithreading. This openingen/closing the file for each chunk to read. This does only affect the Symbian build and the other ports should work as normal.
...
svn-id: r18466
2005-06-26 19:44:55 +00:00
Max Horn
02568d4498
oops forgot this in my previous commit
...
svn-id: r18457
2005-06-24 16:39:17 +00:00
Max Horn
9da50d6662
Fixed Oki table entry; added doc URL; mention IMA ADPCM
...
svn-id: r18456
2005-06-24 16:21:10 +00:00
Torbjörn Andersson
40236ee7c1
For consistency, specify directory when including files.
...
svn-id: r18454
2005-06-24 16:16:46 +00:00
Max Horn
8b1d7b9166
When including files from common/, explicitly use the common/ prefix
...
svn-id: r18444
2005-06-24 15:23:51 +00:00
Lars Persson
1c69696a9a
Patches needed to build for SYMBIAN32 WINS/GCC added.
...
Test built for Symbian and run on P910i without any major problems.
Test built for MSVC6. Changed parts seems to compile ok but there are some problems with MSVC6 and some of the targets which the EPOC build does n't support (KYRA,SAGA).
svn-id: r18430
2005-06-21 22:08:21 +00:00
Max Horn
21efddda22
Added virtual destructor, to silence a few more GCC 4 warnings
...
svn-id: r18420
2005-06-20 18:27:33 +00:00
Torbjörn Andersson
eeab93cf09
More whitespace changes.
...
svn-id: r18273
2005-05-27 12:43:19 +00:00
Oliver Kiehl
868f2b3f71
Mixer is now in namespace Audio. fix compiling.
...
svn-id: r18056
2005-05-11 17:20:32 +00:00
Max Horn
2de46dc8eb
Moved some more stuff to namespace Audio (enough for tonight)
...
svn-id: r18040
2005-05-11 00:01:44 +00:00
Max Horn
1a615346ab
Moved class SoundMixer to Audio::Mixer (didn't call the namespace 'Sound' because we already have many classes with that name)
...
svn-id: r18039
2005-05-10 23:48:48 +00:00
Max Horn
72f4c03b0b
Moved (In/Out)SaveFile(Manager) and Timer to namespace Common
...
svn-id: r18038
2005-05-10 23:17:38 +00:00
Max Horn
b75c969e66
Moved class File and the MD5 stuff to namespace Common
...
svn-id: r18037
2005-05-10 22:56:25 +00:00
Paweł Kołodziejski
39cb499fcf
fixed warning
...
svn-id: r18012
2005-05-09 22:38:44 +00:00
Max Horn
52bbc86797
Patch #1181544 (AmigaOS 4 changes)
...
svn-id: r18011
2005-05-09 21:21:21 +00:00
Max Horn
9bfc9281a1
Fix doxygen message
...
svn-id: r18000
2005-05-09 12:26:07 +00:00
Max Horn
cca744f69a
Comply to our coding conventions
...
svn-id: r17975
2005-05-08 21:49:52 +00:00
Max Horn
d00117ec4b
Fixed some doxygen warnings
...
svn-id: r17923
2005-05-05 15:59:24 +00:00
Travis Howell
77d6a04abc
Switch link to web page with more detailed information on compression types.
...
svn-id: r17905
2005-05-04 01:57:03 +00:00
Eugene Sandulenko
575e94602c
o Fixed ADPCM decoder length bug
...
o Plugged IMA ADPCM into SCUMM engine so latter HE titles now have speech
though it is somewhat noisy don't know why as decoder is based on ADPCM
reference implementation.
svn-id: r17904
2005-05-03 22:12:23 +00:00
Eugene Sandulenko
a71d60686c
Moved Oki ADPCM aka VOX decoder from SAGA engine to common sound/ directory.
...
Implemented IMA ADPCM decoder.
svn-id: r17903
2005-05-03 20:36:07 +00:00
Max Horn
969ef3dac9
* Added new virtual base class 'Stream', ReadStream and
...
WriteStream are now subclasses of it.
* Added new methods eos(), ioFailed(), clearIOFailed() to
all streams. This allows better error checking.
* SaveFile classes take advantage of these new standard
stream APIS
* Removed File::gets()
* Added SeekableReadStream::readLine() (replaces File::gets)
* Added WriteStream::writeString, for convenience
svn-id: r17752
2005-04-22 17:40:09 +00:00
Gregory Montoir
8b559ff875
code conventions
...
svn-id: r17714
2005-04-20 11:13:56 +00:00
Gregory Montoir
5a930d8fe7
this should fix bug #1181979
...
svn-id: r17713
2005-04-20 11:03:36 +00:00
Andrew Kurushin
b31ee93c75
vc compile warn
...
svn-id: r17637
2005-04-16 17:05:14 +00:00
Gregory Montoir
0f3ab2206a
Only cache a track if it really exists, this should prevent some issues when playing with invalid compressed tracks. See also bug report #1181979 .
...
svn-id: r17591
2005-04-13 19:50:58 +00:00
Max Horn
839c8add38
Get rid of errno; add some (optional) error checking facilities to SaveFile classes (they are ugly, and to simple, but better than nothing)
...
svn-id: r17589
2005-04-13 18:36:55 +00:00
Eugene Sandulenko
bdbd56406c
Patches #1164217 "Updated GS Support + Percussion Remapping Patch" and
...
#1181750 "Updated Native MIDI documentation". Thanks _tom a lot.
svn-id: r17571
2005-04-13 00:11:49 +00:00
Torbjörn Andersson
d4d045b117
Forgot to add files when committing patch #1175374 .
...
svn-id: r17513
2005-04-10 14:35:11 +00:00
Torbjörn Andersson
13dc149ded
Applied patch #1175374 ("FluidSynth MIDI driver"), with a few documentation
...
changes. There are a few things that could use a bit more work, and I've
only tested it on my Linux box. I have verified that ScummVM still compiles
when it's disabled, though, so it shouldn't break anything too badly.
svn-id: r17512
2005-04-10 14:33:44 +00:00
Jonathan Gray
24c92d0091
Remove usage of vsprintf in favour of vsnprintf and make
...
more use of STRINGBUFLEN. Some ports may need a new stub for
this, discussed with Chrilith.
svn-id: r17463
2005-04-09 01:52:44 +00:00
Max Horn
9e2e00881f
Renamed getActiveChannelSoundID to getSoundID and fixed its semantics to avoid race conditions
...
svn-id: r17377
2005-04-04 17:43:00 +00:00
Travis Howell
f230fe65e8
Add 8 sound channel support for HE games
...
-Allows sound looping to work
Added support for WAVE format musuc used in later HE100 games.
svn-id: r17372
2005-04-04 11:43:25 +00:00
Jerome Fisher
eda317924e
Committed patch #1168149 (Shared GM/MT-32 mapping) by eriktorbjorn as-is. This does the following:
...
- Replaces multiple identical MT-32-to-General MIDI mapping tables with a common one in MidiDriver.
- Changes Sky's GmChannel class to allow NULL instrument and velocity mapping tables, giving a 1-to-1 mapping without creating a dummy table.
svn-id: r17361
2005-04-03 22:01:38 +00:00
Max Horn
3084724d7d
To prevent race conditions, SoundMixer::isSoundHandleActive must lock the mixer mutex. That change might however cause regressions (read: dead locks) if some code calls isSoundHandleActive from within a sound callback... if you encounter any, please tell me
...
svn-id: r17209
2005-03-23 16:41:44 +00:00
Max Horn
61d0e3f02c
Make sure SoundHandle's are inited
...
svn-id: r17194
2005-03-22 18:29:02 +00:00
Jerome Fisher
7f83c47860
Merged with latest Munt CVS.
...
* Added support for most of the extended capabilities of the CM-32L/LAPC-I (more rhythm timbres, more rhythm key mappings, more PCM samples).
* The control ROM is now identified by searching for matching ID strings at various locations in the file. There are now a lot of safety checks to help ensure that a bad ROM will not crash the emulator.
* Three control ROM versions are now identified and mapped out - an original MT-32 control ROM, an original CM-32L ROM, and the Blue Ridge modified MT-32 ROM.
* Now supports the expression controller properly.
* Sustain is now turned off correctly again.
* "All Notes Off" no longer stops notes held by the sustain controller.
* Implemented "Reset all controllers".
* Stereo pan positions are no longer inverted.
* Volume, pitch, filter and envelopes are now more accurately calculated. Overall, the sound emulation is much more accurate.
* Waveforms are now slightly more accurate (in terms of pitch), necessitating a regeneration.
* Handling of unusual sysex messages has been improved (fixes sysex messages from Java's MIDI classes on Windows).
* Fixed a reverb bug during periods of silence.
svn-id: r17188
2005-03-20 16:24:55 +00:00
Max Horn
0e784d41d7
Simplified SoundHandle implementation
...
svn-id: r17107
2005-03-12 20:26:49 +00:00
Max Horn
7cd2cb2b17
PlayingSoundHandle -> SoundHandle; also, turned the handle activity check into a mixer method
...
svn-id: r17106
2005-03-12 18:56:09 +00:00
Chris Apers
a68d6ad671
PalmOS : ARM optimized OPL driver
...
svn-id: r17079
2005-03-11 11:01:52 +00:00
Max Horn
0ec193b4be
changing AudioDataType -> SoundType, so now the constant names match the name of the data type / the SoundMixer method names
...
svn-id: r17052
2005-03-09 18:12:54 +00:00
Max Horn
b7c2926a0b
Typo
...
svn-id: r17006
2005-03-06 13:23:39 +00:00
Max Horn
cda823ea63
It's kMaxMixerVolume, not 256 (we might change it to 255 eventually)
...
svn-id: r16747
2005-02-06 20:35:06 +00:00
Travis Howell
bebad400d6
Check sound queue for music in HE games.
...
Avoid extra sound channel.
svn-id: r16706
2005-01-30 11:03:49 +00:00
Max Horn
abd12dd1b6
Use class Mutex instead of MutexRef
...
svn-id: r16679
2005-01-28 22:05:51 +00:00
Nicolas Bacca
2f8f982f7d
Add medium quality sound for FOTAQ
...
svn-id: r16676
2005-01-28 20:46:36 +00:00
Torbjörn Andersson
9eecc9406d
16-bit WAVs are little-endian.
...
svn-id: r16539
2005-01-11 08:30:28 +00:00
Torbjörn Andersson
13e2c224c8
This is probably not the optimal fix, but at least ScummVM compiles again.
...
svn-id: r16538
2005-01-11 08:06:19 +00:00
Max Horn
ec79a9a768
A little more moving around #include's (last one for today ;-)
...
svn-id: r16534
2005-01-10 22:51:42 +00:00
Max Horn
f030081647
eek, we put a static RandomSource instance into every file that included fmopl.h...
...
svn-id: r16532
2005-01-10 22:46:23 +00:00
Max Horn
5c48717dd2
Remove some more header dependencies
...
svn-id: r16530
2005-01-10 22:35:43 +00:00
Max Horn
cffd917165
system.h was being included in tons of places, without any good reason; reduced this (total dependencies on system.h went down from 193 to 85 files)
...
svn-id: r16527
2005-01-10 22:06:49 +00:00
Max Horn
51112e49b5
Fix legal header
...
svn-id: r16506
2005-01-09 16:14:56 +00:00
Max Horn
9cea3d393f
Added shared code to load WAV(E) data from arbitrary seekable streams (files or memory)
...
svn-id: r16502
2005-01-09 15:49:43 +00:00
Max Horn
eeea238ef7
This function is currently not used...
...
svn-id: r16501
2005-01-09 15:48:47 +00:00
Max Horn
0fb2bd30f4
cleanup
...
svn-id: r16500
2005-01-09 15:48:27 +00:00
Max Horn
32f0dbdcb2
Moving AppendableAudioStream into SCUMM engine, as it is only used there
...
svn-id: r16494
2005-01-09 03:15:59 +00:00
Max Horn
c6e0d31e76
Added a font manager (work in progress)
...
svn-id: r16460
2005-01-06 21:15:52 +00:00
Max Horn
5d88c39549
Modify the singleton code once more to help overcome an issue with MSVC 7 (see also patch #1095133 )
...
svn-id: r16454
2005-01-06 18:38:34 +00:00
Travis Howell
ab432327d8
Add missing control changes, patch #1094825 .
...
svn-id: r16416
2005-01-03 11:33:12 +00:00
Max Horn
74bf578bda
Changed the singleton code to allow for custom object factories; this allowed me to change OSystem to use the singleton base class, too
...
svn-id: r16404
2005-01-01 19:19:06 +00:00
Max Horn
f52be9df68
Changed OSystem::instance() to return a reference, not a pointer (it now matches the Singleton interface)
...
svn-id: r16402
2005-01-01 18:53:47 +00:00
Max Horn
2664ca7eb1
oops, correct copyright string
...
svn-id: r16399
2005-01-01 16:20:17 +00:00
Max Horn
47280d9433
Updated copyright
...
svn-id: r16398
2005-01-01 16:09:25 +00:00
Max Horn
b15d92e470
Fix running ScummVM in plugin-mode
...
svn-id: r16360
2004-12-28 20:29:42 +00:00
Max Horn
160a28e912
Fixing hasActiveChannelOfType
...
svn-id: r16354
2004-12-28 11:19:36 +00:00
Max Horn
48e70acbaa
Use SoundMixer::kMaxMixerVolume
...
svn-id: r16351
2004-12-27 23:58:04 +00:00
Max Horn
bc882a1af4
Introduced two new constants SoundMixer::kMaxChannelVolume and SoundMixer::kMaxMixerVolume, for clarity
...
svn-id: r16348
2004-12-27 23:33:19 +00:00
Max Horn
357eb38b49
Allow premix channels to use a custom sound type
...
svn-id: r16332
2004-12-27 02:58:55 +00:00
Max Horn
f15f517bb4
Add 'speech' sound type to mixer; make use of that in iMuse Digital
...
svn-id: r16331
2004-12-27 01:32:40 +00:00
Max Horn
67b311713d
Added 'sound types' to the mixer - for now, only plain (for the premixer), SFX and music; volume is now controlled based on the sound type
...
svn-id: r16330
2004-12-27 00:27:00 +00:00
Max Horn
fec3df2096
Moved the softsynth midi drivers into a sound/softsynth; amongst other things, this fixes bug #1083058
...
svn-id: r16316
2004-12-25 18:34:44 +00:00
Max Horn
433711be5e
Removing this dead code for now, it only leads to confusion
...
svn-id: r16314
2004-12-25 18:22:55 +00:00
Max Horn
59b6a07826
Evil workaround for bug #1083058
...
svn-id: r16045
2004-12-14 01:02:55 +00:00
Max Horn
3891c0fa39
change loadVOCFromStream to take a reference instead of a pointer (to a stream)
...
svn-id: r16035
2004-12-11 23:34:34 +00:00
Max Horn
5d5a13eec7
Moved MidiDriver creation code into the MidiDriver class (as static methods), same for some other MIDI related stuff
...
svn-id: r15968
2004-12-02 00:33:42 +00:00
Max Horn
d6d3e5422b
cleanup
...
svn-id: r15955
2004-11-28 23:24:32 +00:00
Max Horn
10dd548b85
Changed parameter order of SoundMixer::playInputStream to match that of playRaw
...
svn-id: r15950
2004-11-28 23:02:28 +00:00
Jerome Fisher
45d92a02f4
Added a "permanent" field to Channels, which simply prevents them from being deleted during stopAll().
...
I hope this doesn't step on anyone's toes; it was quite urgent, since loading a saved game stopped MT-32 emulation audio forever.
svn-id: r15946
2004-11-28 22:15:09 +00:00
Max Horn
f6b495c8bc
Assume for now that the premixer is always used for music playback (as opposed to being used for SFX); this affects the volume (see bug #1049375 )
...
svn-id: r15940
2004-11-28 13:57:49 +00:00
Max Horn
c51b1266c0
Removed the (highly SCUMM specific) 'appendable stream' API from SoundMixer; SCUMM now uses the appendable stream directly
...
svn-id: r15919
2004-11-27 17:09:05 +00:00
Max Horn
573e02bb4c
Removed the old setupPremix version, it is not needed anymore. Also fixed some doxygen comments (they were being assigned to the wrong things)
...
svn-id: r15918
2004-11-27 16:26:54 +00:00
Max Horn
ba74a8e7f6
Added some more mixer doxygen docs; cleaned up Mixer API a bit, removing some very specialised methods
...
svn-id: r15914
2004-11-27 15:58:18 +00:00
Max Horn
1a7ca2dc2a
AudioStream::read() has been removed quite some time ago, now making sure that change is reflected everywhere
...
svn-id: r15911
2004-11-27 13:54:09 +00:00
Max Horn
96804652a2
cleanup
...
svn-id: r15863
2004-11-22 22:52:48 +00:00
James Brown
4aa5649c1e
Erm, this was never meant to be commited. I might as well leave the .h change for now, until kyra is investigated further.
...
svn-id: r15788
2004-11-11 14:19:38 +00:00
James Brown
cb4b3c1f7e
Prevent infinite loop by displaying the launcher after a game start FAILURE too.
...
svn-id: r15787
2004-11-11 14:01:11 +00:00
Eugene Sandulenko
805b21181a
Major MT-32 emu overhaul based on KingGuppy's code.
...
o added configure option
o mi2 intro doesn't freeze anymore and has no sound glitches
o missing instruments in many titles are fixed
o numerous memory overwrite bugs are fixed
o code is cleaned a lot and splitted into many smaller files
o mt32.cpp went to backends/midi
o synced with upstream code
o reverberation fixed
* don't complain about File class wrapper :)
* all custom types are back
* #pragmas are to do
* maybe some indentation is wrong too
I prefer smaller commits, but this thing came in one piece.
svn-id: r15715
2004-11-06 01:41:32 +00:00
Eugene Sandulenko
775bd838c7
Delegate channel functions to any MidiDriver. This is useful for the
...
MT-32 emulation and quite possibly other MidiDrivers in future.
svn-id: r15711
2004-11-04 21:34:17 +00:00
Max Horn
5f4575ccd0
Doxygen fixes
...
svn-id: r15699
2004-10-30 21:52:57 +00:00
Paweł Kołodziejski
c10cce6af1
fixed warnings
...
svn-id: r15665
2004-10-23 13:39:03 +00:00
Chris Apers
dc02e95cd7
Prepare true AdLib support on PalmOS
...
svn-id: r15649
2004-10-22 12:11:24 +00:00
Eugene Sandulenko
9d0b746aaa
Patch #1048326 Better MT-32 support
...
svn-id: r15635
2004-10-21 22:37:37 +00:00