Commit Graph

2540 Commits

Author SHA1 Message Date
Johannes Schickel
32338876f8 KYRA: Rename KyraEngine::saveGameState to KyraEngine::saveGameStateIntern.
This is to avoid name similarity between KyraEngine::saveGameState(Intern)
and Engine::saveGameState.

svn-id: r53912
2010-10-28 23:57:24 +00:00
Johannes Schickel
607920c869 KYRA: Fix some code errors reported by ICC (i.e. subclasses not overwriting methods by missing a const.)
svn-id: r53911
2010-10-28 23:56:36 +00:00
Florian Kagerer
bf5ae45490 KYRA/PC98: workaround for missing delay opcodes
The sequence data for the forest sequence in the Kyra PC-98 intro has no delay opcodes making it play way too fast on modern systems. This workaround adds the same delay opcodes to the sequence data that the other Kyra versions have.

svn-id: r53761
2010-10-24 13:00:47 +00:00
Florian Kagerer
09f77eb464 LOL: - fix invalid mem access
- also extend LordHoto's recent item code changes to LOL

svn-id: r53740
2010-10-23 16:01:40 +00:00
Max Horn
3534cff8ef ALL: Fix indention (whitespaces -> tabs)
svn-id: r53738
2010-10-23 15:46:50 +00:00
Florian Kagerer
d6e4c07dac LOL: fix possible regressions
svn-id: r53700
2010-10-22 13:10:41 +00:00
Johannes Schickel
b816a81c02 KYRA: More cleanup.
svn-id: r53699
2010-10-22 02:11:50 +00:00
Johannes Schickel
5ff20cb12d KYRA: Cleanup.
svn-id: r53698
2010-10-22 02:11:00 +00:00
Johannes Schickel
03e2d54ca7 KYRA: Adapt Kyra2+3 to use the newly added item type too.
svn-id: r53697
2010-10-22 02:10:22 +00:00
Johannes Schickel
3653613443 KYRA: Add a datatype for the item ids and convert Kyra1 to use it.
svn-id: r53696
2010-10-22 02:09:16 +00:00
Johannes Schickel
38463e6161 KYRA: A little refactoring (name change).
svn-id: r53695
2010-10-22 02:08:26 +00:00
Florian Kagerer
1d87f434a2 SCUMM/FM-TOWNS JAPANESE: implement flipped text
(used in the MI1 circus scene after Guybrush gets shot out of the cannon)

svn-id: r53616
2010-10-19 16:58:27 +00:00
Florian Kagerer
c841c3fb7c SCUMM/FM-TOWNS: more improvements to japanese font drawing
- made use of LordHotos graphics/sjis code to reduce code duplication
- japanese mode for version 3 and 5 works fine now with few exceptions (some line spacing glitches in MI1 intro etc.)

svn-id: r53554
2010-10-17 13:08:00 +00:00
Johannes Schickel
36d7ec96b9 KYRA: Fix valid warnings of bug #3087837 "KYRA: Code analysis warnings".
svn-id: r53494
2010-10-15 14:14:10 +00:00
Max Horn
4ccce19876 ENGINES: Enhance namespace comments a bit
svn-id: r53484
2010-10-15 12:48:19 +00:00
Johannes Schickel
75e8452b6e OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.

Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.

svn-id: r53399
2010-10-13 03:57:44 +00:00
Torbjörn Andersson
54b2a8c98d JANITORIAL: Cleanup (mostly whitespace)
svn-id: r53161
2010-10-12 04:19:58 +00:00
Florian Kagerer
5ce63fb78f KYRA: fix regression in Screen_v2::generateOverlay()
(very noticeable in LOL PC-98)

svn-id: r53102
2010-10-09 14:55:33 +00:00
Florian Kagerer
ca767d5913 KYRA2/LOL PC-98: fix sfx rate
svn-id: r52842
2010-09-21 16:05:33 +00:00
Johannes Schickel
ec80b95580 KYRA: Fix RTL from LoL's main menu.
svn-id: r52835
2010-09-20 22:36:19 +00:00
Torbjörn Andersson
c91a07229a JANITORIAL: Removed most punctuation at end of warning() and error()
Our warning() and error() functions always add an exclamation mark
to the end of the message anyway.

svn-id: r52791
2010-09-18 10:55:16 +00:00
Johannes Schickel
b9a74a7915 KYRA: Send GM reset on startup.
svn-id: r52737
2010-09-15 22:00:43 +00:00
Johannes Schickel
c6afdbdca3 KYRA3: Add some sound debug output.
svn-id: r52699
2010-09-13 12:19:19 +00:00
Florian Kagerer
8448c50c71 LOL FLOPPY: silence pointless warnings in character selection
svn-id: r52627
2010-09-07 18:50:48 +00:00
Florian Kagerer
c87b7aafd8 LOL: Add md5 for another English floppy version
svn-id: r52597
2010-09-06 16:50:20 +00:00
Johannes Schickel
f69bfaf355 KYRA: Get rid of local static non-POD object.
This fixes crashes with the plugins branch for dhewg.

svn-id: r52579
2010-09-05 22:56:25 +00:00
Johannes Schickel
b6663bb942 KYRA: Constify some tables.
svn-id: r52578
2010-09-05 22:56:03 +00:00
Johannes Schickel
c23f597f50 KYRA: Cleanup.
svn-id: r52348
2010-08-24 15:48:43 +00:00
Johannes Schickel
51939fe743 KYRA: Implement new handling of KYRA3's TLK files.
This speeds up loading of KYRA3's TLK files by a lot, since only the index
table will be load now. This should help the startup time for KYRA3 when
playing from CD or other slow storages.

svn-id: r52347
2010-08-24 15:48:17 +00:00
Johannes Schickel
501d7cbb84 KYRA: Simplify PAK/INS/TLK loading.
This also reduces the number of seeks done while loading TLK files.

