Age | Commit message (Collapse) | Author |
|
|
|
|
|
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
|
|
Found by GCC 4.6's -Wunused-but-set-variable
|
|
|
|
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.
|
|
|
|
|
|
Fixes DXA and Smacker movies on Android
|
|
|
|
I only (minimally) tested this change with Simon 1 + 2 DOS CD.
|
|
svn-id: r55850
|
|
svn-id: r55843
|
|
svn-id: r55842
|
|
svn-id: r55818
|
|
svn-id: r55806
|
|
Found with Valgrind.
svn-id: r55559
|
|
These were identified with Valgrind.
svn-id: r55558
|
|
svn-id: r55479
|
|
svn-id: r55473
|
|
svn-id: r54927
|
|
svn-id: r54815
|
|
svn-id: r54385
|
|
Only changed this in engines where 'color' was/is already used
almost exclusively
svn-id: r54288
|
|
svn-id: r54148
|
|
This commit contains the AudioCDManager changes from the gsoc2010-opengl
branch. The other changes in that branch are restricted to the backends
directory only (plus configure).
The Nintendo DS and Dreamcast ports still need to be ported over to
the new Audio CD system, but that should be fairly easy to do.
svn-id: r54147
|
|
Adventures for now.
svn-id: r54084
|
|
svn-id: r54031
|
|
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.
The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.
svn-id: r54004
|
|
svn-id: r54001
|
|
svn-id: r53503
|
|
svn-id: r53484
|
|
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.
Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.
svn-id: r53399
|
|
We want the WAV stream in playSounData() to contain the entire WAV
data, but the size we read does not include the eight first bytes.
svn-id: r52908
|
|
carcass.
svn-id: r52906
|
|
svn-id: r52904
|
|
This should improve r52751, since String does automatic memory handling, thus
no more buffer overflows should by possible by having a too large translated
string.
svn-id: r52758
|
|
svn-id: r52751
|
|
Also improve and update the french translation.
svn-id: r52740
|
|
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
|
|
This prevents accidental implicit rounding
and might also fix compilation on AmigaOS4 (bug #3060981).
svn-id: r52616
|
|
svn-id: r52464
|
|
svn-id: r51495
|
|
svn-id: r51102
|
|
svn-id: r51100
|
|
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
document it.
* Add more doxygen comments
* Cleanup
svn-id: r50963
|
|
svn-id: r50929
|