Commit Graph

38 Commits

Author SHA1 Message Date
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
Max Horn
793c04f43b SCI: Changed some 'const char *' to Common::String
svn-id: r49811
2010-06-15 12:10:18 +00:00
Max Horn
dea38106f8 SCI: Change ResourceSource to a class, further OOPify it.
In particular, renamed location_name to _name and made it const and
protected. Thus it cannot be changed after creation, and only read
access is now possible, via a getter method.

svn-id: r49810
2010-06-15 12:09:51 +00:00
Max Horn
98e1f1a193 SCI: Only use MacResManager if needed; start to OOPify ResourceSource
svn-id: r49809
2010-06-15 12:09:30 +00:00
Max Horn
69bfbdfa04 SCI: Move ResourceSource to new header resource_intern.h
svn-id: r49807
2010-06-15 12:08:40 +00:00
Filippos Karapetis
6fa4d1ba80 Initialize compression-related variables when loading external patch files. Fixes Cassima's speech in the intro of KQ6 (the engine thought that the external patch files of her speech were compressed)
svn-id: r49606
2010-06-12 11:43:30 +00:00
Matthew Hoops
6ad04a4a96 Add support for AIFF sound in SCI32 Mac games and add support for AIFF/WAVE audio36 patches; minor cleanup.
svn-id: r49576
2010-06-10 15:06:25 +00:00
Martin Kiewitz
e533289e07 SCI: document raw lipsync data skipping in readAudioMapSCI11()
svn-id: r49550
2010-06-09 20:32:55 +00:00
Filippos Karapetis
43c353d930 Now opening all files via getVolumeFile()
svn-id: r49451
2010-06-06 13:04:24 +00:00
Filippos Karapetis
e9f35fbf4c Rewrote the remaining parts of the ResourceManager class to work with file streams, thus removing the SCI_detection hack in the fallback detector
svn-id: r49438
2010-06-05 14:09:52 +00:00
Filippos Karapetis
fdc9bbcbf5 Simplified the channel monitoring code inside the SoundResource class
svn-id: r49429
2010-06-04 14:53:12 +00:00
Filippos Karapetis
ddf7449b00 Added code to get which channels are used by a sound. Also, fixed a crash when using Sierra's GM patches, a regression from commit #49391.
svn-id: r49415
2010-06-03 22:00:50 +00:00
Filippos Karapetis
7f0b0a83ed Fixed crashing with wave file patches, a regression from commit #49391
svn-id: r49411
2010-06-03 20:42:06 +00:00
Filippos Karapetis
af3fec8c26 - Fixed findGameObject() to properly handle SCI0-SCI1 games where the first block of script 0 isn't the exports block
- Changed many places where Common::File is used directly to use Common::SeekableReadStream instead (in order to ultimately remove the SCI_detection hack in the fallback detector)

svn-id: r49391
2010-06-02 13:17:36 +00:00
Filippos Karapetis
e5eaf3ee55 Split all of the audio-related functions of the resource manager in a separate file
svn-id: r49260
2010-05-27 08:09:32 +00:00