Commit Graph

341 Commits

Author SHA1 Message Date
Johannes Schickel
cb085df0f5 Fixes non looping tracks and a fading bug, which silenced the music, with mt-32.
svn-id: r21236
2006-03-12 15:38:59 +00:00
Johannes Schickel
cd28f28d32 Music in the last two intro scenes plays now again with adlib.
Cleaned up the sound code a bit (removed some unneeded functions).

svn-id: r21234
2006-03-12 14:22:27 +00:00
Torbjörn Andersson
c8347b23b1 Added debug message for the standard "note on" opcodes as well.
svn-id: r21233
2006-03-12 12:55:16 +00:00
Torbjörn Andersson
84af303787 And now, for a change, some more renamings:
update1()          -> setupDuration()
updateAndOutput1() -> setupNote()
setInstrument()    -> setupInstrument()  (just for the symmetry)
updateAndOutput3() -> noteOn()

That made the following two renamings seem natural:

updateCallback10() -> update_playRest()
updateCallback27() -> update_playNote()

I decided to number the secondary effects, even though there's only one:

update_setupSecondaryEffect()  -> update_setupSecondaryEffect1()
update_removeSecondaryEffect() -> update_removeSecondaryEffect1()

And finally, I renamed the effects callbacks:

stateCallback1_1() -> primaryEffect1()
stateCallback1_2() -> primaryEffect2()
stateCallback2_1() -> secondaryEffect1()

svn-id: r21232
2006-03-12 12:40:14 +00:00
Travis Howell
230a68755e Unfortunately the workaround for Macintosh version of water is still required.
svn-id: r21231
2006-03-12 10:56:14 +00:00
Torbjörn Andersson
d57e2e88c0 Added a block of comments about command parsing and timing. Perhaps it will be
of use in tracking down the tempo bugs.

svn-id: r21230
2006-03-12 10:47:20 +00:00
Travis Howell
fd389260f8 Adjust basename array setting in HE99+ games, for filename substitution
svn-id: r21229
2006-03-12 10:44:42 +00:00
Travis Howell
e94aa88ece Adjust version setting for Macintosh versions of HE80+ games, which is checked by water
svn-id: r21228
2006-03-12 09:51:24 +00:00
Travis Howell
66730f3b6b Use script support for Macintosh versions of HE80+ games
svn-id: r21227
2006-03-12 09:27:56 +00:00
Travis Howell
8602fe7432 Revert mistaken commit of local debug code
svn-id: r21222
2006-03-12 04:19:03 +00:00
Travis Howell
3e72b26adc Revert mistaken commit of local debug code
svn-id: r21220
2006-03-12 01:06:23 +00:00
Travis Howell
f9797f3ac3 Correct mistake in md5 tables for Simon the Sorcerer 2 (DOS Floppy)
svn-id: r21219
2006-03-12 00:53:30 +00:00
Torbjörn Andersson
5bd5cef6cf Some more renaming:
updateCallback18() -> update_setupPrimaryEffect1()
updateCallback19() -> update_removePrimaryEffect1()
updateCallback21() -> update_setupPrimaryEffect2()
updateCallback40() -> update_removePrimaryEffect2()
updateCallback14() -> update_setupSecondaryEffect()
updateCallback30() -> update_removeSecondaryEffect()
updateCallback37() -> update_changeExtraLevel1()
updateCallback34() -> update_changeExtraLevel2()

svn-id: r21217
2006-03-11 17:25:12 +00:00
Travis Howell
beb0c9e297 Fix endian issue in getArrayDim()
svn-id: r21216
2006-03-11 09:43:00 +00:00
Torbjörn Andersson
985ab14c79 Removed inclusion of non-existing imuse_sysex.h to make ScummVM compile again.
svn-id: r21214
2006-03-11 07:37:09 +00:00
Jamieson Christian
2708fe34f3 Another ScummEngine reference in IMuse bites the dust.
svn-id: r21213
2006-03-11 01:06:30 +00:00
Travis Howell
d5066f3741 Remove unused case in o5_actorOps, which is never triggered by any game scripts
svn-id: r21212
2006-03-10 23:15:05 +00:00
Travis Howell
f52e1709bf o6_setObjectName is never used by HE72+ games
svn-id: r21211
2006-03-10 23:09:27 +00:00
Eugene Sandulenko
3521d35085 Add Russian puttrace and pajama3
svn-id: r21209
2006-03-10 19:35:35 +00:00
Torbjörn Andersson
47589ec06f More comments, and some very minor cleanup.
svn-id: r21208
2006-03-10 15:30:22 +00:00
Torbjörn Andersson
b07e6f6eed Added comment detailing what I believe I know about the remaining "unk"
variables in OutputState.

