Colin Snover
f1ca9ccc64
SCI32: Fix kSetLanguage
2017-01-09 19:38:59 -06:00
Colin Snover
f02107f682
SCI: Minor cleanup of kDoSound
...
Replaces unused kernel calls to use kEmpty, and set correct
signatures for SCI32 kernel calls.
2016-06-20 21:02:21 -05:00
Colin Snover
46551fd4b5
SCI32: Rewrite digital audio engine
...
This provides a complete implementation of kDoAudio through
SCI2.1mid, plus partial implementation of SCI3 features.
Digital audio calls shunted through kDoSound have also been
updated to go through the SCI32 audio mixer, though these shunts
are a bit hacky because the ScummVM implementation of kDoSound
does not currently match how SSCI kDoSound is designed.
It is probably possible in the future to just replace the SCI1.1
audio code (audio.cpp) with the new SCI32 code, since the major
differences seem to be that (1) SCI1.1 only supported one digital
audio playback channel (this is configurable already), (2) it
had extra commands for CD audio playback and queued sample
playback.
2016-06-20 21:02:21 -05:00
Colin Snover
5d3385750d
SCI: Split audio sync to its own class
...
SCI32 has its own audio handling code, but audio sync code is the
same as SCI16.
2016-06-19 14:48:33 -05:00
Martin Kiewitz
f3c2d7629d
SCI: Fix FM-Towns audio language selection
...
This first of all combines both detection entries and makes it
possible so that the user can directly choose English or Japanese
without having to add the game twice.
But it also fixes the in-game option to switch between English
and Japanese. Prior to this commit it was only possible to for
example switch from Japanese to English once, but it was not
possible to switch back without quitting the game and starting it
again.
2016-02-24 00:51:50 +01:00
Lars Skovlund
f7025c4cab
SCI: Make Pharkas CD opcodes return explicit values. Document.
2016-02-22 01:04:56 +01: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
Johannes Schickel
8fc7d60feb
SCI: Make GPL headers consistent in themselves.
2014-02-18 02:39:37 +01:00
Matthew Hoops
ee86e671f1
SCI: Fix Phantasmagoria Mac's kDoSound
2013-04-28 13:43:17 -04:00
Willem Jan Palenstijn
8d184cddf7
SCI: Add missing break
2013-04-15 21:35:18 +02:00
Filippos Karapetis
e7836beabb
SCI: Silence some very chatty warnings
...
Also, add an example room where kRemapToGray is called
2012-07-25 12:13:35 +03:00
Filippos Karapetis
0ccfd614aa
SCI: Add more verbose debug output for DoAudio in SCI2.1
2012-06-11 11:54:09 +03:00
athrxx
731382ad51
SCI: add Japanese detection entry for KQ5 FM-Towns and fix audio language handling
2011-11-01 20:29:53 +01: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
Filippos Karapetis
e4b46bd159
SCI: Added resource manager support for changing the audio directory dynamically. Also,
...
moved some audio-specific resource code inside resource_audio.cpp
This functionality is used by kSetLanguage(), called when switching the language in
MUMG Deluxe from the game's main menu.
svn-id: r55872
2011-02-10 16:48:29 +00:00
Max Horn
42ab839dd6
AUDIO: Rename sound/ dir to audio/
...
svn-id: r55850
2011-02-09 01:09:01 +00:00
Filippos Karapetis
c2acabd710
SCI2.1: Some functionality for Phantasmagoria 1 and MUMG Deluxe
...
- Added a stub for kSetLanguage, used in MUMG Deluxe - this needs support at the resource
manager level
- Made kGetSierraProfileInt a stub function (it's used in the Windows version of
Phantasmagoria 1 to override the video speed setting obtained from kGetConfig)
svn-id: r55161
2011-01-08 11:19:20 +00:00
Filippos Karapetis
32d7e687ee
SCI: debugC calls no longer require a debug level of 2 to show output
...
svn-id: r55086
2011-01-01 12:48:12 +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
5ca6b33ba7
SCI: Silenced some sound related warnings. Added an empty function for kDoSound(Restore), called when restoring games
...
svn-id: r51661
2010-08-02 21:20:43 +00:00
Filippos Karapetis
a9a0451b15
SCI: Updated some comments related to Freddy Pharkas and silenced warning for kDoAudio subop 13
...
svn-id: r51499
2010-07-30 07:11:57 +00:00
Martin Kiewitz
a24de29358
SCI: renaming kDoSound(resume) to resumeAfterRestore
...
kDoSound(resumeAfterRestore) is called right after restoring a saved game for sound-sci0 games, we already resume playing music inside restore, so we don't need to implement this at all
svn-id: r51058
2010-07-20 11:17:33 +00:00
Martin Kiewitz
ba776fb293
SCI: implemented subsignatures for kDoSound
...
svn-id: r50755
2010-07-09 12:06:41 +00:00
Martin Kiewitz
7e05d6e62b
SCI: part of subfunction signature&mapping implemented, little cleanup
...
svn-id: r50750
2010-07-08 21:22:59 +00:00
Martin Kiewitz
07fef4c6e6
SCI: hopefully fix build :P
...
svn-id: r50747
2010-07-08 18:38:15 +00:00
Martin Kiewitz
b877f3c711
SCI: sorted kernel map alphabetically
...
svn-id: r50746
2010-07-08 18:26:05 +00:00
Filippos Karapetis
9f1320d5cc
SCI: Made the SoundCommandParser a member of the SciEngine class and removed it from the EngineState, since it's static throughout the course of a game
...
svn-id: r50484
2010-06-29 09:00:08 +00:00
Filippos Karapetis
5855cd7127
The volume subop of kDoAudio returns the previous volume in SCI2.1, but not in earlier versions
...
svn-id: r50141
2010-06-22 15:01:45 +00:00
Matthew Hoops
727841ef91
In SCI32, kDoAudio subop 10 is no longer CD audio. Just stub it off for now.
...
svn-id: r50134
2010-06-21 22:58:33 +00:00
Max Horn
bb528d894c
SCI: Rewrap some overlong comments
...
svn-id: r50012
2010-06-18 09:37:06 +00:00
Filippos Karapetis
2d61dd8608
Fixed invalid memory access in SQ6
...
svn-id: r49986
2010-06-18 01:38:08 +00:00
Filippos Karapetis
9c1ec81d76
Strict mode: Turned several severe errors (almost all detection related) into errors, instead of warnings
...
svn-id: r49972
2010-06-17 23:45:38 +00:00
Filippos Karapetis
0e365131ac
Fixed wPlayAudio, and added some documentation on the 3 new kDoAudio subops. Digital sounds in Pharkas work again
...
svn-id: r49928
2010-06-17 12:29:58 +00:00
Filippos Karapetis
f4739f9f68
Added debug output to kDoAudio and some music commands. Also added a warning when an audio stream can't be created. Finally, the debug level of the MIDI parser debug output has been raised to 4, as it's too verbose
...
svn-id: r49605
2010-06-12 11:41:22 +00:00
Matthew Hoops
9f907aac09
kSciAudioWPlay should not actually play the song, but 'pre-load' it. We fake the pre-loading with a flag that will return 0 if the song has been called with kSciAudioWPlay. Fixes the dream sequence sound in MUMG.
...
svn-id: r49583
2010-06-10 20:26:59 +00:00
Filippos Karapetis
93f33c7dab
Resolved a FIXME with getSciLanguage(), by creating a separate setter. Also, some camelCase changes
...
svn-id: r49568
2010-06-10 11:18:10 +00:00
Filippos Karapetis
83f31e4e44
Added the number of parameters passed in unknown kDoAudio subops
...
svn-id: r49083
2010-05-18 15:52:45 +00:00
Max Horn
975dbef0e5
SCI: Remove sound/audio.h include from engine/state.h
...
svn-id: r48063
2010-02-15 00:20:53 +00:00
Filippos Karapetis
07e405588d
Moved the reference to AudioPlayer inside SciEngine (as it doesn't have a state, per se, and is static)
...
svn-id: r48059
2010-02-14 12:23:22 +00:00
Max Horn
b9a11ddb0b
SCI: Move language related code from EngineState to SciEngine
...
svn-id: r48052
2010-02-13 17:46:44 +00:00
Max Horn
9575cc08a2
SCI: Move GameFeatures from EngineState to SciEngine
...
svn-id: r48049
2010-02-13 17:44:58 +00:00
Max Horn
a82939c9be
SCI: Get rid of EngineState::resMan
...
svn-id: r48048
2010-02-13 17:44:19 +00:00
Filippos Karapetis
2fb37063a4
Placed all the game feature detection code in a separate class
...
svn-id: r47850
2010-02-03 11:02:43 +00:00
Matthew Hoops
12d983eaf4
Make EngineState::getLanguage() check from the resource manager as to what language it has loaded before checking from what ScummVM has set and make kDoAudio use EngineState::getLanguage()
...
svn-id: r47782
2010-01-31 22:14:35 +00:00
Walter van Niftrik
1d50acaa50
SCI: Handle -1 properly when passed as a language id to DoAudio
...
svn-id: r47774
2010-01-31 19:45:51 +00:00
Lars Skovlund
39ebb168a1
SCI: Make SQ6 sound work. The meaning of these extra parameters is not yet understood.
...
svn-id: r47660
2010-01-28 23:11:55 +00:00
Johannes Schickel
aed02365ec
Strip trailing spaces/tabs.
...
svn-id: r47541
2010-01-25 01:39:44 +00:00
Filippos Karapetis
84cd8d2dc7
Renamed /gui to /graphics and /sfx to /sound, to better illustrate their purpose
...
svn-id: r47007
2010-01-05 01:22:16 +00:00
Martin Kiewitz
44dc3f9bfb
SCI: kDoAudio now also clips volume and adjusts to mixer volume
...
svn-id: r46852
2010-01-01 21:26:46 +00:00