[Scummvm-cvs-logs] SF.net SVN: scummvm:[47885] scummvm/trunk/engines/sci
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Thu Feb 4 21:02:48 CET 2010
Revision: 47885
http://scummvm.svn.sourceforge.net/scummvm/?rev=47885&view=rev
Author: m_kiewitz
Date: 2010-02-04 20:02:48 +0000 (Thu, 04 Feb 2010)
Log Message:
-----------
SCI: putting kDrawCel info GfxPaint class, debug is using GfxPaint class as well for drawing cels
Modified Paths:
--------------
scummvm/trunk/engines/sci/console.cpp
scummvm/trunk/engines/sci/engine/kgraphics.cpp
scummvm/trunk/engines/sci/graphics/gui.cpp
scummvm/trunk/engines/sci/graphics/gui.h
scummvm/trunk/engines/sci/graphics/paint.cpp
scummvm/trunk/engines/sci/graphics/paint.h
scummvm/trunk/engines/sci/graphics/paint16.cpp
scummvm/trunk/engines/sci/graphics/paint16.h
scummvm/trunk/engines/sci/graphics/paint32.cpp
scummvm/trunk/engines/sci/graphics/paint32.h
Modified: scummvm/trunk/engines/sci/console.cpp
===================================================================
--- scummvm/trunk/engines/sci/console.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/console.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -1093,7 +1093,7 @@
uint16 loopNo = atoi(argv[2]);
uint16 celNo = atoi(argv[3]);
- _engine->_gamestate->_gui->drawCel(resourceId, loopNo, celNo, 50, 50, 0, 0);
+ _engine->_gamestate->_gfxPaint->kernelDrawCel(resourceId, loopNo, celNo, 50, 50, 0, 0, false, NULL_REG);
return true;
}
Modified: scummvm/trunk/engines/sci/engine/kgraphics.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kgraphics.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/engine/kgraphics.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -1044,7 +1044,7 @@
priority = 15;
}
- s->_gui->drawCel(viewId, loopNo, celNo, x, y, priority, paletteNo, hiresMode, upscaledHiresHandle);
+ s->_gfxPaint16->kernelDrawCel(viewId, loopNo, celNo, x, y, priority, paletteNo, hiresMode, upscaledHiresHandle);
return s->r_acc;
}
Modified: scummvm/trunk/engines/sci/graphics/gui.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/gui.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -276,16 +276,6 @@
}
}
-void SciGui::drawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle) {
- // some calls are hiresMode even under kq6 DOS, that's why we check for upscaled hires here
- if ((!hiresMode) || (!_screen->getUpscaledHires())) {
- _paint16->drawCelAndShow(viewId, loopNo, celNo, leftPos, topPos, priority, paletteNo);
- } else {
- _paint16->drawHiresCelAndShow(viewId, loopNo, celNo, leftPos, topPos, priority, paletteNo, upscaledHiresHandle);
- }
- _palette->setOnScreen();
-}
-
void SciGui::graphFillBoxForeground(Common::Rect rect) {
_paint16->paintRect(rect);
}
Modified: scummvm/trunk/engines/sci/graphics/gui.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui.h 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/gui.h 2010-02-04 20:02:48 UTC (rev 47885)
@@ -76,8 +76,6 @@
virtual void drawStatus(const char *text, int16 colorPen, int16 colorBack);
virtual void drawMenuBar(bool clear);
- virtual void drawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode = false, reg_t upscaledHiresHandle = NULL_REG);
-
virtual void graphFillBoxForeground(Common::Rect rect);
virtual void graphFillBoxBackground(Common::Rect rect);
virtual void graphFillBox(Common::Rect rect, uint16 colorMask, int16 color, int16 priority, int16 control);
Modified: scummvm/trunk/engines/sci/graphics/paint.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -43,4 +43,7 @@
void GfxPaint::kernelDrawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo) {
}
+void GfxPaint::kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle) {
+}
+
} // End of namespace Sci
Modified: scummvm/trunk/engines/sci/graphics/paint.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint.h 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint.h 2010-02-04 20:02:48 UTC (rev 47885)
@@ -38,6 +38,7 @@
virtual ~GfxPaint();
virtual void kernelDrawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo);
+ virtual void kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle);
private:
};
Modified: scummvm/trunk/engines/sci/graphics/paint16.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint16.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint16.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -346,4 +346,14 @@
_ports->setPort(oldPort);
}
+void GfxPaint16::kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle) {
+ // some calls are hiresMode even under kq6 DOS, that's why we check for upscaled hires here
+ if ((!hiresMode) || (!_screen->getUpscaledHires())) {
+ drawCelAndShow(viewId, loopNo, celNo, leftPos, topPos, priority, paletteNo);
+ } else {
+ drawHiresCelAndShow(viewId, loopNo, celNo, leftPos, topPos, priority, paletteNo, upscaledHiresHandle);
+ }
+ _palette->setOnScreen();
+}
+
} // End of namespace Sci
Modified: scummvm/trunk/engines/sci/graphics/paint16.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint16.h 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint16.h 2010-02-04 20:02:48 UTC (rev 47885)
@@ -70,6 +70,7 @@
void bitsFree(reg_t memoryHandle);
void kernelDrawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo);
+ void kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle);
private:
ResourceManager *_resMan;
Modified: scummvm/trunk/engines/sci/graphics/paint32.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint32.cpp 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint32.cpp 2010-02-04 20:02:48 UTC (rev 47885)
@@ -63,4 +63,15 @@
delete picture;
}
+// This is "hacked" together, because its only used by debug command
+void GfxPaint32::kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle) {
+ View *view = _cache->getView(viewId);
+ Common::Rect celRect(50, 50, 50, 50);
+ Common::Rect translatedRect;
+ celRect.bottom += view->getHeight(loopNo, celNo);
+ celRect.right += view->getWidth(loopNo, celNo);
+ view->draw(celRect, celRect, celRect, loopNo, celNo, 255, 0, false);
+ _screen->copyRectToScreen(celRect);
+}
+
} // End of namespace Sci
Modified: scummvm/trunk/engines/sci/graphics/paint32.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/paint32.h 2010-02-04 19:33:36 UTC (rev 47884)
+++ scummvm/trunk/engines/sci/graphics/paint32.h 2010-02-04 20:02:48 UTC (rev 47885)
@@ -43,6 +43,7 @@
void fillRect(Common::Rect rect, byte color);
void kernelDrawPicture(GuiResourceId pictureId, int16 animationNr, bool animationBlackoutFlag, bool mirroredFlag, bool addToFlag, int16 EGApaletteNo);
+ void kernelDrawCel(GuiResourceId viewId, int16 loopNo, int16 celNo, uint16 leftPos, uint16 topPos, int16 priority, uint16 paletteNo, bool hiresMode, reg_t upscaledHiresHandle);
private:
ResourceManager *_resMan;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list