157 Commits

Author SHA1 Message Date
Oystein Eftevaag
ff7955f4d3 Adds archive file list, MD5 for my CD version, and a few function stubs for Hand of Fate, to use as a basis for further work
svn-id: r22252
2006-05-01 00:25:41 +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
bf73598811 * Changed the createEngine() factory function of our plugins to return an error code (the engine is now passed indirectly via a double pointer)
* Removed Engine_Empty (obsolete now that engines can return actual error codes)

svn-id: r22199
2006-04-29 00:27:20 +00:00
Oystein Eftevaag
47068bde51 Typo
svn-id: r22190
2006-04-27 00:42:12 +00:00
Oystein Eftevaag
9ec94f6fcb Move the detector code out of the constructor and into init() to do error handling (specifically the GUI error message if no game is found in the specified directory), and cleans up the constructor/destructor a bit to allow a clean exit.
svn-id: r22189
2006-04-27 00:39:10 +00:00
Eugene Sandulenko
bf53520130 - Check if path specified for a game in scummvm.ini really exists and complain
if it does not
- Give more understandable feedback to user when SCUMM module can't find
  a game
- Put TODO to kyra engine as their current detection scheme does not let
  easily tell if game data really present in specified directory

svn-id: r22163
2006-04-25 23:07:59 +00:00
Oystein Eftevaag
d5c8a791a6 Fixes some coordinate initialization in the menus, and makes sure the initial savegame is created when kyrandia is started for the first time
svn-id: r22153
2006-04-25 15:42:37 +00:00
Oystein Eftevaag
9b589e06cd Adds some code to dynamically resize and readjust the menus if the text strings of the current language are too long, to avoid overlaps etc.
svn-id: r22148
2006-04-25 11:58:21 +00:00
Oystein Eftevaag
f25cb2e735 Uses kyra.dat for GUI strings instead of hardcoding them, which means localized strings are now supported for the menus. Note that the size of the menus are not yet calculated to account for the longer strings in some languages
svn-id: r22105
2006-04-23 14:43:16 +00:00
Johannes Schickel
b756c3e899 Fixes use of textspeed settings if voice+text mode is enabled. (thanks to salty-horse)
svn-id: r21999
2006-04-18 02:08:51 +00:00
Johannes Schickel
0eee3fe591 - Implements copyRegion without transparency checking
- Uses copyRegion without transparency checking to fix credits drawing bugs

svn-id: r21989
2006-04-17 19:52:31 +00:00
Johannes Schickel
2fb0ce8c57 Simplifies credits.txt loading.
svn-id: r21988
2006-04-17 19:39:31 +00:00
Johannes Schickel
592e37accd Fixes bug #1471895 ("KYRA1: Kyragem goes black at the very end").
svn-id: r21987
2006-04-17 19:33:08 +00:00
Torbjörn Andersson
6e2a18e28d Rewrote the timing of the Kyra end credits so that it doesn't matter that the
variables are signed. Otherwise the credits may hang on a slow system.

svn-id: r21986
2006-04-17 19:31:05 +00:00
Oystein Eftevaag
bdd5a25c16 Implements the end credits, and disables fast forwarding in the intro.
svn-id: r21980
2006-04-17 17:39:08 +00:00
Max Horn
ba1b25305e Removed the directory parameter from md5_file
svn-id: r21937
2006-04-16 12:50:39 +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
1470dadb1d Changed File::open to take a Common::String as file name parameter
svn-id: r21867
2006-04-14 01:48:51 +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
94e647235f Fix const correctness in Kyra's StaticResource::loadStrings and StaticResource::loadPaletteTable (notice the difference between a pointer pointing to a pointer pointing to const memory, vs. a pointer pointing to a *constant* pointer pointing to const memory)
svn-id: r21708
2006-04-09 00:44:08 +00:00
Eugene Sandulenko
5a2ad04a9e Introduced language EN_ANY used for general English game entries. EN_USA and
EN_GRB should be used for games which have both variants. Currently it is
MM NES and BASS. All other are switched to EN_ANY.

svn-id: r21702
2006-04-08 23:12:56 +00:00
Max Horn
e7a8bb6abf Modified the REGISTER_PLUGIN macro so that it allows (and requires) a trailing semicolon (this helps certain tools to parse our code better)
svn-id: r21689
2006-04-08 12:06:07 +00:00
Max Horn
8cf8acfd63 Renamed various *GameSettings to GameSettings (our namespaces are enough to distinguish them)
svn-id: r21686
2006-04-08 11:21:04 +00:00
Eugene Sandulenko
8fa9bd6728 Removed extra exclamation marks in warning() calls as well.
svn-id: r21608
2006-04-04 22:21:10 +00:00
Eugene Sandulenko
d292c0ec55 Since our debug() adds an exclamation mark at the message end, remove
it in several calls to avoid duplication!!11!

svn-id: r21607
2006-04-04 22:04:51 +00:00
Torbjörn Andersson
80b3f9217d Don't try to copy str to _talkBuffer if str is pointing to _talkBuffer. Apart
from being unnecessary, the result of strcpy() on overlapping memory areas is
unpredictable.