svn-id: r52346
2010-08-24 15:47:53 +00:00
Johannes Schickel
feff6fecdf KYRA: Cleanup.
svn-id: r52340
2010-08-24 13:41:24 +00:00
Johannes Schickel
c913ffe83f KYRA: Add support for playing KYRA3 from CD.
svn-id: r52336
2010-08-24 13:11:12 +00:00
Florian Kagerer
b55a70acb8 KYRA/TOWNS: fix memory leak and some cleanup
svn-id: r52232
2010-08-20 17:04:32 +00:00
Johannes Schickel
d8d8857276 KYRA: Remove superfluous music fade out on Kyra 3 startup.
svn-id: r52201
2010-08-19 02:39:07 +00:00
Johannes Schickel
2985d27e40 KYRA: Cleanup.
svn-id: r52200
2010-08-19 02:38:42 +00:00
Eugene Sandulenko
4d64004aa7 KYRA: Fix array index out of bounds
svn-id: r52147
2010-08-17 11:00:53 +00:00
Alejandro Marzini
b0409d6739 Merge trunk, from r51777 to r52105
svn-id: r52108
2010-08-16 00:21:07 +00:00
Florian Kagerer
581935dda4 KYRA: add new GUIO_MIDIAMIGA flag to amiga targets
svn-id: r51996
2010-08-11 18:56:50 +00:00
Florian Kagerer
054c586bcc KYRA/TOWNS: some minor sound improvements
(some cleanup to internal driver volume control, minor frequency change for fm-towns)

svn-id: r51930
2010-08-08 17:34:32 +00:00
Florian Kagerer
f4d38ccd40 LOL: added english floppy version
svn-id: r51834
2010-08-07 14:38:07 +00:00
Alejandro Marzini
33e40e1a20 Merged from trunk, from r51495 to r51775
svn-id: r51776
2010-08-06 03:21:21 +00:00
Johannes Schickel
9cd333152b KYRA: Add support for subtitle options changes via GMM.
svn-id: r51757
2010-08-05 14:41:00 +00:00
Florian Kagerer
e5ffc7847c AUDIO: Implement volume and balance control for the AudioCD manager (needed for music fading in Kyra 1 FM-Towns and probably other FM-Towns games). This addition applies to emulated CD audio only for now. I haven't found a way to implement this for real CDs yet. SDL doesn't seem to support this (but it might be just me? If anyone knows more about this, just tell me).
svn-id: r51741
2010-08-04 16:53:09 +00:00
Florian Kagerer
3fc3a59139 KYRA/TOWNS: replace some music stops with fadeouts (based on original code)
svn-id: r51708
2010-08-03 18:19:25 +00:00
Florian Kagerer
824a5f32a0 LOL: fixed possible crash in environmental sfx code
svn-id: r51706
2010-08-03 16:54:39 +00:00
Johannes Schickel
13824582d1 LOL: Minor adjustment to latest generateOverlay changes.
svn-id: r51705
2010-08-03 16:43:57 +00:00
Johannes Schickel
64585b40eb KYRA: Get rid of Screen_LoL::generateLevelOverlay.
This function is actually exactly the same as Screen_v2::generateOverlay,
after I fixed the implementation of the latter last commit.

svn-id: r51704
2010-08-03 16:22:12 +00:00
Johannes Schickel
14c9522d77 KYRA: Fix Screen_v2::generateOverlay implementation.
svn-id: r51703
2010-08-03 16:21:45 +00:00
Johannes Schickel
b149ca89d5 KYRA3: Fix bug in Screen_v2::generateOverlay.
Uncovered by a valgrind warning.

svn-id: r51698
2010-08-03 15:09:39 +00:00
Florian Kagerer
5962b0bbe2 KYRA/TOWNS: implement music/sfx volume control via GUI/GMM
svn-id: r51695
2010-08-03 14:58:01 +00:00
Johannes Schickel
4e33b7a3be GRAPHICS: Renamed skipThumbnailHeader to skipThumbnail.
svn-id: r51668
2010-08-02 22:28:30 +00:00
Florian Kagerer
2964e9213d KYRA2: fix warning
svn-id: r51650
2010-08-02 19:00:46 +00:00
Florian Kagerer
9c8b465505 KYRA: FM-Towns audio driver rewrite
- FM-Towns euphony driver completely rewritten based on KYRA FM-Towns and LOOM towns disasm.

- Split all the emu and driver code from sound_towns.cpp into different files to make things a bit less confusing.