svn-id: r21207
2006-03-10 14:53:48 +00:00
Torbjörn Andersson
f670d2b2b7 Further guesswork: 'unk2' appears to be the priority of a sound, since the
callbackOutput() and updateCallback3() functions won't change the channel data
pointer unless the new sound has a higher unk2 and the current one.

Since it's set to 0 when the data pointer is nulled, I've changed the priority
to be unsigned.

The updateCallback22() function is now update_setPriority().

svn-id: r21206
2006-03-10 14:22:27 +00:00
Torbjörn Andersson
b294175eb6 Fleshed out some guesswork comments.
svn-id: r21205
2006-03-10 13:29:34 +00:00
Torbjörn Andersson
6f2f70d071 Renamed _unkOutputByte1 _curRegOffset. It doesn't always correspond to the
_curTable channel, but it probably does so whenever both of them are used
together.

svn-id: r21204
2006-03-10 11:26:32 +00:00
Torbjörn Andersson
a4ba0066bc Added guesswork comments for stateCallback2_1() and its related functions and
variables, and cleaned it up slightly. (Some of its variables are now signed.)

svn-id: r21203
2006-03-10 11:18:40 +00:00
Torbjörn Andersson
ac997a2493 Added guesswork comments for stateCallback1_1() and its related functions and
variables.

svn-id: r21202
2006-03-10 10:55:36 +00:00
Torbjörn Andersson
0b7f7f66ea Fixed some obvious errors in the comments I added before.
svn-id: r21201
2006-03-10 10:30:31 +00:00
Torbjörn Andersson
69b18f1744 Added some guesswork comments about stateCallback1_2() and related functions
and variables.

svn-id: r21200
2006-03-10 10:18:05 +00:00
Torbjörn Andersson
95196056bd The calculateLowByte1() and 2() functions are used for calculating the "total
level", which I believe is the individual channel volume. (The functions also
return the "scaling level" bits, but they are preserved, not calculated.) I
have renamed these functions calculateOpLevel1() and 2().

The unk25 and unk26 variables have been renamed opLevel1 and opLevel2. These
are called oplvl_1 and oplvl_2 in our MidiDriver_ADLIB class.

The unk26, unk27 and unk28 variables are potentially added to both operator
levels, and have been renamed opExtraLevel1, opExtralevel2 and opExtraLevel3.

The updateCallback25() function has been remamed update_setExtraLevel1().
The updateCallback33() function has been renamed update_setExtraLevel2().
The updateCallback32() function has been renamed update_setExtraLevel3().

Note that these callbacks aren't quite as similar as their names would seem to
indicate: They differ in whether or not the volume is updated and/or how the
parameters are passed.

svn-id: r21199
2006-03-10 09:24:50 +00:00
Torbjörn Andersson
8a9286ce53 Renamed "algorithm" "twoChan" to be more consistent with our MidiDriver_ADLIB
class, where the corresponding variable is called _twochan.

svn-id: r21198
2006-03-10 08:55:19 +00:00
Torbjörn Andersson
37b5e3bcca Since updateAndOutput2() is the only function that sets up wave forms and
stuff, it pretty much has to be our "set instrument" function. Also, while I'm
not entirely sure of the implications, "unk23" is the Algorithm bit for the
Feedback / Algorithm register, so I've renamed it "algorithm".

