Commit Graph
100 Commits
Author SHA1 Message Date
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