Commit Graph

132 Commits

Author SHA1 Message Date
Max Horn
3eab407cd5 SCI: Replaced memory ref counting code in the SongIterator code by a simple Common::Array<byte> object; also doxygenified some source comments
svn-id: r40032
2009-04-20 19:28:55 +00:00
Walter van Niftrik
695bc36b9a SCI: Added a new song player (work-in-progress).
svn-id: r39953
2009-04-15 10:45:59 +00:00
Filippos Karapetis
c4e054848e Changed some references from "FreeSCI" to "SCI" or "ScummVM"
svn-id: r39807
2009-04-03 08:10:58 +00:00
Max Horn
7df4e2a80f SCI: Indention changes, changed 'songlib_t' params to 'const songlib_t &'
svn-id: r39429
2009-03-15 20:31:15 +00:00
Max Horn
642bad22d8 SCI: Removed most uses of the 'inline' keyword. It is usually better to let the compiler figure out what to inline. As it is, most of these looked as if they were randomly placed ;)
svn-id: r39352
2009-03-12 03:26:47 +00:00
Filippos Karapetis
966972def6 Fixed another crash right at the beginning of SQ4
svn-id: r39347
2009-03-11 23:44:22 +00:00
Max Horn
4da6fbbb76 SCI: Memory 'ref counting' code is only used by song iterators -> move it there, make it private (to be replaced one day by something else, e.g. Common::SharedPtr)
svn-id: r39305
2009-03-10 19:08:07 +00:00
Max Horn
7f1a9b385d SCI: SongIterator::Message only needs to transfer a single argument, so get rid of the second slot
svn-id: r39290
2009-03-10 02:57:30 +00:00
Max Horn
6b58973536 SCI: Renamed SongIteratorMessage -> SongIterator::Message; cleanup
svn-id: r39289
2009-03-10 02:42:22 +00:00
Max Horn
842a42b1bd SCI: More SongIterator refactoring.
* Added SongIterator::clone()
* got rid of songit_clone()
* removed SIMSG_CLONE and related code
* removed SongIterator::flags
* turned songit_new_tee into TeeSongIterator constructor

svn-id: r39288
2009-03-10 02:41:56 +00:00
Willem Jan Palenstijn
1e4c9488f2 Don't adjust data pointer in makeStream.
It is already adjusted in getAudioStream.

svn-id: r39276
2009-03-09 21:11:39 +00:00
Max Horn
7ec2a98177 SCI: Added BaseSongIterator copy constructor which invokey sci_refcount_incref
svn-id: r39273
2009-03-09 19:55:18 +00:00
Willem Jan Palenstijn
d2514d20b9 Reset child iterators on deletion.
This fixes an illegal access in ~TeeSongIterator.

