aboutsummaryrefslogtreecommitdiff
path: root/engines/draci
AgeCommit message (Collapse)Author
2011-03-25AUDIO: Move more common code to Audio::MidiPlayerMax Horn
This also should fix some regressions from the previous commits, related to MidiParser's either being leaked, or being deleted and then used again (i.e., crashing). I tested as many games as I had available, but further testing of all affected engines is called for anyway.
2011-03-24DRACI: Change MusicPlayer to derive from Audio::MidiPlayerMax Horn
2011-03-24DRACI: Fix incorrect 'all notes off' handlingMax Horn
2011-03-23ENGINES: Remove unused MIDI pass-through codeMax Horn
2011-03-23ENGINES: Further simplify pseudo MidiDrivers; fix some regressionsMax Horn
The regression affected AGOS and maybe some others; specifically, the real MidiDriver would have been deleted twice -- I previously missed that the Engine instances takes care of freeing the real MidiDriver, not the MidiPlayer wrapping it. This commit should clarify the ownership of the real MidiDriver for most pseudo MidiDrivers.
2011-03-23AUDIO: Change several fake MidiDrivers to MidiDriver_BASE subclassesMax Horn
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-22AUDIO: Add pure virtual MidiDriver::isOpen() methodMax Horn
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-19DRACI: Respect global mute settingsdhewg
2011-03-19DRACI: Init volume levels on startupdhewg
2011-02-14DRACI: Adapt to setPalette RGBA->RGB.Johannes Schickel
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850
2011-02-07ALL: Fix whitespaces / indentionMax Horn
svn-id: r55818
2011-02-07COMMON: OSystem now has a PaletteManagerMax Horn
svn-id: r55806
2010-12-07DEBUG: Let GUI::Debugger::preEnter and postEnter (un)pause the engineMax Horn
svn-id: r54815
2010-11-19COMMON: Split common/stream.h into several headersMax Horn
svn-id: r54385
2010-11-18ENGINES: Do not use MemoryReadStream where (Seekable)ReadStream suffices; ↵Max Horn
avoid using 'using' svn-id: r54323
2010-11-07DRACI: Added basic debugging console to engineDavid Turner
Since DRACI uses Debug Channels, this allows for the interactive setting of debugflags as well as providing a base for adding further debugging commands. svn-id: r54116
2010-11-07ENGINES: Unify code layout of all ADParams instancesMax Horn
svn-id: r54105
2010-10-29DRACI: Switch to the new play time counting of the Engine class.Johannes Schickel
svn-id: r53925
2010-10-23ALL: Fix indention (whitespaces -> tabs)Max Horn
svn-id: r53738
2010-10-15ENGINES: Enhance namespace comments a bitMax Horn
svn-id: r53484
2010-09-15DRACI: Initialize MIDI channel volume properly.Johannes Schickel
This fixes bug #3067148 "DRACI: Volume range not respected". It seems Draci's MIDI files do not setup the channel volume properly before using the channels, but rely on having the maxed out. Since formerly the channel volume was initialized to 255, it caused the channel volume to be zero in case the user used 128 for his volume settings (128*255/255=128, and MIDI volume goes from 0-127). svn-id: r52738
2010-09-15MIDI: Send a reset MIDI device signal on startup.Johannes Schickel
This is currently done in the engine code. I adapted AGI, AGOS, DRACI, GROOVIE, LURE, MADE, QUEEN, SAGA, SKY, TINSEL and TOUCHE to send a reset device on startup. The sound output still works fine (started up a game from every engine), so this should hopefully not introduce any regressions. As far as I can tell it seems that SCUMM does send a proper device reset, so I did not touch it. KYRA only sends a proper reset for MT-32 currently. I am not sure about SCI though. This fixes bug #3066826 "SIMON: MIDI notes off when using RTL after SCI". svn-id: r52736
2010-08-17DRACI: Fix warningsEugene Sandulenko
svn-id: r52144
2010-08-03DRACI: recognize German translationRobert Špalek
svn-id: r51707
2010-07-29BUILD: Remove redundant MODULE_DIRS modificationMax Horn
svn-id: r51464
2010-07-14Changed abs() to ABS() in a few places.Torbjörn Andersson
svn-id: r50890
2010-07-03Finish support of compressed dubbingRobert Špalek
Now even the length of a compressed stream is measured precisely and the dubbing sounds exactly like the original. svn-id: r50618
2010-07-03Dragon History tries uses compressed dubbing when availableRobert Špalek
Timing of speaking is not fixed yet. svn-id: r50614
2010-07-01Fix a typo in the RAW format bugfix :-)Robert Špalek
svn-id: r50559
2010-07-01Fix playing RAW and RAW80 streamsRobert Špalek
svn-id: r50558
2010-07-01Implement playing RAW/MP3/OGG/FLAC dubbing from ZIP archives.Robert Špalek
Playing works well, but I am not enabling it in the game player yet, because I have not implemented measuring the time duration of compressed dubbing, which is needed in the (exclusively used) blocking mode. svn-id: r50543
2010-06-30Generalize the sound archive framework to be able to open new formatsRobert Špalek
svn-id: r50519
2010-06-28Fade palette in/out when entering/leaving a locationRobert Špalek
svn-id: r50409
2010-06-28bugfix for the item fast-switching commitRobert Špalek
svn-id: r50408
2010-06-28Implement shortcuts for switching items in the inventoryRobert Špalek
slash: switch between the last held item and normal mouse comma, period: replace the currently held item with the previous/next item in the inventory Also, commented a bit better what happens when ESCAPE is present with respect to map programs and cut-scenes. svn-id: r50407
2010-06-27Run possible cut-scenes before each location change.Robert Špalek
This is the behavior of the original player. It is not necessary to click on the hero. svn-id: r50361
2010-06-25AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either ↵Florian Kagerer
select MDT_PREFER_MT32 or MDT_PREFER_GM svn-id: r50288
2010-06-21Patch #1956501: "GUI/LAUNCHER: Midi device selection"Max Horn
svn-id: r50128
2010-06-15AdvancedDetector: Add new parameter directoryGlobs.Eugene Sandulenko
Without this parameter mass detection gave tons of false alarms. Use globbing for narrowing down the depth search. svn-id: r49788
2010-06-14Extended advancedDetector with depth parameter.Eugene Sandulenko
Now AD can search nested directories. By default it is turned off, but there is new parameter to ADParameters struct. Usually value of 2 is good enough for all purposes. svn-id: r49653
2010-05-04Reduce indirect header dependencies furtherMax Horn
svn-id: r48936
2010-05-04Move DebugChannel related code to new headerMax Horn
svn-id: r48935
2010-05-04Move initGraphics and initCommonGFX from to new header.Max Horn
These functions are only used internally be Engine subclasses, and by moving them to a separate header we can reduce indirect header dependencies. svn-id: r48934
2010-05-04Get rid of Engine::_gameDataDir.Max Horn
This greatly reduces indirect dependencies on several header files from common. svn-id: r48933
2010-04-27COMMON: Move DebugChannel stuff into a new DebugMan singletonMax Horn
svn-id: r48821
2010-04-19Fix static initializationRobert Špalek
svn-id: r48722
2010-04-12AUDIO: Rename Mixer::playInputStream to playStreamMax Horn
svn-id: r48637
2010-04-11Fix bug 2983187 on continuing palette changeRobert Špalek
svn-id: r48615
2010-04-02Fixed bug 2976767 on corrupted char glyphs.Robert Špalek
After unfinished translation of the game, several inaccessible characters have been left in the game files. Since the font does not contain all 256 characters, trying to draw them brings them random jump. I now properly skip these characters. svn-id: r48462