aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorMax Horn2011-12-07 15:52:25 +0100
committerMax Horn2011-12-07 16:50:37 +0100
commit28ba2071e44b15ecb4c20ee682a9e2bbafe67ab9 (patch)
tree180ae1edf932193af8d1462672f0bfacc0e6f6df /engines
parent409e359fed5562161ca0e8ab62892071eead4653 (diff)
downloadscummvm-rg350-28ba2071e44b15ecb4c20ee682a9e2bbafe67ab9.tar.gz
scummvm-rg350-28ba2071e44b15ecb4c20ee682a9e2bbafe67ab9.tar.bz2
scummvm-rg350-28ba2071e44b15ecb4c20ee682a9e2bbafe67ab9.zip
DREAMWEB: Move showFrame() and some things using it to DreamBase
Diffstat (limited to 'engines')
-rw-r--r--engines/dreamweb/dreambase.h10
-rw-r--r--engines/dreamweb/stubs.cpp15
-rw-r--r--engines/dreamweb/stubs.h16
-rw-r--r--engines/dreamweb/vgagrafx.cpp16
4 files changed, 33 insertions, 24 deletions
diff --git a/engines/dreamweb/dreambase.h b/engines/dreamweb/dreambase.h
index e68c6d3d19..99cb8476e1 100644
--- a/engines/dreamweb/dreambase.h
+++ b/engines/dreamweb/dreambase.h
@@ -70,6 +70,11 @@ public:
uint8 kernChars(uint8 firstChar, uint8 secondChar, uint8 width);
// from stubs.cpp
+ void crosshair();
+ void showBlink();
+ void dumpBlink();
+ void dumpPointer();
+ void showRyanPage();
void volumeAdjust();
// from vgagrafx.cpp
@@ -89,6 +94,11 @@ public:
void frameOutFx(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y);
void doShake();
void showPCX(const Common::String &name);
+ void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height);
+ void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag);
+ void createPanel();
+ void createPanel2();
+ void showPanel();
};
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index d2cc525376..d0e8eb1450 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1321,7 +1321,7 @@ void DreamGenContext::plotReel() {
es = pop();
}
-void DreamGenContext::crosshair() {
+void DreamBase::crosshair() {
uint8 frame;
if ((data.byte(kCommandtype) != 3) && (data.byte(kCommandtype) < 10)) {
frame = 9;
@@ -1482,11 +1482,6 @@ void DreamGenContext::examineObText() {
commandWithOb(1, data.byte(kCommandtype), data.byte(kCommand));
}
-void DreamGenContext::showPanel() {
- showFrame(engine->icons1(), 72, 0, 19, 0);
- showFrame(engine->icons1(), 192, 0, 19, 0);
-}
-
void DreamGenContext::blockNameText() {
commandWithOb(0, data.byte(kCommandtype), data.byte(kCommand));
}
@@ -1750,7 +1745,7 @@ void DreamGenContext::delPointer() {
multiPut(getSegment(data.word(kBuffers)).ptr(kPointerback, 0), data.word(kDelherex), data.word(kDelherey), data.byte(kPointerxs), data.byte(kPointerys));
}
-void DreamGenContext::showBlink() {
+void DreamBase::showBlink() {
if (data.byte(kManisoffscreen) == 1)
return;
++data.byte(kBlinkcount);
@@ -1771,7 +1766,7 @@ void DreamGenContext::showBlink() {
showFrame(engine->icons1(), 44, 32, blinkTab[blinkFrame], 0, &width, &height);
}
-void DreamGenContext::dumpBlink() {
+void DreamBase::dumpBlink() {
if (data.byte(kShadeson) != 0)
return;
if (data.byte(kBlinkcount) != 0)
@@ -1781,7 +1776,7 @@ void DreamGenContext::dumpBlink() {
multiDump(44, 32, 16, 12);
}
-void DreamGenContext::dumpPointer() {
+void DreamBase::dumpPointer() {
dumpBlink();
multiDump(data.word(kDelherex), data.word(kDelherey), data.byte(kDelxs), data.byte(kDelys));
if ((data.word(kOldpointerx) != data.word(kDelherex)) || (data.word(kOldpointery) != data.word(kDelherey)))
@@ -2062,7 +2057,7 @@ bool DreamGenContext::checkIfSet(uint8 x, uint8 y) {
return false;
}
-void DreamGenContext::showRyanPage() {
+void DreamBase::showRyanPage() {
showFrame(engine->icons1(), kInventx + 167, kInventy - 12, 12, 0);
showFrame(engine->icons1(), kInventx + 167 + 18 * data.byte(kRyanpage), kInventy - 12, 13 + data.byte(kRyanpage), 0);
}
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index 266f62fabb..d03961d4a1 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -88,8 +88,12 @@
void startLoading(const Room &room);
Sprite *spriteTable();
void showFrame();
- void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height);
- void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag);
+ void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height) {
+ DreamBase::showFrame(frameData, x, y, frameNumber, effectsFlag, width, height);
+ }
+ void showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag) {
+ DreamBase::showFrame(frameData, x, y, frameNumber, effectsFlag);
+ }
void printASprite(const Sprite *sprite);
void width160();
void eraseOldObs();
@@ -135,7 +139,6 @@
Reel *getReelStart();
void dealWithSpecial(uint8 firstParam, uint8 secondParam);
void zoom();
- void crosshair();
void showRain();
void delTextLine();
void commandOnly();
@@ -152,7 +155,6 @@
void copyName(uint8 type, uint8 index, uint8 *dst);
void commandWithOb();
void commandWithOb(uint8 command, uint8 type, uint8 index);
- void showPanel();
void updatePeople();
void madman(ReelRoutine &routine);
void madmanText();
@@ -204,9 +206,6 @@
void obName();
void obName(uint8 command, uint8 commandType);
void delPointer();
- void showBlink();
- void dumpBlink();
- void dumpPointer();
void showPointer();
void animPointer();
void checkCoords();
@@ -239,7 +238,6 @@
void makeWorn(DynObject *object);
void obToInv();
void obToInv(uint8 index, uint8 flag, uint16 x, uint16 y);
- void showRyanPage();
void findAllRyan();
void findAllRyan(uint8 *inv);
void fillRyan();
@@ -328,8 +326,6 @@
void playChannel1(uint8 index);
void showMainOps();
void showDiscOps();
- void createPanel();
- void createPanel2();
void findRoomInLoc();
void reelsOnScreen();
void reconstruct();
diff --git a/engines/dreamweb/vgagrafx.cpp b/engines/dreamweb/vgagrafx.cpp
index 17019938f7..4c3ba57e6c 100644
--- a/engines/dreamweb/vgagrafx.cpp
+++ b/engines/dreamweb/vgagrafx.cpp
@@ -313,12 +313,12 @@ void DreamBase::frameOutV(uint8 *dst, const uint8 *src, uint16 pitch, uint16 wid
}
}
-void DreamGenContext::showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag) {
+void DreamBase::showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag) {
uint8 width, height;
showFrame(frameData, x, y, frameNumber, effectsFlag, &width, &height);
}
-void DreamGenContext::showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height) {
+void DreamBase::showFrame(const Frame *frameData, uint16 x, uint16 y, uint16 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height) {
const Frame *frame = frameData + frameNumber;
if ((frame->width == 0) && (frame->height == 0)) {
*width = 0;
@@ -343,8 +343,11 @@ void DreamGenContext::showFrame(const Frame *frameData, uint16 x, uint16 y, uint
y -= *height / 2;
}
if (effectsFlag & 64) { //diffDest
+ error("Unsupported DreamBase::showFrame effectsFlag %d", effectsFlag);
+ /*
frameOutFx(es.ptr(0, dx * *height), pSrc, dx, *width, *height, x, y);
return;
+ */
}
if (effectsFlag & 8) { //printList
/*
@@ -470,17 +473,22 @@ void DreamGenContext::loadPalFromIFF() {
}
}
-void DreamGenContext::createPanel() {
+void DreamBase::createPanel() {
showFrame(engine->icons2(), 0, 8, 0, 2);
showFrame(engine->icons2(), 160, 8, 0, 2);
showFrame(engine->icons2(), 0, 104, 0, 2);
showFrame(engine->icons2(), 160, 104, 0, 2);
}
-void DreamGenContext::createPanel2() {
+void DreamBase::createPanel2() {
createPanel();
showFrame(engine->icons2(), 0, 0, 5, 2);
showFrame(engine->icons2(), 160, 0, 5, 2);
}
+void DreamBase::showPanel() {
+ showFrame(engine->icons1(), 72, 0, 19, 0);
+ showFrame(engine->icons1(), 192, 0, 19, 0);
+}
+
} // End of namespace DreamGen