aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMartin Kiewitz2010-02-05 16:03:14 +0000
committerMartin Kiewitz2010-02-05 16:03:14 +0000
commite7cffa90b2718398f93ce9e8ad331cd39e832c14 (patch)
tree8de5e8399abf3747762dca175e441ec4816a0870 /engines/sci/engine
parent71519a0a8f2e209743ae79d2c513032b865a43f6 (diff)
downloadscummvm-rg350-e7cffa90b2718398f93ce9e8ad331cd39e832c14.tar.gz
scummvm-rg350-e7cffa90b2718398f93ce9e8ad331cd39e832c14.tar.bz2
scummvm-rg350-e7cffa90b2718398f93ce9e8ad331cd39e832c14.zip
SCI: frameout sci32 stuff now gets called directly w/o SciGui/32
svn-id: r47907
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/kernel32.cpp17
-rw-r--r--engines/sci/engine/state.h12
2 files changed, 12 insertions, 17 deletions
diff --git a/engines/sci/engine/kernel32.cpp b/engines/sci/engine/kernel32.cpp
index 06d1b8b044..06a24caffc 100644
--- a/engines/sci/engine/kernel32.cpp
+++ b/engines/sci/engine/kernel32.cpp
@@ -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 kSave(EngineState *s, int argc, reg_t *argv) {
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 kUpdateScreenItem(EngineState *s, int argc, reg_t *argv) {
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 kDeleteScreenItem(EngineState *s, int argc, reg_t *argv) {
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 kAddPlane(EngineState *s, int argc, reg_t *argv) {
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 kDeletePlane(EngineState *s, int argc, reg_t *argv) {
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 kRepaintPlane(EngineState *s, int argc, reg_t *argv) {
}
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 @@ reg_t kFrameOut(EngineState *s, int argc, reg_t *argv) {
// as its called right after a view is updated
// TODO
- s->_gui32->frameOut();
+ s->_gfxFrameout->kernelFrameout();
return NULL_REG;
}
diff --git a/engines/sci/engine/state.h b/engines/sci/engine/state.h
index a11ba50855..f61dd33920 100644
--- a/engines/sci/engine/state.h
+++ b/engines/sci/engine/state.h
@@ -58,26 +58,19 @@ class GfxCursor;
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 @@ public:
#ifdef ENABLE_SCI32
SciGui32 *_gui32; // GUI for SCI32 games
+ GfxFrameout *_gfxFrameout; // kFrameout and the like for 32-bit gfx
#endif
SciEvent *_event; // Event handling