aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/sound.cpp
AgeCommit message (Collapse)Author
2008-09-30AGI: Another case where it is better to use FSNodes directly, instead of ↵Max Horn
converting them to path strings svn-id: r34708
2008-09-13Big patch changing the signature of various Stream methods (some ports may ↵Max Horn
need to be slightly tweaked to fix overloading errors/warnings) svn-id: r34514
2008-09-03Moved FilesystemNode / FSList to namespace Common; also got rid of some ↵Max Horn
'typedef Common::String String;' name aliases svn-id: r34302
2008-08-13Fixed initialization of some SoundMgr-class's member variables. Moved ↵Kari Salminen
_sndBuffer's allocation to SoundMgr's constructor and its deallocation to the destructor. Made fillAudio SoundMgr's method and removed a superfluous global static variable 'int16 *buffer'. Should help with the occasional crashes when starting the first sound in an AGI game. svn-id: r33822
2008-08-13Reverted r33815 (But not r33816).Kari Salminen
svn-id: r33819
2008-08-13Shutting up Valgrind about using uninitialised values from array _chn in ↵Kari Salminen
function stopNote. svn-id: r33816
2008-08-13Changed Agi::SoundMgr's sound buffer to a member array of size BUFFER_SIZE. ↵Kari Salminen
Also added initialization of _playing to false in SoundMgr's constructor. Hopefully helps with the occasional crashes in the sound code when starting the first sound in an AGI game. svn-id: r33815
2008-04-21Fix timing in Apple IIGS MIDI parsing. Now sounds should get triggered at ↵Kari Salminen
the correct times without the previously observed time jitter effect. svn-id: r31636
2008-04-17Fixed gcc warnings.Johannes Schickel
svn-id: r31550
2008-04-17Fix building with GCC (a few extra ;'s got in there somehow).John Willis
svn-id: r31545
2008-04-17Implemented Apple IIGS MIDI playing with software mixing.Kari Salminen
(NOTE: As you can hear this is a work in progress ;-)) - Added IIgsSoundMgr class for handling Apple IIGS sounds and moved functionality inside it - Added IIgsMidiChannel class for handling Apple IIGS MIDI channels - Made sound effects playing use the IIgsSoundMgr class too - Modified software mixing routine to mix multiple sounds svn-id: r31544
2008-04-15Make convertWave-function static as it uses no member variables.Kari Salminen
svn-id: r31510
2008-04-15Cleanup (Remove unneeded functions and rename a struct correctly).Kari Salminen
svn-id: r31509
2008-04-15Move MIDI program change mappings to their own structs (Useful for later ↵Kari Salminen
changes). svn-id: r31508
2008-04-08Implement the full range of Apple IIGS MIDI program number to instrument ↵Kari Salminen
mapping. Switch to using 8-bit signed sample data with Apple IIGS (In preparation for mixing multiple channels). Make Apple IIGS wavefile handling use SharedPtr and Array. svn-id: r31451
2008-04-03Add Apple IIGS MIDI program number to instrument number mappings (Both for ↵Kari Salminen
the older instrument set used by SQ1 only and for the newer instrument set used by all the other tested Apple IIGS games). svn-id: r31371
2008-04-03After further testing it seems Apple IIGS midi playing speed is actually 60 ↵Kari Salminen
ticks per second. Hurrah! svn-id: r31367
2008-04-03Fix naming of the Apple IIGS midi speed variable and its value (Was ↵Kari Salminen
erronously named bpm although was really ticks per second rather than ticks per minute). svn-id: r31366
2008-04-03Fix Apple IIGS midi playing speed (Based on tests with Apple IIGS KQ1 and ↵Kari Salminen
SQ1 under MESS 0.124a) svn-id: r31365
2007-09-19Merged common/stdafx.h into common/scummsys.h. All referencing files have ↵Nicola Mettifogo
been updated. svn-id: r28966
2007-09-18Patch #1768757: Merge fsnode-gsoc into trunk (MAJOR change, will break ↵Max Horn
compilation on some ports) svn-id: r28944
2007-09-11Adding various FIXME comments to bogus (non-self-explanatory) existing FIXME ↵Max Horn
comments; and some other related cleanup svn-id: r28890
2007-09-03Fix warning about unused static functionMax Horn
svn-id: r28847
2007-09-03Some updates to preagi's sound system and code cleanupFilippos Karapetis
svn-id: r28844
2007-08-28Fix relative pitch handling (It's signed, was interpreted as unsigned before).Kari Salminen
svn-id: r28759
2007-08-21An encountered zero in an Apple IIGS sample stream turns off looping for ↵Kari Salminen
that stream. Implemented this. svn-id: r28688
2007-08-19Made Apple IIGS MIDI file parsing work (They aren't completely standard MIDI ↵Kari Salminen
files). Enables playing the MIDI files (No sound! Only stepping through). Speed's probably not correct. svn-id: r28674
2007-08-19Removed superfluous variable checkings. Made it so that Apple IIGS mixing ↵Kari Salminen
code doesn't try to mix MIDI sounds yet as mixing them isn't yet supported. svn-id: r28673
2007-08-19Fixes previously crashing sound. Crash happened because of PCjr 4-channel ↵Kari Salminen
mixing code trying to use uninitialized values (phase, ins etc) when mixSound was called before anything was playing. svn-id: r28672
2007-08-19Some cleanup / const correctness / OOficationMax Horn
svn-id: r28671
2007-08-19Fixed warning about global symbol 'chn' being shadowed by local declaration ↵Max Horn
'chn' (note: naming a global var 'chn' is probably a bad idea. And using a class would be far better anyway ;) svn-id: r28669
2007-08-18Changed Apple IIGS sample playing frequency multiplier from 1076.0 to C6 ↵Kari Salminen
(i.e. about 1046.5). Commented out a warning that comes too often. svn-id: r28657
2007-08-18Added support for playing Apple IIGS samples. The code's not very pretty at ↵Kari Salminen
the moment (Work in progress). Apple IIGS MIDI sound probably broken somehow at the moment. svn-id: r28656
2007-08-17Added a definition for Apple IIGS sound emulation mode, made sound ↵Kari Salminen
initialization set it when appropriate and instruments loading use it. svn-id: r28647
2007-08-16Fixed some warningMax Horn
svn-id: r28638
2007-08-15Added rudimentary classes for different AGI sound resources (IIgsMidi, ↵Kari Salminen
IIgsSample, PCjrSound). Made existing code to at least work with PCjrSound. svn-id: r28630
2007-08-15Removed unneeded code from inside #if 0 ... #endif -clauses.Kari Salminen
svn-id: r28628
2007-08-15Removed use of decodeSound(int resnum). Not needed at the moment (Probably ↵Kari Salminen
going to be replaced by other functionality later). svn-id: r28627
2007-08-15Removed use of USE_IIGS_SOUND (#define).Kari Salminen
svn-id: r28626
2007-08-15Changed use of USE_CHORUS (#define) to g_useChorus (static boolean).Kari Salminen
svn-id: r28625
2007-08-15Made AGI's 4-channel PCjr sound not need structure packing pragmas anymore. ↵Kari Salminen
Also added more use of little endian reading macros. svn-id: r28624
2007-08-14Moved Apple IIGS related structs' read & finalize functions' implementations ↵Kari Salminen
to sound.cpp and left the declarations in sound.h. svn-id: r28614
2007-08-14Defined some functions in Agi::SoundMgr and moved stuff generally around ↵Kari Salminen
between AGI's sound.h and sound.cpp. Assimilated calcTrueSampleSize into another function. svn-id: r28613
2007-08-14Unified intendation, purely visual changes.Kari Salminen
svn-id: r28611
2007-08-14Not saving Apple IIGS instrument header's unneeded info anymore (Priority ↵Kari Salminen
increment and spare byte). svn-id: r28610
2007-08-13Added a couple of simple AgiSound stop, play, isPlaying-functions.Kari Salminen
svn-id: r28598
2007-08-13Grouped wave lists together into oscillators (Oscillators always consists of ↵Kari Salminen
two waves). svn-id: r28597
2007-08-13Made calcTrueSampleSize seek back to stream's start when ending the function.Kari Salminen
svn-id: r28595
2007-08-13Moved read- and finalize-functions into corresponding structs and fixed ↵Kari Salminen
calls to them where needed. svn-id: r28594
2007-08-13Added more functions to help with determining the Apple IIGS samples' real ↵Kari Salminen
lengths. svn-id: r28592