From f1a099d4f8ba4cd2efc58c24f7075f77c7459016 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Wed, 14 Dec 2011 02:17:53 +0200 Subject: DREAMWEB: Port 'lookatcard' to C++ --- engines/dreamweb/dreamgen.cpp | 51 ------------------------------------------- engines/dreamweb/dreamgen.h | 5 ++--- engines/dreamweb/stubs.cpp | 30 +++++++++++++++++++++++++ engines/dreamweb/stubs.h | 1 + 4 files changed, 33 insertions(+), 54 deletions(-) (limited to 'engines/dreamweb') diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index d3e3ace249..e8e577e51b 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -3510,57 +3510,6 @@ _tmp1: putBackObStuff(); } -void DreamGenContext::lookAtCard() { - STACK_CHECK; - data.byte(kManisoffscreen) = 1; - getRidOfReels(); - loadKeypad(); - createPanel2(); - di = 160; - bx = 80; - ds = data.word(kTempgraphics); - al = 42; - ah = 128; - showFrame(); - getObTextStart(); - findNextColon(); - findNextColon(); - findNextColon(); - di = 36; - bx = 124; - dl = 241; - al = 0; - ah = 0; - printDirect(); - push(es); - push(si); - workToScreenM(); - cx = 280; - hangOnW(); - createPanel2(); - di = 160; - bx = 80; - ds = data.word(kTempgraphics); - al = 42; - ah = 128; - showFrame(); - si = pop(); - es = pop(); - di = 36; - bx = 130; - dl = 241; - al = 0; - ah = 0; - printDirect(); - workToScreenM(); - cx = 200; - hangOnW(); - data.byte(kManisoffscreen) = 0; - getRidOfTemp(); - restoreReels(); - putBackObStuff(); -} - void DreamGenContext::moneyPoke() { STACK_CHECK; bx = offset_money1poke; diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index ddddf7955a..43f93ee238 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -489,7 +489,7 @@ public: void getObTextStart(); void checkObjectSize(); void isRyanHolding(); - void showSlots(); + void fillOpen(); void useCashCard(); void moneyPoke(); void doSomeTalk(); @@ -537,10 +537,9 @@ public: void poolGuard(); void lookAtPlace(); void findAllOpen(); - void fillOpen(); + void showSlots(); void findSetObject(); void deleteExObject(); - void lookAtCard(); void helicopter(); void getEitherAd(); void setPickup(); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index 51884ace1f..127724f7db 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -4647,4 +4647,34 @@ void DreamGenContext::runEndSeq() { } while (data.byte(kGetback) != 1); } +void DreamGenContext::lookAtCard() { + //showFrame((Frame *)ds.ptr(0, 0), di, bx, ax & 0x1ff, ah & 0xfe, &width, &height); + //al = DreamBase::printDirect(&string, di, &y, dl, (bool)(dl & 1)); + data.byte(kManisoffscreen) = 1; + getRidOfReels(); + loadKeypad(); + createPanel2(); + showFrame(tempGraphics(), 160, 80, 42, 128); + uint8 *obText = getObTextStartCPP(); + findNextColon(&obText); + findNextColon(&obText); + findNextColon(&obText); + printDirect(obText, 36, 124, 241, 241 & 1); + push(es); + push(si); + workToScreenM(); + hangOnW(280); + createPanel2(); + showFrame(tempGraphics(), 160, 80, 42, 128); + si = pop(); + es = pop(); + printDirect(obText, 36, 130, 241, 241 & 1); + workToScreenM(); + hangOnW(200); + data.byte(kManisoffscreen) = 0; + getRidOfTemp(); + restoreReels(); + putBackObStuff(); +} + } // End of namespace DreamGen diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 24f92a947b..e60a5698eb 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -585,5 +585,6 @@ void showDiaryPage(); void dumpDiaryKeys(); void runEndSeq(); + void lookAtCard(); #endif -- cgit v1.2.3