Norbert Lange
75aafd9c33
fix duplicate definition of FORCEINLINE on mingw toolchains
...
svn-id: r44033
2009-09-11 12:58:08 +00:00
Norbert Lange
0b5a32e99a
fix SFX not playing before music started
...
svn-id: r43799
2009-08-29 12:44:51 +00:00
Norbert Lange
ff20032bb0
Update MSVC Project Files
...
svn-id: r43705
2009-08-24 20:40:09 +00:00
Norbert Lange
917d4b78b3
Merge with trunk
...
svn-id: r43701
2009-08-24 17:51:47 +00:00
Norbert Lange
54ef7a892b
reverting changes from patch 43696 that shouldnt have been committed
...
svn-id: r43697
2009-08-24 13:08:21 +00:00
Norbert Lange
184aae3c8c
Enable alternative palettse for Amiga Monkey Island - Patch ID: 2819787
...
use tables for palette colors instead of code with constants
svn-id: r43696
2009-08-24 12:39:03 +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
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
Norbert Lange
cc3a20c13c
merge with trunk
...
svn-id: r43478
2009-08-17 12:58:53 +00:00
Norbert Lange
c96affd0c1
merge with trunk
...
svn-id: r43443
2009-08-16 16:39:34 +00:00
Norbert Lange
2b147c5716
changed handling of finale - music should use right tempo now
...
svn-id: r43364
2009-08-14 13:15:40 +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
cbc0b9e480
enable some debug-output
...
svn-id: r43331
2009-08-12 23:07:41 +00:00
Norbert Lange
0f618509af
another merge from trunk
...
svn-id: r43330
2009-08-12 22:39:48 +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
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
ab529d8e0c
prepare the kyraplayer for reading sfxtables from raw data (instead of static tables)
...
svn-id: r43184
2009-08-09 20:20:42 +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
7de81f0c07
remove temporary hacks and files
...
svn-id: r43175
2009-08-09 16:42:14 +00:00
Norbert Lange
d77031e64c
added code to support the "finale" section
...
cleaned up playSoundEffect and playTrack
svn-id: r43149
2009-08-08 21:59:18 +00:00
Norbert Lange
319dfcbcc0
moved table-definition from header to cpp file
...
svn-id: r43136
2009-08-08 20:00:28 +00:00
Norbert Lange
0350a1598d
merge with trunk
...
svn-id: r43134
2009-08-08 19:09:30 +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
4890ada18f
replace workaround in case musicfiles are missing with a simpler one
...
svn-id: r43071
2009-08-05 17:29:02 +00:00
Norbert Lange
139fa6ff13
remove a former workaround for Amiga MI
...
svn-id: r43055
2009-08-04 20:27:25 +00:00
Norbert Lange
28210abe77
fixed hanging intro (and possible other scenes) when music cant be loaded
...
svn-id: r43054
2009-08-04 19:53: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
ed8f02af96
synced the branch with the palette patch ( #2819787 )
...
svn-id: r42987
2009-08-02 01:00:56 +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
Norbert Lange
83c0d0fc51
missed some files when merging
...
svn-id: r42630
2009-07-20 17:46:19 +00:00
Norbert Lange
4ae0b0528b
now using tick for fadeout through the nowmal delay function
...
svn-id: r42622
2009-07-19 19:56:52 +00:00
Norbert Lange
65cf95b98b
reverted fadeout to using plain delay as delayWithTicks crashes >(
...
svn-id: r42621
2009-07-19 16:59:39 +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
923f9b975b
found and use another table, soundeffects in intro are now working
...
svn-id: r42594
2009-07-18 16:27:33 +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
81ac29ebca
added missing file
...
svn-id: r42568
2009-07-17 16:10:56 +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
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
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
Norbert Lange
a2e46b76f3
fix identation and replaced the "goto-workaround" with something simpler
...
svn-id: r42189
2009-07-06 18:51:22 +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
d2003f859b
whoops - now its compiling again
...
svn-id: r42014
2009-07-01 23:16:18 +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
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
536eb14d03
Fix regression
...
svn-id: r41857
2009-06-25 09:30:49 +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
4725f4ab38
inadvertedly used autofreestream which resulted in the Tfmx-Object beeing deleted twice
...
svn-id: r41712
2009-06-20 14:15:30 +00:00