Andre Heider
29bb8a59ee
If an error occured on constructing a VorbisInputStream, return 0 from makeVorbisStream, just like makeFlacStream does.
...
svn-id: r44556
2009-10-03 19:27:10 +00:00
Max Horn
8ba75fc522
Fix code formatting (esp. 'if(' -> 'if (' etc., but also indention and other things)
...
svn-id: r44495
2009-09-30 16:16:53 +00:00
Max Horn
76132409d6
Removed Mac OS X QuickTime MIDI backend. It breaks on OS X 10.6, and it's not as good as the CoreAudio backend anyway
...
svn-id: r44428
2009-09-27 22:43:32 +00:00
Andre Heider
3045ecce2f
Removed an assert() in favour of error checking.
...
svn-id: r44278
2009-09-23 21:14:37 +00:00
Johannes Schickel
c50940bbf4
Got rid of Common::File::addDefaultDirectory, instead implemented the solution proposed in "Case agnostic handling for directories (and files)" on -devel.
...
svn-id: r44266
2009-09-23 00:15:00 +00:00
Johannes Schickel
1b68bf76ac
Wording.
...
svn-id: r44086
2009-09-14 19:30:46 +00:00
Johannes Schickel
160f9e7705
Use struct packing for AdLib instruments like the SCUMM engine does. (And a comment about this change, which might be rather paranoia than having a real effect)
...
svn-id: r44085
2009-09-14 18:41:21 +00:00
Torbjörn Andersson
e7469479ce
Removed unnecessary semi-colons.
...
svn-id: r44048
2009-09-13 10:32:55 +00:00
Norbert Lange
0b5a32e99a
fix SFX not playing before music started
...
svn-id: r43799
2009-08-29 12:44:51 +00:00
Sven Hesse
a6c7d14ddf
This just fix the compile errors on AmigaOS (bug #2845660 )
...
svn-id: r43772
2009-08-27 16:29:56 +00:00
Norbert Lange
917d4b78b3
Merge with trunk
...
svn-id: r43701
2009-08-24 17:51:47 +00:00
Johannes Schickel
dd7868acc2
- Change shorten.h guard to match the sjis.h guard.
...
- Also enable shorten code when the build includes support for dynamic engine plugins.
svn-id: r43700
2009-08-24 16:07:46 +00:00
Norbert Lange
5f87d5090c
fixed small mistake with the sinetable
...
moved pow2table into the only function using it
svn-id: r43563
2009-08-20 15:10:32 +00:00
Johannes Schickel
3ade77dfb0
Typos.
...
svn-id: r43515
2009-08-18 15:41:00 +00:00
Johannes Schickel
5c11ec51bc
- Destory AudioCDManager singleton after user quits a game, this saves a few bytes memory
...
- Added FIXME to audiocd.h, concering why destroying the AudioCDManager can not quit CD playback right now
svn-id: r43513
2009-08-18 15:32:26 +00:00
Norbert Lange
56c23731e7
dont keep some unused parts of the mdatfile in memory
...
svn-id: r43506
2009-08-18 11:48:38 +00:00
Norbert Lange
5e1e7d0191
added tiebreaking to pickVoice, now the use of channels is better distributed
...
added a fixedpoint pow2 function (similar to the original) - no floats used anymore at the expense of a 512 byte table
added a sinetable for the modulation effect.
svn-id: r43505
2009-08-18 11:34:55 +00:00
Johannes Schickel
516dd5c9a4
Slight cleanup to makeLinearDiskStream interface.
...
svn-id: r43481
2009-08-17 13:49:56 +00:00
Filippos Karapetis
76a339ecd0
Added looping support to LinearDiskStream, needed by SAGA and perhaps other engines. Note that the loop end parameter is still not implemented
...
svn-id: r43479
2009-08-17 13:16:40 +00:00
Norbert Lange
cc3a20c13c
merge with trunk
...
svn-id: r43478
2009-08-17 12:58:53 +00:00
Johannes Schickel
582eb13fa2
Fix for bug #2838568 "AMIGAOS4: Compiler error in audiostream.cpp"
...
svn-id: r43447
2009-08-16 17:38:09 +00:00
Norbert Lange
c96affd0c1
merge with trunk
...
svn-id: r43443
2009-08-16 16:39:34 +00:00
Neil Millstone
a135a7f938
Allow VOCs to stream from disk. Disabled by default, use symbol STREAM_AUDIO_FROM_DISK to enable. See patch #2834001 .
...
svn-id: r43357
2009-08-13 21:46:41 +00:00
Norbert Lange
29b145310c
(re-)initialise some Variables when sound is stopped
...
svn-id: r43351
2009-08-13 16:42:36 +00:00
Norbert Lange
13757d5354
sound_amiga: honor _musicEnabled and _sfxEnabled flags
...
maxtrax: initialise lastvolume
svn-id: r43337
2009-08-13 00:07:37 +00:00
Norbert Lange
0836cf6d9b
merged from trunk (Amiga LoK supposedly completeable!)
...
fixed a bug I introduced in one of the last cleanups
svn-id: r43291
2009-08-11 22:35:56 +00:00
Andre Heider
dc0e908385
Fixed an endian bug in the ADPCM decoder ( #2211901 ).
...
svn-id: r43287
2009-08-11 19:11:26 +00:00
Norbert Lange
8cb42dd689
fixed bug in tempoeffect
...
svn-id: r43204
2009-08-10 12:09:31 +00:00
Norbert Lange
d63ddbdbbe
fix potential leak in loadscore
...
added parameters to constructor
svn-id: r43203
2009-08-10 11:47:49 +00:00
Norbert Lange
b4c689a3c1
fixed up some missing newlines
...
removed MSVC6 disable pragmas, the warnings are already disabled in the project files
svn-id: r43182
2009-08-09 18:59:22 +00:00
Norbert Lange
0350a1598d
merge with trunk
...
svn-id: r43134
2009-08-08 19:09:30 +00:00
Johannes Schickel
c455e135b2
Fix XMIDI looping implementation. Now for example the music in the ferret village of ITE plays fine.
...
svn-id: r43126
2009-08-08 13:57:21 +00:00
Norbert Lange
4e7b156e10
fix a bug that prevented gcc from compiling
...
correctly added my palette patch (it showed up in the rev-changes but dint got applied fully to the svn tree?)
svn-id: r43116
2009-08-08 09:49:28 +00:00
Norbert Lange
6dbeddab25
slighty changed how voices get disabled after their sample played
...
svn-id: r43111
2009-08-08 09:23:09 +00:00
Norbert Lange
baeed11aae
added missing stuff for modulation and microtonal effects (several bugs in original player - dont think this was ever used)
...
added compiletime macros for modulation and microtonal
moved common initialization stuff into a new resetPlayer() method
reworked stopEvents, made them simpler and inlined the noteOff function
added check for allocation and IO-Errors to the load-function.
svn-id: r43110
2009-08-08 09:18:23 +00:00
Norbert Lange
78e06a0e1c
refactored noteOn
...
removed channel.voicesActive variable
svn-id: r43104
2009-08-07 21:00:34 +00:00
Norbert Lange
d51e8be2bf
implemented "SPECIAL" commands
...
addid missing stacklock for a few public functions
svn-id: r43100
2009-08-07 18:02:06 +00:00
Norbert Lange
c4047908aa
added stub for setting audio filter in Paula
...
fixed wrong value for volume in maxtrax
svn-id: r43099
2009-08-07 16:21:30 +00:00
Norbert Lange
648bec1d0c
move function definitions from header to the cpp file
...
moved a few functions to static scope
svn-id: r43077
2009-08-05 19:26:00 +00:00
Norbert Lange
621071ea9e
added some error messages to the compile-time checks
...
svn-id: r43076
2009-08-05 18:57:13 +00:00
Norbert Lange
025846020b
moved check if class should be compiled to the header
...
svn-id: r43075
2009-08-05 18:45:22 +00:00
Norbert Lange
55a24eacd5
fixed wrong indentation
...
moved notetable to static scope
svn-id: r43074
2009-08-05 18:13:42 +00:00
Norbert Lange
29e4755f2a
check if modplayers should be compiled based on engine-macros
...
svn-id: r43073
2009-08-05 18:00:13 +00:00
Norbert Lange
fc8e269c36
cleaned up sound_amiga.cpp a bit, added checks for missing files
...
svn-id: r43050
2009-08-04 18:24:39 +00:00
Norbert Lange
4c4eb1394c
added warning should the sound files not be available (intro will hang if there is no musictimer)
...
svn-id: r43049
2009-08-04 17:43:56 +00:00
Norbert Lange
c304c633ce
moved helper functions from the header file into the cpp file
...
svn-id: r43047
2009-08-04 17:12:19 +00:00
Norbert Lange
dbe50abae4
added doxygeb comments
...
added checks to public functions if resources already got loaded
svn-id: r43046
2009-08-04 17:03:35 +00:00
Norbert Lange
e6f8bfafc7
moved code for initialising patterns into own function
...
added initialisation of return-addresses for patterns and macros
svn-id: r43045
2009-08-04 15:43:40 +00:00
Norbert Lange
0306695459
Some formatting changes and added comments
...
fixed parameters for "Play macro" command
fixed copypaste-mistake for pattern-fade
svn-id: r43032
2009-08-04 10:42:42 +00:00
Norbert Lange
2a4c60244b
made some unused methods private
...
svn-id: r42986
2009-08-02 00:39:06 +00:00
Norbert Lange
bb9f1d6a25
fix some more harmless warnings to make gcc shutup
...
svn-id: r42985
2009-08-02 00:27:15 +00:00
Norbert Lange
2dd5516954
fixed some constness warnings
...
svn-id: r42984
2009-08-02 00:15:38 +00:00
Norbert Lange
92d292a3f6
made MdatResource struct private and changed the signatures of functions which load the resources.
...
svn-id: r42982
2009-08-02 00:03:42 +00:00
Norbert Lange
59395eb6b6
stole formatting for constructors from existing code
...
svn-id: r42981
2009-08-01 23:14:28 +00:00
Norbert Lange
a28281072d
engines/scumm/scumm.cpp: terminate method is pretty redundant - removed
...
tfmx, player_v4a: refactored Tfmx to allow sharing of resources between 2 instances. Needed changes in player_v4a aswell
svn-id: r42980
2009-08-01 23:02:45 +00:00
Norbert Lange
27ee1eb331
refactored and commented player_va4 a bit
...
fix waitcommand in Tfmx
try making tfmxplayer compile again
svn-id: r42976
2009-08-01 16:10:00 +00:00
Norbert Lange
1becc072f9
Added the last 2 patterncommands just so I dont have to warn about unimplemented ones
...
svn-id: r42963
2009-07-31 15:20:02 +00:00
Norbert Lange
fd1fed0b6e
process all DMA Events before Macros, for the unlikely chance of making a difference
...
svn-id: r42962
2009-07-31 14:36:37 +00:00
Norbert Lange
a4ebf2cfa6
using accessmodifiers in Tfmx now and removed/disabled functions that now dont work anymore (the commandline utility cant be compiled anymore as result of this)
...
added arraysize of external signals and check it before accesses
moved 2 debug-functions into Tfmx.cpp, removed depencies to files in the tfmx folder
moved common code for fade-effects in a seperate method
svn-id: r42961
2009-07-31 14:29:04 +00:00
Johannes Schickel
e779747ca4
Fix typo, which made our "floorf" macro use "floorf" instead of "floor" on systems without "floorf".
...
svn-id: r42904
2009-07-29 20:03:46 +00:00
Johannes Schickel
17fe3ce29e
Oops enabled HACK to prevent multiple OPL instances again.
...
svn-id: r42849
2009-07-27 18:19:16 +00:00
Norbert Lange
f051e7e9ab
use own soundhandle as the ones in Kyra::Sound seem to be used for voices (and might get killed)
...
svn-id: r42620
2009-07-19 16:11:05 +00:00
Norbert Lange
5952977ed0
use ticks for timing fadeout
...
svn-id: r42618
2009-07-19 15:36:11 +00:00
Norbert Lange
dbe300fc53
fixed retiring of external Notes
...
fixed/improved counting DMAs in Paula
added flag for looping songs
rearranged maxtrax.h a bit
svn-id: r42613
2009-07-19 14:02:19 +00:00
Norbert Lange
31b6767666
fixed: intro-music started twice because it was hardcoded in the engine
...
removed verbose debug-output from maxtrax
svn-id: r42604
2009-07-19 01:14:51 +00:00
Norbert Lange
396d6c86aa
add support for fadeout
...
svn-id: r42601
2009-07-19 00:58:01 +00:00
Norbert Lange
22ee23cac7
some more tables included, for tempo and volume values
...
svn-id: r42600
2009-07-19 00:44:54 +00:00
Norbert Lange
bb5207c13b
fixed some initialisation issues
...
svn-id: r42595
2009-07-18 17:27:31 +00:00
Norbert Lange
9e16e3b3e6
first attempt at enabling soundeffects using an table from the executeable. Doesnt quite work as it should
...
svn-id: r42575
2009-07-18 00:04:28 +00:00
Norbert Lange
bb64bf008d
merge with trunk
...
svn-id: r42574
2009-07-17 21:23:54 +00:00
Norbert Lange
cfe2928d98
added primitive support for Kyrandia`s Intro Music.
...
svn-id: r42567
2009-07-17 16:07:57 +00:00
Norbert Lange
c0c25d234e
precalculating some more from CalcNote
...
svn-id: r42556
2009-07-17 01:42:58 +00:00
Norbert Lange
1fa1bdc9f6
avoid some calculations from being done every time in CalcNote
...
svn-id: r42553
2009-07-17 00:58:26 +00:00
Norbert Lange
30cb4772f2
simplified NoteOn calculations
...
added playNote command for soundeffects
svn-id: r42544
2009-07-17 00:07:36 +00:00
Max Horn
baabc623f6
Got rid of two more ioFailed uses
...
svn-id: r42501
2009-07-15 10:04:50 +00:00
Max Horn
6b98c4c4e7
Got rid of some more ioFailed uses (also fixed a potential leak in graphics/font.cpp, and handle eos correctly in the FLAC code)
...
svn-id: r42488
2009-07-14 18:24:20 +00:00
Norbert Lange
799ab9ac45
removed one more useless variable and turned often used flags into bools
...
big cleanup of the interrupt-function
changed NoteOn function to pass the results directly instead of saving them in member variables
svn-id: r42466
2009-07-14 02:15:31 +00:00
Norbert Lange
d5e1738ef6
cleaned up NoteOn a bit
...
fixed NoteOff and removed some useless variables - intro sounds fine now
svn-id: r42461
2009-07-13 22:49:34 +00:00
Norbert Lange
162c6a418d
added routine pickvoice to dinamically choose a fitting channel
...
use similar FP-rounding as the original player
svn-id: r42454
2009-07-13 21:27:58 +00:00
Norbert Lange
100d86ee4d
made all structures that are only written when loading song/samples const
...
fixed volume-handling a bit, still not correct
svn-id: r42343
2009-07-10 16:01:40 +00:00
Norbert Lange
3ae850fe9c
added initialisation of channels
...
svn-id: r42339
2009-07-10 15:04:41 +00:00
Norbert Lange
c5a3ab2af2
changed: period in Paula get set immediately instead of queued
...
svn-id: r42336
2009-07-10 14:30:37 +00:00
Norbert Lange
f63c15acc1
added timebased effects
...
fixed passing length of samples to Paula
fixed setting tempo at songstart
fixed setting tempo/flags only if loading a score
svn-id: r42334
2009-07-10 13:38:13 +00:00
Norbert Lange
c16d276f99
fixed some mismatched new[]/delete
...
fixed 2 bugs in the calcnote function
svn-id: r42304
2009-07-09 16:18:35 +00:00
Filippos Karapetis
b1bd180408
Added proper safeguards for shorten.*, thereby fixing commit 42259
...
svn-id: r42290
2009-07-09 15:17:45 +00:00
Filippos Karapetis
8a783bdd76
Renamed sound/iff.* to sound/iff_sound.* to fix an issue with the upcoming changes to the MSVC project files (sound/iff.* produces iff.obj, which clashes with iff.obj from graphics/iff.*)
...
svn-id: r42287
2009-07-09 13:17:46 +00:00
Norbert Lange
84e96bc513
fixed up some constants
...
svn-id: r42276
2009-07-09 00:19:17 +00:00
Norbert Lange
d25f481421
fixed (and inlined) the "Antilog" function
...
svn-id: r42274
2009-07-09 00:02:12 +00:00
Norbert Lange
a9d9de7db4
implemented setting note-periods, likely still somewhat wrong.
...
reversed the log functions which does exactly the inverse as the name implies (its refered as "antilog" in the sources *rollseyes*)
svn-id: r42273
2009-07-08 22:59:50 +00:00
Filippos Karapetis
90422f6bd3
Added guards to only include the Shorten audio code when the SAGA2 code in the SAGA engine is enabled
...
svn-id: r42259
2009-07-08 07:28:13 +00:00
Norbert Lange
a2e46b76f3
fix identation and replaced the "goto-workaround" with something simpler
...
svn-id: r42189
2009-07-06 18:51:22 +00:00
Torbjörn Andersson
7c155f8747
GCC thinks it's wrong to goto past variables being initialised (even if they
...
aren't used afterwards). Fixed that, and some warnings.
svn-id: r42187
2009-07-06 18:15:50 +00:00
Norbert Lange
e9a4800629
Implemented a few commands
...
Partially implemented queued Events and some related commands
svn-id: r42186
2009-07-06 17:37:54 +00:00
Norbert Lange
c0b1d10ba2
Added tons of members to MaxTrax, songs get fully loaded and stored internally
...
svn-id: r42096
2009-07-04 16:24:15 +00:00
Norbert Lange
9f8d9de11d
added a skeleton for maxtrax modules. Not much happening yet, just reading and displaying a bit of information for maxtrax file
...
svn-id: r42013
2009-07-01 23:11:56 +00:00
Max Horn
a6b57dc3a9
- Added GCC_PRINTF attribute to several funcs where it makes sense
...
- change some constants from double to float, to avoid "loss of precision due to implicit conversion" warnings
- removed duplicate prototypes for some funcs
- fixed some "increases required alignment of target type" warnings
svn-id: r42009
2009-07-01 20:51:04 +00:00
Norbert Lange
7c7ad0d5f1
some Code-Formatting
...
svn-id: r41994
2009-07-01 15:15:58 +00:00
Norbert Lange
abef70f4e1
Merging in changes from trunk
...
svn-id: r41989
2009-07-01 14:45:24 +00:00
Norbert Lange
3b94e2488d
Added kyra project
...
removed 1 potentially troublesome assert
svn-id: r41988
2009-07-01 13:25:48 +00:00
Norbert Lange
e3a5da7b7e
engines/scumm/*: enabled choosing of the colorpalette, by setting RenderMode to EGA the "old" palette will be used
...
tfmx/tfmxplayer.cpp: removed some unused stuff
sound/mods/tfmx.cpp: emulating the way MI initialises new macro-programms. (Difference might not be audible at all)
svn-id: r41976
2009-06-30 17:41:24 +00:00
Norbert Lange
cf351dffe6
Modified macro-,patter-,track-step functions to loop aslong they are supposed to execute. (instead of doing that loop "outside").
...
Added "addBeginn" Effect, not used by MI but simple to implemt.
svn-id: r41910
2009-06-27 07:07:20 +00:00
Norbert Lange
01c3db4d76
Fixed restarting of song (hopefully thouroughly)
...
replaced all modulos with masks
swapped Paulas stereo output
svn-id: r41856
2009-06-25 08:57:15 +00:00
Norbert Lange
c6ba5279b1
and 1 fix for a regression - always set sampleperiod before starting output
...
svn-id: r41717
2009-06-20 21:20:39 +00:00
Norbert Lange
8e00db241f
fixed portamento-effect.
...
Added stopping of sfx, seems like Monkey Island is pretty messy when it comes to handling sfx though.
Those two changes fix the "mansion burglary"
svn-id: r41716
2009-06-20 21:04:57 +00:00
Norbert Lange
c0228cfe70
Some more cleanups,
...
fixed patterncommand 0xFE not working,
added an option "-hack-patternstop" to the commandline tool
svn-id: r41710
2009-06-20 13:49:02 +00:00
Norbert Lange
7ed1061507
Added fade effect, song 17 uses it.
...
svn-id: r41694
2009-06-19 23:27:10 +00:00
Norbert Lange
115c276d4c
modified doSong so you can start a new Song without killing running macros
...
svn-id: r41693
2009-06-19 22:13:43 +00:00
Norbert Lange
3ef2279c34
moved common initialisation routines into their own functions. doMacro and doSong are now nore readable
...
svn-id: r41692
2009-06-19 21:42:14 +00:00
Norbert Lange
f94b8565a9
more cleanups, got rid of pendingTrackstep variable
...
svn-id: r41686
2009-06-19 20:41:32 +00:00
Norbert Lange
4865863f6c
Enabled signals and made ScummVM use them (they specify when a song should be stopped)
...
Cleanups in player_v4a.
svn-id: r41685
2009-06-19 20:17:53 +00:00
Norbert Lange
c7697fb200
added support for SFX by using a seperate Player for them.
...
svn-id: r41676
2009-06-19 14:30:09 +00:00
Norbert Lange
c3596c184b
Ugly hack for fixing color palette
...
svn-id: r41672
2009-06-19 11:24:06 +00:00
Norbert Lange
c8d05aca48
My last commit fired an assert on some songs, fixed!
...
svn-id: r41551
2009-06-15 17:09:59 +00:00
Norbert Lange
6720928cb6
Fixed a bug which caused MI Song 3 to loop forever. Made my hack to automatically stop the player after all Patterns are stopped dependend on a variable.
...
svn-id: r41549
2009-06-15 17:03:49 +00:00
Norbert Lange
f0b74418bc
Removed some debugmessages so Linux manages to build again =/
...
svn-id: r41527
2009-06-14 21:49:33 +00:00
Norbert Lange
1fcd6bff08
player_v4a:
...
Made musictimer work a bit better, merged the 2 tables into 1
svn-id: r41526
2009-06-14 19:40:24 +00:00
Norbert Lange
62202a9de5
Removed alot of the debug-output
...
created a class player_v4a to hook TFMX Playback into Scumm. Monkey Island has sound, but no sfx yet
svn-id: r41480
2009-06-12 20:10:27 +00:00
Norbert Lange
14f1960c8f
sdl.cpp, main.cpp:
...
Made modifications dependend on compiletime-variable TFMX_CMDLINE_TOOL.
scumm.vcproj, scummvm-tfmx.sln, scummvm-tfmx.vcproj:
enabled Scumm-Engine
tfmx.cpp:
Some small cleanups and corrections
svn-id: r41478
2009-06-12 14:02:21 +00:00
Nicola Mettifogo
36828287ad
* Moved the updated IFF code from Parallaction to common/
...
* Updated Parallaction and SAGA to use the new decoder infrastructure.
svn-id: r41465
2009-06-12 08:51:05 +00:00
Nicola Mettifogo
df1534ffd0
* Replaced the A8SVXDecoder class with a function to return an AudioStream in trunk/sound/.
...
* Refactored sound code in Parallaction to use the new Audio::make8SVXStream.
svn-id: r41460
2009-06-12 07:18:01 +00:00
Norbert Lange
ef7840994d
Finally fixed weird volume effects by fixing "wait on keyup"
...
Added commandline option to output to flac
svn-id: r41434
2009-06-10 15:51:08 +00:00
Norbert Lange
6cf0e1b9bb
Fix looping of Tracks
...
svn-id: r41427
2009-06-10 13:45:23 +00:00
Norbert Lange
46c90e08f2
Enabled envelope effect, but it still needs some work.
...
couple more macros implemented, all effects Monkey Island uses should be supported now
svn-id: r41413
2009-06-10 00:49:26 +00:00
Norbert Lange
fc174162f7
tfmx.c,.h: added portamento and envelope-effect (envelope not active yet)
...
renamed some variables
made sure the fixed-point multiplications have the same results, even in cornercases
paula.cpp: changed/reverted stuff in Paula again.
svn-id: r41410
2009-06-09 20:54:55 +00:00
Norbert Lange
fe28f1c73c
tfmx.cpp:
...
added "vibrato-effect"
paula.cpp:
fixed bug introduced in last commit
svn-id: r41392
2009-06-08 23:12:35 +00:00
Sven Hesse
c8d0335ea5
Spaces for alignment, not tabs :P
...
svn-id: r41383
2009-06-08 18:48:43 +00:00
Norbert Lange
d3ad5fc663
Initital commit modifying buildsystem and adding a TFMX Module-Player
...
Changes in Paula.cpp/Paula.h + soundfx.cpp:
Added (easy) queueing of samples by implementing methods that act similar
like writes to the Amiga-Chipset would.
Added counting of DMA-Interrupts, that is how often a sample finished
playing.
Added a base for the interrupt-interval, in most cases this will be the
Cia-clockrate. Derived classes can then set the interval without scaling to
the samplerate
Changes in common/scummsys.h:
Only disable warnings with pragmas for MS Compilers that cant do so
otherwise. Newer MSVC Versions can and should disable warnings in the
Project-Settings.
Files in tfmx:
Some files for debugging. Wont ever be commited back into trunk so those
will contain some messy and hackish code
Added: tfmx.h/tfmx.cpp
Player for TFMX-Modules.
Rest: main.cpp etc.
Modified buildsystem to include new directory, modified main.cpp so it
calls tfmxmain (tfmxplayer.cpp) instead of starting the GUI.
svn-id: r41382
2009-06-08 18:33:20 +00:00
Eugene Sandulenko
cda17beff5
Patch #1365914 : "SCUMM: CMS support." Disabled by default. Still plenty to do.
...
svn-id: r41282
2009-06-06 18:21:49 +00:00
Torbjörn Andersson
0999534749
The error() and warning() functions add ! and newline automatically. (I didn't
...
look at debug() and debugC(), since I'm really bored with this now. :-)
svn-id: r41061
2009-05-31 10:02:16 +00:00
Johannes Schickel
0ba9e14ec9
Double volume of DOSBox' OPL emulator, like DOSBox does too.
...
svn-id: r41014
2009-05-29 17:59:07 +00:00
Max Horn
e23e1ffcb7
Added Audio::Timestamp::addMsecs method
...
svn-id: r40957
2009-05-28 10:29:25 +00:00
Johannes Schickel
33de8c9a5f
Add include guard.
...
svn-id: r40932
2009-05-27 00:34:31 +00:00
Johannes Schickel
b3c6751b9b
Strip trailing whitespaces in the whole code base.
...
svn-id: r40867
2009-05-24 15:17:42 +00:00
Johannes Schickel
dfb6ca6bae
Add support for "getTotalPlayTime" in LinearMemoryStream again.
...
svn-id: r40840
2009-05-23 23:49:47 +00:00
Sven Hesse
be6fd784b4
Allow for different MOD signatures
...
svn-id: r40827
2009-05-23 20:38:08 +00:00
Marcus Comstedt
64e75b91b7
Fixed a warning: printf("%f") should take a double, not a float.
...
svn-id: r40785
2009-05-22 17:15:39 +00:00
Max Horn
65b5d31814
COMMON: Removed Stream::ioFailed() and clearIOFailed(), as they are deprecated; however, retained ioFailed in SeekableReadStream and File for now (so for now this mainly affects WriteStream subclasses)
...
svn-id: r40725
2009-05-19 11:42:14 +00:00
Johannes Schickel
90b4afd41b
Add some simple implementation for type 8 data blocks:
...
- Fix sound effect in LoL demo
svn-id: r40708
2009-05-18 22:11:56 +00:00
Travis Howell
e59e65aa99
Fix crash when any movie is played in the Macintosh version of The Feebles Files, a regression caused by revision 36085.
...
svn-id: r40679
2009-05-18 10:40:22 +00:00
Johannes Schickel
297a9c6c5f
Fix spelling of AdLib (it's AdLib not Adlib).
...
svn-id: r40533
2009-05-13 21:02:50 +00:00
Johannes Schickel
a866e90342
Make g++ 4.4 happy (warning about out of bounds access).
...
svn-id: r40526
2009-05-13 17:29:48 +00:00
Johannes Schickel
72686a5a9e
Make 'create' return an OPL2 by default.
...
svn-id: r40503
2009-05-12 19:24:04 +00:00
Johannes Schickel
4190e256bf
Cleanup.
...
svn-id: r40502
2009-05-12 19:03:54 +00:00
Johannes Schickel
4c156d3c78
Fix OPL emulator IDs.
...
svn-id: r40498
2009-05-12 18:53:44 +00:00
Johannes Schickel
4f0768b909
- Add support for selecting the OPL emulator being used (config entry: "opl_driver")
...
- Make MAME FM OPL the default emulator again
- Add GUI support for selecting the active OPL emulator
- Update themes
svn-id: r40496
2009-05-12 18:42:44 +00:00
Johannes Schickel
b33bf76c70
For the time being rename opl.h to opl_inc.h and opl.cpp to opl_impl.h, so MSVC does not try to compile the former opl.cpp. (Needs cleanup in the future anyway...)
...
svn-id: r40365
2009-05-06 20:19:47 +00:00
Johannes Schickel
262363f2b3
Another attempt at fixing MSVC compiliation. (someone test this please ;-)
...
svn-id: r40364
2009-05-06 20:05:58 +00:00
Max Horn
5dc234a4e2
Patch #2758080 : GSOC09: XMIDI parser switch cases
...
svn-id: r40361
2009-05-06 14:22:13 +00:00
Johannes Schickel
47e426f271
Don't include headers inside namespace scopes. This should fix compilation on NDS at least.
...
svn-id: r40360
2009-05-06 13:57:05 +00:00
Paul Gilbert
c02aad90b2
Added a reference to scummsys.h to fix compilation errors
...
svn-id: r40351
2009-05-06 10:28:07 +00:00
Johannes Schickel
c35d6db60c
Fix feedback/algorithm register write bugs in Dual OPL2 mode.
...
svn-id: r40342
2009-05-06 00:40:37 +00:00
Johannes Schickel
25ca710eae
Really fix Dual OPL2 initialization.
...
svn-id: r40341
2009-05-05 23:40:54 +00:00
Johannes Schickel
6f840550b9
Dual OPL2 initialization bugfix.
...
svn-id: r40339
2009-05-05 22:34:04 +00:00
Johannes Schickel
625f41c135
Cleanup:
...
- Rename OPL_DOSBox to OPL, since it's inside a seperate namespace anyway
- Reanme MAME_OPL to OPL, since it's inside a seperate namespace anyway
svn-id: r40338
2009-05-05 22:18:26 +00:00
Johannes Schickel
5cc44292a2
- Remove default parameter from OPL::create
...
- Add some note that no one should use the legacy API for new code
svn-id: r40337
2009-05-05 22:14:34 +00:00
Johannes Schickel
16bd319684
At request by DrMcCoy enable DOSBox OPL2 by default whenever DISABLE_DOSBOX_OPL isn't defined.
...
svn-id: r40335
2009-05-05 22:06:54 +00:00
Johannes Schickel
08581ed698
AdLib emulator changes part2:
...
- Add new OPL emulator API (and legacy access API) in sound/fmopl.h
- Add DOSBox OPL emulator.
- Update MAME OPL emulator for the API changes.
svn-id: r40334
2009-05-05 21:47:12 +00:00
Johannes Schickel
d9e0499a36
AdLib emulator changes part1 (breaks compilation :-/):
...
- Add new directory sound/softsynth/opl
- Move sound/fmopl to sound/softsynth/opl/mame
svn-id: r40333
2009-05-05 21:40:50 +00:00
Johannes Schickel
e7506eb99e
Rename adlib_read to adlib_get_reg_value, since it return the (cached) register value, which can not be achieved by read AdLib read.
...
svn-id: r40084
2009-04-22 20:51:33 +00:00
Johannes Schickel
0638a8a27a
Renamed some variables and parameters to match their real use.
...
svn-id: r40083
2009-04-22 20:18:12 +00:00
Fabio Battaglia
9c5cf77287
vag: delete stream after use
...
svn-id: r39767
2009-03-30 21:04:19 +00:00
Fabio Battaglia
0c1bae6b15
Rate selection is now possible for VAG audio decoder, also decoder doesn't die with incomplete/corrupted files
...
svn-id: r39764
2009-03-30 13:42:28 +00:00
Willem Jan Palenstijn
07d3ae07ac
Fix regression from r39702: look up music_driver in config
...
svn-id: r39707
2009-03-27 13:49:11 +00:00
Max Horn
e5e1615280
MidiDriver cleanup: findMusicDriver now returns a pointer (makes it possible to distinguish 'no match found' from other results); updated parseMusicDriver accordingly; some methods now return MidiDriverType instead of int
...
svn-id: r39702
2009-03-26 13:52:43 +00:00
Max Horn
fb364ee281
Changed doxygen comments in sound/midiparser.h to match with our usual formatting conventions
...
svn-id: r39700
2009-03-26 13:11:11 +00:00
Matthew Hoops
1817dd9bc5
Do not use TO_LE_16 for the IMA ADPCM decoder as it breaks sound on BE systems.
...
svn-id: r39465
2009-03-17 02:35:43 +00:00
Fabio Battaglia
647276b885
Moving sword1/vag.* into sound/, to be used by Broken Sword 2 PSX
...
svn-id: r39416
2009-03-15 10:25:22 +00:00
Andre Heider
c72cba069b
Use pow() instead of powf() when compiling with MinGW32 to work around a libstdc++ cross-compile bug, see #2673362
...
svn-id: r39309
2009-03-10 19:32:38 +00:00
Max Horn
77b40251ca
Added some more Audio::Timestamp unit tests
...
svn-id: r39262
2009-03-09 16:15:25 +00:00
Max Horn
7cd40da1be
Added some comments to Audio::Timestamp
...
svn-id: r39257
2009-03-09 03:45:40 +00:00
Eugene Sandulenko
ef1e3ebc3c
Patch #2658710 : "Add comments to specify which engines use which decoders"
...
svn-id: r39236
2009-03-08 15:57:59 +00:00
Max Horn
673a21b249
Added Audio::Timestamp class, based on SCI's sfx_timestamp_t; also provide a unit test for it, based on the old (and very outdated) timetest.cpp. To be used by Audio::Mixer one day...
...
svn-id: r39112
2009-03-04 06:58:28 +00:00
Willem Jan Palenstijn
4fbda3b8b0
Fix typo.
...
svn-id: r38940
2009-02-27 23:38:37 +00:00
Johannes Schickel
5417f6bacb
- Replace OSystem::clearScreen with OSystem::fillScreen as discussed on -devel.
...
- Update BaseBackend and DC port to properly implement OSystem::fillScreen (now only PalmOS has to be updated).
- Update all client code which relied on OSystem::clearScreen so far.
svn-id: r38304
2009-02-15 21:20:21 +00:00
Eugene Sandulenko
0a532dfc30
Add interleave parameter to FMOPL as needed by SCI engine
...
svn-id: r38211
2009-02-15 10:07:50 +00:00
Travis Howell
4131d3d07f
Fix sound noise regression in CD32 version of Simon the Sorcerer 1.
...
svn-id: r36236
2009-02-07 05:05:14 +00:00
Travis Howell
8c84ec82fc
Fix sound noise regression in CD32 version of Simon the Sorcerer 1.
...
svn-id: r36235
2009-02-07 04:49:10 +00:00
Travis Howell
934a59941d
Fix sound noise regression in CD32 version of Simon the Sorcerer 1.
...
svn-id: r36234
2009-02-07 04:40:39 +00:00
Joost Peters
e8e3397a3c
make readBufferTinsel*() output in native endianness, rather than little endian.
...
svn-id: r36215
2009-02-04 16:40:44 +00:00
Filippos Karapetis
dd39274391
Fixed regression in the ADPCM decoder. DW2 music should be played correctly again
...
svn-id: r36195
2009-02-01 22:21:57 +00:00
Filippos Karapetis
71b4f84c46
Fixed incorrect usage of a boolean (boolean variables are not supposed to be used as indexes to arrays...)
...
svn-id: r36194
2009-02-01 22:06:43 +00:00
Max Horn
341bc64aaf
do not include common/debug.h from common/util.h
...
svn-id: r36143
2009-01-30 05:25:17 +00:00
Matthew Hoops
34e76afb16
Remove leftover comments.
...
svn-id: r36098
2009-01-27 11:49:53 +00:00
Matthew Hoops
13552cce55
Add support for looping ADPCM sounds. I'm also adding decoding of the "standard" IMA ADPCM code (aka Intel DVI ADPCM). This is from Mohawk. ;)
...
svn-id: r36097
2009-01-27 11:46:54 +00:00
Travis Howell
f9d0d2a44a
Add/Update comments.
...
svn-id: r36094
2009-01-27 03:26:51 +00:00
Travis Howell
f002e06fe0
Add looping support to makeVOCStream().
...
svn-id: r36093
2009-01-27 03:21:05 +00:00
Travis Howell
82a7414197
Fix regression, the original stream shouldn't be deleted, unless disposeAfterUse is set.
...
svn-id: r36092
2009-01-27 03:13:13 +00:00
Travis Howell
bce799366f
Fix regression, the original stream shouldn't be deleted.
...
svn-id: r36091
2009-01-27 03:10:56 +00:00
Max Horn
8e447d1ee9
Extended makeWAVStream by a 'disposeAfterUse' param; changed makeWAVStream to directly return the AudioStream created by makeADPCMStream
...
svn-id: r36085
2009-01-27 00:42:43 +00:00
Willem Jan Palenstijn
a8ae95cc10
fixing #2531282 : don't fall back to a real audio CD when playing enhanced midi tracks
...
svn-id: r36030
2009-01-24 01:29:52 +00:00
Willem Jan Palenstijn
de341291aa
remove 'HACK': don't use _cd.playing to indicate emulation
...
svn-id: r36029
2009-01-24 01:23:04 +00:00
Torbjörn Andersson
9e2f9b338f
Removed a (hopefully) obsolete FIXME comment.
...
svn-id: r35690
2009-01-03 00:08:46 +00:00
Torbjörn Andersson
890808fa4b
Rewrote to get rid of "condition is always false" warning.
...
svn-id: r35639
2008-12-31 15:23:08 +00:00
Filippos Karapetis
c7a2121add
Added possible FIXMEs
...
svn-id: r35637
2008-12-31 15:09:32 +00:00
Filippos Karapetis
a8a4ba3a98
Prevent erroneous access of negative array indices
...
svn-id: r35633
2008-12-31 14:49:53 +00:00
Max Horn
6a2778cccc
Fixed warning
...
svn-id: r35630
2008-12-31 13:59:00 +00:00
Torbjörn Andersson
6f24756a15
Fixed GCC warning.
...
svn-id: r35628
2008-12-31 13:05:26 +00:00
Filippos Karapetis
136390a540
Commented out part of the code that corrupts the heap for me
...
svn-id: r35627
2008-12-31 13:00:09 +00:00
Filippos Karapetis
cae6bdac08
Preliminary Shorten audio support for SAGA 2 games. It's still very wrong and needs further work, but it's a start
...
svn-id: r35626
2008-12-31 11:46:21 +00:00
Jordi Vilalta Prat
b1999a2a16
Fixed indentation and removed whitespaces at the end of line
...
svn-id: r35481
2008-12-22 11:22:15 +00:00
Jordi Vilalta Prat
c4f33dfb86
Custom percussion instruments for the AdLib MIDI driver (Slightly modified patch #2357165 )
...
svn-id: r35439
2008-12-19 16:21:27 +00:00
Johannes Schickel
5fa38662e2
Whoops. Fix accidently wrong evaluation statement.
...
svn-id: r35337
2008-12-13 12:56:53 +00:00
Johannes Schickel
223a57a563
Cleanup.
...
svn-id: r35336
2008-12-13 12:45:53 +00:00
Johannes Schickel
9555ea8bc9
Fix for bug #2423449 "AGOS: Music Looping broken (regression)".
...
svn-id: r35335
2008-12-13 12:31:39 +00:00
Sven Hesse
052e83cd24
Okay, removing my implementation of AppandableAudioStream::getTotalPlayTime (I've apparently misunderstood its intent) and using Mixer::getSoundElapsedTime() instead
...
svn-id: r35317
2008-12-12 17:12:05 +00:00
Max Horn
59dc18d9ef
cleanup
...
svn-id: r35214
2008-12-03 10:59:06 +00:00
Sven Hesse
30b6294d38
Apparently, constraining the number of mixing samples to be divisible by 4 is too strict, so I'm changing readBufferTinsel6() around a bit to allow for any number of samples (at the cost of adding 2 variables and a bit complexity ;))
...
svn-id: r35209
2008-12-02 21:58:48 +00:00
Johannes Schickel
2ebe04ac3e
- Extended MidiDriver::sysEx to allow 264 byte sysEx messages
...
- Updated all drivers to allow 264+2 byte sysEx messages
- Implemented sysEx processing for MT-32 for Kyra1 and HoF. MT-32 should now be working properly.
svn-id: r35180
2008-11-30 04:42:30 +00:00
Johannes Schickel
893a79b01d
Initial version of proper MIDI support for KYRA.
...
svn-id: r35174
2008-11-30 01:53:32 +00:00
Robin Watts
8f3b2e9b4d
Remove warnings from NDS build.
...
svn-id: r35172
2008-11-29 18:01:16 +00:00
Max Horn
dd14e46698
Fixed a warning on the DS build, added some clarifying comments, reformatted the okiStepSize and imaStepTable tables (the former really is a subtable of the latter)
...
svn-id: r35106
2008-11-17 11:10:34 +00:00
Max Horn
1067a2ec77
Factoring shared code of template classes into a shared base class saves another 4-7kb code size
...
svn-id: r35104
2008-11-17 11:09:23 +00:00
Max Horn
be0f709be9
Saving 32kb DATA size
...
svn-id: r35103
2008-11-17 11:07:04 +00:00
Sven Hesse
b1fa413ed4
Implementing getTotalPlayTime() for AppendableMemoryStream
...
svn-id: r35098
2008-11-16 20:34:31 +00:00
Sven Hesse
24131d781a
Added support for the ADPCM used in Discworld 2
...
svn-id: r35089
2008-11-15 19:40:01 +00:00
Johannes Schickel
cd5a85036d
Fixed compiling of MT32 emulator with -O2 and -Werror.
...
svn-id: r35040
2008-11-13 11:41:25 +00:00
Max Horn
0c501d303f
Verify sanity of LinearMemoryStream params in the factory function instead of the constructor (which is replicated for each instantiation of the LinearMemoryStream template class) -> saves some bytes
...
svn-id: r35014
2008-11-12 12:25:26 +00:00
Torbjörn Andersson
2bbc958373
Made getSoundElapseTime() work better when the sound has been paused. A new
...
variable, _pauseTime, keeps track of how long the sound has been paused since the
last mixer time stamp.
svn-id: r34955
2008-11-09 13:28:59 +00:00
Torbjörn Andersson
f71e1077e0
Fixed compile error.
...
svn-id: r34907
2008-11-05 21:10:12 +00:00
Max Horn
f32be87633
Turned enum PluginError into Common::Error, which in the future is to be used in more places. Help with this is highly welcome
...
svn-id: r34906
2008-11-05 17:24:56 +00:00
Max Horn
655ce26b3f
Big patch changing the signature of various Stream methods (some ports may need to be slightly tweaked to fix overloading errors/warnings)
...
svn-id: r34514
2008-09-13 16:51:46 +00:00
Max Horn
0378201ec7
MT32 emu: eof -> eos
...
svn-id: r34390
2008-09-06 20:36:47 +00:00
Nicola Mettifogo
12106a1599
Removed useless dependencies from common/file.h in common code. When complete removal was not possibile, dependency has been pushed to the cpp files from the headers.
...
svn-id: r34343
2008-09-05 11:41:39 +00:00
Max Horn
5c72c2fca7
Removed unused readLine code from the MT-32 emu
...
svn-id: r34314
2008-09-03 17:46:42 +00:00
Max Horn
55a05dc0f4
Some cleanup by peres
...
svn-id: r34308
2008-09-03 15:22:19 +00:00
Filippos Karapetis
2d36c08d9f
Fix for MSVC warning about ambiguous usage of MIN
...
svn-id: r34299
2008-09-03 10:10:45 +00:00
Max Horn
8032491381
Fix (?) Solaris detection in some workaround code in the MT-32 emulator
...
svn-id: r34216
2008-08-30 22:26:16 +00:00
Max Horn
31320430de
Partial commit of patch #2012839 : Atari Patch for adding Native MIDI and Fix Compile
...
svn-id: r34194
2008-08-27 18:52:21 +00:00
Torbjörn Andersson
d08c3ba66b
Committed my patch #2040074 ("XMIDI callback control events"). At the moment, I'm
...
not aware of any game that actually uses this XMIDI feature, so its primary
function right now is to silence lots of warnings while running the DOS version
of Simon the Sorcerer 2.
svn-id: r33763
2008-08-10 17:59:42 +00:00
Max Horn
fb122a08eb
Print a warning if unsupported XMIDI controllers are used
...
svn-id: r33495
2008-08-01 16:31:40 +00:00
Max Horn
0be985ce83
Changed class File (and derived classes) to only support read-only access; added a new class DumpFile for writing
...
svn-id: r33412
2008-07-29 16:09:10 +00:00
Max Horn
d24e770605
cleanup / code formatting
...
svn-id: r32973
2008-07-09 10:42:47 +00:00
Torbjörn Andersson
c2c4963e96
On reading some more about XMIDI, I believe the NEXT and BREAK variants of the
...
controller are mutually exclusive cases, i.e. a BREAK simply means forget about
the innermost loop, and continue as if nothing had happened.
svn-id: r32966
2008-07-08 16:25:39 +00:00
Torbjörn Andersson
ae026486ef
Fixed silly error. The NEXT_BREAK event should, of course, jump to the event
...
*after* the FOR_LOOP event. Apart from simplifying things, this should allow
limited number of repeats to work.
svn-id: r32931
2008-07-06 19:25:32 +00:00
Torbjörn Andersson
1cc9af6b10
Implemented Good Enough(TM) XMIDI looping. This is used by Kyrandia 2 (the
...
loop hack is no longer needed, and has been removed), and will be used by
Discworld.
svn-id: r32930
2008-07-06 18:37:52 +00:00
Max Horn
c45d632f3b
Patch ##1956946 (Audio::Mixer internal API revision) with some tweaks
...
svn-id: r32828
2008-06-28 15:28:29 +00:00
Johannes Schickel
d2ce912989
Fixed getTotalPlayTime implementation for MP3InputStream.
...
svn-id: r32755
2008-06-22 13:26:22 +00:00
Jordi Vilalta Prat
8eac356946
Added initial interface to list music devices and their types
...
svn-id: r32695
2008-06-13 16:04:43 +00:00
Jordi Vilalta Prat
177993b145
Renamed MIDI plugins to Music plugins
...
svn-id: r32693
2008-06-13 14:30:47 +00:00
Max Horn
33fd755a0e
use kMaxChannelVolume instead of hardcoding 255
...
svn-id: r32666
2008-06-11 11:29:34 +00:00
Max Horn
63cb8227d3
Avoid some warnings when compiling in non-DEBUG mode (i.e. with assert() disabled)
...
svn-id: r32435
2008-05-31 19:35:37 +00:00
Johannes Schickel
9d13d90d4f
- Cleanup code for FlacInputStream::getTotalPlayTime
...
- Reset input stream position in MP3InputStream after calculating total play time
svn-id: r32323
2008-05-27 13:28:47 +00:00
Johannes Schickel
e82295daa3
Implemented getTotalPlayTime for MP3InputStream.
...
svn-id: r32322
2008-05-27 13:15:51 +00:00
Jordi Vilalta Prat
2862a30dac
Fixed some code formatting thanks to LordHoto
...
svn-id: r32275
2008-05-26 00:28:48 +00:00
Johannes Schickel
ff573ec1e2
Instead of simply returning 0 for "infinite" looping in FLAC and OGG/Vorbis streams in getTotalPlayTime return kUnknownPlayTime.
...
svn-id: r32265
2008-05-24 23:58:22 +00:00
Johannes Schickel
cff8ccccc9
Take numLoops in account for getTotalPlayTime in FLAC and OGG/Vorbis streams.
...
svn-id: r32264
2008-05-24 23:49:15 +00:00
Johannes Schickel
aba5082d19
Implementation of AudioStream::getTotalPlayTime for FLAC and OGG/Vorbis streams.
...
svn-id: r32263
2008-05-24 23:39:13 +00:00
Johannes Schickel
af7bc93c46
Made AudioStream::getTotalPlayTime virtual (Ooops :-)
...
svn-id: r32261
2008-05-24 22:59:20 +00:00
Max Horn
68fd8b74b0
Patch #1970427 : AudioStream play length querying
...
svn-id: r32258
2008-05-24 22:41:15 +00:00
Max Horn
182ae52a98
typo
...
svn-id: r32245
2008-05-24 14:44:22 +00:00