diff options
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/engine/game.cpp | 2 | ||||
-rw-r--r-- | engines/sci/engine/ksound.cpp | 30 | ||||
-rw-r--r-- | engines/sci/engine/savegame.cpp | 2 | ||||
-rw-r--r-- | engines/sci/engine/state.cpp | 4 | ||||
-rw-r--r-- | engines/sci/engine/state.h | 3 | ||||
-rw-r--r-- | engines/sci/sci.cpp | 3 | ||||
-rw-r--r-- | engines/sci/sci.h | 2 |
7 files changed, 22 insertions, 24 deletions
diff --git a/engines/sci/engine/game.cpp b/engines/sci/engine/game.cpp index 950041873e..db77724a57 100644 --- a/engines/sci/engine/game.cpp +++ b/engines/sci/engine/game.cpp @@ -301,7 +301,7 @@ int game_exit(EngineState *s) { // Reinit because some other code depends on having a valid state game_init_sound(s, SFX_STATE_FLAG_NOSOUND, g_sci->_features->detectDoSoundType()); #else - s->_audio->stopAllAudio(); + g_sci->_audio->stopAllAudio(); s->_soundCmd->clearPlayList(); #endif } diff --git a/engines/sci/engine/ksound.cpp b/engines/sci/engine/ksound.cpp index c5de72fc5a..caf9f6bcff 100644 --- a/engines/sci/engine/ksound.cpp +++ b/engines/sci/engine/ksound.cpp @@ -52,10 +52,10 @@ reg_t kDoCdAudio(EngineState *s, int argc, reg_t *argv) { uint32 startFrame = (argc > 2) ? argv[2].toUint16() * 75 : 0; uint32 totalFrames = (argc > 3) ? argv[3].toUint16() * 75 : 0; - return make_reg(0, s->_audio->audioCdPlay(track, startFrame, totalFrames)); + return make_reg(0, g_sci->_audio->audioCdPlay(track, startFrame, totalFrames)); } case kSciAudioStop: - s->_audio->audioCdStop(); + g_sci->_audio->audioCdStop(); if (getSciVersion() == SCI_VERSION_1_1) return make_reg(0, 1); @@ -67,10 +67,10 @@ reg_t kDoCdAudio(EngineState *s, int argc, reg_t *argv) { case kSciAudioResume: // This seems to be hacked up to update the CD instead of resuming // audio like kDoAudio does. - s->_audio->audioCdUpdate(); + g_sci->_audio->audioCdUpdate(); break; case kSciAudioPosition: - return make_reg(0, s->_audio->audioCdPosition()); + return make_reg(0, g_sci->_audio->audioCdPosition()); case kSciAudioRate: // No need to set the audio rate case kSciAudioVolume: // The speech setting isn't used by CD Audio case kSciAudioLanguage: // No need to set the language @@ -102,7 +102,7 @@ reg_t kDoAudio(EngineState *s, int argc, reg_t *argv) { uint16 module; uint32 number; - s->_audio->stopAudio(); + g_sci->_audio->stopAudio(); if (argc == 2) { module = 65535; @@ -118,21 +118,21 @@ reg_t kDoAudio(EngineState *s, int argc, reg_t *argv) { return NULL_REG; } - return make_reg(0, s->_audio->startAudio(module, number)); // return sample length in ticks + return make_reg(0, g_sci->_audio->startAudio(module, number)); // return sample length in ticks } case kSciAudioStop: - s->_audio->stopAudio(); + g_sci->_audio->stopAudio(); break; case kSciAudioPause: - s->_audio->pauseAudio(); + g_sci->_audio->pauseAudio(); break; case kSciAudioResume: - s->_audio->resumeAudio(); + g_sci->_audio->resumeAudio(); break; case kSciAudioPosition: - return make_reg(0, s->_audio->getAudioPosition()); + return make_reg(0, g_sci->_audio->getAudioPosition()); case kSciAudioRate: - s->_audio->setAudioRate(argv[1].toUint16()); + g_sci->_audio->setAudioRate(argv[1].toUint16()); break; case kSciAudioVolume: { int16 volume = argv[1].toUint16(); @@ -171,7 +171,7 @@ reg_t kDoSync(EngineState *s, int argc, reg_t *argv) { case kSciAudioSyncStart: { ResourceId id; - s->_audio->stopSoundSync(); + g_sci->_audio->stopSoundSync(); // Load sound sync resource and lock it if (argc == 3) { @@ -184,14 +184,14 @@ reg_t kDoSync(EngineState *s, int argc, reg_t *argv) { return s->r_acc; } - s->_audio->setSoundSync(id, argv[1], segMan); + g_sci->_audio->setSoundSync(id, argv[1], segMan); break; } case kSciAudioSyncNext: - s->_audio->doSoundSync(argv[1], segMan); + g_sci->_audio->doSoundSync(argv[1], segMan); break; case kSciAudioSyncStop: - s->_audio->stopSoundSync(); + g_sci->_audio->stopSoundSync(); break; default: warning("DoSync: Unhandled subfunction %d", argv[0].toUint16()); diff --git a/engines/sci/engine/savegame.cpp b/engines/sci/engine/savegame.cpp index 792f1c4392..7e713f3d81 100644 --- a/engines/sci/engine/savegame.cpp +++ b/engines/sci/engine/savegame.cpp @@ -944,7 +944,7 @@ void gamestate_restore(EngineState *s, Common::SeekableReadStream *fh) { } // Create a new EngineState object - retval = new EngineState(s->_voc, s->_segMan, s->_audio); + retval = new EngineState(s->_voc, s->_segMan); retval->_event = new SciEvent(); // Copy some old data diff --git a/engines/sci/engine/state.cpp b/engines/sci/engine/state.cpp index e78f7bce1d..01e7cdf76f 100644 --- a/engines/sci/engine/state.cpp +++ b/engines/sci/engine/state.cpp @@ -33,8 +33,8 @@ namespace Sci { -EngineState::EngineState(Vocabulary *voc, SegManager *segMan, AudioPlayer *audio) -: _voc(voc), _segMan(segMan), _audio(audio), _dirseeker() { +EngineState::EngineState(Vocabulary *voc, SegManager *segMan) +: _voc(voc), _segMan(segMan), _dirseeker() { #ifdef USE_OLD_MUSIC_FUNCTIONS sfx_init_flags = 0; diff --git a/engines/sci/engine/state.h b/engines/sci/engine/state.h index fc80b91c2c..7f5d3cb8c1 100644 --- a/engines/sci/engine/state.h +++ b/engines/sci/engine/state.h @@ -96,7 +96,7 @@ public: struct EngineState : public Common::Serializable { public: - EngineState(Vocabulary *voc, SegManager *segMan, AudioPlayer *audio); + EngineState(Vocabulary *voc, SegManager *segMan); virtual ~EngineState(); virtual void saveLoadWithSerializer(Common::Serializer &ser); @@ -111,7 +111,6 @@ public: SciEvent *_event; // Event handling - AudioPlayer *_audio; #ifdef USE_OLD_MUSIC_FUNCTIONS SfxState _sound; /**< sound subsystem */ int sfx_init_flags; /**< flags the sfx subsystem was initialised with */ diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp index e1cfacc8b4..2d4d59f3e4 100644 --- a/engines/sci/sci.cpp +++ b/engines/sci/sci.cpp @@ -180,8 +180,7 @@ Common::Error SciEngine::run() { _features = new GameFeatures(segMan, _kernel); - // We'll set the GUI below - _gamestate = new EngineState(_vocabulary, segMan, _audio); + _gamestate = new EngineState(_vocabulary, segMan); _gamestate->_event = new SciEvent(); if (script_init_engine(_gamestate)) diff --git a/engines/sci/sci.h b/engines/sci/sci.h index 088b4312bf..b376a7094d 100644 --- a/engines/sci/sci.h +++ b/engines/sci/sci.h @@ -212,11 +212,11 @@ public: GfxFrameout *_gfxFrameout; // kFrameout and the like for 32-bit gfx #endif + AudioPlayer *_audio; GameFeatures *_features; private: const ADGameDescription *_gameDescription; - AudioPlayer *_audio; ResourceManager *_resMan; /**< The resource manager */ EngineState *_gamestate; Kernel *_kernel; |