aboutsummaryrefslogtreecommitdiff
path: root/engines/agi
AgeCommit message (Collapse)Author
2011-05-25AGI: Fix compilation on 64 bit platformsWillem Jan Palenstijn
I'm unable to test this change, but it avoids using a pointer to store an int temporarily.
2011-05-25Merge pull request #9 from tiqpit/a2gsEugene Sandulenko
AGI: Fix //gs output
2011-05-25ALL: behaviour -> behaviorMatthew Hoops
2011-05-23COMMON: Add exit() to list of forbidden symbolsMax Horn
2011-05-18AGI: Constify stuffMax Horn
2011-05-17AGI: CleanupWillem Jan Palenstijn
2011-05-17AGI: Unify RandomSource instantiationMax Horn
This fixes a leak in PreAGI games (which never deleted their RandomSource), ensures that PreAGI's RandomSource has a name (and hence is registered with the event recorder) and even slightly simplifies the AgiEngine destructor.
2011-05-17COMMON: Registers RandomSources in constructor with the event recorderMax Horn
This also removes the dependency of engines on the event recorder header and API, and will make it easier to RandomSources that are not properly registered.
2011-05-16ENGINES: Unify engine namesThierry Crozat
This unifies the engine names in MetaEngine::getName() and the credits. In particular drop "Engine" or "engine" from the names when it was present and use expanded names in credits when the MetaEngine uses it (e.g. "Beneath a Steel Sky" instead of "BASS").
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-05-07AGI: Replace Winnie macros with functionsMatthew Hoops
From patch #3298149
2011-05-02ALL: Mark printf and various other symbols as forbiddenMax Horn
Right now, a few places in the frontend code still use printf and consorts. We mark the affected files with a FIXME for now, and add a dedicated exception for each. To be fixed! Also tweak FORBIDDEN_SYMBOL_REPLACEMENT to hopefully really always enforce a compiler error
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-04-28JANITORIAL: Format forward declarations to follow conventionOri Avtalion
2011-04-24AGI: Fix bug #3087825: AGI: Code analysis warningsEugene Sandulenko
2011-04-18COMMON: Rename Error to ErrorCode, introduce new Error classMax Horn
2011-04-14ALL: centre -> centerMax Horn
2011-04-14ALL: colour -> colorMax Horn
2011-04-12AGI: More formatting changes...Jussi Pitkanen
2011-04-12AGI: Use delete[] instead of delete for arraysJussi Pitkanen
2011-04-12AGI: FormattingJussi Pitkanen
2011-04-12COMMON: Replace MKID_BE by MKTAGMax Horn
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.
2011-04-10AGI: Detect swap mode correctly for Apple IIGS instruments.Jussi Pitkanen
Also add comments describing which instruments use swap mode or vibrato, plus print debug messages when those instruments are actually being played.
2011-04-09AGI: Cleanup sound_2gs.*Jussi Pitkanen
2011-04-09AGI: Let games start playing a new sound even if another one is still playing.Jussi Pitkanen
2011-04-09AGI: Refactor and fix Apple IIGS sound generatorJussi Pitkanen
Make the player be centered on a fixed number of "generators" instead of MIDI channels that arbitrarily allocate generators for notes. Make the audio stream to be stereo and for sample rate use _sampleRate. Rewrite the synthesis core: * Make generators use both oscillators * Implement swap mode for oscillators * Fix envelope update frequency
2011-04-04AGI: Avoid global constructors (due to global refs)Max Horn
2011-04-03AGI: Added the Spanish version of SQ2 (bug report #3260349)md5
2011-03-28AUDIO: Add Audio::MidiPlayer::createDriver(), let some engines use itMax Horn
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-24AGI: Change SoundGenMIDI to derive from Audio::MidiPlayerMax Horn
As a side effect, this fixes the incorrect handling of 'All Note Off' in SoundGenMIDI::send.
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-19PREAGI: Cleanup volume levels initializationdhewg
2011-03-16AGI: Remove newlines from debug()dhewg
2011-03-05AGI: Kill the timer based counterdhewg
Using the timer mechanism for just a simple counter is not just overkill, its also inaccurate. When using a call frequency of x, and waiting for y callbacks, the passed time will not be x*y. The problem amplifies on slower platforms and/or fair thread schedulers. Use absolute times instead. Most notably, the walking speed of the avatar is now smooth on android, but probably on all other handhelds we support too.
2011-02-28AGI: Add detection for the 'AGI Combat' fan gameMatthew Hoops
2011-02-20AGI: Remove leftover RGBA reference in comments.Johannes Schickel
2011-02-14AGI: Adapt to setPalette RGBA->RGB change.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
2011-01-06AGI: Rewrote predictive code matcherMax Horn
The new code is simpler, avoids a potential buffer overrun (by avoiding to to use a buffer in the first place), and hopefully has slightly more sane matching properties. svn-id: r55135
2011-01-05AGI: cleanupMax Horn
svn-id: r55124
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-19ALL: Push down deps on stream.h from .h to .cpp filesMax Horn
svn-id: r54358
2010-11-07COMMON: Rename and tweak MD5 functionsMax Horn
* names now comply to our naming conventions * the function computeStreamMD5AsString which computes the MD5 as a hex string now returns it as a Common::String * add doxygen comments svn-id: r54121