From 194e3d674df29bac8c5da912b55f6ba321d8efae Mon Sep 17 00:00:00 2001 From: Fabio Battaglia Date: Tue, 11 Aug 2009 10:28:15 +0000 Subject: Maniac Mansion NES: added workaround to fix dirty screen when loading a narrow room from a full width room svn-id: r43264 --- engines/scumm/gfx.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'engines/scumm') diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp index 18cba0ab4a..be36069dd7 100644 --- a/engines/scumm/gfx.cpp +++ b/engines/scumm/gfx.cpp @@ -671,6 +671,16 @@ void ScummEngine::drawStripToScreen(VirtScreen *vs, int x, int width, int top, i width -= 16; if (width <= 0) return; + + // HACK: In this way we won't get a screen with dirty side strips when + // loading a narrow room in a full screen room. + if(width == 224 && height == 240 && x == 16) { + char blackbuf[16 * 240]; + memset(blackbuf, 0, 16*240); // Prepare a buffer 16px wide and 240px high, to fit on a lateral strip + + width = 240; // Fix right strip + _system->copyRectToScreen((const byte *)blackbuf, 16, 0, 0, 16, 240); // Fix left strip + } } } -- cgit v1.2.3 From c1c58769e44e4946dbe1c907cae6e920b1967540 Mon Sep 17 00:00:00 2001 From: Fabio Battaglia Date: Tue, 11 Aug 2009 10:51:49 +0000 Subject: code formatting fixes svn-id: r43266 --- engines/scumm/gfx.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'engines/scumm') diff --git a/engines/scumm/gfx.cpp b/engines/scumm/gfx.cpp index be36069dd7..fa5d2011b0 100644 --- a/engines/scumm/gfx.cpp +++ b/engines/scumm/gfx.cpp @@ -674,9 +674,9 @@ void ScummEngine::drawStripToScreen(VirtScreen *vs, int x, int width, int top, i // HACK: In this way we won't get a screen with dirty side strips when // loading a narrow room in a full screen room. - if(width == 224 && height == 240 && x == 16) { + if (width == 224 && height == 240 && x == 16) { char blackbuf[16 * 240]; - memset(blackbuf, 0, 16*240); // Prepare a buffer 16px wide and 240px high, to fit on a lateral strip + memset(blackbuf, 0, 16 * 240); // Prepare a buffer 16px wide and 240px high, to fit on a lateral strip width = 240; // Fix right strip _system->copyRectToScreen((const byte *)blackbuf, 16, 0, 0, 16, 240); // Fix left strip -- cgit v1.2.3 From f186d9c86094e5be5c0e168e72487b3fb8d2deac Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Wed, 12 Aug 2009 00:53:35 +0000 Subject: Fix building with specific games disabled in MSVC. svn-id: r43294 --- engines/scumm/he/animation_he.cpp | 4 +++- engines/scumm/he/animation_he.h | 2 +- engines/scumm/he/cup_player_he.cpp | 3 +++ engines/scumm/he/floodfill_he.cpp | 4 +++- engines/scumm/he/logic_he.cpp | 4 +++- engines/scumm/he/logic_he.h | 2 -- engines/scumm/he/palette_he.cpp | 4 ++++ engines/scumm/he/script_v100he.cpp | 4 ++++ engines/scumm/he/script_v71he.cpp | 4 ++++ engines/scumm/he/script_v72he.cpp | 4 ++++ engines/scumm/he/script_v80he.cpp | 4 ++++ engines/scumm/he/script_v90he.cpp | 4 ++++ engines/scumm/he/sound_he.cpp | 1 - engines/scumm/he/sprite_he.cpp | 4 +++- engines/scumm/he/wiz_he.cpp | 4 +++- 15 files changed, 43 insertions(+), 9 deletions(-) (limited to 'engines/scumm') diff --git a/engines/scumm/he/animation_he.cpp b/engines/scumm/he/animation_he.cpp index 0cc4419778..2ca17161db 100644 --- a/engines/scumm/he/animation_he.cpp +++ b/engines/scumm/he/animation_he.cpp @@ -23,7 +23,7 @@ * */ - +#ifdef ENABLE_HE #include "scumm/he/animation_he.h" #include "scumm/he/intern_he.h" @@ -103,3 +103,5 @@ void MoviePlayer::setPalette(byte *pal) { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/animation_he.h b/engines/scumm/he/animation_he.h index 39f03960c4..cf5d054ead 100644 --- a/engines/scumm/he/animation_he.h +++ b/engines/scumm/he/animation_he.h @@ -23,7 +23,7 @@ * */ -#ifndef SCUMM_HE_ANIMATION_H +#if !defined(SCUMM_HE_ANIMATION_H) && defined(ENABLE_HE) #define SCUMM_HE_ANIMATION_H #include "common/file.h" diff --git a/engines/scumm/he/cup_player_he.cpp b/engines/scumm/he/cup_player_he.cpp index 39615edb6a..a284632fb1 100644 --- a/engines/scumm/he/cup_player_he.cpp +++ b/engines/scumm/he/cup_player_he.cpp @@ -23,6 +23,7 @@ * */ +#ifdef ENABLE_HE #include "common/system.h" #include "sound/audiostream.h" @@ -521,3 +522,5 @@ void CUP_Player::handleTOIL(Common::SeekableReadStream &dataStream, uint32 dataS } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/floodfill_he.cpp b/engines/scumm/he/floodfill_he.cpp index d3578e2189..491b91c17e 100644 --- a/engines/scumm/he/floodfill_he.cpp +++ b/engines/scumm/he/floodfill_he.cpp @@ -23,7 +23,7 @@ * */ - +#ifdef ENABLE_HE #include "scumm/he/floodfill_he.h" #include "scumm/he/intern_he.h" @@ -293,3 +293,5 @@ void Wiz::fillWizFlood(const WizParameters *params) { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/logic_he.cpp b/engines/scumm/he/logic_he.cpp index a24f4d4665..b7d2c9264c 100644 --- a/engines/scumm/he/logic_he.cpp +++ b/engines/scumm/he/logic_he.cpp @@ -23,7 +23,7 @@ * */ - +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #include "scumm/he/logic_he.h" @@ -1058,3 +1058,5 @@ int LogicHEmoonbase::versionID() { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/logic_he.h b/engines/scumm/he/logic_he.h index 29304b7468..f5ecdd429a 100644 --- a/engines/scumm/he/logic_he.h +++ b/engines/scumm/he/logic_he.h @@ -26,8 +26,6 @@ #if !defined(SCUMM_HE_LOGIC_HE_H) && defined(ENABLE_HE) #define SCUMM_HE_LOGIC_HE_H - - namespace Scumm { class ScummEngine_v90he; diff --git a/engines/scumm/he/palette_he.cpp b/engines/scumm/he/palette_he.cpp index d055b77ee2..7fe04f223e 100644 --- a/engines/scumm/he/palette_he.cpp +++ b/engines/scumm/he/palette_he.cpp @@ -8,6 +8,7 @@ * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. + * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the @@ -22,6 +23,7 @@ * */ +#ifdef ENABLE_HE #include "common/system.h" #include "scumm/scumm.h" @@ -317,3 +319,5 @@ void ScummEngine_v99he::updatePalette() { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp index 84fec085cc..44a38401ce 100644 --- a/engines/scumm/he/script_v100he.cpp +++ b/engines/scumm/he/script_v100he.cpp @@ -23,6 +23,8 @@ * */ +#ifdef ENABLE_HE + #include "common/system.h" #include "scumm/actor.h" @@ -3014,3 +3016,5 @@ void ScummEngine_v100he::decodeParseString(int m, int n) { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/script_v71he.cpp b/engines/scumm/he/script_v71he.cpp index c832d64316..46a8868949 100644 --- a/engines/scumm/he/script_v71he.cpp +++ b/engines/scumm/he/script_v71he.cpp @@ -23,6 +23,8 @@ * */ +#ifdef ENABLE_HE + #include "scumm/actor.h" #include "scumm/he/intern_he.h" #include "scumm/scumm.h" @@ -446,3 +448,5 @@ void ScummEngine_v71he::o71_polygonHit() { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/script_v72he.cpp b/engines/scumm/he/script_v72he.cpp index 6224ef5b47..1d73f0da76 100644 --- a/engines/scumm/he/script_v72he.cpp +++ b/engines/scumm/he/script_v72he.cpp @@ -23,6 +23,8 @@ * */ +#ifdef ENABLE_HE + #include "common/config-manager.h" #include "common/savefile.h" #include "common/system.h" @@ -2043,3 +2045,5 @@ void ScummEngine_v72he::decodeParseString(int m, int n) { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/script_v80he.cpp b/engines/scumm/he/script_v80he.cpp index d7e36106ea..5b10944899 100644 --- a/engines/scumm/he/script_v80he.cpp +++ b/engines/scumm/he/script_v80he.cpp @@ -23,6 +23,8 @@ * */ +#ifdef ENABLE_HE + #include "common/config-file.h" #include "common/config-manager.h" #include "common/savefile.h" @@ -529,3 +531,5 @@ void ScummEngine_v80he::o80_pickVarRandom() { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/script_v90he.cpp b/engines/scumm/he/script_v90he.cpp index 2da58b4480..be20a229f0 100644 --- a/engines/scumm/he/script_v90he.cpp +++ b/engines/scumm/he/script_v90he.cpp @@ -23,6 +23,8 @@ * */ +#ifdef ENABLE_HE + #include "scumm/actor.h" #include "scumm/charset.h" #include "scumm/he/animation_he.h" @@ -2353,3 +2355,5 @@ void ScummEngine_v90he::o90_kernelSetFunctions() { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/sound_he.cpp b/engines/scumm/he/sound_he.cpp index 67248f4c22..01f29d5db9 100644 --- a/engines/scumm/he/sound_he.cpp +++ b/engines/scumm/he/sound_he.cpp @@ -23,7 +23,6 @@ * */ - #include "scumm/actor.h" #include "scumm/file.h" #include "scumm/imuse/imuse.h" diff --git a/engines/scumm/he/sprite_he.cpp b/engines/scumm/he/sprite_he.cpp index aed03f746b..5f751d8285 100644 --- a/engines/scumm/he/sprite_he.cpp +++ b/engines/scumm/he/sprite_he.cpp @@ -23,7 +23,7 @@ * */ - +#ifdef ENABLE_HE #include "scumm/he/intern_he.h" #include "scumm/resource.h" @@ -1442,3 +1442,5 @@ void Sprite::saveOrLoadSpriteData(Serializer *s) { } } // End of namespace Scumm + +#endif // ENABLE_HE diff --git a/engines/scumm/he/wiz_he.cpp b/engines/scumm/he/wiz_he.cpp index 6b1db38b23..549877090c 100644 --- a/engines/scumm/he/wiz_he.cpp +++ b/engines/scumm/he/wiz_he.cpp @@ -23,7 +23,7 @@ * */ - +#ifdef ENABLE_HE #include "common/system.h" #include "graphics/cursorman.h" @@ -2405,3 +2405,5 @@ int ScummEngine_v90he::computeWizHistogram(int resNum, int state, int x, int y, } } // End of namespace Scumm + +#endif // ENABLE_HE -- cgit v1.2.3