Commit Graph

938 Commits

Author SHA1 Message Date
Matthew Hoops
b4f4fd6b00 AGI: Cleanup some Winnie string code 2011-07-03 13:49:28 -04:00
Matthew Hoops
c2be473ce2 AGI: Fix some memset calls
Spotted by both salty-horse and LordHoto using clang
2011-07-03 13:49:28 -04:00
Littleboy
b694a78f62 ANALYSIS: Add static casts to is* functions
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
2011-06-23 08:52:52 -04:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Max Horn
71ea5acd29 AGI: Replace vsprintf by Common::String::vformat 2011-06-18 01:36:15 +02:00
Max Horn
879c3c7817 DETECTOR: Pass allFiles to AdvancedMetaEngine::fallbackDetect()
Also reorder the parameters of composeFileHashMap, placing the "return value"
first.
2011-06-14 18:52:11 +02:00
Max Horn
7c992d6598 DETECTOR: Merge ADParams into AdvancedMetaEngine 2011-06-14 18:17:01 +02:00
Max Horn
a9b49fbc66 AGI: Switch to alternate AdvancedMetaEngine, avoid ADParams 2011-06-10 22:15:40 +02:00
Max Horn
4827cc914a ENGINES: Change incorrect use of 'target' to 'gameid' 2011-06-10 22:15:40 +02:00
eriktorbjorn
0c1665820b AGI: Experimental fix for bug #3292778 ("SQ2: Music missing notes")
The idea here is that if two voices are generating the same tone,
the square wave generator should be in sync so that the wave forms
amplify each other, rather than cancelling each other out.
2011-06-10 19:41:31 +02:00
D G Turner
b5bb412569 AGI: Numeric Keypad Control in Predictive Dialog (Bug #3309376)
In AGI games, the numeric keypad is used as an alias for cursor keys to
allow stationary and 8 directional input, but while the predictive
dialog is open, this is more sensibly mapped to numeric input to
allow use of the predictive input on desktop ports.
2011-06-08 04:16:54 +01:00
D G Turner
e3a409b9a4 AGI: Fix Engine Exit While Predictive Dialog Is Open. 2011-06-08 03:38:52 +01:00
D G Turner
dbaf9e49c7 AGI: Fix Broken Predictive Text Input.
This was a regression introduced by
4b2f92b5e5 (r55135)
2011-06-08 03:13:13 +01:00
Max Horn
5faa7e3a53 AGI: Fix type mismatch (see bug #3311198) 2011-06-03 23:17:26 +02:00
Max Horn
e364072091 Remove accidentally added file *sigh* 2011-06-03 18:21:00 +02:00
Max Horn
11bd6da595 SCI: Switch some char* to Common::String& 2011-06-03 16:16:38 +02:00
D G Turner
305c6b4d83 AGI: Replace snprintf() usage with Common::String::format()
Safer and less portability issues.
2011-06-02 19:46:55 +01:00
Max Horn
477d6233c3 ENGINES: Change 2nd param of Engine::saveGameState to Common::String 2011-06-02 18:31:59 +02:00
Willem Jan Palenstijn
218d82c62b AGI: Fix compilation on 64 bit platforms
I'm unable to test this change, but it avoids using a pointer to store
an int temporarily.
2011-05-25 22:45:21 +02:00
Eugene Sandulenko
ed9768fde3 Merge pull request #9 from tiqpit/a2gs
AGI: Fix //gs output
2011-05-25 10:00:26 -07:00
Matthew Hoops
eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
Max Horn
6c5f50c246 COMMON: Add exit() to list of forbidden symbols 2011-05-23 19:39:26 +02:00
Max Horn
39ab4a2dc4 AGI: Constify stuff 2011-05-18 13:06:33 +02:00
Willem Jan Palenstijn
72acac58b6 AGI: Cleanup 2011-05-17 21:21:51 +02:00
Max Horn
44b798d107 AGI: Unify RandomSource instantiation
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-17 12:17:27 +02:00
Max Horn
4cbe4ede66 COMMON: Registers RandomSources in constructor with the event recorder
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-17 12:17:26 +02:00
Thierry Crozat
3c59e37035 ENGINES: Unify engine names
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-16 00:11:32 +01:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Matthew Hoops
8dd17a2ae1 AGI: Replace Winnie macros with functions
From patch #3298149
2011-05-07 15:25:55 -04:00
Max Horn
59e77ed667 ALL: Mark printf and various other symbols as forbidden
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-05-02 16:31:31 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Ori Avtalion
cd6ee0589d JANITORIAL: Format forward declarations to follow convention 2011-04-28 12:20:34 +03:00
Eugene Sandulenko
52c05acd95 AGI: Fix bug #3087825: AGI: Code analysis warnings 2011-04-24 12:28:22 +03:00
Max Horn
73f04118f3 COMMON: Rename Error to ErrorCode, introduce new Error class 2011-04-18 18:22:02 +02:00
Max Horn
2e095e25f2 ALL: centre -> center 2011-04-14 14:34:28 +02:00
Max Horn
84184aabc0 ALL: colour -> color 2011-04-14 14:12:35 +02:00
Jussi Pitkanen
40b0d468e3 AGI: More formatting changes... 2011-04-12 18:40:43 +03:00
Jussi Pitkanen
40394431dc AGI: Use delete[] instead of delete for arrays 2011-04-12 18:22:24 +03:00
Jussi Pitkanen
506f3bdc10 AGI: Formatting 2011-04-12 18:07:35 +03:00
Max Horn
0ce2ca4e00 COMMON: Replace MKID_BE by MKTAG
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-12 16:53:15 +02:00
Jussi Pitkanen
d099ad3a48 AGI: Detect swap mode correctly for Apple IIGS instruments.
Also add comments describing which instruments use swap mode or vibrato,
plus print debug messages when those instruments are actually being played.
2011-04-10 17:27:07 +03:00
Jussi Pitkanen
4b3f081ee0 AGI: Cleanup sound_2gs.* 2011-04-09 19:11:25 +03:00
Jussi Pitkanen
fbb2d4d6cc AGI: Let games start playing a new sound even if another one is still playing. 2011-04-09 19:09:29 +03:00
Jussi Pitkanen
d660b7f78d AGI: Refactor and fix Apple IIGS sound generator
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-09 00:48:26 +03:00
Max Horn
b188e60f44 AGI: Avoid global constructors (due to global refs) 2011-04-04 09:53:26 +02:00
md5
101d4b66e2 AGI: Added the Spanish version of SQ2 (bug report #3260349) 2011-04-03 19:11:49 +03:00
Max Horn
8c931fd1e8 AUDIO: Add Audio::MidiPlayer::createDriver(), let some engines use it 2011-03-28 18:06:36 +02:00
Max Horn
7949d7c6de AUDIO: Move more common code to Audio::MidiPlayer
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-25 14:15:53 +01:00
Max Horn
f4b30ecf6e AGI: Change SoundGenMIDI to derive from Audio::MidiPlayer
As a side effect, this fixes the incorrect handling of 'All Note Off'
in SoundGenMIDI::send.
2011-03-24 16:46:46 +01:00
Max Horn
088bd7a70b ENGINES: Remove unused MIDI pass-through code 2011-03-23 17:07:48 +01:00