diff options
author | Travis Howell | 2009-06-06 00:10:40 +0000 |
---|---|---|
committer | Travis Howell | 2009-06-06 00:10:40 +0000 |
commit | 8ff3a568fa8fe564749080a9af5e20b897933d93 (patch) | |
tree | 3136763937adc1fb6bcd30993b00d1476f490b6f /engines/scumm | |
parent | d65bbe1d7a5efbcf04831dbb68a45ca833db1ae1 (diff) | |
parent | da36901b0751b9d4faaae30dce230b67d75e04e6 (diff) | |
download | scummvm-rg350-8ff3a568fa8fe564749080a9af5e20b897933d93.tar.gz scummvm-rg350-8ff3a568fa8fe564749080a9af5e20b897933d93.tar.bz2 scummvm-rg350-8ff3a568fa8fe564749080a9af5e20b897933d93.zip |
Merged revisions 41154-41156,41160,41163-41181,41185-41186,41188-41189,41196-41202 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk
........
r41154 | thebluegr | 2009-06-04 18:25:48 +1000 (Thu, 04 Jun 2009) | 1 line
Turned debug_weak_validations on by default again, as apparently some games like SQ3 fail in some validations (e.g. when loading). Also, fixed a potential out of bounds access when copying the value of __FILE__ into a buffer (as its value can be quite long in some cases).
........
r41155 | thebluegr | 2009-06-04 18:28:20 +1000 (Thu, 04 Jun 2009) | 1 line
Reordered the numpad keys so that they make more sense, and simplified the code which returns the values of shifted function keys
........
r41156 | djwillis | 2009-06-04 18:30:31 +1000 (Thu, 04 Jun 2009) | 1 line
Initial import of the GP2XWiz backend (based on the GP2X and SDL backends). Includes configure changes and one #ifdef to SDL backend. Also updates NEWS.
........
r41160 | strangerke | 2009-06-04 19:48:56 +1000 (Thu, 04 Jun 2009) | 1 line
gob : _spriteBottom incorrectly saved and restored in Draw_v2::spriteOperation
........
r41163 | fingolfin | 2009-06-04 21:28:05 +1000 (Thu, 04 Jun 2009) | 1 line
SCI: Renamed various debug related global variables to have a g_ prefix; and moved any 'extern' decls of them into a new header file
........
r41164 | waltervn | 2009-06-04 21:35:17 +1000 (Thu, 04 Jun 2009) | 2 lines
SCI: Support for 16-bit DPCM.
........
r41165 | fingolfin | 2009-06-04 21:44:55 +1000 (Thu, 04 Jun 2009) | 1 line
SCI: cleanup
........
r41166 | fingolfin | 2009-06-04 21:45:17 +1000 (Thu, 04 Jun 2009) | 1 line
SCI: Moved MemObject code into a separate source file
........
r41167 | fingolfin | 2009-06-04 21:45:34 +1000 (Thu, 04 Jun 2009) | 1 line
Code formatting in the gp2xwiz backend
........
r41168 | thebluegr | 2009-06-04 22:47:11 +1000 (Thu, 04 Jun 2009) | 1 line
Updated the MSVC project files of the SCI engine
........
r41169 | waltervn | 2009-06-05 00:29:20 +1000 (Fri, 05 Jun 2009) | 2 lines
SCI: Message: Added support for escape sequences.
........
r41170 | waltervn | 2009-06-05 01:56:11 +1000 (Fri, 05 Jun 2009) | 2 lines
SCI: Added support for early SCI1.1 audio maps.
........
r41171 | waltervn | 2009-06-05 02:18:35 +1000 (Fri, 05 Jun 2009) | 2 lines
SCI: Audio: Fixed bug in reading of SOL header.
........
r41172 | fingolfin | 2009-06-05 06:50:51 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Added FIXME comment to not_register()
........
r41173 | fingolfin | 2009-06-05 06:51:09 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: cleanup
........
r41174 | fingolfin | 2009-06-05 06:51:24 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Slightly modified kAddAfter so that it does not modify its arguments needlessly
........
r41175 | fingolfin | 2009-06-05 06:51:40 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Added MemObject::isValidOffset method; use it to simplify determine_reg_type
........
r41176 | fingolfin | 2009-06-05 07:42:24 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Renamed _kfuncTable -> _kernelFuncs; and simplified/streamlined the kernel func map in kernel.cpp a bit
........
r41177 | fingolfin | 2009-06-05 07:44:39 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Renamed EngineState::flags and version to _flags and _version (following our conventions); also slightly changed the EngineState constructor to init _version & _flags, and used this to make them constant
........
r41178 | fingolfin | 2009-06-05 07:53:45 +1000 (Fri, 05 Jun 2009) | 1 line
oops
........
r41179 | athrxx | 2009-06-05 08:12:13 +1000 (Fri, 05 Jun 2009) | 1 line
LOL: implemented Vaelan's cube
........
r41180 | fingolfin | 2009-06-05 08:16:31 +1000 (Fri, 05 Jun 2009) | 1 line
SCI: Made some members of class Resource protected; some cleanup
........
r41181 | waltervn | 2009-06-05 09:55:08 +1000 (Fri, 05 Jun 2009) | 3 lines
SCI: Fixed some endian bugs related to speech handling. READ_UINT* are not LE,
but use native endianness. Thanks to clone2727 for pointing this out.
........
r41185 | Kirben | 2009-06-05 10:57:58 +1000 (Fri, 05 Jun 2009) | 1 line
Update sound code in HE80+ games, for sound rate differences.
........
r41186 | waltervn | 2009-06-05 11:12:52 +1000 (Fri, 05 Jun 2009) | 2 lines
SCI: Audio: Fixed bug in sample length computation.
........
r41188 | Kirben | 2009-06-05 12:35:38 +1000 (Fri, 05 Jun 2009) | 1 line
Fix issues selecting some items in arttime and football.
........
r41189 | Kirben | 2009-06-05 14:16:32 +1000 (Fri, 05 Jun 2009) | 1 line
Minor cleanup.
........
r41196 | dreammaster | 2009-06-05 22:20:42 +1000 (Fri, 05 Jun 2009) | 1 line
Tweaks to the code that pauses for a mouse press when displaying many text messages
........
r41197 | thebluegr | 2009-06-06 04:05:45 +1000 (Sat, 06 Jun 2009) | 1 line
Removed some unused code and performed some cleanup
........
r41198 | thebluegr | 2009-06-06 05:04:14 +1000 (Sat, 06 Jun 2009) | 1 line
Moved some more debug commands to ScummVM's coneole and removed some unused code
........
r41199 | athrxx | 2009-06-06 07:34:18 +1000 (Sat, 06 Jun 2009) | 1 line
LOL: implemented another opcode
........
r41200 | mthreepwood | 2009-06-06 08:35:13 +1000 (Sat, 06 Jun 2009) | 1 line
Make the PlayStation's abbreviation to all lower-case for consistency and change the description from Playstation to Sony PlayStation
........
r41201 | athrxx | 2009-06-06 08:53:36 +1000 (Sat, 06 Jun 2009) | 1 line
LOL: minor bug fix
........
r41202 | thebluegr | 2009-06-06 09:08:35 +1000 (Sat, 06 Jun 2009) | 1 line
Cleanup
........
svn-id: r41206
Diffstat (limited to 'engines/scumm')
-rw-r--r-- | engines/scumm/he/script_v100he.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/he/script_v90he.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/he/sound_he.cpp | 10 | ||||
-rw-r--r-- | engines/scumm/he/sound_he.h | 1 | ||||
-rw-r--r-- | engines/scumm/he/sprite_he.cpp | 1 | ||||
-rw-r--r-- | engines/scumm/he/wiz_he.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/he/wiz_he.h | 2 |
7 files changed, 14 insertions, 6 deletions
diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp index 90f2764b3d..fc27c338b2 100644 --- a/engines/scumm/he/script_v100he.cpp +++ b/engines/scumm/he/script_v100he.cpp @@ -2507,7 +2507,7 @@ void ScummEngine_v100he::o100_getWizData() { x = pop(); state = pop(); resId = pop(); - push(_wiz->getWizPixelColor(resId, state, x, y, 0)); + push(_wiz->getWizPixelColor(resId, state, x, y)); break; case 26: resId = pop(); diff --git a/engines/scumm/he/script_v90he.cpp b/engines/scumm/he/script_v90he.cpp index c6b919f554..7a7a1ff58b 100644 --- a/engines/scumm/he/script_v90he.cpp +++ b/engines/scumm/he/script_v90he.cpp @@ -1300,7 +1300,7 @@ void ScummEngine_v90he::o90_getWizData() { x = pop(); state = pop(); resId = pop(); - push(_wiz->getWizPixelColor(resId, state, x, y, 0)); + push(_wiz->getWizPixelColor(resId, state, x, y)); break; case 130: h = pop(); diff --git a/engines/scumm/he/sound_he.cpp b/engines/scumm/he/sound_he.cpp index c5a8988edb..67248f4c22 100644 --- a/engines/scumm/he/sound_he.cpp +++ b/engines/scumm/he/sound_he.cpp @@ -158,6 +158,7 @@ void SoundHE::stopSound(int sound) { if (_heChannel[i].sound == sound) { _heChannel[i].sound = 0; _heChannel[i].priority = 0; + _heChannel[i].rate = 0; _heChannel[i].timer = 0; _heChannel[i].sbngBlock = 0; _heChannel[i].codeOffs = 0; @@ -196,6 +197,7 @@ void SoundHE::stopSoundChannel(int chan) { _heChannel[chan].sound = 0; _heChannel[chan].priority = 0; + _heChannel[chan].rate = 0; _heChannel[chan].timer = 0; _heChannel[chan].sbngBlock = 0; _heChannel[chan].codeOffs = 0; @@ -254,7 +256,7 @@ int SoundHE::getSoundPos(int sound) { } if (_mixer->isSoundHandleActive(_heSoundChannels[chan]) && chan != -1) { - int time = _vm->getHETimer(chan + 4) * 11025 / 1000; + int time = _vm->getHETimer(chan + 4) * _heChannel[chan].rate / 1000; return time; } else { return 0; @@ -360,7 +362,7 @@ void SoundHE::processSoundCode() { continue; } - tmr = _vm->getHETimer(chan + 4) * 11025 / 1000; + tmr = _vm->getHETimer(chan + 4) * _heChannel[chan].rate / 1000; tmr += _vm->VAR(_vm->VAR_SOUNDCODE_TMR); if (tmr < 0) tmr = 0; @@ -407,6 +409,7 @@ void SoundHE::processSoundCode() { _heChannel[chan].sound = 0; _heChannel[chan].priority = 0; + _heChannel[chan].rate = 0; _heChannel[chan].timer = 0; _heChannel[chan].sbngBlock = 0; _heChannel[chan].codeOffs = 0; @@ -625,6 +628,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags) _vm->setHETimer(heChannel + 4); _heChannel[heChannel].sound = soundID; _heChannel[heChannel].priority = priority; + _heChannel[heChannel].rate = rate; _heChannel[heChannel].sbngBlock = (codeOffs != -1) ? 1 : 0; _heChannel[heChannel].codeOffs = codeOffs; memset(_heChannel[heChannel].soundVars, 0, sizeof(_heChannel[heChannel].soundVars)); @@ -646,6 +650,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags) size *= 2; // 16bits. delete voxStream; + _heChannel[heChannel].rate = rate; if (_heChannel[heChannel].timer) _heChannel[heChannel].timer = size * 1000 / rate; @@ -696,6 +701,7 @@ void SoundHE::playHESound(int soundID, int heOffset, int heChannel, int heFlags) _vm->setHETimer(heChannel + 4); _heChannel[heChannel].sound = soundID; _heChannel[heChannel].priority = priority; + _heChannel[heChannel].rate = rate; _heChannel[heChannel].sbngBlock = (codeOffs != -1) ? 1 : 0; _heChannel[heChannel].codeOffs = codeOffs; memset(_heChannel[heChannel].soundVars, 0, sizeof(_heChannel[heChannel].soundVars)); diff --git a/engines/scumm/he/sound_he.h b/engines/scumm/he/sound_he.h index 47ff145e6b..f3a881972e 100644 --- a/engines/scumm/he/sound_he.h +++ b/engines/scumm/he/sound_he.h @@ -53,6 +53,7 @@ public: // Used by createSound() int sound; int codeOffs; int priority; + int rate; int timer; int sbngBlock; int soundVars[27]; diff --git a/engines/scumm/he/sprite_he.cpp b/engines/scumm/he/sprite_he.cpp index 1e694ff067..aed03f746b 100644 --- a/engines/scumm/he/sprite_he.cpp +++ b/engines/scumm/he/sprite_he.cpp @@ -151,6 +151,7 @@ int Sprite::findSpriteWithClassOf(int x_pos, int y_pos, int spriteGroupId, int t if (spi->maskImage) { int32 x1, x2, y1, y2; + image = spi->maskImage; imageState = spi->curImageState % _vm->_wiz->getWizImageStates(spi->maskImage); pos[0].x = x_pos - spi->pos.x; diff --git a/engines/scumm/he/wiz_he.cpp b/engines/scumm/he/wiz_he.cpp index e91eb48cd4..8bc196ee08 100644 --- a/engines/scumm/he/wiz_he.cpp +++ b/engines/scumm/he/wiz_he.cpp @@ -2399,7 +2399,7 @@ int Wiz::isWizPixelNonTransparent(int resNum, int state, int x, int y, int flags return ret; } -uint8 Wiz::getWizPixelColor(int resNum, int state, int x, int y, int flags) { +uint16 Wiz::getWizPixelColor(int resNum, int state, int x, int y) { uint16 color = 0; uint8 *data = _vm->getResourceAddress(rtImage, resNum); assert(data); diff --git a/engines/scumm/he/wiz_he.h b/engines/scumm/he/wiz_he.h index 0a320e2426..4a5dd74e38 100644 --- a/engines/scumm/he/wiz_he.h +++ b/engines/scumm/he/wiz_he.h @@ -188,7 +188,7 @@ public: void getWizImageDim(int resNum, int state, int32 &w, int32 &h); int getWizImageStates(int resnum); int isWizPixelNonTransparent(int resnum, int state, int x, int y, int flags); - uint8 getWizPixelColor(int resnum, int state, int x, int y, int flags); + uint16 getWizPixelColor(int resnum, int state, int x, int y); int getWizImageData(int resNum, int state, int type); void flushWizBuffer(); |