svn-id: r21562
2006-04-02 18:58:07 +00:00
Max Horn
8cdee5a931 Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
svn-id: r21500
2006-03-29 15:59:37 +00:00
Max Horn
0da5fb4c1c Alphabetical build order
svn-id: r21499
2006-03-29 15:51:13 +00:00
Johannes Schickel
c09d1ea520 - Commits heaviliy modifed patch #1459951 ("KYRA: Combining MIDI music with Adlib sfx") (created a wrapper class for two different sound drivers instead of adding a new variable to the KyraEngine class and chaning stuff there)
- Prevents to play track 0 for non mt-32 midi devices (got ugly sound output with windows midi)

svn-id: r21479
2006-03-28 15:15:36 +00:00
Max Horn
9f93e5bb81 Renamed various container isEmpty() methods to empty() to match STL conventions
svn-id: r21472
2006-03-28 09:42:54 +00:00
Johannes Schickel
518c7b871f Comments out unneeded code in enterNewScene (only used for cd audio version).
Fixes bug with stopping pegasus music before the animation finished.

svn-id: r21469
2006-03-27 18:20:19 +00:00
Torbjörn Andersson
23c692f09f Cleaned up update_playRhythmSection(). It's almost possible to understand what
it's intended to do now.

Renamed _unkOutputByte2 to _vibratoAndAMDepthBits. It's a pretty terrible name,
but that's what it is: the two most significant bits of the Adlib BD register.

Renamed _rhythmSection to _rhythmSectionBits for consistency: It's the five
least significant bits of the Adlib BD register.

(The remaining bit is the rhythm on/off bit. I don't think we store that one in
any variable.)

svn-id: r21463
2006-03-26 22:11:40 +00:00
Torbjörn Andersson
737c52590b I believe that the purpose of updateCallback45() is to add a signed value to a
channel's unsigned tempo. Rewrote the function to make this clearer, and
renamed it update_changeChannelTempo().

svn-id: r21448
2006-03-25 10:11:38 +00:00
Torbjörn Andersson
2c279848d8 More renamings:
unk11 -> durationRandomness

updateCallback12() -> update_setupNoteAndDuration()
updateCallback26() -> update_setupDuration()
updateCallback44() -> update_setDurationRandomness()

svn-id: r21447
2006-03-25 09:55:28 +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
Andrew Kurushin
212b150b6f Fix MSVC warnings
svn-id: r21440
2006-03-24 18:30:34 +00:00
Torbjörn Andersson
0c0c41d495 Implemented "sound triggers" so that the music does not stop shortly after
entering the castle. I hope this is a fair approximation of how the original
worked. Of course, this led to a couple of more renamings:

_unk5              -> _soundTrigger
updateCallback54() -> update_setSoundTrigger()
snd_setUnk5()      -> snd_getSoundTrigger()      (yes, "get")

At the moment, the only known sound triggers are the ones in the castle. If an
unknown trigger is set, the debugging messages will be really, really noisy. I
don't know if I should consider this a bug or an extremely annoying feature.

svn-id: r21396
2006-03-21 17:17:24 +00:00
Johannes Schickel
9031b27349 Implements cmd_shakeScreen.
svn-id: r21394
2006-03-20 19:01:39 +00:00
Torbjörn Andersson
c506e452f1 Initialise _haveScrollButtons, since Valgrind complained about it.
svn-id: r21392
2006-03-20 17:33:08 +00:00
Oystein Eftevaag
3e9246331e Makes sure Brandon actually dies when he turns to stone in the kyragem room
svn-id: r21379
2006-03-19 08:35:43 +00:00
Oystein Eftevaag
d34d6b17df Fixes a potential problem in the pathfinder where an array could be accessed with a negative value in certain rooms
svn-id: r21378
2006-03-19 07:54:30 +00:00
Oystein Eftevaag
e636a25a33 Adds button press animations to the menu, and resets the cursor when the Dialog of Death pops up. Also, mouse clicks are now registered on button up instead of button down, as in the original
svn-id: r21377
2006-03-19 05:55:26 +00:00
Oystein Eftevaag
544abe3d12 Oops, forgot to change a variable declaration in the last commit
svn-id: r21367
2006-03-18 15:01:08 +00:00
Oystein Eftevaag
74aa771143 Changed 'amiga' keywords to 'isAmiga' in the resource handling code to avoid #define conflicts
svn-id: r21366
2006-03-18 14:55:29 +00:00
Johannes Schickel
f9f2cd2dbe - started to rework static resource loading
- made some function parameters const (to work with new static res code)

svn-id: r21365
2006-03-18 14:43:18 +00:00
Oystein Eftevaag
0f21db8c8e Fixes the color of the quitting dialog text after drinking a potion
svn-id: r21358
2006-03-18 11:22:18 +00:00
Oystein Eftevaag
05ee5cf2bd Extends seq_drinkPotionAnim() so that the color of the flask Brandon
drinks will be correct. Also fixes a bug where an animation
(Brandon ringing the bells) would play too quickly.

svn-id: r21354
2006-03-18 04:41:34 +00:00
Johannes Schickel
0ebebb1176 Fixes animations when brandon turns inivisible/visible.
svn-id: r21348
2006-03-17 20:49:12 +00:00
Johannes Schickel
41b4a6aa7c Fixes bug #1401337 ("KYRA: Platform with pegasi graphics glitch")
svn-id: r21347
2006-03-17 19:39:46 +00:00