[Scummvm-cvs-logs] SF.net SVN: scummvm:[47907] scummvm/trunk/engines/sci

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Fri Feb 5 17:03:14 CET 2010


Revision: 47907
          http://scummvm.svn.sourceforge.net/scummvm/?rev=47907&view=rev
Author:   m_kiewitz
Date:     2010-02-05 16:03:14 +0000 (Fri, 05 Feb 2010)

Log Message:
-----------
SCI: frameout sci32 stuff now gets called directly w/o SciGui/32

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/kernel32.cpp
    scummvm/trunk/engines/sci/engine/state.h
    scummvm/trunk/engines/sci/graphics/frameout.cpp
    scummvm/trunk/engines/sci/graphics/gui32.cpp
    scummvm/trunk/engines/sci/graphics/gui32.h
    scummvm/trunk/engines/sci/sci.cpp

Modified: scummvm/trunk/engines/sci/engine/kernel32.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel32.cpp	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/engine/kernel32.cpp	2010-02-05 16:03:14 UTC (rev 47907)
@@ -31,6 +31,7 @@
 #include "sci/engine/selector.h"
 #include "sci/graphics/gui.h"
 #include "sci/graphics/gui32.h"
+#include "sci/graphics/frameout.h"
 
 namespace Sci {
 
@@ -669,7 +670,7 @@
 reg_t kAddScreenItem(EngineState *s, int argc, reg_t *argv) {
 	reg_t viewObj = argv[0];
 
-	s->_gui32->addScreenItem(viewObj);
+	s->_gfxFrameout->kernelAddScreenItem(viewObj);
 	return NULL_REG;
 }
 
@@ -683,7 +684,7 @@
 reg_t kDeleteScreenItem(EngineState *s, int argc, reg_t *argv) {
 	reg_t viewObj = argv[0];
 
-	s->_gui32->deleteScreenItem(viewObj);
+	s->_gfxFrameout->kernelDeleteScreenItem(viewObj);
 
 	/*
 	reg_t viewObj = argv[0];
@@ -705,7 +706,7 @@
 reg_t kAddPlane(EngineState *s, int argc, reg_t *argv) {
 	reg_t planeObj = argv[0];
 
-	s->_gui32->addPlane(planeObj);
+	s->_gfxFrameout->kernelAddPlane(planeObj);
 	warning("kAddPlane object %04x:%04x", PRINT_REG(planeObj));
 	return NULL_REG;
 }
@@ -713,7 +714,7 @@
 reg_t kDeletePlane(EngineState *s, int argc, reg_t *argv) {
 	reg_t planeObj = argv[0];
 
-	s->_gui32->deletePlane(planeObj);
+	s->_gfxFrameout->kernelDeletePlane(planeObj);
 	warning("kDeletePlane object %04x:%04x", PRINT_REG(planeObj));
 	return NULL_REG;
 }
@@ -721,7 +722,7 @@
 reg_t kUpdatePlane(EngineState *s, int argc, reg_t *argv) {
 	reg_t planeObj = argv[0];
 
-	s->_gui32->updatePlane(planeObj);
+	s->_gfxFrameout->kernelUpdatePlane(planeObj);
 	return s->r_acc;
 }
 
@@ -735,8 +736,8 @@
 }
 
 reg_t kGetHighPlanePri(EngineState *s, int argc, reg_t *argv) {
-	warning("kGetHighPlanePri: %d", s->_gui32->getHighPlanePri());
-	return make_reg(0, s->_gui32->getHighPlanePri());
+	warning("kGetHighPlanePri: %d", s->_gfxFrameout->kernelGetHighPlanePri());
+	return make_reg(0, s->_gfxFrameout->kernelGetHighPlanePri());
 }
 
 reg_t kFrameOut(EngineState *s, int argc, reg_t *argv) {
@@ -744,7 +745,7 @@
 	// as its called right after a view is updated
 
 	// TODO
-	s->_gui32->frameOut();
+	s->_gfxFrameout->kernelFrameout();
 
 	return NULL_REG;
 }

Modified: scummvm/trunk/engines/sci/engine/state.h
===================================================================
--- scummvm/trunk/engines/sci/engine/state.h	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/engine/state.h	2010-02-05 16:03:14 UTC (rev 47907)
@@ -58,26 +58,19 @@
 class GfxMenu;
 class GfxPaint;
 class GfxPaint16;
-class GfxPaint32;
 class GfxPalette;
 class GfxPorts;
 class GfxScreen;
 class SciGui;
-class Cursor;
 class MessageState;
 class SoundCommandParser;
 
 #ifdef ENABLE_SCI32
 class SciGui32;
+class GfxFrameout;
+class GfxPaint32;
 #endif
 
-struct GfxState;
-struct GfxPort;
-struct GfxVisual;
-struct GfxContainer;
-struct GfxList;
-
-
 class DirSeeker {
 protected:
 	reg_t _outbuffer;
@@ -165,6 +158,7 @@
 
 #ifdef ENABLE_SCI32
 	SciGui32 *_gui32; // GUI for SCI32 games
+	GfxFrameout *_gfxFrameout; // kFrameout and the like for 32-bit gfx
 #endif
 
 	SciEvent *_event; // Event handling

Modified: scummvm/trunk/engines/sci/graphics/frameout.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/frameout.cpp	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/graphics/frameout.cpp	2010-02-05 16:03:14 UTC (rev 47907)
@@ -265,6 +265,7 @@
 		}
 	}
 	free(itemData);
+	_screen->copyToScreen();
 }
 
 } // End of namespace Sci

Modified: scummvm/trunk/engines/sci/graphics/gui32.cpp
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui32.cpp	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/graphics/gui32.cpp	2010-02-05 16:03:14 UTC (rev 47907)
@@ -52,6 +52,7 @@
 	_paint32 = new GfxPaint32(_s->resMan, _s->_segMan, _s->_kernel, _cache, _screen, _palette);
 	_s->_gfxPaint = _paint32;
 	_frameout = new GfxFrameout(_s->_segMan, _s->resMan, _cache, _screen, _palette, _paint32);
+	_s->_gfxFrameout = _frameout;
 }
 
 SciGui32::~SciGui32() {
@@ -204,35 +205,7 @@
 void SciGui32::setCursorZone(Common::Rect zone) {
 	_cursor->setMoveZone(zone);
 }
-void SciGui32::addScreenItem(reg_t object) {
-	_frameout->kernelAddScreenItem(object);
-}
 
-void SciGui32::deleteScreenItem(reg_t object) {
-	_frameout->kernelDeleteScreenItem(object);
-}
-
-void SciGui32::addPlane(reg_t object) {
-	_frameout->kernelAddPlane(object);
-}
-
-void SciGui32::updatePlane(reg_t object) {
-	_frameout->kernelUpdatePlane(object);
-}
-
-void SciGui32::deletePlane(reg_t object) {
-	_frameout->kernelDeletePlane(object);
-}
-
-int16 SciGui32::getHighPlanePri() {
-	return _frameout->kernelGetHighPlanePri();
-}
-
-void SciGui32::frameOut() {
-	_frameout->kernelFrameout();
-	_screen->copyToScreen();
-}
-
 void SciGui32::drawRobot(GuiResourceId robotId) {
 	Robot *test = new Robot(_s->resMan, _screen, robotId);
 	test->draw();

Modified: scummvm/trunk/engines/sci/graphics/gui32.h
===================================================================
--- scummvm/trunk/engines/sci/graphics/gui32.h	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/graphics/gui32.h	2010-02-05 16:03:14 UTC (rev 47907)
@@ -59,13 +59,6 @@
 	void moveCursor(Common::Point pos);
 	void setCursorZone(Common::Rect zone);
 
-	void addScreenItem(reg_t object);
-	void deleteScreenItem(reg_t object);
-	void addPlane(reg_t object);
-	void updatePlane(reg_t object);
-	void deletePlane(reg_t object);
-	int16 getHighPlanePri();
-	void frameOut();
 	void globalToLocal(int16 *x, int16 *y, reg_t planeObj);
 	void localToGlobal(int16 *x, int16 *y, reg_t planeObj);
 

Modified: scummvm/trunk/engines/sci/sci.cpp
===================================================================
--- scummvm/trunk/engines/sci/sci.cpp	2010-02-05 15:55:18 UTC (rev 47906)
+++ scummvm/trunk/engines/sci/sci.cpp	2010-02-05 16:03:14 UTC (rev 47907)
@@ -190,6 +190,7 @@
 		_gamestate->_gui = new SciGui(_gamestate, screen, palette, cache, cursor, _gamestate->_gfxPorts, _audio);
 #ifdef ENABLE_SCI32
 		_gamestate->_gui32 = 0;
+		_gamestate->_gfxFrameout = 0;
 	}
 #endif
 


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