Commit Graph

64 Commits

Author SHA1 Message Date
Max Horn
4f8665fc83 COMMON: Move isFoo functions to namespace Common, add doxygen comments 2012-02-20 16:18:27 +01:00
Max Horn
658080deed ALL: Avoid using is* macros from ctype.h
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
2012-02-15 16:51:37 +01:00
Willem Jan Palenstijn
56fb56936e SCI: Clean up some memory management and loops 2012-01-15 18:25:00 +01:00
Filippos Karapetis
f2c163a569 SCI: Plug a leak in ResourceManager::processWavePatch()
Many thanks to digitall for finding this one
2012-01-15 19:02:19 +02:00
Filippos Karapetis
9dcab12160 SCI: Fixed bug in commit 1a17bba.
Thanks to wjp for pointing it out.
2011-11-02 00:23:18 +02:00
Filippos Karapetis
1a17bba1e4 SCI: Fix Common::List::erase usage.
Thanks to Tron for pointing that out.
2011-11-02 00:17:13 +02:00
Littleboy
b694a78f62 ANALYSIS: Add static casts to is* functions
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
2011-06-23 08:52:52 -04:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Max Horn
0ce2ca4e00 COMMON: Replace MKID_BE by MKTAG
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
2011-04-12 16:53:15 +02:00
Filippos Karapetis
e4b46bd159 SCI: Added resource manager support for changing the audio directory dynamically. Also,
moved some audio-specific resource code inside resource_audio.cpp

This functionality is used by kSetLanguage(), called when switching the language in
MUMG Deluxe from the game's main menu.

