aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicola Mettifogo2007-04-22 09:46:22 +0000
committerNicola Mettifogo2007-04-22 09:46:22 +0000
commit8c8066b7abdca20c55026b88fa01b1c57de53931 (patch)
tree6c0adb1b134cc04724866d965e53bae3066b99e3
parentb0ae4bf1a38b8957b8810d710a2a90f8c2039e6d (diff)
downloadscummvm-rg350-8c8066b7abdca20c55026b88fa01b1c57de53931.tar.gz
scummvm-rg350-8c8066b7abdca20c55026b88fa01b1c57de53931.tar.bz2
scummvm-rg350-8c8066b7abdca20c55026b88fa01b1c57de53931.zip
Added stubs for Amiga specific callables.
svn-id: r26565
-rw-r--r--engines/parallaction/callables.cpp12
-rw-r--r--engines/parallaction/intro.cpp63
-rw-r--r--engines/parallaction/staticres.cpp93
3 files changed, 138 insertions, 30 deletions
diff --git a/engines/parallaction/callables.cpp b/engines/parallaction/callables.cpp
index 340ee08951..ddb81ba4c1 100644
--- a/engines/parallaction/callables.cpp
+++ b/engines/parallaction/callables.cpp
@@ -450,4 +450,16 @@ void _c_testResult(void *parm) {
return;
}
+void _c_offSound(void*) {
+ // TODO: to be implemented
+}
+
+void _c_startMusic(void*) {
+ // TODO: to be implemented
+}
+
+void _c_closeMusic(void*) {
+ // TODO: to be implemented
+}
+
} // namespace Parallaction
diff --git a/engines/parallaction/intro.cpp b/engines/parallaction/intro.cpp
index 96bc3f4a06..e0573e804c 100644
--- a/engines/parallaction/intro.cpp
+++ b/engines/parallaction/intro.cpp
@@ -341,4 +341,67 @@ void _c_shade(void *parm) {
}
+void _c_projector(void*) {
+
+ static int dword_16032 = 0;
+
+// Bitmap bm;
+// InitBitMap(&bm);
+
+ if (dword_16032 != 0) {
+/* // keep drawing spotlight in its final place
+ _vm->_gfx->flatBlitCnv(&scnv, 110, 25, Gfx::kBitFront);
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, 110, 25, a3->??, a3->??, 0x20, 0x20);
+*/ return;
+ }
+
+ _vm->_gfx->setHalfbriteMode(true);
+/*
+ // move spot light around the stage
+ int d7, d6;
+ for (d7 = 0; d7 < 150; d7++) {
+
+ if (d7 < 100) {
+ int d1 = d7;
+ if (d1 < 0)
+ d1++;
+
+ d1 >>= 1;
+ d6 = 50 - d1;
+ } else {
+ int d1 = d7 / 100;
+ if (d1 < 0)
+ d1++;
+
+ d1 >>= 1;
+ d6 = d1;
+ }
+
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, d7+20, d6, a3->??, a3->??, 0x20, 0x20);
+ sub_1590C(d6 + a3->??);
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, d7+20, d6, a3->??, a3->??, 0xFA, 0x20);
+ }
+
+ for (d7 = 50; d7 > -10; d7--) {
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, d7+120, d6, a3->??, a3->??, 0x20, 0x20);
+ sub_1590C(d6 + a3->??);
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, d7+120, d6, a3->??, a3->??, 0xFA, 0x20);
+ }
+
+ BltBitMap(&bm, 0, 0, &_screen._bitMap, d7+120, d6, a3->??, a3->??, 0x20, 0x20);
+ _vm->_gfx->flatBlitCnv(&scnv, d7+120, d6, Gfx::kBitFront);
+*/
+
+ dword_16032 = 1;
+ return;
+}
+
+void _c_HBOff(void*) {
+ _vm->_gfx->setHalfbriteMode(false);
+}
+
+void _c_HBOn(void*) {
+ _vm->_gfx->setHalfbriteMode(true);
+}
+
} // namespace Parallaction
diff --git a/engines/parallaction/staticres.cpp b/engines/parallaction/staticres.cpp
index 9c3bc47b60..bd56a74378 100644
--- a/engines/parallaction/staticres.cpp
+++ b/engines/parallaction/staticres.cpp
@@ -160,8 +160,9 @@ const char *_callableNamesRes[] = {
"TestResult"
};
+typedef void (*callable)(void*);
+
-void _c_play_boogie(void*);
void _c_play_boogie(void*);
void _c_startIntro(void*);
void _c_endIntro(void*);
@@ -170,7 +171,6 @@ void _c_sketch(void*);
void _c_shade(void*);
void _c_score(void*);
void _c_fade(void*);
-void _c_play_boogie(void*);
void _c_moveSarc(void*);
void _c_contaFoglie(void*);
void _c_zeroFoglie(void*);
@@ -185,35 +185,14 @@ void _c_ridux(void*);
void _c_testResult(void*);
void _c_null(void*);
-typedef void (*callable)(void*);
+void _c_projector(void*);
+void _c_HBOff(void*);
+void _c_offSound(void*);
+void _c_startMusic(void*);
+void _c_closeMusic(void*);
+void _c_HBOn(void*);
-callable _callables[] = {
- _c_play_boogie,
- _c_play_boogie,
- _c_startIntro,
- _c_endIntro,
- _c_moveSheet,
- _c_sketch,
- _c_shade,
- _c_score,
- _c_null,
- _c_null,
- _c_null,
- _c_fade,
- _c_play_boogie,
- _c_moveSarc,
- _c_contaFoglie,
- _c_zeroFoglie,
- _c_trasformata,
- _c_offMouse,
- _c_onMouse,
- _c_setMask,
- _c_endComment,
- _c_frankenstein,
- _c_finito,
- _c_ridux,
- _c_testResult
-};
+callable _callables[25];
Credit _credits[] = {
@@ -248,6 +227,60 @@ void Parallaction::initResources() {
_localFlagNames = new Table(120);
_localFlagNames->addData("visited");
+ if (getPlatform() == Common::kPlatformPC) {
+ _callables[0] = _c_play_boogie;
+ _callables[1] = _c_play_boogie;
+ _callables[2] = _c_startIntro;
+ _callables[3] = _c_endIntro;
+ _callables[4] = _c_moveSheet;
+ _callables[5] = _c_sketch;
+ _callables[6] = _c_shade;
+ _callables[7] = _c_score;
+ _callables[8] = _c_null;
+ _callables[9] = _c_null;
+ _callables[10] = _c_null;
+ _callables[11] = _c_fade;
+ _callables[12] = _c_play_boogie;
+ _callables[13] = _c_moveSarc;
+ _callables[14] = _c_contaFoglie;
+ _callables[15] = _c_zeroFoglie;
+ _callables[16] = _c_trasformata;
+ _callables[17] = _c_offMouse;
+ _callables[18] = _c_onMouse;
+ _callables[19] = _c_setMask;
+ _callables[20] = _c_endComment;
+ _callables[21] = _c_frankenstein;
+ _callables[22] = _c_finito;
+ _callables[23] = _c_ridux;
+ _callables[24] = _c_testResult;
+ } else {
+ _callables[0] = _c_projector;
+ _callables[1] = _c_HBOff;
+ _callables[2] = _c_startIntro;
+ _callables[3] = _c_endIntro;
+ _callables[4] = _c_moveSheet;
+ _callables[5] = _c_sketch;
+ _callables[6] = _c_shade;
+ _callables[7] = _c_score;
+ _callables[8] = _c_offSound;
+ _callables[9] = _c_startMusic;
+ _callables[10] = _c_closeMusic;
+ _callables[11] = _c_fade;
+ _callables[12] = _c_HBOn;
+ _callables[13] = _c_moveSarc;
+ _callables[14] = _c_contaFoglie;
+ _callables[15] = _c_zeroFoglie;
+ _callables[16] = _c_trasformata;
+ _callables[17] = _c_offMouse;
+ _callables[18] = _c_onMouse;
+ _callables[19] = _c_setMask;
+ _callables[20] = _c_endComment;
+ _callables[21] = _c_frankenstein;
+ _callables[22] = _c_finito;
+ _callables[23] = _c_ridux;
+ _callables[24] = _c_testResult;
+ }
+
}