Commit graph

54 commits

Author SHA1 Message Date
Filippos Karapetis
32ec1b9258 SAGA: Use C++ 11 range-based for loops 2025-03-27 13:47:57 +08:00
Le Philousophe
f58b045ec8 SAGA: Migrate engine to Path 2023-12-24 13:19:25 +01:00
PushmePullyu
d2745ff37f SAGA: Fix memory and file handle leak in loadResource
Fixes #14334
2023-05-27 11:06:08 +03:00
Vladimir Serbinenko
302a5eb0af SAGA: Don't close file even after it was overriden by a patch
Now the file handle is shared among the readers of the same context,
so closing it will close it for all user which leads to a crash.
2023-01-07 02:38:07 +02:00
Vladimir Serbinenko
0b8d67ff8d SAGA: Remove contextOffset/contextSize
It was used only in now defunct custom macbinary parser
2022-12-18 20:46:34 +01:00
Vladimir Serbinenko
7b9f0ab75d SAGA: Switch from custom macbinary parser to MacResManager
This makes it compatible with other resource fork formats after
update of detection entries
2022-12-18 20:46:34 +01:00
Vladimir Serbinenko
1451f5b103 SAGA: Remove hardcoded voice and sound indices 2022-12-17 15:39:26 +01:00
Vladimir Serbinenko
411f2f096b SAGA: Read voice and sound index from .exe instead of hardcoding it 2022-12-17 15:39:26 +01:00
Vladimir Serbinenko
486856168b SAGA: Add voice support for ITE Amiga 2022-12-14 17:42:20 +01:00
Vladimir Serbinenko
18dba11f3b SAGA: Support SFX for Amiga version 2022-12-14 17:42:20 +01:00
Vladimir Serbinenko
50be5b017e SAGA: Support music for ITE Amiga 2022-12-14 13:50:10 +01:00
Vladimir Serbinenko
a173ca1b31 SAGA: Support crunched resources 2022-12-05 08:15:33 +02:00
Vladimir Serbinenko
0a82b83344 SAGA: Support amiga floppy uncompressed resources 2022-12-05 08:15:33 +02:00
Cameron Cawley
89c71ebaa7
SAGA: Move extra tables out of the detection plugin 2022-11-15 22:46:23 +02:00
Vladimir Serbinenko
8fde889532 SAGA: Support reading Amiga resources 2022-11-14 00:27:33 +01:00
Le Philousophe
d5b55b667f SAGA: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
44870b1ad6 SAGA: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
2930d37788 SAGA: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Coen Rampen
d6b0b78ae3 SAGA: Allow use of non-resource files for detection
The engine expected all files listed in the detection entries to be resource
files. This commit adds the option to use a non-resource file for detection.
This is needed to use a MID file to detect one of the Windows versions of
Inherit the Earth.
2021-10-05 20:37:05 +02:00
Filippos Karapetis
e9c60720c0 SAGA: Remove SAGA2 references, code and stubs
All SAGA2 game development will continue in the new SAGA2 engine
2021-07-01 16:23:48 +03:00
Eugene Sandulenko
d33683558e SAGA: Added support for ITE GOG Mac CD v1.1 2020-09-17 22:08:25 +02:00
Filippos Karapetis
0d926f9aaf SAGA: Cleanup 2014-07-20 21:18:40 +03:00
Johannes Schickel
c1be2aedbb SAGA: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
Johannes Schickel
3d9d7ab4f8 SAGA: Silence C++11 narrowing warnings. 2013-01-09 07:24:37 +01:00
Filippos Karapetis
0d3a2267c7 SAGA: Removed several game flags, which are now found more reliably on the fly
- The logo screens of all ITE versions are shown correctly now
- Wyrmkeep versions, demo versions with scene substitutes, demos with
mono music and demo versions with LE VOX encoded voices are all found
automatically now
2011-07-09 15:59:30 +03:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Filippos Karapetis
83d7ac7e1f SAGA: Fixed some typos, and removed an obsolete comment
svn-id: r55679
2011-01-31 11:45:24 +00:00
Filippos Karapetis
8bd7ace4d2 SAGA: Split the resource patching code into appropriate game-specific resource methods
svn-id: r55678
2011-01-31 11:40:40 +00:00
Filippos Karapetis
90d58cf487 SAGA: Rewrote the MacBinary resource loading code
This simplifies the overall code and makes it easier to understand. Also, a bug with the
speech in the MacBinary packed version has been corrected, so there are no more clicking
sounds before each sample.
The Common::MacResMan code isn't really useful here, since it doesn't expose the offsets
and sizes of the actual files, which is what is needed in SAGA.

