Commit Graph

110 Commits

Author SHA1 Message Date
Kari Salminen
4cc4bd0f41 Implement the full range of Apple IIGS MIDI program number to instrument 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-08 14:45:42 +00:00
Kari Salminen
510a81bbd8 Add Apple IIGS MIDI program number to instrument number mappings (Both for 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-03 22:15:59 +00:00
Kari Salminen
25ff174193 After further testing it seems Apple IIGS midi playing speed is actually 60 ticks per second. Hurrah!
svn-id: r31367
2008-04-03 18:31:30 +00:00
Kari Salminen
84105227f2 Fix naming of the Apple IIGS midi speed variable and its value (Was erronously named bpm although was really ticks per second rather than ticks per minute).
svn-id: r31366
2008-04-03 18:12:09 +00:00
Kari Salminen
4836c1109c Fix Apple IIGS midi playing speed (Based on tests with Apple IIGS KQ1 and SQ1 under MESS 0.124a)
svn-id: r31365
2008-04-03 14:33:53 +00:00
Nicola Mettifogo
258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Max Horn
c3d3aebe87 Patch #1768757: Merge fsnode-gsoc into trunk (MAJOR change, will break compilation on some ports)
svn-id: r28944
2007-09-18 20:02:04 +00:00
Max Horn
4cc9d17c34 Adding various FIXME comments to bogus (non-self-explanatory) existing FIXME comments; and some other related cleanup
svn-id: r28890
2007-09-11 09:20:39 +00:00
Max Horn
750ad32030 Fix warning about unused static function
svn-id: r28847
2007-09-03 12:23:50 +00:00
Filippos Karapetis
51554b6f20 Some updates to preagi's sound system and code cleanup
svn-id: r28844
2007-09-03 09:39:15 +00:00
Kari Salminen
a4780a8f82 Fix relative pitch handling (It's signed, was interpreted as unsigned before).
svn-id: r28759
2007-08-28 10:41:25 +00:00
Kari Salminen
c2c9ab9a22 An encountered zero in an Apple IIGS sample stream turns off looping for that stream. Implemented this.
svn-id: r28688
2007-08-21 15:51:28 +00:00
Kari Salminen
ef0bd468a2 Made Apple IIGS MIDI file parsing work (They aren't completely standard MIDI files). Enables playing the MIDI files (No sound! Only stepping through). Speed's probably not correct.
svn-id: r28674
2007-08-19 23:57:12 +00:00
Kari Salminen
42e257b08d Removed superfluous variable checkings. Made it so that Apple IIGS mixing code doesn't try to mix MIDI sounds yet as mixing them isn't yet supported.
svn-id: r28673
2007-08-19 23:33:22 +00:00
Kari Salminen
72fd923cf5 Fixes previously crashing sound. Crash happened because of PCjr 4-channel mixing code trying to use uninitialized values (phase, ins etc) when mixSound was called before anything was playing.
svn-id: r28672
2007-08-19 23:28:38 +00:00
Max Horn
5b711795d0 Some cleanup / const correctness / OOfication
svn-id: r28671
2007-08-19 20:48:11 +00:00
Max Horn
df9414c9a1 Fixed warning about global symbol 'chn' being shadowed by local declaration '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-19 20:31:15 +00:00
Kari Salminen
a777b3e64f Changed Apple IIGS sample playing frequency multiplier from 1076.0 to C6 (i.e. about 1046.5). Commented out a warning that comes too often.
svn-id: r28657
2007-08-18 15:54:29 +00:00
Kari Salminen
d862dc430d Added support for playing Apple IIGS samples. The code's not very pretty at the moment (Work in progress). Apple IIGS MIDI sound probably broken somehow at the moment.
svn-id: r28656
2007-08-18 12:41:24 +00:00
Kari Salminen
aa8db3f74f Added a definition for Apple IIGS sound emulation mode, made sound initialization set it when appropriate and instruments loading use it.
svn-id: r28647
2007-08-17 13:10:57 +00:00
Max Horn
47b2f533f0 Fixed some warning
svn-id: r28638
2007-08-16 18:42:28 +00:00
Kari Salminen
c987d6aaf0 Added rudimentary classes for different AGI sound resources (IIgsMidi, IIgsSample, PCjrSound). Made existing code to at least work with PCjrSound.
svn-id: r28630
2007-08-15 22:00:31 +00:00
Kari Salminen
ec3f37956d Removed unneeded code from inside #if 0 ... #endif -clauses.
svn-id: r28628
2007-08-15 16:46:37 +00:00
Kari Salminen
fa9a6cef84 Removed use of decodeSound(int resnum). Not needed at the moment (Probably going to be replaced by other functionality later).
svn-id: r28627
2007-08-15 16:44:13 +00:00
Kari Salminen
fe9bb43622 Removed use of USE_IIGS_SOUND (#define).
svn-id: r28626
2007-08-15 16:40:45 +00:00
Kari Salminen
d4998087aa Changed use of USE_CHORUS (#define) to g_useChorus (static boolean).
svn-id: r28625
2007-08-15 16:31:15 +00:00
Kari Salminen
4d83eef351 Made AGI's 4-channel PCjr sound not need structure packing pragmas anymore. Also added more use of little endian reading macros.
svn-id: r28624
2007-08-15 15:55:38 +00:00
Kari Salminen
8a8b97c230 Moved Apple IIGS related structs' read & finalize functions' implementations to sound.cpp and left the declarations in sound.h.
svn-id: r28614
2007-08-14 12:54:57 +00:00
Kari Salminen
af85709cfd Defined some functions in Agi::SoundMgr and moved stuff generally around between AGI's sound.h and sound.cpp. Assimilated calcTrueSampleSize into another function.
svn-id: r28613
2007-08-14 12:44:44 +00:00
Kari Salminen
27ea9d581b Unified intendation, purely visual changes.
svn-id: r28611
2007-08-14 08:49:20 +00:00
Kari Salminen
cbba39d0bb Not saving Apple IIGS instrument header's unneeded info anymore (Priority increment and spare byte).
svn-id: r28610
2007-08-14 08:47:49 +00:00
Kari Salminen
7460eb55a1 Added a couple of simple AgiSound stop, play, isPlaying-functions.
svn-id: r28598
2007-08-13 21:15:27 +00:00
Kari Salminen
eb7dd9970f Grouped wave lists together into oscillators (Oscillators always consists of two waves).
svn-id: r28597
2007-08-13 16:05:46 +00:00
Kari Salminen
985ac6ceaa Made calcTrueSampleSize seek back to stream's start when ending the function.
svn-id: r28595
2007-08-13 15:18:44 +00:00
Kari Salminen
8801cf9b3c Moved read- and finalize-functions into corresponding structs and fixed calls to them where needed.
svn-id: r28594
2007-08-13 15:13:58 +00:00
Kari Salminen
c0cde76df9 Added more functions to help with determining the Apple IIGS samples' real lengths.
svn-id: r28592
2007-08-13 14:06:30 +00:00
Max Horn
3f22960a65 Fix warning() format string
svn-id: r28518
2007-08-11 08:16:18 +00:00
Kari Salminen
6ea171189b Added Apple IIGS sample's true size calculation (A zero byte can end the sample prematurely).
svn-id: r28514
2007-08-10 15:33:07 +00:00
Kari Salminen
9df29f1123 Parsing Apple IIGS wave info into more easily accessible variables in the memory.
svn-id: r28513
2007-08-10 13:04:59 +00:00
Kari Salminen
f200150590 Added Apple IIGS instruments and wave file loading.\n(Apple IIGS music playing is broken at the moment).
svn-id: r28508
2007-08-09 17:44:07 +00:00
Kari Salminen
ae1f66994e Brought back and changed some variables from inside a #if 0 ... #endif
svn-id: r28507
2007-08-09 17:26:41 +00:00
Kari Salminen
89c30c871f Removed old loadInstruments().
svn-id: r28506
2007-08-09 17:11:38 +00:00
Kari Salminen
03d5bbf253 Added a couple of new constants and modified an existing one.
svn-id: r28505
2007-08-09 17:07:36 +00:00
Travis Howell
760986259c Fix compile warnings.
svn-id: r28501
2007-08-09 05:43:58 +00:00
Kari Salminen
44ddb2419b Fixes compilation error C2666: 'pow' : 7 overloads have similar conversions on Windows (VS2003), Xbox (VS2003) and Xbox 360 (VS2005). Thanks to Carch for reporting the compilation problems.
svn-id: r28446
2007-08-04 12:16:10 +00:00
Kari Salminen
532a662f5a Some Apple IIGS sound chip playing mode defines etc.
svn-id: r28445
2007-08-04 12:05:32 +00:00
Kari Salminen
02103a65a2 Figured out most missing parts of the Apple IIGS sample header. Added methods for reading Apple IIGS instrument headers.
svn-id: r28432
2007-08-03 14:22:20 +00:00
Kari Salminen
af16be07a1 Added reading of volume parameter from Apple IIGS AGI sample header.
svn-id: r28405
2007-08-02 11:39:45 +00:00
Kari Salminen
8299835cad Added methods for reading Apple IIGS AGI samples and creating AudioStream-objects out of them. Commented out some code to make things compile.
svn-id: r28404
2007-08-02 11:10:26 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Max Horn
227a080e5b Patch #1663933 (Kill premix channel) with a few tiny additional tweaks by me
svn-id: r25752
2007-02-20 18:50:17 +00:00
Eugene Sandulenko
80eb248a0e Get rid of _opt. Cleanup.
svn-id: r25549
2007-02-13 15:27:36 +00:00
Torbjörn Andersson
0fdd4b6481 Moved the setupPremix() calls to initSound() and deinitSound(), instead of the
sound manager's constructor/destructor. Maybe this will fix the rare crashes on
startup?

svn-id: r25225
2007-01-27 05:23:56 +00:00
Paweł Kołodziejski
b47eb95316 Formating names in source code
svn-id: r25101
2007-01-16 12:40:51 +00:00
Max Horn
d1b570d9e5 Fixing some compiler warnings
svn-id: r24812
2006-12-06 21:23:01 +00:00
Torbjörn Andersson
efb38a5d60 Fixed compile errors (for me at least). Still plenty of warnings, though.
svn-id: r24809
2006-12-06 19:44:27 +00:00
Paweł Kołodziejski
1d3ca2e409 first phase of objectisation of agi engine
svn-id: r24808
2006-12-06 19:27:02 +00:00
Torbjörn Andersson
4a583216fb Fixed most - not all - GCC warnings.
svn-id: r22614
2006-05-24 19:51:37 +00:00
Paweł Kołodziejski
20cf952b68 removed defines USE_PCM_SOUND, AGDS_SUPPORT, USE_HIRES
svn-id: r22609
2006-05-24 14:00:08 +00:00
Paweł Kołodziejski
107073537e imported AGI engine
svn-id: r22588
2006-05-23 23:43:52 +00:00