aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/sound_midi.cpp
AgeCommit message (Collapse)Author
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.
2010-12-01ALL: Fix a few typosJordi Vilalta Prat
svn-id: r54716
2010-10-28KYRA: Fix some code errors reported by ICC (i.e. subclasses not overwriting ↵Johannes Schickel
methods by missing a const.) svn-id: r53911
2010-09-15KYRA: Send GM reset on startup.Johannes Schickel
svn-id: r52737
2010-08-24KYRA: Cleanup.Johannes Schickel
svn-id: r52340
2010-07-21KYRA: Fix mute setting with MIDI and FM-Towns/PC98 output.Johannes Schickel
svn-id: r51105
2010-01-25Remove HACK, which is obsolete because of r47336.Johannes Schickel
svn-id: r47548
2010-01-17Delay the time a sysEx takes to send instead of the old (incorrect) way of ↵Johannes Schickel
delaying only 45ms between two sysEx calls. (Code thankfully borrowed from waltervn). svn-id: r47336
2010-01-01Fix out of bounds access reported by syke.Johannes Schickel
svn-id: r46844
2009-11-28LOL: completed support for floppy installer filesFlorian Kagerer
svn-id: r46174
2009-11-02Changed foo(void) to foo() in almost all non-backend source filesMax Horn
svn-id: r45616
2009-10-04Change a couple places from 'end of namespace' to 'End of namespace', for ↵Max Horn
consistency svn-id: r44634
2009-08-12Properly respect users sfx/music config settings for MIDI output.Johannes Schickel
svn-id: r43332
2009-06-29Removed more obsolete TODO messages.Johannes Schickel
svn-id: r41956
2009-05-29Output a warning to the user, when he tries to play back MT32 MIDI tracks ↵Johannes Schickel
with a General MIDI device. svn-id: r41012
2009-05-27- Moved Sound implementation declarations to the newly added file sound_intern.hJohannes Schickel
- Added support for PC Speaker sound in all Kyra1, Kyra2 and Lands of Lore - Slight cleanup svn-id: r40939
2009-05-22Add hack so LoL intro demo will init MT-32 properly.Johannes Schickel
svn-id: r40784
2009-05-22Use correct file for MT-32 initialization for Kyra2 SEQ player based Lands ↵Johannes Schickel
of Lore demo. svn-id: r40783
2009-05-22Oops typo.Johannes Schickel
svn-id: r40782
2009-05-22Properly initialize MT-32 for LoL demos.Johannes Schickel
svn-id: r40781
2009-01-01Whoa! Removing trailing spaces.Eugene Sandulenko
svn-id: r35648
2008-12-19KYRA: fix mt-32 sysex loading for LOL floppyFlorian Kagerer
svn-id: r35434
2008-12-14Added code to initialize MT-32 properly for Lands of Lore.Johannes Schickel
svn-id: r35347
2008-12-11Whoops changed integer size of variables storing volume information, now ↵Johannes Schickel
volume of 256 should work as expected. svn-id: r35303
2008-12-11Midi code now allows volume values to be [0, 256] instead of [0, 255] like ↵Johannes Schickel
before, thus removed the clipping the old code used. svn-id: r35302
2008-12-07Cleanup.Johannes Schickel
svn-id: r35273
2008-12-07Prevent MIDI files from being load, when they are already loaded.Johannes Schickel
svn-id: r35272
2008-11-30Fixed some looping MIDI sound effects.Johannes Schickel
svn-id: r35193
2008-11-30Added MIDI SFX Map, fixes SFX in HoF.Johannes Schickel
svn-id: r35181
2008-11-30- Extended MidiDriver::sysEx to allow 264 byte sysEx messagesJohannes Schickel
- Updated all drivers to allow 264+2 byte sysEx messages - Implemented sysEx processing for MT-32 for Kyra1 and HoF. MT-32 should now be working properly. svn-id: r35180
2008-11-30Cleanup.Johannes Schickel
svn-id: r35179
2008-11-30- Fix some valgrind warningsJohannes Schickel
- Added MIDI SFX support for Kyra2 svn-id: r35178
2008-11-30Implement fade out support for MIDI.Johannes Schickel
svn-id: r35177
2008-11-30Cleanup.Johannes Schickel
svn-id: r35175
2008-11-30Initial version of proper MIDI support for KYRA.Johannes Schickel
svn-id: r35174