Commit Graph

1131 Commits

Author SHA1 Message Date
Matthew Hoops
10f7e805c2 VIDEO: Add volume/balance control to VideoDecoder 2012-05-28 14:00:16 -04:00
Travis Howell
586d9bf32f AGOS: Add comment about the limitations of quick loading/saving games in the AGOS game engine. 2012-04-15 19:24:57 +10:00
Travis Howell
d50e34c1bd AGOS: Expand fix for bug #3512776 - SIMON1DOS French: Subtitle glitch in introduction. 2012-04-02 23:08:31 +10:00
Travis Howell
2388477355 AGOS: Fix bug #3512776 - SIMON1DOS French: Subtitle glitch in introduction. 2012-04-01 11:15:10 +10:00
Travis Howell
7db3be8b4f AGOS: Add font data for French, German and Italian versions of Simon the Sorcerer 1 (Amiga).
Thanks to digitall for converting the font data from original.
2012-02-27 09:28:11 +01:00
Willem Jan Palenstijn
9ffe3e11d9 Merge pull request #182 from fingolfin/forbid-ctype
ALL: Avoid using is* macros from ctype.h
2012-02-21 11:33:32 -08:00
Max Horn
4f8665fc83 COMMON: Move isFoo functions to namespace Common, add doxygen comments 2012-02-20 16:18:27 +01:00
Max Horn
46321aacd8 AGOS: Cleanup 2012-02-16 11:12:35 +01:00
Max Horn
658080deed ALL: Avoid using is* macros from ctype.h
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
2012-02-15 16:51:37 +01:00
Johannes Schickel
827cdbd22e AGOS: Make ArchiveMan a proper sub-type of SearchSet.
Now all of the Archive API is implemented to avoid possibly inconsistent
behavior when an ArchiveMan object is accessed via a class type higher in the
class hierachy.
2012-01-27 20:35:34 +01:00
Johannes Schickel
a231f9d5dd AGOS: Rename ArchiveMan's open to createReadStreamForMember to match our Archive API. 2012-01-27 20:30:02 +01:00
Johannes Schickel
a7cc5bd301 AGOS: Properly overwrite hasFile from SearchSet in ArchiveMan.
Formerly the hasFile method was non-const, thus did not overwrite the virtual
hasFile method of SearchSet. Since all accesses to this function have been
done through a ArchiveMan typed variable, the missing overwrite should not
have caused any trouble.

It looks like this was forgotten in a6ec4f70da.
2012-01-27 20:10:31 +01:00
Johannes Schickel
baafd74b66 AGOS: Fix silly copy&paste mistake, which broke Vorbis and MP3 support. 2012-01-26 01:35:06 +01:00
Johannes Schickel
c82a75df69 AGOS: Rework digital sound playback.
The BaseSound class does now only save the sound filename instead of a file
handle. When a new sound is started a new file handle is created, which
assures that each sound uses a different file handle and thus allows for
directly streaming sounds from disk.

This fixes bug #3475610
"AGOS: Wrong sound effects during intro of Simon 2 (DOS)".
2012-01-26 01:01:41 +01:00
Andrea Corna
a6ec4f70da COMMON: Make more members of Archive constant. 2011-12-13 17:55:57 +01:00
Travis Howell
105c90b9d5 AGOS: Fix using saved games from the CD versions of Simon the Sorcerer 2, on the floppy disk versions of Simon the Sorcerer 2. 2011-11-19 17:05:23 +11:00
Strangerke
bab4b6f729 LAUNCHER: Introduce GUIO0() in order to replace GUIO1(GUIO_NONE) 2011-11-16 22:38:58 +01:00
D G Turner
783e3fea62 AGOS: Fix engine crash when playing Feeble Files from cabinet datafiles.
Playing with cabinet datafiles, this failed to find the "Charisma.smk"
file in the cabinets when in the Recreation (TV) room on Cygnus Alpha
and this caused an engine abort after the GUI dialog warning of the
"missing" video file. This was due to animation.cpp code using
Common::file::exists() instead of going via the ArchiveMan.

However,a hasFile() method implementation was also required to implement
fallback to decompressed (movie) files if the file requested is not in
the cabinet or the cabinet has been externally decompressed to files.

Thanks to fuzzie for the hasFile() patch.

Also, removed noisy warning which this correction triggers repeatedly in
installshield_cab.cpp hasFile(). This looks like leftover from
debugging, so not critical.
2011-11-13 23:44:38 +00:00
Travis Howell
b05187c1a7 AGOS: Merge duplicate code remaining from refactoring in the past. 2011-11-03 13:02:12 +11:00
Eugene Sandulenko
0e1affcc97 AGOS: Fix warnings 2011-11-02 22:55:58 +00:00
Strangerke
4e0c574fd2 LAUNCHER: Add GUIO_NOASPECT to agos 2011-10-24 00:57:30 +02:00
Eugene Sandulenko
32972a5ffb AD: Switched rest of the engines to new GUIO 2011-10-23 17:53:13 +01:00
Johannes Schickel
3e1405b939 AUDIO: Add default disposeAfterUse value to makeVOCStream again. 2011-10-09 21:24:06 +02:00
Johannes Schickel
221434a83f AUDIO: Remove unused makeVOCStream interface. 2011-10-09 21:23:29 +02:00
Travis Howell
d5a763b763 AGOS: Update MidiPlayer::~MidiPlayer() to match the default implementation. Hopefully will fix bug #3419778, thanks to digitall for the pointer. 2011-10-07 14:38:24 +11:00
Travis Howell
f20b8ecaa1 AGOS: Fix dumping all images option. 2011-10-07 00:04:08 +11:00
Travis Howell
460c4eca26 AGOS: Fix loading VGA files from InstallShield cab file. 2011-09-25 10:32:20 +10:00
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