396 Commits

Author SHA1 Message Date
Matthew Hoops
509cc5f4c4 SCI: Add preliminary support for SCI1 early Amiga sound patches
As used by KQ1 and MUMG. Sound still seems a bit off, but it's close.
2011-12-08 20:11:33 -05:00
Filippos Karapetis
38dc6640dc SCI: Reset parameters for all channels used by a song when it starts 2011-11-20 20:59:31 +02:00
athrxx
6c23f78cb9 SCI: add Japanese MUMG detection entry and adapt Fm-Towns sound driver 2011-11-05 21:02:05 +01:00
Filippos Karapetis
cdedfa3d85 SCI: Removed a duplicate variable assignment 2011-11-04 00:42:37 +02:00
Torbjörn Andersson
884ee96708 SCI: Remove unnecessary semicolon 2011-11-02 21:53:13 +01:00
Filippos Karapetis
e674298a60 SCI: Fixed bug #3430834 - "SCI: KQ6: Music stops after leaving shop"
A regression from commit 9654068
2011-11-01 23:42:38 +02:00
Filippos Karapetis
d6658db7c0 SCI: Fixed unexpected end of file in fmtowns.cpp 2011-11-01 23:20:09 +02:00
athrxx
b7ae744dea SCI: limit new FM-Towns driver to KQ5
Mixed up mother goose is reported not to use that driver and even crash when trying to use it.
Play Id and instrument patch id seem to be different.
2011-11-01 21:56:54 +01:00
athrxx
9b838239eb SCI: (KQ5 FM-Towns) - fix voice mapping
(Driver channels would get reserved via the 0x4b control, but they would never get released)
2011-11-01 20:31:59 +01:00
athrxx
6a91508475 SCI: add sound driver for KQ5 FM-Towns 2011-11-01 20:31:40 +01:00
Filippos Karapetis
1736345906 SCI: The demo of GK1 has no alternate sound effects.
This fixes the sound effect heard in the "Day 1" screen
2011-10-20 19:02:15 +03:00
Filippos Karapetis
e7260d992c SCI: Updated a comment inside processPlaySound() 2011-10-13 14:03:57 +03:00
Filippos Karapetis
0166665926 SCI: Fixed a long-standing bug in kDoSound(init)
The sound handle should not be set in kDoSound(init), but in
kDoSound(play). This is verified against several SCI versions,
plus game scripts check if a sound slot is playing primarily
by checking its handle. Fixes the sound in Shivers and probably
an assortment of other sound related bugs
2011-10-12 12:49:39 +03:00
Filippos Karapetis
4e1face890 SCI: Mixed Adlib/MIDI mode for audio resources should always be enabled in SCI32 2011-10-10 12:20:52 +03:00
Filippos Karapetis
b17d424257 SCI: Fixed menu music in GK1 when multi MIDI is disabled
A regression from commit 9fd66de
2011-10-10 01:41:09 +03:00
Filippos Karapetis
1117c8c3ed SCI: Also default to MIDI for Windows versions of SCI1.1 games 2011-10-06 23:33:00 +03:00
Filippos Karapetis
9fd66deb43 SCI: Changes to the sound resource initialization code
- Unified the sound resource initialization code in
processInitSound() and reconstructPlayList()
- Now checking the "Mixed Adlib/MIDI" mode checkbox for SCI1.1 digital
audio sound effects, like it's done for SCI0 - SCI1 sound effects. If
it's unchecked, their MIDI counterparts will play instead, if
available
2011-09-26 20:02:34 +03:00
Filippos Karapetis
e552bc57ba SCI: Always reset hold when starting a new song. Fixes bug #3413589 - "SCI: KQ6CD: Game stops responding in the catacombs"
kDoSoundSetHold is always called after kDoSoundPlay. A regression from
commit 4f3b85f4efc05affb7b4a7080e349360a3352048
2011-09-24 18:46:55 +03:00
Filippos Karapetis
077acc5575 SCI: Fixed bug #3413301 - "SCI: KQ6CD: Game stops responding at the bookworm" 2011-09-23 17:42:14 +03:00
Johannes Schickel
5443ef943f SCI: Made some static data const. 2011-09-08 00:35:12 +02:00
Filippos Karapetis
2798c65d75 SCI: Fixed bug #3297883 - "SCI: LB1 (Amiga) - Intro stuck" 2011-08-28 14:07:42 +03:00
Filippos Karapetis
4f3b85f4ef SCI: Fixed bug #3311911 - "SCI: QFG3: Intro music abruptly stops" 2011-08-26 11:30:19 +03:00
Filippos Karapetis
996deff15b SCI: Fixed bug #3392767 - "SCI: SQ4 (English/CD/Win): Engine Abort In Timepod Hangar"
This bug only manifested in the Windows version of SQ4CD. Some Windows
MIDI music tracks are missing from room 530, which messed up the
animations in that scene, and led to a crash. Moved the code that
obtains the song number from an object into a separate function. Also,
fixed a bug in kDoSoundSetPriority().
2011-08-25 02:52:58 +03:00
Christoph Mallon
23a0f5318c JANITORIAL: Remove trailing empty lines. 2011-08-07 13:53:33 +02:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Walter van Niftrik
ae4f63a256 SCI: Add more debug output to AmigaMac sound driver 2011-06-07 13:34:59 +02:00
Walter van Niftrik
12366c91e5 SCI: Use Sound debug channel in AmigaMac sound driver. 2011-06-07 01:39:00 +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
md5
3b75ff9132 SCI: Added a warning for SCI0 games like in bug #3297881
LB1 Amiga doesn't contain MT-32 music tracks. Added a warning for this
situation
2011-05-12 04:34:20 +03:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +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
Willem Jan Palenstijn
9f74a6eda2 SCI: Clarify comment from rev 5654e12 further 2011-04-28 12:03:10 +02:00
md5
d855092f96 SCI: Clarified comment in rev 5654e12
It's a bad idea to write comments when half asleep :P
2011-04-28 10:21:26 +03:00
md5
5654e12575 SCI: Added a more specific workaround for bug #3267956. This fixes bug #3291115 - "KQ6: Game freezes when getting paper from web" 2011-04-28 04:14:54 +03: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
9a987001d4 SCI: Some initial work on supporting patch.005 in KQ1 Amiga 2011-04-15 11:20:07 +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
Max Horn
0ce2ca4e00 COMMON: Replace MKID_BE by MKTAG
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
2011-04-12 16:53:15 +02:00
md5
bfef0f5a6f SCI: Fixed fading-related bugs #3267956 and #3041738 2011-04-03 19:02:14 +03:00
md5
6d90b0739a SCI: Show object names in the songlib console command 2011-04-03 19:01:20 +03:00
md5
9654068659 SCI: Fixed bug #3266480 and partially fixed bug #3041738
Hopefully, this will fix some of the oddities happening because of music fading
2011-04-03 14:37:15 +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
Max Horn
7b02dac3c5 ENGINES: Use Common::StackLock in more places 2011-03-23 15:25:46 +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
md5
d2acad39c8 SCI: Always clear looping and hold before jumpToTick() is called
Fixes a crash in LSL3 Amiga
2011-03-03 12:45:03 +02: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
d149405d79 SCI: Fixed bug #3039188 - "LSL2 Amiga: Failed to Initialize Sound Driver error"
This was a signed/unsigned issue. Also fixed compilation when DEBUG is
enabled. Thanks to waltervn for his help on this.
2011-03-01 16:28:08 +02:00