svn-id: r55872
2011-02-10 16:48:29 +00:00
Filippos Karapetis
d915560f44 SCI: Moved some audio resource code to resource_audio.cpp
svn-id: r55865
2011-02-10 12:40:48 +00:00
Filippos Karapetis
2c2f3a97e6 SCI: Added support for the alternate Windows MIDI soundtracks of the CD versions of EcoQuest, Jones, KQ5 and SQ4
svn-id: r54476
2010-11-25 14:22:09 +00:00
Filippos Karapetis
52898b6336 SCI: Fixed digital audio at the beginning of KQ5CD and removed a hack for the Windows version
svn-id: r54466
2010-11-25 02:21:07 +00:00
Filippos Karapetis
7508260954 SCI: Added support for the alternative GM tracks of the Windows version of KQ5CD (bug #3041239)
Note that the empty GM track for the Sierra logo makes the game hang, so the
MT-32 track is used, which sounds awful

svn-id: r54464
2010-11-25 01:19:45 +00:00
Matthew Hoops
8a788d16d7 SCI: Fix compile when SCI32 is not enabled
svn-id: r54160
2010-11-09 16:06:33 +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
Filippos Karapetis
928bcdbe09 SCI: Some changes to the fallback detector (sync with branch 1.2.0)
Added more graceful handling of the case where SCI32 isn't built in and the
user tries to detect or start a SCI32 game

svn-id: r52789
2010-09-18 09:47:18 +00:00
Walter van Niftrik
8bbbcfe5b8 SCI: Fix digital track regression from r52662.
svn-id: r52666
2010-09-09 23:01:51 +00:00
Walter van Niftrik
5eb0314e4c SCI: Fix last MIDI channel number for adlib driver
svn-id: r52662
2010-09-09 18:26:16 +00:00
Filippos Karapetis
31c889d7ce SCI: Fixed the GM detection introduced in rev #52211 to check the first available track, instead of track 1 (which doesn't always exist, e.g. in Pharkas). Also, added a comment inside applyPatch()
svn-id: r52222
2010-08-20 09:35:20 +00:00
Filippos Karapetis
37d2f10206 SCI: Added checking for the existence of a GM track, to determine if device ID 7 or 12 should be used. Fixes the GM music in the demo of QFG3, which is using an in-between version of SCI1 and SCI1.1
svn-id: r52211
2010-08-19 13:52:21 +00:00
Matthew Hoops
4a2ab85019 SCI: Fix size of wave files inside audio volumes (thanks to LordHoto for pointing out)
svn-id: r51745
2010-08-04 22:45:10 +00:00
Matthew Hoops
44f12117f2 SCI: Add support for SCI2.1 chunk resources
And if no scripts are present, but chunk 0 is present, load resources from there. This fixes the Lighthouse SCI2.1 demo.

svn-id: r51696
2010-08-03 14:58:57 +00:00
Matthew Hoops
bed1e3c164 SCI: Fix bug #3037401 - LB2Floppy: No SFX
Laura Bow 2 floppy and Mixed-Up Mother Goose SCI1.1 use an 8-byte entry 0.map format to store their entries.

svn-id: r51646
2010-08-02 18:30:37 +00:00
Martin Kiewitz
76f6449431 SCI: changing signature of kDoSound(play) in SCI2.1 to "o(i)" now, because qfg4 still uses "oi" calling
svn-id: r50879
2010-07-14 11:34:44 +00:00
Martin Kiewitz
710fc6c71e SCI: do boundary checking when loading sci1 sounds and mixing them together. The final end credits song (resource 699) in kq5 has some channels with invalid offsets, crashing ScummVM before
svn-id: r50339
2010-06-26 19:55:49 +00:00
Max Horn
6ee82a2027 SCI: Introduce SciGameId enum
svn-id: r50273
2010-06-25 16:16:29 +00:00
Matthew Hoops
bb9f556c36 Add support for the QFG3 demo audio map and audio resources. Based on a patch by Walter.
svn-id: r50144
2010-06-22 15:18:55 +00:00
Martin Kiewitz
af65de6e1a SCI: implement channel remapping for SCI1
svn-id: r49905
2010-06-16 21:02:58 +00:00
Max Horn
e7275161f4 SCI: Avoid using g_sci in resman (as it might not yet be inited)
svn-id: r49897
2010-06-16 00:24:16 +00:00
Matthew Hoops
45fe9a469e Fix wave patches.
svn-id: r49855
2010-06-15 13:45:12 +00:00
Max Horn
2b24a1a2ad SCI: OOpify class ResourceId
svn-id: r49841
2010-06-15 12:31:16 +00:00
Max Horn
79c9be5d96 Reduce header dependencies
svn-id: r49836
2010-06-15 12:20:03 +00:00
Max Horn
583a966d8c SCI: Move decompress & readResourceInfo to Resource; more cleanup
svn-id: r49835
2010-06-15 12:19:39 +00:00
Max Horn
4392cdaee1 SCI: cleanup
svn-id: r49834
2010-06-15 12:19:14 +00:00
Max Horn
335e17af01 SCI: Move several methods from ResourceManager to Resource
svn-id: r49833
2010-06-15 12:18:57 +00:00
Max Horn
63d9cfb3bf SCI: Add ResourceManager::updateResource(); change some code to use addResource()
svn-id: r49832
2010-06-15 12:18:31 +00:00
Max Horn
b9a3a9c12d SCI: Move _associatedMap to VolumeResourceSource and make it const
svn-id: r49831
2010-06-15 12:18:07 +00:00
Max Horn
6667a71027 SCI: Move _audioCompression(Type|OffsetMapping) to AudioVolumeResourceSource
svn-id: r49830
2010-06-15 12:17:47 +00:00
Max Horn
1a0201f7e9 SCI: cleanup
svn-id: r49829
2010-06-15 12:17:25 +00:00
Max Horn
88663c9186 SCI: Merge ResourceManager::checkIfAudioVolumeIsCompressed into AudioVolumeResourceSource constructor
svn-id: r49827
2010-06-15 12:16:42 +00:00
Max Horn
4020500640 SCI: Rename ResourceSource members to follow _camelCase convention
svn-id: r49823
2010-06-15 12:15:05 +00:00
Max Horn
07b896802b SCI: Pass volume number to ResourceSource subclass constructors; make ResourceSource::volume_number const
svn-id: r49822
2010-06-15 12:14:39 +00:00
Max Horn
d0f59edd96 SCI: Rename ResourceSource::resourceFile to _resourceFile
svn-id: r49818
2010-06-15 12:13:07 +00:00
Max Horn
89cf6f7cb1 SCI: Change ResourceManager::getVolume() to use new classes
* Add new ResourceSource::findVolume() virtual method
* Rename ResourceManager::getVolume() to findVolume(),
  and change it to use the new ResourceSource method
* Add some TODO comments pointing to further OOPification
  possibilities

svn-id: r49815
2010-06-15 12:11:56 +00:00
Max Horn
8c06425ee3 SCI: Remove 'map' param from addSource, and let AudioVolumeResourceSource subclass VolumeResourceSource
svn-id: r49814
2010-06-15 12:11:30 +00:00
Max Horn
17a5112162 SCI: Convert code to use ResourceSource subclasses
svn-id: r49813
2010-06-15 12:11:04 +00:00
Max Horn
24a295f4a3 SCI: Add ResourceSource subclasses, one for each type
svn-id: r49812
2010-06-15 12:10:41 +00:00