Age | Commit message (Collapse) | Author |
|
|
|
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.
|
|
|
|
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
And respect global mute settings
|
|
master
Conflicts:
backends/platform/android/android.cpp
engines/sci/graphics/screen.cpp
engines/sci/graphics/transitions.cpp
|
|
|
|
This change was not tested, because I do not have any touche copy.
|
|
svn-id: r55850
|
|
svn-id: r55806
|
|
ToucheEngine::res_loadBackdrop().
svn-id: r55385
|
|
svn-id: r54815
|
|
svn-id: r54385
|
|
Since TOUCHE uses Debug Channels, this allows for the interactive setting of debugflags as well as providing a base for adding further debugging commands.
svn-id: r54137
|
|
svn-id: r54105
|
|
svn-id: r53484
|
|
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
|
|
select MDT_PREFER_MT32 or MDT_PREFER_GM
svn-id: r50288
|
|
svn-id: r50128
|
|
svn-id: r49929
|
|
Without this parameter mass detection gave tons of false alarms.
Use globbing for narrowing down the depth search.
svn-id: r49788
|
|
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
|
|
svn-id: r48935
|
|
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
|
|
svn-id: r48821
|
|
svn-id: r48637
|
|
svn-id: r48287
|
|
svn-id: r48279
|
|
* now takes a SeekableReadStream *pointer* like (almost) all other
audiostream factories
* fix potential memory leak in it
* rename takeOwnershipOfStream to disposeAfterUse for consistency
svn-id: r48184
|
|
engines + GUI and proper keypad handling
svn-id: r48101
|
|
- Rename makeFlacStream to makeFLACStream.
svn-id: r47846
|
|
sound/decoders/
svn-id: r47579
|
|
svn-id: r47395
|
|
svn-id: r47334
|
|
any looping features anyway).
svn-id: r47066
|
|
stream specific looping code by generic code in Mixer...
- Adapted some existing AudioStreams to implement that interface (not tested!)
svn-id: r47013
|
|
svn-id: r46316
|
|
without details; help filling these out is welcome)
svn-id: r46128
|
|
svn-id: r43735
|
|
common/EventRecorder.[h/cpp]).
svn-id: r42751
|
|
graphics/font.cpp, and handle eos correctly in the FLAC code)
svn-id: r42488
|
|
svn-id: r41272
|
|
char pointers)
svn-id: r41000
|
|
deprecated; however, retained ioFailed in SeekableReadStream and File for now (so for now this mainly affects WriteStream subclasses)
svn-id: r40725
|
|
the meaning of the returned string, as discussed some time ago in scummvm-devel
svn-id: r39132
|
|
svn-id: r39003
|