Commit Graph

1104 Commits

Author SHA1 Message Date
Johannes Schickel
507b9a75e7 AGOS: Made some static data const. 2011-09-08 00:38:39 +02:00
Travis Howell
039805ad3b AGOS: Fix regression when starting Personal Nightmare, or disabling AGOS2. 2011-08-28 16:40:03 +10:00
Eugene Sandulenko
35aa235e4b Merge pull request #79 from clone2727/agos_cab
AGOS: Add support for loading data from Windows (InstallShield) installer archives
2011-08-27 08:21:57 -07:00
Travis Howell
5346ac18b7 AGOS: Integrate InstallShield support. 2011-08-27 11:00:24 -04:00
Travis Howell
5e174cbfe4 AGOS: Fix load/save issues in Waxworks, which were caused by error in loadRoomItems. 2011-08-27 10:46:54 +10:00
Johannes Schickel
f705a9b286 AGOS: Proper implementation of the Simon 1 demo aka Accolade MIDI parser.
This is based on the Elvira 1 demo.
2011-08-21 04:49:48 +02:00
Johannes Schickel
7173dbfd35 AGOS: Use delete instead of free on an C++ object.
This fixes some ugly valgrind warnings and some crashes when quitting AGOS
games for me.
2011-08-21 04:48:58 +02:00
Matthew Hoops
f91f0f2756 AGOS: Add an archive class for handling InstallShield Cabinets 2011-08-20 16:42:09 -04:00
Johannes Schickel
5a1f75eae3 AGOS: Slight cleanup.
Now AgosEngine::_language is of type Common::Language instead of uint16. It is
currently only used with values of that enumeration, thus it should be safe to
use that type for it too.
2011-08-20 19:30:18 +02:00
Eugene Sandulenko
52147dc0c0 AGOS: Switched pause dialog to getLanguageKeyYes usage 2011-08-20 12:52:34 +01:00
Filippos Karapetis
21b2a7064f Merge pull request #63 from tsoliman/detection-tables
Some missing ADGF_CD and ADGF_UNSTABLE flags
2011-08-13 12:24:30 -07:00
Ori Avtalion
c3cfdd36a5 AGOS: Fix struct/class mismatch 2011-08-09 00:52:33 +03:00
Christoph Mallon
a5a8833c05 COMMON: Add DisposablePtr<T>, which replaces many repeated implementations of a dispose flag. 2011-08-07 15:19:08 +02:00
Christoph Mallon
5f4d83c38d AGOS: Correct off-by-one error in range check for setting the debug level. 2011-08-07 15:19:07 +02:00
Christoph Mallon
0a458019b3 AGOS: Replace if-cascade by switch. 2011-08-07 15:19:07 +02:00
Christoph Mallon
23a0f5318c JANITORIAL: Remove trailing empty lines. 2011-08-07 13:53:33 +02:00
Tarek Soliman
79efb47cf6 AGOS: Flag CD titles with ADGF_CD 2011-08-06 23:32:37 -05:00
Eugene Sandulenko
6e795a89b0 AGOS: Reduced header dependency 2011-08-06 11:28:40 +01: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
Julien
a8b13e8a6b AGOS: Fix operator precedence warning 2011-06-23 15:11:36 +08: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
Johannes Schickel
0246bdf74e AGOS: Get rid of unused variable. 2011-06-18 19:56:07 +02:00
Max Horn
5455fc5ff4 AGOS: Replace vsprintf by Common::String::vformat 2011-06-18 01:36:15 +02:00
Max Horn
593b929047 DETECTOR: Separate code for handling obsolete gameids from advanced detector
This includes a renaming of ADObsoleteGameID to Engine::ObsoleteGameID,
and AdvancedDetector::findGameID now is Engines::findGameID.

Doxygen comments were added or improved
2011-06-14 18:52:07 +02:00
Max Horn
7c992d6598 DETECTOR: Merge ADParams into AdvancedMetaEngine 2011-06-14 18:17:01 +02:00
Thierry Crozat
06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00
Max Horn
58c36801f4 AGOS: 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
md5
c713628721 AGOS: Silenced a false positive warning in MSVC 2011-05-29 19:48:47 +03:00
Matthew Hoops
9539017ee3 ALL: initialise -> initialize 2011-05-25 11:17:11 -04:00
Matthew Hoops
eea482fa43 ALL: behaviour -> behavior 2011-05-25 10:50:46 -04:00
Max Horn
183e018c19 AGOS: cleanup 2011-05-17 15:36:25 +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
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Johannes Schickel
71bdb86e02 Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".
For further discussion check here:
https://github.com/scummvm/scummvm/pull/16

Conflicts:
	graphics/png.cpp
2011-05-01 16:54:45 +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
Max Horn
73f04118f3 COMMON: Rename Error to ErrorCode, introduce new Error class 2011-04-18 18:22:02 +02:00
Johannes Schickel
2e0db94f04 AGOS: Prefer Surface::create taking a PixelFormat over the one taking a byte depth. 2011-04-17 16:25:10 +02:00
Max Horn
2e095e25f2 ALL: centre -> center 2011-04-14 14:34:28 +02: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
dhewg
d83a83ef50 JANITORIAL: Remove/comment unused vars
Found by GCC 4.6's -Wunused-but-set-variable
2011-03-29 21:57:56 +02:00
Max Horn
088bd7a70b ENGINES: Remove unused MIDI pass-through code 2011-03-23 17:07:48 +01:00
Max Horn
e70fd59b35 ENGINES: Further simplify pseudo MidiDrivers; fix some regressions
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-23 16:49:41 +01:00
Max Horn
29847ea42d AUDIO: Change several fake MidiDrivers to MidiDriver_BASE subclasses
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-23 15:25:47 +01:00
Max Horn
2bc842dcee AGOS: Sanitize the mutex locking in MidiPlayer::startTrack 2011-03-23 15:25:46 +01:00
Max Horn
8982fff1b7 AUDIO: Add pure virtual MidiDriver::isOpen() method
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-22 23:51:47 +01:00
dhewg
f8271e0d07 AGOS: Cleanup syncSoundSettings() 2011-03-19 15:33:34 +01:00
Ori Avtalion
ee3e08bbc2 AGOS: Avoid hiding overloaded virtual methods 2011-02-27 21:25:05 +02:00
dhewg
bd191e1787 AGOS: Respect the screen pitch for movies
Fixes DXA and Smacker movies on Android
2011-02-26 11:58:41 +01:00