svn-id: r55674
2011-01-31 10:46:52 +00:00
Max Horn
a008d14055 ENGINES: Do not use MemoryReadStream where (Seekable)ReadStream suffices; avoid using 'using'
svn-id: r54323
2010-11-18 16:38:03 +00:00
Andrew Kurushin
67cc1b8a84 SAGA: replace Resource:loadResource malloc with ByteArray class
svn-id: r53779
2010-10-24 22:17:44 +00:00
Andrew Kurushin
9f2e7d5ff5 SAGA: fix gcc size_t warns
svn-id: r53722
2010-10-22 23:33:56 +00:00
Andrew Kurushin
f24394b85f SAGA: replace Actor::_pathCell, Anim::*, Converse::text, IsoMap::*, Music::_songTable, ObjectMap::*, PalAnim::*, Scene::sceneLut, SndRes::_fxTable* malloc based arrays with Common::Array implementation
add ByteArray type
fix debug Tile Hittest frame drawing
debug 0x%x => 0x%X

svn-id: r53719
2010-10-22 23:13:17 +00:00
Torbjörn Andersson
30db851ef0 SAGA: Fix wrong logo animation in some versions of ITE
Not all releases put the Wyrmkeep credits patch in a "graphics"
sub-directory, so assume it could be anywhere.

svn-id: r52930
2010-09-28 18:55:54 +00:00
Torbjörn Andersson
2d82cc385d SAGA: Fix an ITE intro regression
(Possibly related to bug #3076822 - ITE: Dialog repeats in intro.)

The p2_a.voc patch file wasn't played. This was because the engine
first loaded p2_a.voc as a replacement for voice resource 4. Then it
tried to load p2_a.iaf and, when it failed, removed the patch data
for the very same resource. Now it only tries to read a patch if it
hasn't already found a patch for the resource. (There may have been a
similar bug in the end credits as well.)

svn-id: r52928
2010-09-28 18:15:25 +00:00
Filippos Karapetis
ed41d797ef Wrapped some IHNM-specific code around appropriate ifdef's
svn-id: r46749
2009-12-30 15:24:16 +00:00
Andrew Kurushin
9511b474dc fix resource refactor regression
svn-id: r46659
2009-12-27 20:56:10 +00:00
Johannes Schickel
4c6fdce020 Fix warning.
svn-id: r46260
2009-12-04 19:58:10 +00:00
Torbjörn Andersson
01e12310ae Silenced GCC warnings.
svn-id: r46258
2009-12-04 19:00:40 +00:00
Andrew Kurushin
aa147a2f5a refactor resource module:
- struct ResourceContext => class ResourceContext
- replace "*alloc","free" with array templates
- simplify createContexts routines

svn-id: r46254
2009-12-04 17:52:42 +00:00
Eugene Sandulenko
12828d3aaf Cache resource file size to avoid excess file->size() calls.
svn-id: r46138
2009-11-25 20:43:49 +00:00
Torbjörn Andersson
1a0dea396d Made the music and sound file names part of the class, instead of local
variables. This fixes another Valgrind warning when SndRes::load() tries to
access the file names. (I could also have made the variables static, but I've
never been very fond of static variables.)

svn-id: r39641
2009-03-23 20:25:25 +00:00
Filippos Karapetis
9d7111006d - Reworked the different file types a bit
- Some initial work on Dinotopia's intro sequence

svn-id: r39234
2009-03-08 15:39:19 +00:00
Max Horn
28cf213605 Moved AdvancedDetector from common/ to engines/
svn-id: r36132
2009-01-29 22:13:01 +00:00
Filippos Karapetis
e2e536ae18 Fixed regression: the ITE Mac version works correctly again
svn-id: r35749
2009-01-06 10:33:40 +00:00
Filippos Karapetis
203358bcb7 Improved handling of sound resources
svn-id: r35724
2009-01-04 14:38:03 +00:00
Filippos Karapetis
90d762c261 Wrapped more engine-specific code around appropriate ifdefs
svn-id: r35679
2009-01-02 19:10:51 +00:00
Filippos Karapetis
14434659bc - Removed game sound information for sound types that it can be determined automatically. The game sound information left is now used as override info for certain sound types (e.g. PCM)
- Added stubs for Shorten audio type, used in SAGA2 games

svn-id: r35616
2008-12-29 18:35:18 +00:00
Filippos Karapetis
9a5f45a40c - IHNM Mac loads correctly again
- Removed isBigEndian from GameSoundInfo
- Removed GF_BIG_ENDIAN_DATA
- Stopped loading the options panel for non-interactive ITE demos (it doesn't exist)
- Fixed crash when exiting from non-interactive ITE demos

svn-id: r35615
2008-12-29 17:30:29 +00:00