Commit Graph

94 Commits

Author SHA1 Message Date
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