Commit Graph
66 Commits
Author SHA1 Message Date
Eugene Sandulenko 22b674777f SCI: Added overried specifiers 2018-03-28 12:35:22 +02:00
Ruud Klaver 6843870af2 SCI: Set default MT-32 reverb before each sound
Set the default reverb configuration present in either the MT-32
patch data or MT32.DRV of SCI0 games before playing each sound, as
a previously played sound may have changed it.

Also, do not perform a general reverb init, since the start of a
sound will do that now.

Closes gh-1023.
2017-10-04 23:47:21 -05:00
Colin Snover 9ac219648e SCI: Omit SysEx delays when sending to MT-32 emulator
Real MIDI devices, and MT-32 in particular, need delays between
SysEx messages to ensure sufficient time to receive and process
the incoming data buffer. Sending too much data too quickly to
these devices can cause them to crash with a buffer overflow.

The MT-32 emulator, on the other hand, has no problem receiving
SysEx data instantly, so skipping the delays means that games that
send lots of data to the MT-32 will start up much faster.
2017-09-12 20:08:02 -05:00
Colin Snover 90cd56e4b6 SCI32: Fix missing music in MGDX
GM patch data is the same across all SCI32 games.
2017-07-07 13:25:02 -05:00
Colin Snover a233696212 SCI: Update formatting strings to match updated Span API 2017-03-30 14:23:41 -05:00
Colin Snover 31daa956d6 SCI: Implement bounds-checked reads of game resources 2017-03-27 19:42:31 -05:00
Willem Jan Palenstijn 1b1fae6494 SCI: Clean up unnecessary casts 2017-02-26 14:23:36 +01:00
Colin Snover bf293fface SCI: Fix non-responsive application warning during sysex transfers
This also fixes the display of the startup LCD message, which had
been delayed until after the sysex transfer was finished.
2016-12-03 12:21:54 -06:00
Ori Avtalion 3564032330 JANITORIAL: Reduce audio header dependencies 2016-04-14 16:10:21 +03:00
Martin Kiewitz 0dd760724e SCI32: split up SCI2.1 into EARLY/MIDDLE/LATE
- Detection works via signatures (couldn't find a better way)
- new kString subcalls were introduced SCI2.1 LATE
- kString now has signatures and is split via subcall table
- kString fix, so that KQ7 doesn't crash, when starting a chapter
- Sci2StringFunctionType removed, because no longer needed
2015-12-29 01:44:11 +01:00
Filippos Karapetis ae2be20a20 SCI: Fix bug #6725 - "SCI: LSL5 Mac doesn't launch with MT-32 music"
Thanks to waltervn for his help
2014-10-13 12:21:39 +03:00
Filippos Karapetis 43cb57ba00 SCI: Add comments for the MT-32/GM patch contents 2014-10-13 12:21:39 +03:00
Ben Castricum cb94d1f943 MISC: Fix typo s/Adlib/AdLib/ (only where visible to the user) 2014-08-22 06:40:06 +02:00
Johannes Schickel 09cb06d1fa SCI: Small formatting fix. 2014-07-24 01:23:11 +02:00
Johannes Schickel 8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Willem Jan Palenstijn 430db6719f SCI: Fix confusing use of strncpy 2013-04-17 23:55:01 +02:00
Filippos Karapetis b4df7868a1 SCI: Remove some useless checks in the MIDI driver 2013-03-27 23:06:27 +02:00
Johannes Schickel 56e8268073 SCI: Do not cast away const qualifier. 2012-04-05 00:40:25 +02:00
md5 bd2bfe85c9 SCI: Don't include several debug tables when REDUCE_MEMORY_USAGE is defined 2011-05-13 16:12:52 +03:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
md5 d28344bb55 SCI: Removed unused variables
Thanks to LordHoto and the trusty -Wunused-but-set-variable option :)
2011-04-27 13:13:35 +03:00
md5 22046d2480 SCI: Added handling for another version of mt32.drv (bug #3285556)
This is used in another version of KQ4 early (0.000.274)
2011-04-13 10:29:24 +03:00
dhewg 23ad90b781 SCI: Replace not required emumidi header 2011-04-02 13:31:53 +02:00
Walter van Niftrik 6501a86095 SCI: Fix default pan value in MIDI driver. 2011-03-27 00:04:28 +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
md5 9af4453ee5 SCI: Don't ignore SysEx messages at the driver level but warn instead
SysEx messages in the driver are usually the result of a bug which should
be investigated and not silently ignored
2011-03-03 11:18:59 +02:00
md5 9d6ed4de31 SCI: Slight cleanup of some sound drivers 2011-03-03 01:47:08 +02:00
md5 72f65b3946 SCI: Renamed SCI_VERSION_1_EGA to SCI_VERSION_1_EGA_ONLY
This renaming allows us to better distinguish that this version is for games
that only had an EGA version, and avoid confusion with newer SCI1 game releases
with EGA graphics (e.g. KQ5 EGA). The only game with this SCI version is QFG2,
a SCI1 EGA game with a parser. Also, added some games for each SCI version.
2011-02-27 16:48:53 +02:00
md5 88235cee7c SCI: Some slight fixes for the code that reads the LSL2 early MT32.DLL driver, thanks to waltervn 2011-02-26 15:27:01 +02:00
md5 318c51a202 SCI: Added support for reading data off the MT32.DRV driver found in LSL2 early (bug #3192627) 2011-02-26 05:22:10 +02:00
Filippos Karapetis 6a4ea3abd3 SCI: Added comments to the FB-01 and MIDI drivers. The original driver files are only
needed in SCI0 early games, which didn't include separate sound patch resources. Thanks
to waltervn for the information he supplied

svn-id: r55875
2011-02-10 21:10:49 +00: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
Walter van Niftrik 3d38a383bb SCI: Only filter channels for early SCI0, as GM currently uses all channels.
svn-id: r54498
2010-11-26 14:35:28 +00:00
Filippos Karapetis 1d4e452c78 SCI: Send the SCI0 reverb init after reading the reverb data
svn-id: r54492
2010-11-26 06:41:45 +00:00
Filippos Karapetis af15ac6f6a SCI: Some reverb-related changes in the MIDI driver, based on a patch by waltervn
svn-id: r54484
2010-11-25 22:23:14 +00:00
Filippos Karapetis 3a8648c4db SCI: Initialize reverb in the music driver correctly. Based on a patch by waltervn
svn-id: r54483
2010-11-25 22:17:23 +00:00
Filippos Karapetis 2c2f3a97e6 SCI: Added support for the alternate Windows MIDI soundtracks of the CD versions of EcoQuest, Jones, KQ5 and SQ4
svn-id: r54476
2010-11-25 14:22:09 +00:00
Walter van Niftrik 8c4ebc434d SCI: Fix bug in MT-32 checksum computation. Thanks Sven for finding this.
svn-id: r54471
2010-11-25 11:19:46 +00:00
Filippos Karapetis ff58eea2ce SCI: Set _useMT32Track correctly for KQ5 Windows, thus simplifying the code
svn-id: r54465
2010-11-25 01:31:03 +00:00
Filippos Karapetis 7508260954 SCI: Added support for the alternative GM tracks of the Windows version of KQ5CD (bug #3041239)
Note that the empty GM track for the Sierra logo makes the game hang, so the
MT-32 track is used, which sounds awful

svn-id: r54464
2010-11-25 01:19:45 +00:00
Filippos Karapetis 9493b9add5 SCI: Moved handling of special reverb value 127 outside of the MIDI driver
svn-id: r54459
2010-11-24 14:51:29 +00:00
Filippos Karapetis 364d37b302 SCI: some changes to the way reverb is handled
- "Invalid" SCI reverb values (127) are properly handled now
- SCI kDoSound(reverb) sets the global reverb (renamed it accordingly)
- kDoSound(reverb) can also return the current reverb if no parameter is sent

svn-id: r54457
2010-11-24 14:21:31 +00:00
Filippos Karapetis 332a438ccf SCI: Added a TODO for the default reverb value
svn-id: r54454
2010-11-24 11:26:48 +00:00
Filippos Karapetis fcd8a04c64 SCI: Read MT-32 reverb data correctly (patch #3117434)
svn-id: r54453
2010-11-24 11:19:27 +00:00
Filippos Karapetis 23bd8a1c26 SCI: Ignore polyphonic/channel aftertouch (0xa0 / 0xd0) in the MIDI driver, like in the Adlib driver. SSCI doesn't handle these, so we shouldn't handle them either
svn-id: r54428
2010-11-23 15:47:54 +00:00
Max Horn 2180b2d6b5 COMMON: Split common/stream.h into several headers
svn-id: r54385
2010-11-19 17:03:07 +00:00
Filippos Karapetis 9d1006c7a3 SCI3: Some changes
- Placed the SCI3 version detection in the proper place
- Some new types of SCI3 MT-32 patches (e.g. in the Lighthouse SCI3 demo) are
ignored, for now

svn-id: r54188
2010-11-10 14:28:45 +00:00
Filippos Karapetis 27c52434ba SCI: Split the GM related names out of map-mt32-to-gm.h and into a separate header file
svn-id: r53906
2010-10-28 16:26:04 +00:00
Filippos Karapetis a7b5133903 SCI: Improved the description of the "map_instrument" console command a bit. Also, the dynamic mappings are now checked before the static ones
svn-id: r53903
2010-10-28 13:00:21 +00:00