svn-id: r21197
2006-03-10 08:19:53 +00:00
Torbjörn Andersson
19aba0e88f Some more/updated comments.
svn-id: r21196
2006-03-10 07:56:22 +00:00
Travis Howell
259e3cf301 Adjust talk sound check in CHARSET_1(), since processSfxQueues() doesn't exist in HE games. Fixes glitch when time machine is used in putttime.
svn-id: r21195
2006-03-10 06:05:49 +00:00
Travis Howell
de1cd95927 Revert that mistaken change to English verb table for C64 maniac
svn-id: r21191
2006-03-10 00:53:09 +00:00
Travis Howell
e0a4add194 Update German verbs for C64 maniac, to match original
svn-id: r21190
2006-03-10 00:39:37 +00:00
Gregory Montoir
8476b7a94f minor cleanup.
svn-id: r21189
2006-03-09 23:02:29 +00:00
Gregory Montoir
2cf5859404 oo'ified sound code and added basic support for OS adlib music.
svn-id: r21186
2006-03-09 22:37:19 +00:00
Johannes Schickel
f0106cd59c - Removes deleted waitTicks prototype in KyraEngine
- Adds sound fading support to the adlib player
- Adds support for stopping running tracks

- Changes baseFreq type back to uint8
- corrects octave handling in updateAndOutput1
(Thanks to eriktorbjorn for doing that)

svn-id: r21185
2006-03-09 20:50:19 +00:00
Torbjörn Andersson
a5e0c392ba As LordHoto pointed out to me, updateCallback41() was slightly different after
all: it adjusts the frequency even when state.unk16 is zero. Fixed that, and
added some comments to hopefully explain the differences between the cleaned up
code and the original disassembly.

svn-id: r21184
2006-03-09 18:42:05 +00:00
Torbjörn Andersson
c571026a20 More cleanups and renamings:
* Rewrote updateCallback41() in terms of updateAndOutput1(), since they were
  almost identical to begin with.
* Rewrote updateAndOutput1() for better readability.
* Made unk10 signed, and renamed it baseOctave.
* Made unk14 signed, and renamed it baseNote.
* Made unk15 signed, and renamed it baseFreq.
* Renamed unk17 regAx. It appears to be a cache for that register.
* Renamed unkOutputValue1 regBx. It appears to be a cache for that register.
* Renamed updateCallback8() update_setBaseOctave().
* Renamed updateCallback13() update_setBaseNote().
* Renamed updateCallback20() update_setBaseFreq().

Which still leaves the mystery of unk16 and _unkTables[]. Perhaps *this* is the
pitch bend?

svn-id: r21183
2006-03-09 17:04:00 +00:00
Max Horn
6db0289f30 Moved SAGA plugin interface code from saga.cpp to game.cpp
svn-id: r21181
2006-03-09 14:33:07 +00:00
Max Horn
6b988a51bd Moved SIMON plugin interface code from simon.cpp to game.cpp
svn-id: r21180
2006-03-09 14:30:43 +00:00
Lars Persson
04151343a7 Compile fixes for VC6
svn-id: r21179
2006-03-09 13:54:36 +00:00
Max Horn
1d14d18893 Modified SIMON engine to use DetectedGame::updateDesc
svn-id: r21176
2006-03-09 13:29:45 +00:00
Max Horn
aad520026c Modified SAGA engine to use DetectedGame::updateDesc (note: there is a new TODO in the saveload code now)
svn-id: r21171
2006-03-09 13:22:30 +00:00
Max Horn
783264fe28 Made sure the generic ITE description matches the 'special' ones in game.cpp
svn-id: r21169
2006-03-09 13:03:23 +00:00
Max Horn
de295c562d Replaced GF_ENGLISH in LureGameSettings by a proper Common::Language member variable; added (commented out) entries for the german and french lure
svn-id: r21168
2006-03-09 12:59:46 +00:00
Max Horn
6b19677e1d Make use of DetectedGame::updateDesc in the kyra & lure engines
svn-id: r21167
2006-03-09 12:52:54 +00:00
Max Horn
46ee5c8f26 Added new method DetectedGame::updateDesc, to ease generation of uniform description strings
svn-id: r21166
2006-03-09 12:52:10 +00:00
Torbjörn Andersson
671450fcb8 Set down in comments what I know about _outputTable[], and what I suspect about
_unkTable[]. Investigating the latter further might help unravelling several of
the "unk" variables. (Right now, I'm suspecting that unk15 is the pitch bend.)

svn-id: r21164
2006-03-09 12:36:11 +00:00