- Move the driver code to common space since the exact same euphony driver is used by LOOM which means we could get rid of the outdated and incomplete ym2612 driver/emu implementation (which doesn't even do things like instrument loading, pan position, etc). I haven't tried to add this to the Scumm engine yet, since I am not  familiar with it and my priority was to get the driver finished first. But from the look of disasm it shouldn't be difficult to do.

- Introduce a generic FM-Towns audio interface based on FM-Towns system file disasm which was necessary for the euphony driver rewrite. Every FM-Towns game I have seen so far seems to access the audio hardware via these system functions. This interface implementation will also allow reasonably simple creation of new FM-Towns audio drivers (e.g. this could be used for Kings Quest 5 FM-Towns or others).

- Move the PC98 driver to common space, too, since I have a strong feeling that this driver is also used in the PC98 version of Future Wars

- This also improves KYRA FM-Towns music quality, sound effects accuracy and music fading.

svn-id: r51645
2010-08-02 18:30:25 +00:00
Alejandro Marzini
fb4086cadb Merged from trunk, from Rev 50841 to HEAD
svn-id: r51495
2010-07-30 05:28:09 +00:00
Johannes Schickel
93e8daec20 KYRA: Formatting.
svn-id: r51368
2010-07-27 13:25:35 +00:00
Johannes Schickel
3c0765ae78 KYRA: Fix assertion when using "enter" to scene with instant death.
svn-id: r51324
2010-07-26 17:03:45 +00:00
Johannes Schickel
9fc67f5c0b KYRA: Mark Kyra 1 Mac as General MIDI only.
It might be noteworthy that we do not support the music yet, but that might
change one day. We also do not mark the Kyra 1 Mac CD as GM only, since
that uses the included DOS sound files for now.

svn-id: r51221
2010-07-23 20:55:44 +00:00
Johannes Schickel
6da04bc13b KYRA: Implement support for selecting the VQA quality via "video_quality".
svn-id: r51187
2010-07-23 00:39:23 +00:00
Johannes Schickel
cef77cdae2 KYRA: Formatting fixes.
svn-id: r51186
2010-07-23 00:38:52 +00:00
Johannes Schickel
ba8ec806ba KYRA: Cleanup.
svn-id: r51183
2010-07-23 00:13:21 +00:00
Johannes Schickel
6cf1b59742 KYRA: Implemented some missing timers for object creation.
svn-id: r51182
2010-07-23 00:12:52 +00:00
Johannes Schickel
795062d8e7 KYRA: Cleanup.
svn-id: r51181
2010-07-23 00:12:29 +00:00
Johannes Schickel
4b2fca203e KYRA: Implement missing dialog code.
This finally enables animations for all of Darm's talk sequences.

svn-id: r51179
2010-07-22 23:16:33 +00:00
Johannes Schickel
7fb37db81e KYRA: Move LoL specific static data to its own file.
svn-id: r51175
2010-07-22 22:00:46 +00:00
Johannes Schickel
d776498282 KYRA: Cleanup.
svn-id: r51173
2010-07-22 21:46:39 +00:00
Johannes Schickel
4e02acec85 KYRA: Implement proper fade out when skipping the intro at any position.
svn-id: r51172
2010-07-22 21:46:17 +00:00
Johannes Schickel
9f1c8f149d KYRA: Free hand shapes after the Kallak writing sequence.
svn-id: r51171
2010-07-22 21:45:55 +00:00
Johannes Schickel
a3b3febb96 KYRA: Prevent fast fade to black when skipping the intro.
svn-id: r51170
2010-07-22 21:45:33 +00:00
Johannes Schickel
f48cb3cbb5 KYRA: Remove superfluous palette update on quit.
svn-id: r51169
2010-07-22 21:45:12 +00:00
Johannes Schickel
2e14869867 KYRA: Properly short-circuit after the SC/MP logo on quit.
svn-id: r51163
2010-07-22 20:34:09 +00:00
Johannes Schickel
9b347782ed Display the MacPlay Gold logo for Macintosh versions which include it.
svn-id: r51161
2010-07-22 20:11:09 +00:00
Johannes Schickel
44aab95eb9 KYRA: Fix mute setting with MIDI and FM-Towns/PC98 output.
svn-id: r51105
2010-07-21 20:26:40 +00:00
Johannes Schickel
e95ef4f5f8 KYRA: Respect mute setting on engine startup.
svn-id: r51098
2010-07-21 19:20:10 +00:00
Johannes Schickel
fcc9de35e2 Strip trailing whitespaces.
svn-id: r51093
2010-07-21 18:15:39 +00:00
Max Horn
1d4c82885d DEBUGGER: Simplify how our console debugger works / is used
* Remove _isAttached member var and isAttached method
* Engines now always call the onFrame method; whether it does
  something is decided by the debugger class resp. its subclasses
* Make detach() protected instead of private, so that subclasses
  can invoke it
* Remove _detach_now member var (call detach() instead).
* Rename _frame_countdown to _frameCountdown and properly
  document it.
* Add more doxygen comments
* Cleanup

svn-id: r50963
2010-07-17 18:38:42 +00:00
Johannes Schickel
bf17cc1053 In the help of making the new C++ standard a better one, we will now no longer rely on using parent class names in friend classes of a subclass.
svn-id: r50952
2010-07-16 23:30:29 +00:00
Torbjörn Andersson
17dcf79936 Cleanup
svn-id: r50949
2010-07-16 23:09:13 +00:00
Torbjörn Andersson
4a52413a46 Removed unused variable.
svn-id: r50948
2010-07-16 23:04:59 +00:00
Alejandro Marzini
609e08d5db Merged from trunk, from Rev 49499 to HEAD
svn-id: r50840
2010-07-13 04:31:15 +00:00
Florian Kagerer
02cac2d5aa KYRA/PC98: fix music volume
svn-id: r50772
2010-07-09 21:36:59 +00:00
Florian Kagerer
aefc42ab0e KYRA/PC98 Audio: fix invalid mem access
svn-id: r50608
2010-07-03 00:06:54 +00:00
Florian Kagerer
a6e07f01bb KYRA/PC98: fix long standing bug were certain sound effects would bring each other out of tune
svn-id: r50604
2010-07-02 21:27:36 +00:00
Florian Kagerer
022808fda6 KYRA/PC98: cleanup
svn-id: r50603
2010-07-02 19:47:14 +00:00
Florian Kagerer
5625c6d1ee KYRA/PC98: fix sfx volume control
svn-id: r50602
2010-07-02 19:08:22 +00:00
Florian Kagerer
eb84a130ad KYRA/PC98: minor cleanup
svn-id: r50563
2010-07-01 18:34:14 +00:00
Florian Kagerer
cc243bae34 KYRA/PC98: implement proper volume control (which distinguishes between music and sfx)
svn-id: r50561
2010-07-01 17:47:46 +00:00
Florian Kagerer
a0f42b07ce KYRA: change audio detection flags setting (since most users don't own a real mt-32/lapc1/cm32l/cm64 device and our emulator is incomplete)
svn-id: r50452
2010-06-28 17:03:04 +00:00
Florian Kagerer
c35e350531 AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either select MDT_PREFER_MT32 or MDT_PREFER_GM
svn-id: r50288
2010-06-25 20:51:57 +00:00
Florian Kagerer
6561b93f1e KYRA: fixed typo
svn-id: r50283
2010-06-25 19:06:10 +00:00
Florian Kagerer
e34d7342f5 KYRA: implement new gui option flags
svn-id: r50282
2010-06-25 18:57:50 +00:00
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Eugene Sandulenko
44a39ffbc6 AdvancedDetector: Add new parameter directoryGlobs.
Without this parameter mass detection gave tons of false alarms.
Use globbing for narrowing down the depth search.

svn-id: r49788
2010-06-15 10:59:23 +00:00
Eugene Sandulenko
d137b4610a Split out detection code in Kyra engine.
svn-id: r49695
2010-06-15 10:15:51 +00:00
Alejandro Marzini
e1ef3cd9fc Renamed getAudioCD to getAudioCDManager.
svn-id: r49678
2010-06-15 04:13:12 +00:00
Eugene Sandulenko
4d517ed0e9 Extended advancedDetector with depth parameter.
Now AD can search nested directories. By default it is turned off,
but there is new parameter to ADParameters struct. Usually value
of 2 is good enough for all purposes.

svn-id: r49653
2010-06-14 14:50:23 +00:00
Alejandro Marzini
e991cd8c53 - Revised abstract AudioCDManager.
- Removed AudioCDManager Singleton, and changed code for using AudioCDManager in OSystem.
- Added initialization code for new AudioCDManager in BaseBackend and OSystem_SDL.

svn-id: r49548
2010-06-09 20:09:57 +00:00
Johannes Schickel
0fe2ba6a0d Some more enforcement of our formatting conventions in KYRA too.
svn-id: r49069
2010-05-17 23:29:44 +00:00
Johannes Schickel
7da8c8949b Replace KYRA's strncpy and strncat usages by strlcpy/strlcat.
svn-id: r48954
2010-05-05 17:53:30 +00:00
Max Horn
2149a2383d Reduce indirect header dependencies further
svn-id: r48936
2010-05-04 12:00:16 +00:00
Max Horn
970745e60c Move DebugChannel related code to new header
svn-id: r48935
2010-05-04 11:59:22 +00:00
Max Horn
b3e404109c Move initGraphics and initCommonGFX from to new header.
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.

svn-id: r48934
2010-05-04 11:58:12 +00:00
Florian Kagerer
45debce66e KYRA: fixed some cppcheck warnings
svn-id: r48879
2010-05-01 12:55:32 +00:00
Max Horn
460d69e885 COMMON: Move DebugChannel stuff into a new DebugMan singleton
svn-id: r48821
2010-04-27 21:40:52 +00:00
Johannes Schickel
23ed4c2a76 Revert "Fix use of "friend" keyword in KYRA for strict C++ compilers."
Actually g++ is just fine in this case :-). The thing I missed here
was that I declared the "offending" classes as friends in subclasses
of KyraEngine_v1, thus those friends were allowed to access the
protected elements of KyraEngine_v1 too.

svn-id: r48643
2010-04-12 19:50:40 +00:00
Johannes Schickel
050aca584b Fix use of "friend" keyword in KYRA for strict C++ compilers.
Unlike g++, which does inherit friends (it seems), C++ does
specify that friend is not inherited. I.e. when B is a friend of
A and you have a class C subclassing B, C is not allowed to
access private memebers of A.

svn-id: r48641
2010-04-12 19:10:21 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Johannes Schickel
b928da4418 Setup and destroy a dummy cursor and palette in the Engine class.
The idea behind this is exactly the same as behind r48620,
but it affects all engines, thus engine authors can now use
CursorMan.replaceCursor without having to worry about possible
memory leaks or the like.

svn-id: r48626
2010-04-11 18:30:42 +00:00
Johannes Schickel
175a81ce98 Fix KYRA's cursor handling by pushing a dummy cursor via CursorMan.pushCursor too. Also replace CursorMan.popAllCursors by CursorMan.popCursor to prevent the caller's cursor from being destroyed.
svn-id: r48621
2010-04-11 17:27:33 +00:00
Johannes Schickel
cf85c0b318 Fix bug #2985387 "KYRA1: Crash at the end of game".
svn-id: r48617
2010-04-11 15:05:26 +00:00
Ori Avtalion
aee05cd21d Remove extra semicolons
svn-id: r48457
2010-04-01 15:03:08 +00:00
Max Horn
4bac9e1b75 COMMON: Cleanup ConfigManager code
* get rid of ConfigManager::_emptyString
* get rid of ConfigManager::Domain::get (use getVal instead)
* remove some dead code

svn-id: r48417
2010-03-29 20:31:23 +00:00
Johannes Schickel
5315993ffc Remove pointer dereferencation in a place, where the result is not used at all.
svn-id: r48396
2010-03-24 21:39:02 +00:00
Max Horn
92c896d883 Patch #2973290: Semicolon cleanup
svn-id: r48359
2010-03-22 20:28:08 +00:00
Johannes Schickel
01f5610836 Fix out of bounds access.
svn-id: r48338
2010-03-20 20:25:37 +00:00
Max Horn
cac0ac66e2 COMMON: Get rid of Common::StringList
svn-id: r48287
2010-03-18 15:54:40 +00:00
Max Horn
d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Max Horn
4e99cfc549 Switch from Common::tag2string(foo).c_str() to tag2str(foo)
svn-id: r48276
2010-03-18 15:04:38 +00:00
Torbjörn Andersson
65585f6433 Silenced some harmless cppcheck warnings about unreachable code after a return.
In this case, it was always a break after a return in a switch case. There are
similar cases which cppcheck didn't detect, and a couple of cases where we have
a break after a continue in a switch case (where the continue refers to an
outer loop), but I didn't touch those. Not yet, at least.

svn-id: r48218
2010-03-10 06:39:23 +00:00
Max Horn
f24cc1c8be Tweak makeVOCDiskStream
* now takes a SeekableReadStream *pointer* like (almost) all other
  audiostream factories
* fix potential memory leak in it
* rename takeOwnershipOfStream to disposeAfterUse for consistency

svn-id: r48184
2010-03-08 10:27:42 +00:00
Johannes Schickel
4221460f6d Fix item exchange string in Kyra 1 Amiga (both English and German).
svn-id: r48159
2010-03-04 16:34:27 +00:00
Yotam Barnoy
ef330ed9b4 Patch for bug 2943361 by littleboy, adding full kb modifier support to all engines + GUI and proper keypad handling
svn-id: r48101
2010-02-21 04:04:13 +00:00
Johannes Schickel
049b4384bc Fix for bug #2954279 "KYRA: Error when loading non-existent savegame".
svn-id: r48089
2010-02-19 14:05:55 +00:00
Johannes Schickel
c8470e1d89 Use Common::KEYCODE_* instead of ASCII values for keycode comparison.
svn-id: r48079
2010-02-17 16:18:23 +00:00
Johannes Schickel
5d6b9af72a Use Common::KeyCode instead of int as key type for KeyMap.
svn-id: r48078
2010-02-17 16:08:47 +00:00
Florian Kagerer
9b6042efb4 LOL: fixed script bug in castle cimmeria that would cause out of bounds mem access (should fix bug #2948109)
svn-id: r48016
2010-02-09 21:09:29 +00:00
Florian Kagerer
d4a0375f7e LOL: fixed handling of invalid monster attack sfx in the Urbish mines (should fix bug no #2945950)
svn-id: r47967
2010-02-07 16:12:31 +00:00
Johannes Schickel
fe35d372da - Rename FlacStream to FLACStream.
- Rename makeFlacStream to makeFLACStream.

svn-id: r47846
2010-02-03 09:42:11 +00:00
Johannes Schickel
a505d32eff Replace use of Audio::makeRawMemoryStream by Audio::makeRawStream.
svn-id: r47716
2010-01-30 15:26:54 +00:00
Johannes Schickel
8e69a24783 Fix yet another use of possibly undefined behavior reported by syke.
svn-id: r47689
2010-01-29 23:52:58 +00:00
Johannes Schickel
595a2e16f1 Fix use of undefined behavior. (Thanks to syke for reporting)
svn-id: r47685
2010-01-29 22:43:23 +00:00
Johannes Schickel
812603e29e Fix invalid sample position on Timestamp to sample conversion for Stereo streams.
svn-id: r47591
2010-01-27 08:08:33 +00:00
Max Horn
1565f14bc1 Moved audio stream implementations (for MP3, FLAC, etc.) to new dir sound/decoders/
svn-id: r47579
2010-01-26 22:48:45 +00:00
Johannes Schickel
2eb16caade Remove HACK, which is obsolete because of r47336.
svn-id: r47548
2010-01-25 03:05:39 +00:00
Johannes Schickel
aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Torbjörn Andersson
45cbc7b265 Fixed warning.
svn-id: r47504
2010-01-24 17:24:11 +00:00
Florian Kagerer
4eb077dcf3 LOL: save/load menu speed up
svn-id: r47501
2010-01-24 15:40:36 +00:00
Max Horn
4b996e7de7 Reorder params to Audio::makeRawMemoryStream
svn-id: r47492
2010-01-23 23:55:35 +00:00
Johannes Schickel
4fcc82e7a6 Paranoia change: add some explicit terminating 0 after some strncpy uses.
svn-id: r47479
2010-01-23 16:15:18 +00:00
Max Horn
b036392a7b Get rid of deprecated makeRawDiskStream variants; rename deprecated makeRawMemoryStream variant to makeRawMemoryStream_OLD; adapt some code to this change
svn-id: r47472
2010-01-23 13:34:29 +00:00
Torbjörn Andersson
4818467908 Silenced some more cppcheck warnings. Some of these may seem silly, but the way
I figure it the changes are harmless at worst, and making them will make it
easier to find real errors in the (still quite long) list of warnings.

svn-id: r47443
2010-01-22 19:05:02 +00:00
Max Horn
dc5e08e623 Move raw audio flags from sound/mixer.h to sound/raw.h
svn-id: r47395
2010-01-19 22:30:33 +00:00
Max Horn
557bb394de Get rid of Mixer::FLAG_AUTOFREE.
Also fix several recently introduced new/delete vs. malloc/free mismatches.

svn-id: r47369
2010-01-19 00:56:29 +00:00
Max Horn
69be747621 Move raw audio streams to new header sound/raw.h
svn-id: r47368
2010-01-19 00:54:06 +00:00
Max Horn
349fcd1d71 Rename 'Linear' audio streams to 'raw'
svn-id: r47367
2010-01-19 00:52:41 +00:00
Florian Kagerer
0fd8008296 LOL: minor key map fix
svn-id: r47359
2010-01-18 19:15:05 +00:00
Florian Kagerer
4c9f323199 LOL: cleanup last commit
svn-id: r47354
2010-01-18 07:21:54 +00:00
Florian Kagerer
371a2a9ee9 LOL: fixed spell array size
svn-id: r47353
2010-01-18 00:56:30 +00:00
Johannes Schickel
e11e9338d1 Delay the time a sysEx takes to send instead of the old (incorrect) way of delaying only 45ms between two sysEx calls. (Code thankfully borrowed from waltervn).
svn-id: r47336
2010-01-17 02:42:31 +00:00
Max Horn
7ec2da968c Switch most AudioStream factories to use DisposeAfterUse::Flag
svn-id: r47334
2010-01-16 21:36:08 +00:00
Johannes Schickel
0d995c5920 Rename all "Adlib" uses to "AdLib" to match the real name of the sound card / company.
Check this for reference:
http://en.wikipedia.org/wiki/Ad_Lib,_Inc.
http://www.crossfire-designs.de/images/articles/soundcards/adlib.jpg (note the upper left of the card)

This commit does not touch "adlib" and "ADLIB" uses!

Also it does not update all the SCUMM detection entries, which still use "Adlib".

svn-id: r47279
2010-01-12 21:07:56 +00:00
Johannes Schickel
6ca0570fe3 - Add a SubLoopingAudioStream, which loops a nested part of a stream and thus features the same looping capabilites as LinearMemoryStream and LinearDiskStream.
- Remove custom looping code from LinearMemoryStream and LinearDiskStream.
- Adapt various client code to the changes.

svn-id: r47226
2010-01-10 15:20:14 +00:00
Max Horn
be8371fb07 Replace AppendableAudioStream by QueuingAudioStream
svn-id: r47189
2010-01-09 00:19:13 +00:00
Max Horn
f720d99b0a Switch Mixer::playInputStream to use DisposeAfterUse::Flag
svn-id: r47182
2010-01-08 22:09:43 +00:00
Max Horn
0cf53b025d Move DisposeAfterUse::Flag from Common to global namespace, and into a new header common/types.h
svn-id: r47180
2010-01-08 22:07:35 +00:00
Johannes Schickel
616e4626f5 Since AudioStream looping is no longer handled by the Mixer, drop Mixer::playAudioStreamLooping. (There's Audio::makeLoopingAudioStream).
svn-id: r47160
2010-01-08 16:27:29 +00:00
Johannes Schickel
297a955579 - Simplify Audio::calculateSampleOffset.
- Made Audio::calculateSampleOffset accessable from outside audiostream.cpp.
- Adapt KYRA's AUDStream to use Audio::calculateSampleOffset.

svn-id: r47082
2010-01-06 15:40:49 +00:00
Johannes Schickel
0e420431fd Adapt KYRA to use the new FLAC, Vorbis and MP3 factories.
svn-id: r47062
2010-01-06 00:00:25 +00:00
Johannes Schickel
79ee2b0895 Properly adapt AUDStream to be a SeekableAudioStream and switched KYRA3 to use playAudioStreamLooping for its looping purposes.
svn-id: r47060
2010-01-05 23:05:31 +00:00
Johannes Schickel
920dac2f9d Remove unsafe getTotalPlayTime from AudioStream.
svn-id: r47037
2010-01-05 20:14:28 +00:00
Johannes Schickel
e9a94ecb9b Add a "getLength" function to SeekableAudioStream.
svn-id: r47036
2010-01-05 20:13:31 +00:00
Johannes Schickel
f5c3bd887e - Add a new SeekableAudioStream interface. Soon to be used to replace audio stream specific looping code by generic code in Mixer...
- Adapted some existing AudioStreams to implement that interface (not tested!)

svn-id: r47013
2010-01-05 02:27:24 +00:00
Torbjörn Andersson
72eb9ec9ea Fixed a bunch of cppcheck warnings. Mostly about checking if a pointer is null
before freeing it, which isn't necessary.

svn-id: r46941
2010-01-03 19:37:43 +00:00
Johannes Schickel
c671c17258 Use Common::StackLock.
svn-id: r46870
2010-01-02 00:54:11 +00:00
Florian Kagerer
998d511eeb LOL: cleanup
svn-id: r46866
2010-01-01 23:57:16 +00:00
Johannes Schickel
8817d6eeb5 Merge update_nop1 and update_nop2.
svn-id: r46860
2010-01-01 22:33:45 +00:00
Johannes Schickel
82b4b65bdc - Fix out of bounds array access.
- Add some asserts in output related functions

svn-id: r46859
2010-01-01 22:26:26 +00:00
Johannes Schickel
671cc15bd1 - Add some asserts
- Renamed snd_unkOpcode3 to snd_stopChannel
- Cleanup

svn-id: r46855
2010-01-01 21:59:11 +00:00
Johannes Schickel
e757e7a60a Fix out of bounds access reported by syke.
svn-id: r46844
2010-01-01 19:45:49 +00:00
Florian Kagerer
9f63095688 LOL: fixed debug message
svn-id: r46675
2009-12-28 15:08:53 +00:00
Florian Kagerer
2a0b03218c LOL: - added workaround for portrait speech animations which would sometimes "freeze"
- renamed some stuff

svn-id: r46601
2009-12-26 19:02:16 +00:00
Florian Kagerer
193b23bcad LOL: fixed minor bug in lamp code
svn-id: r46587
2009-12-26 14:12:38 +00:00
Florian Kagerer
7bf92fc795 LOL: fixed minor bug in lamp code
svn-id: r46534
2009-12-24 18:41:26 +00:00
Florian Kagerer
c1eaafcac7 LOL: removed unused variable
svn-id: r46434
2009-12-20 16:23:44 +00:00
Florian Kagerer
a21a808250 LOL: fixed text fading
svn-id: r46431
2009-12-20 14:11:56 +00:00
Florian Kagerer
42c306208b LOL: fixed regression
svn-id: r46366
2009-12-13 20:37:26 +00:00
Florian Kagerer
adba314fc6 LOL: some cleanup for recent code changes
svn-id: r46358
2009-12-13 15:19:56 +00:00
Florian Kagerer
35c695929a LOL: fixed regression
svn-id: r46354
2009-12-12 21:21:38 +00:00
Florian Kagerer
90b4d4b45c LOL: fix compilation when the LOL engine is disabled
svn-id: r46352
2009-12-12 20:50:41 +00:00
Florian Kagerer
f4c54fb636 LOL: moved TIM animation code into a separate class
svn-id: r46351
2009-12-12 20:06:42 +00:00
Max Horn
c8873d8492 Changed MidiDriver::createMidi to take a MidiDriverType instead of an int
svn-id: r46316
2009-12-09 18:12:51 +00:00
Johannes Schickel
babb38230e Hopefully silencing C4121 in MSVC.
svn-id: r46278
2009-12-07 16:21:33 +00:00
Johannes Schickel
3b7082c32b Fix overflow of glyph count for CREDIT6.FNT, this fixes credits for Kyra1 floppy/FM-TOWNS/PC98.
svn-id: r46269
2009-12-06 00:54:24 +00:00
Torbjörn Andersson
039d7d5e1c Removed unnecessary semi-colons.
svn-id: r46232
2009-12-01 19:19:58 +00:00
Johannes Schickel
780ede2e71 Formatting.
svn-id: r46195
2009-11-29 13:55:26 +00:00
Johannes Schickel
46cf13307d Cleanup.
svn-id: r46194
2009-11-29 13:52:02 +00:00
Florian Kagerer
4f84154875 KYRA/PC98: fixed regression
svn-id: r46190
2009-11-29 12:18:42 +00:00
Florian Kagerer
8b0f3ee4b5 KYRA: fixed pc98 intro sfx (regression)
svn-id: r46185
2009-11-29 00:39:22 +00:00
Florian Kagerer
5f3e54fcb7 KYRA: removed hack in staticres loader
svn-id: r46181
2009-11-28 23:44:06 +00:00
Florian Kagerer
c7371320d6 KYRA: added HOF PC-98 static data to kyra.dat
svn-id: r46180
2009-11-28 23:34:12 +00:00
Johannes Schickel
0e5de0c36d Fix for bug #2905439 "AmigaOS: Recent Kryandia changes broke compilation".
svn-id: r46178
2009-11-28 20:13:45 +00:00
Florian Kagerer
ac19f4146b LOL/Floppy: fixed crash
svn-id: r46177
2009-11-28 20:08:20 +00:00
Johannes Schickel
6fb79b8b3c Fix compilation on 64bit systems.
svn-id: r46176
2009-11-28 18:58:55 +00:00
Florian Kagerer
5905b9e479 LOL: completed support for floppy installer files
svn-id: r46174
2009-11-28 18:40:37 +00:00
Johannes Schickel
109dff89dd Typos.
svn-id: r46159
2009-11-26 20:33:27 +00:00
Johannes Schickel
40f038c7f1 Initial doxygen description of the Kyrandia engine.
svn-id: r46158
2009-11-26 19:50:09 +00:00
Max Horn
df651bf20f Added Doxygen comments for the various engine namespaces (currently mostly without details; help filling these out is welcome)
svn-id: r46128
2009-11-24 22:10:14 +00:00
Max Horn
0d9609f7f9 Fix incorrectly placed doxygen comments; replace Common::ID2string by Common::tag2string
svn-id: r46127
2009-11-24 22:08:34 +00:00
Johannes Schickel
485159f0dc Slight simplification.
svn-id: r46093
2009-11-22 18:21:40 +00:00
Johannes Schickel
fa84949479 Remove dead code.
svn-id: r46092
2009-11-22 18:17:05 +00:00
Johannes Schickel
d2d3a9a9eb - Store ID map for static resources in kyra.dat instead of hardcoding it in the main KYRA source
- Changed how static resource types are specified
- Rebuilt kyra.dat

svn-id: r46091
2009-11-22 18:16:25 +00:00
Johannes Schickel
a2b056c288 More cleanup.
svn-id: r46055
2009-11-21 23:44:52 +00:00
Johannes Schickel
ed1c0fcde8 Cleanup.
svn-id: r46054
2009-11-21 23:23:07 +00:00
Johannes Schickel
d167197a52 Cleanup: remove never used support for builtin static data in StaticResource.
svn-id: r46053
2009-11-21 23:06:22 +00:00
Johannes Schickel
77fda6cf93 Cleanup.
svn-id: r46052
2009-11-21 23:05:25 +00:00
Johannes Schickel
ea5bf444d3 Fix mismatching resource type IDs for Lands of Lore in kyra.dat.
svn-id: r46051
2009-11-21 22:15:20 +00:00
Johannes Schickel
1ade0efbf2 Flag credits data for Kyrandia 1 as language specific data. (Fixes language of credits for Amiga versions.)
svn-id: r46049
2009-11-21 20:30:38 +00:00
Johannes Schickel
1ba750063c Ooops...
svn-id: r46048
2009-11-21 20:26:55 +00:00
Johannes Schickel
bf5ce985a0 - Got rid of hardcoded filename list for kyra.dat
- Synced static resource definitions between KYRA main codebase and create_kyradat
- Rebuilt kyra.dat

svn-id: r46047
2009-11-21 20:20:24 +00:00
Johannes Schickel
7a8e452f12 Change special palette loading for Kyrandia 1 from kyra.dat to match kyra.dat internals.
svn-id: r46040
2009-11-21 17:05:33 +00:00
Johannes Schickel
3ee2d9375c Changed kyra.dat to use a global "INDEX" file instead of INDEX files for every game variant.
svn-id: r46025
2009-11-20 21:25:36 +00:00
Johannes Schickel
90ba6a8c7a Flag Kyra3 as talkie version in kyra.dat.
svn-id: r46022
2009-11-20 21:24:15 +00:00
Florian Kagerer
1a984d8e7d LOL: add support for pc speaker sfx
svn-id: r45992
2009-11-19 22:17:27 +00:00
Johannes Schickel
2a4e630967 Properly handle Kyra 2 Talkie demo in kyra.dat.
svn-id: r45990
2009-11-19 17:44:19 +00:00
Florian Kagerer
99111a75c1 KYRA: fixed save menu glitch in Japanese versions
svn-id: r45956
2009-11-17 16:26:40 +00:00
Florian Kagerer
3013a63890 LOL: fixed minor glitch in the ending sequence
svn-id: r45933
2009-11-15 23:26:47 +00:00
Florian Kagerer
9a57665abf LOL/PC-98: fixed regression (missing static data for pc98 version)
svn-id: r45927
2009-11-15 21:25:26 +00:00
Johannes Schickel
d3fb917ee8 Formatting.
svn-id: r45909
2009-11-15 02:37:15 +00:00
Florian Kagerer
4f85684931 KYRA: cleanup
svn-id: r45908
2009-11-15 00:53:57 +00:00
Johannes Schickel
c80456dd17 Fix warning.
svn-id: r45907
2009-11-14 23:01:51 +00:00
Florian Kagerer
9bd5e07d90 KYRA: added kyra 1 pc98 static data to kyra.dat (intro forest sequence is still broken)
svn-id: r45906
2009-11-14 22:51:35 +00:00
Johannes Schickel
b9b5511b3c Cleanup.
svn-id: r45904
2009-11-14 19:34:44 +00:00
Florian Kagerer
e36594dbe9 LOL: - cleanup
svn-id: r45852
2009-11-12 07:41:33 +00:00
Florian Kagerer
c0fc64ecbf LOL: - fixed transparency tables in PC-98 16 color version
- renamed some variables

svn-id: r45847
2009-11-11 23:05:19 +00:00
Johannes Schickel
c2a5b3feea Fix some delays in Kyrandia 1 when clicking very often, while a sequence plays.
svn-id: r45731
2009-11-07 15:06:49 +00:00
Johannes Schickel
0d79ace422 Access _keyMap a little different, so that no additional entries are created, when an unmapped key is pressed.
svn-id: r45730
2009-11-07 15:06:25 +00:00
Johannes Schickel
373b5d1013 Formatting.
svn-id: r45729
2009-11-07 15:06:03 +00:00
Max Horn
51933629d1 Changed foo(void) to foo() in almost all non-backend source files
svn-id: r45616
2009-11-02 21:54:57 +00:00
Florian Kagerer
0bf6303213 Kyra/FM-Towns: make sure that at least the synthesizer music plays when no cd audio tracks are found
svn-id: r45589
2009-11-01 01:31:23 +00:00
Johannes Schickel
a510481202 Clean up comment a bit.
svn-id: r45583
2009-10-31 19:59:48 +00:00
Johannes Schickel
fa506b5f0a Fix missing inventory in Kyrandia 1 PC98 16 color version, when loading a save via launcher or command line.
svn-id: r45581
2009-10-31 19:53:52 +00:00
Johannes Schickel
45208bc53d Fix certain scenes incorrectly appearing as fireberry bushes in floppy/FM-Towns/PC98 versions of Kyrandia 1.
svn-id: r45580
2009-10-31 19:52:46 +00:00
Johannes Schickel
93d26113fd Fix some memory leaks in Kyrandia 1 (this hopefully fixes crashes on NDS after a long playtime).
svn-id: r45572
2009-10-31 18:32:17 +00:00
Johannes Schickel
0a1a4c7eb4 Fix regression in r45414.
svn-id: r45495
2009-10-29 00:14:09 +00:00
Johannes Schickel
a30b8f0bdc - Fix some missing initialization warnings from cppcheck
- Fix two invalid memory accesses reported by cppcheck

svn-id: r45414
2009-10-26 20:07:37 +00:00
Florian Kagerer
b07e8d3c20 LOL: fixed bug in spell casting code
svn-id: r45361
2009-10-24 18:52:57 +00:00
Florian Kagerer
6248d3a21d LOL: fixed minor regression
svn-id: r45349
2009-10-23 19:20:59 +00:00
Florian Kagerer
1fb02d2c4b LOL/PC-98: fixed glitch in text displayer
svn-id: r45276
2009-10-20 18:34:12 +00:00
Florian Kagerer
557f32cdb1 LOL/PC-98: match vaelan's cube behaviour with original code
svn-id: r45252
2009-10-19 21:27:39 +00:00
Max Horn
2bbf708dea Introduced new type Common::DisposeAfterUse::Flag
svn-id: r45233
2009-10-18 19:41:59 +00:00
Florian Kagerer
237b66beca LOL: - added some updateInputs to spell animation code
- improved sfx volume code

svn-id: r45227
2009-10-18 17:28:00 +00:00
Florian Kagerer
8b993ce863 LOL: this should fix a valgrind warning
svn-id: r45221
2009-10-18 12:47:54 +00:00
Florian Kagerer
4b1f310f2d LOL: this (hopefully) fixes a minor glitch that might occur when using the freeze spell
svn-id: r45210
2009-10-17 23:52:57 +00:00
Johannes Schickel
bcac203098 Fix memory leak.
svn-id: r45208
2009-10-17 22:47:42 +00:00
Johannes Schickel
f62f3eea89 Fix valgrind warning.
svn-id: r45207
2009-10-17 22:47:21 +00:00
Johannes Schickel
51975b50cb Add LoL PC98 credits entries to kyra.dat.
svn-id: r45082
2009-10-14 14:17:15 +00:00
Florian Kagerer
73fa80d940 LOL/PC-98: fixed outro
svn-id: r45046
2009-10-13 19:48:41 +00:00
Florian Kagerer
c693401dce LOL/PC-98: fix decoration shape drawing
svn-id: r44947
2009-10-11 20:41:02 +00:00
Florian Kagerer
2109a0ff9d LOL/PC-98: cleanup
svn-id: r44946
2009-10-11 20:29:38 +00:00
Florian Kagerer
7449091202 KYRA: fix sjis dialgue text display
svn-id: r44943
2009-10-11 20:09:35 +00:00
Florian Kagerer
22ffa71c0a LOL/PC-98: fix outro music
svn-id: r44941
2009-10-11 19:33:38 +00:00