svn-id: r39272
2009-03-09 19:44:10 +00:00
Max Horn
4e6a7d83d1 SCI: Rewrote handling of song wakeup times & (iterator) delays, to avoid rounding issues between ticks (1/60s) and milliseconds; also fixed a bug (coming from Glutton ;) where delays measured in millisecs were treated as ticks instead. Thanks to Walter for the precursor of this patch
svn-id: r39263
2009-03-09 16:15:35 +00:00
Max Horn
7bfab75a08 SCI: Fixed regression in new_fast_forward_iterator
svn-id: r39215
2009-03-08 08:17:59 +00:00
Filippos Karapetis
73a4664552 Replaced getInt15 in intstrument-map.cpp as well
svn-id: r39196
2009-03-07 17:55:00 +00:00
Filippos Karapetis
1e29983d8e Replaced getInt16, getUInt16 and putInt16
svn-id: r39189
2009-03-07 16:14:20 +00:00
Max Horn
18b3454280 SCI: Replaced linked list of Sci1Samples by a Common::List
svn-id: r39178
2009-03-07 06:57:17 +00:00
Max Horn
c2f08b10d2 SCI: More cleanup in the song iterator codebase
svn-id: r39177
2009-03-07 06:56:39 +00:00
Filippos Karapetis
fc4df48e13 SongIterator is a class, not a struct
svn-id: r39167
2009-03-06 23:52:12 +00:00
Max Horn
54e1256b0e SCI: Reduce SFX header dependencies
svn-id: r39159
2009-03-06 18:11:12 +00:00
Max Horn
763275f269 SCI: Continued C++ification of SongIterator code
svn-id: r39158
2009-03-06 17:53:11 +00:00
Max Horn
e134281b5c SCI: Fixed (I hope) song iterator death listeners; and some cleanup
svn-id: r39157
2009-03-06 17:39:46 +00:00
Max Horn
e3ac2ecfaa SCI: Started to revamp the song iterator death notification system (which currently is mess :)
svn-id: r39156
2009-03-06 17:39:15 +00:00
Filippos Karapetis
b8a2b38e41 SongIterator is a class, not a struct
svn-id: r39154
2009-03-06 11:06:04 +00:00
Max Horn
0f3d67c1ac SCI: C++ifyed SongIterator and its subclasses
svn-id: r39152
2009-03-06 07:25:48 +00:00
Max Horn
018d19e020 SCI: Some cleanup to the SongIteratorMessage code
svn-id: r39151
2009-03-06 07:25:37 +00:00
Max Horn
24dac898fe SCI: Converted SongIterator::get_pcm_feed into a virtual method
svn-id: r39150
2009-03-06 07:25:25 +00:00
Max Horn
f8d9e4fdcc SCI: Restructured PolledPlayerAudioStream::readBuffer a bit
svn-id: r39149
2009-03-06 07:25:15 +00:00
Max Horn
5e2ee01b39 SCI: Renamed lots of classes related to song iterators; allocate song iterators via new/delete instead of malloc/free
svn-id: r39148
2009-03-06 07:25:06 +00:00
Andre Heider
7ef3a59a2c don't crash if sound has been disabled or the backend driver failed to initialize.
svn-id: r39137
2009-03-05 21:50:01 +00:00
Max Horn
2a7eef19c0 SCI: Removed unused FEED_MODE_DEAD, extended FIXME comment for FEED_MODE_RESTART
svn-id: r39119
2009-03-04 08:04:28 +00:00
Max Horn
dbb59ce3a1 SCI: Merged polled player & PCMFeedAudioStream -> PolledPlayerAudioStream
svn-id: r39118
2009-03-04 07:59:33 +00:00
Max Horn
ce5c6f3a95 SCI: Added FIXME about Opl2 driver hardcoding sample rate. well, we probably should ditch that one and use our fmopl...
svn-id: r39117
2009-03-04 07:46:27 +00:00
Max Horn
ac2d012ae5 SCI: Merged sfx/mixer.cpp into sfx/player/polled.cpp
svn-id: r39116
2009-03-04 07:38:49 +00:00
Max Horn
e783859d5c SCI: Replaced sfx_iterator_make_feed and associated code by Audio::makeLinearInputStream
svn-id: r39115
2009-03-04 07:31:31 +00:00
Max Horn
0a206fb031 SCI: Use Audio::Timestamp instead of sfx_timestamp_t
svn-id: r39113
2009-03-04 06:58:51 +00:00
Max Horn
92eceb741a SCI: mixer cleanup
svn-id: r39111
2009-03-04 06:23:14 +00:00
Filippos Karapetis
a4e4de9ecd Fixed crash in SQ4
svn-id: r39091
2009-03-03 17:20:02 +00:00
Max Horn
00db87563a SCI: Reimplemented the SCI mixer based on the old SCI DC mixer by walter, and by taking advantage of ScummVM's mixers capabilities. Got rid of sfx_pcm_mixer_t
svn-id: r39053
2009-03-01 21:23:44 +00:00
Willem Jan Palenstijn
82e4168d47 Don't free a sfx_pcm_feed_t that's still in use.
It's a rather hackish fix, but this feed-wrapping code should only be
temporary anyway.

svn-id: r39033
2009-03-01 12:08:44 +00:00
Max Horn
7ee049ab8f SCI: Forgot to commit a couple files after renaming sfx headers
svn-id: r39010
2009-03-01 06:17:52 +00:00
Max Horn
d0c477e930 SCI: Removed unused pause/resume methods from the mixer, and rewrote the feeds handling to use Common::List
svn-id: r39009
2009-03-01 06:02:42 +00:00
Max Horn
4e0ee7abea SCI: cleanup
svn-id: r39008
2009-03-01 06:02:34 +00:00
Max Horn
6f290b7cd6 SCI: Removed some unused code from the SCI mixer
svn-id: r39007
2009-03-01 06:02:26 +00:00
Max Horn
25e7d3a08d SCI: Renamed some sfx header files
svn-id: r39006
2009-03-01 06:02:17 +00:00
Max Horn
6454a3dee1 SCI: Replaced fake struct 'inheritance' (using #defines) with regular C++ subclassing
svn-id: r39005
2009-03-01 06:01:48 +00:00
Jordi Vilalta Prat
7050c7b03f SCI: Use the ResourceType enum instead of integers where it makes sense
svn-id: r38988
2009-02-28 23:46:50 +00:00
Greg Frieger
61ab59138a resource_t struct replaced with stub Resource class for future objectifying. Also the crash when exiting SCI1 games was fixed
svn-id: r38982
2009-02-28 21:59:49 +00:00
Greg Frieger
4dd1b7dad5 Turned ResourceManager into a class, along with all related functions
svn-id: r38978
2009-02-28 20:45:36 +00:00