Commit Graph

94 Commits

Author SHA1 Message Date
Travis Howell
31e7efc167 Remove debug left over
svn-id: r23172
2006-06-18 10:54:54 +00:00
Travis Howell
49b3f8f539 Add alternative method to prevent debug code of scripts been triggered in lost. Fixes regressions when convertFilePath() is used by some HE games
svn-id: r23171
2006-06-18 10:46:22 +00:00
Travis Howell
40bfc71de8 Fix rects in HE games, when positions are set by scripts
svn-id: r23146
2006-06-16 13:14:55 +00:00
Torbjörn Andersson
94de874087 Since setCursorHotspot() does not update the cursor (should it?), we have to
call it before setCursorFromBuffer(), not afterwards. This fixes the cursor
hotspot being temporarily wrong in HE games that use loadWizCursor().

svn-id: r23094
2006-06-13 18:37:40 +00:00
Torbjörn Andersson
df4f95f805 Let the [cursor] palette manager handle disableCursorPalette() too, to avoid
cursor glitch in at least some HE games which first set a cursor palette, and
then disable it. (The disabled palette would be re-enabled after dismissing the
GUI.)

svn-id: r23081
2006-06-13 09:48:46 +00:00
Travis Howell
afe07d82c0 Use convertFilePath for HE6x games too, for safety
svn-id: r22994
2006-06-09 09:01:06 +00:00
Travis Howell
f571c471cc Add DOS and Macintosh versions of Putt-Putt & Fatty Bear's Activity Pack
svn-id: r22991
2006-06-09 08:06:38 +00:00
Travis Howell
04d8cef848 Minor cleanup
svn-id: r22950
2006-06-06 04:33:09 +00:00
Torbjörn Andersson
2f51f40c11 Downgraded startHETalkSound() error (when the speech file isn't open) to a
warning, since it happens on the Pajama Sam's Lost & Found demo's main menu
screen.

svn-id: r22593
2006-05-24 03:56:48 +00:00
Max Horn
e4ab8000f0 Pass values by-reference, using C++ references, and not by using pointers
svn-id: r22548
2006-05-20 15:09:15 +00:00
Torbjörn Andersson
05814a1458 Apparently, passing a file handle directly to a function causes that file
handle (a copy of the original?) to be destroyed at the end of the function,
and that closes the internal file handle, even though we want it to stay open.

Who am I to argue with how C++ handles its parameters? I've simply changed the
functions to take pointers to file handles instead. Seems to fix crashes in the
Macintosh resource extractor for me.

svn-id: r22546
2006-05-20 13:59:31 +00:00
Torbjörn Andersson
6cdd98b617 After the GUI has finished, restore the old cursor palette (if any). For this
to work, cursor palette now has to be set using the new "palette manager". See
graphics/paletteman.cpp

svn-id: r22543
2006-05-20 10:59:25 +00:00
Travis Howell
4c67122463 Avoid closing a video file in HE games twice
svn-id: r22396
2006-05-08 22:53:09 +00:00
Travis Howell
3f9395831c Fix regression in lost, the middle directories were removed
svn-id: r22388
2006-05-08 13:10:49 +00:00
Travis Howell
ca513f7e66 Fix off by one in rect when capturing image
svn-id: r22387
2006-05-08 11:41:32 +00:00
Travis Howell
3830ac06b3 Add initial DXA support for HE games
svn-id: r22384
2006-05-08 10:21:17 +00:00
Travis Howell
01c92cf6f5 Add support for reading/writing config files through saveGameManager and use for config files in HE games
svn-id: r22273
2006-05-02 03:23:03 +00:00
Max Horn
77c29d0ab2 Some cleanup, and added a FIXME comment concerning the wrong usage of getSavePath()
svn-id: r22266
2006-05-01 21:31:06 +00:00
Max Horn
27307acd7c Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
svn-id: r22231
2006-04-29 22:33:31 +00:00
Max Horn
c4df5037dc * Renamed several methods in favor of a somewhat more uniform naming scheme: setupFOO for stuff that inits static data (i.e. will be called only once, or after loading savegames), vs. resetFOO / updateFOO methods which are called frequently and (re)set dynamic data.
* Doing this, split scummInit into setupScumm and resetScumm methods
* Moved some init code to new methods (huuuuge init methods are hard to read, and hard to customize using subclassing)
* Renmaed various setup???Palette methods to set???Palette
* Some minor cleanup / tweaks

svn-id: r22227
2006-04-29 16:24:39 +00:00
Max Horn
1735b0421b Make use of the new scummLoop_* functions to move some SCUMM version specific stuff around
svn-id: r22219
2006-04-29 13:01:35 +00:00
Max Horn
092fd96145 Replaced _hFileTable by _hInFileTable/_hOutFileTable
svn-id: r22182
2006-04-26 14:05:09 +00:00
Travis Howell
5ceb4b19b0 isSoundRunning always returns sound id in HE games
svn-id: r22176
2006-04-26 10:34:34 +00:00
Max Horn
c940380314 Replace unneeded File::exists calls
svn-id: r22173
2006-04-26 08:35:54 +00:00
Max Horn
e80d24aa22 Some more cleanup in class Scumm::Sound
svn-id: r22125
2006-04-23 23:00:32 +00:00
Max Horn
3f41e2dc21 Detect (and error out) if readMAXS fails
svn-id: r22120
2006-04-23 22:39:55 +00:00
Max Horn
e0a5a2b89e Fix access to .he3/.he4 files
svn-id: r22118
2006-04-23 21:56:09 +00:00
Max Horn
b2befd7951 Moved _heTimers to ScummEngine_v60he
svn-id: r22116
2006-04-23 19:41:54 +00:00
Max Horn
d68f95b3be Move HE specific stuff from class Sound to its new subclass SoundHE
svn-id: r22115
2006-04-23 18:52:39 +00:00
Max Horn
0d67640a58 Behold, the new SCUMM detector finally has arrived. Unified detection & engine instantiation, reduced code duplication, more powerful detection in case MD5 is not known / can't be computed, and many other nifty improvements.
svn-id: r22110
2006-04-23 17:33:16 +00:00
Eugene Sandulenko
ff6028b00b - Implemented MS ADPCM WAV format decoder used in Feeble Files. Still it is
out of sync with video. See TODO there.
- Fixed bug with MS IMA ADPCM mono to make it possible to work in real streams.

svn-id: r22080
2006-04-22 03:00:21 +00:00
Max Horn
ac24769196 Replaced o70_seekFilePos by o60_seekFilePos (both were identical)
svn-id: r21979
2006-04-17 14:32:46 +00:00
Max Horn
74edd90aba Fix for bug #1471383: Instead of overloading ConfigManager::set, we now have new setInt and setBool methods (matching getInt/getBool), which avoids strange quirks & bugs caused by (char *) being implicitly cast to int (ouch)
svn-id: r21951
2006-04-16 19:23:14 +00:00
Max Horn
68cb7f52c8 - Renamed ConfigManager::getActiveDomain to getActiveDomainName, and added a new getActiveDomain method that returns a pointer to the actual active *domain*
- Added Engine::_targetName whose value is computed from the name of the active domain
- Removed GameDetector::_targetName, instead code now uses either Engine::_targetName or the name of the active domain
- This in turn allowed for removing usage of GameDetector in many places

svn-id: r21916
2006-04-15 20:36:41 +00:00
Max Horn
cf202049ff Fixing mismatch between format strings and data on some systems
svn-id: r21827
2006-04-12 14:54:12 +00:00
Jonathan Gray
eb3ae7d726 sizeof(void *) != sizeof(int) for a large number of systems.
Fix a lot of debug/error statements that were using %d/%x
for the result of pointer arithmetic.

As C++ apparently has no format string for ptrdiff_t use
%lu/%lx as appropriate.

svn-id: r21824
2006-04-12 10:01:41 +00:00
Eugene Sandulenko
a74fcf7cee Fix regression introduced by removing of GF_HE_CURSORLESS feature flag.
There are 3 cases of HE cursors:
o Default one. We set up cursor palette for it.
o Loaded from .HE3 (windows resource file). We use default cursor palette.
o Loaded from WizImage. We disable default cursor palette.

svn-id: r21711
2006-04-09 03:16:05 +00:00
Max Horn
9c77c2ecd1 Renamed various *GameSettings to GameSettings (our namespaces are enough to distinguish them)
svn-id: r21684
2006-04-08 08:23:33 +00:00
Travis Howell
0e9b4ab17c GF_HE_CURSORLESS feature flag not required, since HE games always set a default cursor too.
svn-id: r21576
2006-04-03 11:35:02 +00:00
Travis Howell
d10929b394 Always check array bounds are valid in HE games, matching original
svn-id: r21524
2006-04-01 12:26:50 +00:00
Travis Howell
7a81cc76e1 Fix painting and fridge magnet palette glitches in thinker1
svn-id: r21522
2006-04-01 06:38:47 +00:00
Travis Howell
c4349e88f7 Rename two WizParameters fields
svn-id: r21514
2006-03-31 13:06:23 +00:00
Travis Howell
014dde3de3 Add missing check for invalid object number in getObjectData opcode
svn-id: r21501
2006-03-30 00:32:29 +00:00
Travis Howell
26c0d2b4fa Always use the correct string slot for HE games specific cases in decodeParseString()
svn-id: r21462
2006-03-26 09:21:07 +00:00
Travis Howell
ef6baca2ac Move convertFilePath() to ScummEngine_v60he, to allow use by earlier HE games
svn-id: r21450
2006-03-25 11:01:00 +00:00
Travis Howell
03202876cf Minor cleanup
svn-id: r21446
2006-03-25 04:33:33 +00:00
Eugene Sandulenko
22042bc637 - Implemented case insensitive file reading. Left old system as a fallback
in case some engine writer decide to do something unwise
- Removed used of ConfMan.getKey("path") in file-related cases, because
  now File class handles that
- Fixed bug in ScummEngine_v80he::o80_getFileSize() where path delimiters
  weren't translated

svn-id: r21443
2006-03-25 04:17:17 +00:00
Travis Howell
8ae4dd6caa Revert FLAG_AUTOFREE changes to loadWAVFromStreammakeWAVStream
svn-id: r21375
2006-03-19 05:15:06 +00:00
Travis Howell
a441dafae5 Move the sound loop detection, so it is used by all HE70+ games
svn-id: r21374
2006-03-19 04:55:34 +00:00
Travis Howell
1b20b06822 Skip HSHD block by set size, since there are sound resources (ie Caiman in jungle) which have incorrect size in HSHD header
svn-id: r21373
2006-03-19 04:41:43 +00:00