Travis Howell
286de879fd
Add cyx's patch for bug #1035739 - SCUMM/SMUSH: Ugly palette change when video finishes
...
svn-id: r23216
2006-06-21 10:28:09 +00:00
Travis Howell
4b2aa54304
Revert back to original method used for scrollEffect(), fixes regressions.
...
svn-id: r23214
2006-06-21 06:50:50 +00:00
Eugene Sandulenko
fd7e9847fc
Removed commented-out subtitles-related code. Requested by salty-horse.
...
svn-id: r23030
2006-06-11 20:29:07 +00:00
Travis Howell
61e9bc72e4
Correct setting of VAR_CHARINC in several functions, the value should only be reversed when using keyboard shortcuts (Due to the scrollbar)
...
svn-id: r22850
2006-06-03 03:04:19 +00:00
Travis Howell
3b1062d2d4
Add patch for bug #1452272 - COMI: Verb strings aren't wrapped
...
svn-id: r22793
2006-05-31 10:48:40 +00:00
Gregory Montoir
7ff20a70a5
The ScummDebugger object needs to be created after _numVariables has been set. This is apparently only done in in readMAXS() which is called by readIndexFile(). Moved the call to the object constructor in the init() method. This fixes the 'scumm_vars' debugger command.
...
svn-id: r22755
2006-05-29 18:30:27 +00:00
Travis Howell
a0d14a0832
Fix Commodore 64 versions
...
svn-id: r22732
2006-05-29 12:45:11 +00:00
Max Horn
dc2da7a804
Moved the hack that distinguishes MM V1 demo from the full version to a more appropriate location (so that the game gets correctly detected)
...
svn-id: r22718
2006-05-28 12:28:28 +00:00
Travis Howell
21f50b3267
Use different method to detect V1 demo of Maniac Mansion, since md5 matches the full version
...
svn-id: r22695
2006-05-28 03:47:20 +00:00
Torbjörn Andersson
8062eb6ec3
Set and show/hide mouse cursors through a "cursor manager" (analogous to the
...
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.
If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?
svn-id: r22639
2006-05-25 22:51:42 +00:00
Eugene Sandulenko
9e3b78e1e9
--force-1x-overlay is no more. Remove leftovers.
...
svn-id: r22519
2006-05-18 13:59:20 +00:00
Eugene Sandulenko
14ec3f45fa
- Heavily modified patch #1214784 : "Disable overlay scaling"
...
- Eriktorbjorn's patch from same tracker item for scaling sword1/2 cutscenes
is applied as is. It lacks resolution switch on-the-fly.
- GUI widgets are repositioned on the fly and use most space, even aspect
ratio corrected screen is used without scaling
- Heavy tesing is required, but works for me in all cases except for bug
#1483272 : "GUI: SCUMM pause dialog breaks upon scaler switch" which needs more
work.
- I probavly broke some backend or two
svn-id: r22505
2006-05-17 23:52:45 +00:00
Torbjörn Andersson
44ac23a81d
Setting VAR_CHARINC = _defaultTalkDelay cannot possibly be right. It's not the
...
same thing as setting VAR(VAR_CHARINC) = _defaultTalkDelay.
svn-id: r22466
2006-05-14 09:22:49 +00:00
Travis Howell
ada0160e88
Check if VAR_CHARINC exists, before setting value in updateSoundSettings()
...
svn-id: r22462
2006-05-14 06:00:40 +00:00
Max Horn
0d6362ea48
Patch #1091170 : ALL, SCUMM: Subtitle speed control
...
svn-id: r22456
2006-05-13 17:30:04 +00:00
Travis Howell
d6d3a621dc
Init. videoParams vars for HE90+
...
svn-id: r22386
2006-05-08 11:04:51 +00:00
Travis Howell
3830ac06b3
Add initial DXA support for HE games
...
svn-id: r22384
2006-05-08 10:21:17 +00:00
Max Horn
39e887d6aa
Invoke updateSoundSettings a bit later, since it can only correctly set VAR_VOICE_MODE *after* setupScummVars() has been called
...
svn-id: r22247
2006-04-30 20:35:43 +00:00
Max Horn
eaca27a33b
Renamed updateVolumes to updateSoundSettings -- now it also handles subtitles/speech_mute settings. Also changed the ConfigDialog accordingly
...
svn-id: r22233
2006-04-29 23:09:40 +00:00
Max Horn
aeef84c961
Moved AKOS stuff to class ScummEngine_v6
...
svn-id: r22229
2006-04-29 16:51:29 +00:00
Max Horn
fcd178fca4
Added comment about a major leak in ScummEngine::restart
...
svn-id: r22228
2006-04-29 16:30:46 +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
39e9853d91
* Added ScummEngine_v8::initScummVars()
...
* Moved VAR_LANGUAGE to class ScummEngine_v8
* Minor cleanup
svn-id: r22223
2006-04-29 13:56:36 +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
cc3fac2ead
Split scummLoop into multiple functions, for easier maintanance & customizability
...
svn-id: r22218
2006-04-29 12:44:06 +00:00
Travis Howell
5c2dd8da24
Fix compile of SCUMM engine
...
svn-id: r22191
2006-04-27 04:59:13 +00:00
Max Horn
092fd96145
Replaced _hFileTable by _hInFileTable/_hOutFileTable
...
svn-id: r22182
2006-04-26 14:05: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
78dfa1f280
Moved ScummEngine_v5 from cursor.cpp to scumm.cpp (seems to be more natural, even though it inits some cursor related stuff)
...
svn-id: r22114
2006-04-23 17:58:52 +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
Max Horn
660efce9b2
Replaced _demoMode by GF_DEMO
...
svn-id: r22087
2006-04-23 00:08:18 +00:00
Torbjörn Andersson
d137204772
Call updateScreen() from waitForTimer() (instead of usually right before it)
...
for smoother mouse cursor movement.
svn-id: r21993
2006-04-17 23:45:48 +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
ec17b6505e
Removed unused #include
...
svn-id: r21918
2006-04-15 21:20:32 +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
9c4577b639
- Get rid of GameDetector::_dumpScripts and GameDetector::_force1xOverlay in favor of settings in the transient config domain
...
- This also means you can now set those options in the config file
- Fixed a bug I recently introduced that made bool command line options (like -u, -f) always return 'false' when used in their single letter form
svn-id: r21909
2006-04-15 13:50:44 +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
Max Horn
85c9dc7de8
Properly translate Common::Language values for COMI
...
svn-id: r21704
2006-04-08 23:43:18 +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
Max Horn
ee62cd3c51
Generate an error when kGenAsIs is used with an unsupported platform, instead of silently continuing with a bogus _fileHandle (leading to odd crashes)
...
svn-id: r21528
2006-04-01 18:13:06 +00:00
Travis Howell
6b56af989f
The Hercules specific screen size check is no longer required
...
svn-id: r21390
2006-03-20 02:04:14 +00:00
Max Horn
03734aa876
Moved filename substitution code from scumm.cpp to plugin.cpp
...
svn-id: r21386
2006-03-19 17:25:13 +00:00
Travis Howell
79bd731041
Add workaround for script bug in Loom (CD)
...
svn-id: r21371
2006-03-19 02:50:51 +00:00
Travis Howell
87d74563dd
Add another German version of puttzoo demo
...
svn-id: r21341
2006-03-17 00:30:58 +00:00
Max Horn
0cc41c7cbb
Renamed & documented the LIGHTMODE flags
...
svn-id: r21288
2006-03-14 14:06:44 +00:00
Max Horn
ee087df293
Enhance the new getCurrentLights to work for V6+ games, too, making it possible to remove several special cases throughout the code
...
svn-id: r21286
2006-03-14 13:36:13 +00:00
Travis Howell
be7a28f65e
Avoid all scumm var conflicts in C64 maniac
...
svn-id: r21277
2006-03-14 12:06:37 +00:00
Jamieson Christian
4d5a3e4c45
IMuse SysEx processing now handled by client-specified callbacks. This removes all game-specific references from the Player class. Bloodshed Dev-C++ project file updated.
...
svn-id: r21241
2006-03-12 18:06:22 +00:00
Travis Howell
fd389260f8
Adjust basename array setting in HE99+ games, for filename substitution
...
svn-id: r21229
2006-03-12 10:44:42 +00:00
Eugene Sandulenko
3521d35085
Add Russian puttrace and pajama3
...
svn-id: r21209
2006-03-10 19:35:35 +00:00
Max Horn
d9a9fac937
Fixed tons of format string warnings for debug/error calls (including several errors where the format string didn't match the number of arguments to the call)
...
svn-id: r21141
2006-03-08 11:37:25 +00:00
Jamieson Christian
5e25b3b679
Restructured IMuse and IMuseInternal.
...
* IMuse is no longer a concurrency front-end.
* IMuseInternal now derives from IMuse.
* Common::StackLock used to protect thread-sensitive interface methods (same as IMuseDigital).
* clear_queue() included in stopAllSounds() so it can be removed from the public interface.
* Game ID now specified at init using property().
* Timer callbacks receive a struct containing IMuseInternal and MidiDriver refs, instead of just the latter.
* OSystem pointer from init is now cached and used instead of global.
All references to the g_system and g_scumm globals are now gone. BOOYAH!
Tested with MI2, DOTT and S&M, under Windows, in Native MIDI, Adlib, and Mixed modes. No regressions or concurrency issues observed. Manifestations of the latter are the biggest concern at this point.
svn-id: r21104
2006-03-05 21:30:44 +00:00
Torbjörn Andersson
0651236066
Make sure there actually is a SMUSH mixer before stopping and deleting it.
...
svn-id: r21099
2006-03-05 13:57:05 +00:00
Paweł Kołodziejski
38b82fb585
that should help for bug #1352486 , smush sound tracks are not stopped immediately, but outside smush when sound data are depleted in sound mixer buffer.
...
svn-id: r21094
2006-03-05 12:15:39 +00:00
Travis Howell
7a9ed5425b
Add German verbs and more work on input in C64 maniac
...
svn-id: r21089
2006-03-05 08:22:39 +00:00
Max Horn
6a4c709af6
No need to use generateSubstResFileName when we already know the result
...
svn-id: r21072
2006-03-04 12:57:12 +00:00
Max Horn
f66cc08bdb
Const as const can (marking things as const/static allows better compiler optimizations and helps to catch certain bugs)
...
svn-id: r21069
2006-03-04 11:57:14 +00:00
Max Horn
bde6c151ad
Cleanup for the container loading code (and always disable file name substitution when a container file is used
...
svn-id: r21067
2006-03-04 11:53:28 +00:00
Max Horn
cf0716734c
When container files are used, we don't need file name substitution anymore
...
svn-id: r21066
2006-03-04 11:31:09 +00:00
Max Horn
78985cc8a6
Added a comment about the first few entries in substResFileNameTable
...
svn-id: r21065
2006-03-04 10:50:23 +00:00
Max Horn
a3069bbc1a
Since findSubstResFileName / applySubstResFileName only compare up to the first '.', we should be able to safely remove anything after the '.' in all substResFileNameTable entries (I am leaving the 00.LFL names untouched for now, for clarity)
...
svn-id: r21064
2006-03-04 10:46:11 +00:00
Max Horn
bb38ea2c17
Renamed SubstResFileNames::winName and macName to almostGameID / expandedName (the old names were misleading; the new ones aren't great either :)
...
svn-id: r21062
2006-03-04 10:38:05 +00:00
Max Horn
bac32d1a5c
Moved ScummFile etc. to the new file.cpp / file.h
...
svn-id: r21038
2006-03-03 15:16:02 +00:00
Max Horn
5d3ef6aec2
String constants are const -> fixing compiler warnings
...
svn-id: r21036
2006-03-03 14:44:50 +00:00
Eugene Sandulenko
5e1f3fa2fa
Fix bug #1439279 : "SCUMM: SubstResFileNames partial breakage"
...
svn-id: r21034
2006-03-03 14:29:28 +00:00
Travis Howell
82a6f289de
Fix using items in C64 maniac and cleanup
...
svn-id: r21011
2006-03-02 12:14:06 +00:00
Max Horn
f4f8a9263a
Yet another patch for bug #1407789 (FT: Invalid Actor when "Combining" Two Items)
...
svn-id: r21006
2006-03-02 09:34:48 +00:00
Travis Howell
2c9f041178
Fix inventory display in C64 maniac
...
svn-id: r21003
2006-03-02 05:04:40 +00:00
Travis Howell
fd8f11f7a4
Improve input in C64 maniac
...
svn-id: r21000
2006-03-02 01:17:41 +00:00
Travis Howell
7f8a8b7ffb
Initialize new SCUMM vars for V1/2
...
svn-id: r20998
2006-03-01 22:50:16 +00:00
Travis Howell
0a3b58ff2a
Update string array tables and use for all possible games and strings
...
svn-id: r20980
2006-03-01 04:32:44 +00:00
Travis Howell
be30d257e3
Charset 0 is loaded on start in original versions of OLD_BUNDLE games too
...
svn-id: r20955
2006-02-27 12:00:10 +00:00
Travis Howell
a5cb120898
COMI uses a separate setting for the verb charset, verbs use correct charset now
...
svn-id: r20907
2006-02-26 06:55:56 +00:00
Travis Howell
270a16b37b
Camera variables are initialised on startup by COMI too
...
svn-id: r20906
2006-02-26 06:15:13 +00:00
Travis Howell
0f60eaa166
Move debug mode setting to initScummVars(), so it is reset when game is restarted
...
svn-id: r20905
2006-02-26 05:48:40 +00:00
Max Horn
a76e3bab2f
Remove the dummy index 0 entry from substResFileNameTable
...
svn-id: r20898
2006-02-25 21:36:19 +00:00
Max Horn
331110271b
Moved the plugin interface code of the SCUMM engine into a separate source file
...
svn-id: r20885
2006-02-25 19:20:51 +00:00
Max Horn
bb4d463138
Fix compiler warning (wrong return type)
...
svn-id: r20883
2006-02-25 18:24:55 +00:00
Max Horn
05559c89f2
Moved check for unknown MD5 checksum from ScummEngine::ScummEngine to Engine_SCUMM_create
...
svn-id: r20882
2006-02-25 18:24:22 +00:00
Max Horn
779028dcd2
Modified the workaround for bug #1407789 to not depend on MD5 detection
...
svn-id: r20880
2006-02-25 18:16:24 +00:00
Max Horn
2ae0f79de3
Split SCUMM's generateSubstResFileName into two functions: findSubstResFileName and applySubstResFileName
...
svn-id: r20879
2006-02-25 17:36:32 +00:00
Max Horn
ee0f0a1f13
Replaced some more MKIDs by MKID_BE; this then enabled me to remove ScummEngine::fileReadDword()
...
svn-id: r20865
2006-02-25 02:31:49 +00:00
Max Horn
81e8a2860e
Moved iMUSE code to the new directory engines/scumm/imuse/
...
svn-id: r20801
2006-02-20 20:57:26 +00:00
Max Horn
6160a17b30
Updated MD5 tables again, adding details to more HE game variants
...
svn-id: r20796
2006-02-20 17:01:30 +00:00
Max Horn
e389bcf497
Replaced _gameId, _version, _heversion, _features, _midi, _platform with a simple ScummGameSettings instance: _game
...
svn-id: r20795
2006-02-20 16:51:30 +00:00
Max Horn
a6e5f6fd2c
Added / corrected some comments, and moved ScummGameSettings to scumm.h
...
svn-id: r20794
2006-02-20 16:35:37 +00:00
Max Horn
1bedb24dac
Simplified puttrace entry in the (still unused) extra_versions table
...
svn-id: r20789
2006-02-20 14:48:32 +00:00
Max Horn
12b0ac3a72
Removing the GF_HE_985 from HE 99 games (I only was able to verify that this is correct for the demos, but am confident enough to risk this change even for the full german version)
...
svn-id: r20788
2006-02-20 14:44:44 +00:00
Max Horn
78c44df439
More tweaks to the still unused extra_versions table
...
svn-id: r20783
2006-02-20 13:26:40 +00:00
Max Horn
c175368230
Added more variant IDs for HE games
...
svn-id: r20778
2006-02-19 19:21:52 +00:00
Max Horn
81ec4980a6
Updated the (still unused) extra_versions table a bit
...
svn-id: r20776
2006-02-19 19:04:22 +00:00
Max Horn
0c757abb72
- Added new extra_versions table -> work in progress and disabled for now.
...
- Refined information in scumm-md5.txt a bit
- Updated scumm-md5.h to reflect the changes in scumm-md5.txt
- Removed some unicode garbage from scumm.cpp
svn-id: r20774
2006-02-19 18:32:48 +00:00
Max Horn
01fc7034b5
- Merged GameDetector::detectGame() into GameDetector::detectMain()
...
- Replaced GameSettings GameDetector::_game by a simple gameid string
svn-id: r20753
2006-02-18 12:50:48 +00:00
Max Horn
8ac17430ac
- renamed PLUGIN_getSupportedGames to PLUGIN_gameIDList for consistency
...
- renamed Engine_XXX_gameList to Engine_XXX_gameList for consistency
- added new Engine_XXX_findGameID / PLUGIN_findGameID function
- updated plugins code to take advantage of the new plugin API, to support
obsolete gameids w/o showing them to the user
svn-id: r20752
2006-02-18 11:15:37 +00:00
Max Horn
81798556db
- Removed the 'features' field from GameSettings
...
- Removed GF_DEFAULT_TO_1X_SCALER
svn-id: r20747
2006-02-18 00:12:36 +00:00
Max Horn
a96760a2fd
Reduced use of GF_DEFAULT_TO_1X_SCALER in favor of a new param to Engine::initCommonGFX; added a TODO stating that it should eventually be removed completly
...
svn-id: r20738
2006-02-17 00:01:18 +00:00
Max Horn
405733e044
- Fixed a bug that prevented you from overriding the scaler from the command
...
line for 640x480 games.
- Updated NEWS file a bit
svn-id: r20736
2006-02-16 23:24:23 +00:00