[Scummvm-cvs-logs] scummvm master -> b34791e98723f27950f28351943b4ef84d9a4104
tramboi
bertrand_augereau at yahoo.fr
Wed Nov 30 14:51:22 CET 2011
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
19daa15f8e DREAMWEB: 'drawfloor' ported to C++
b34791e987 DREAMWEB: Less VM side-effects in 'doblocks'
Commit: 19daa15f8e3da59b1f32663da65a138c6c2264f7
https://github.com/scummvm/scummvm/commit/19daa15f8e3da59b1f32663da65a138c6c2264f7
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-11-30T05:30:40-08:00
Commit Message:
DREAMWEB: 'drawfloor' ported to C++
Changed paths:
devtools/tasmrecover/tasm-recover
engines/dreamweb/dreamgen.cpp
engines/dreamweb/dreamgen.h
engines/dreamweb/stubs.cpp
engines/dreamweb/stubs.h
diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 79749bd..2730e45 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -317,6 +317,7 @@ generator = cpp(context, "DreamGen", blacklist = [
'steady',
'constant',
'random',
+ 'drawfloor',
], skip_output = [
# These functions are processed but not output
'dreamweb',
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 98c9855..5e0520e 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -4827,24 +4827,6 @@ beforethistext:
goto shuffletextads;
}
-void DreamGenContext::drawfloor() {
- STACK_CHECK;
- push(es);
- push(bx);
- eraseoldobs();
- drawflags();
- calcmapad();
- doblocks();
- showallobs();
- showallfree();
- showallex();
- paneltomap();
- initrain();
- data.byte(kNewobs) = 0;
- bx = pop();
- es = pop();
-}
-
void DreamGenContext::redrawmainscrn() {
STACK_CHECK;
data.word(kTimecount) = 0;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index e8642e8..ccffb21 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -340,7 +340,6 @@ public:
static const uint16 addr_talk = 0xc480;
static const uint16 addr_getback1 = 0xc47c;
static const uint16 addr_redrawmainscrn = 0xc478;
- static const uint16 addr_drawfloor = 0xc428;
static const uint16 addr_deleteextext = 0xc420;
static const uint16 addr_deleteexframe = 0xc41c;
static const uint16 addr_deleteexobject = 0xc418;
@@ -1155,7 +1154,7 @@ public:
void gettime();
void candles1();
void fadedos();
- void drawfloor();
+ void runendseq();
void loadkeypad();
void findtext1();
void isryanholding();
@@ -1229,7 +1228,6 @@ public:
void talk();
void getridoftemp2();
void usebalcony();
- void runendseq();
void decide();
void disablesoundint();
void priesttext();
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index a566f8f..c4e2ae1 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -2509,5 +2509,22 @@ void DreamGenContext::loadtemptext(const char *fileName) {
data.word(kTextfile1) = standardload(fileName);
}
+void DreamGenContext::drawfloor() {
+ eraseoldobs();
+ drawflags();
+ calcmapad();
+ push(es);
+ push(bx);
+ doblocks();
+ bx = pop();
+ es = pop();
+ showallobs();
+ showallfree();
+ showallex();
+ paneltomap();
+ initrain();
+ data.byte(kNewobs) = 0;
+}
+
} /*namespace dreamgen */
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index 5236ed4..6ac7d41 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -372,4 +372,5 @@
void loadtemptext();
void loadtemptext(const char *fileName);
void loadtraveltext();
+ void drawfloor();
Commit: b34791e98723f27950f28351943b4ef84d9a4104
https://github.com/scummvm/scummvm/commit/b34791e98723f27950f28351943b4ef84d9a4104
Author: Bertrand Augereau (bertrand_augereau at yahoo.fr)
Date: 2011-11-30T05:36:58-08:00
Commit Message:
DREAMWEB: Less VM side-effects in 'doblocks'
Changed paths:
engines/dreamweb/backdrop.cpp
engines/dreamweb/stubs.cpp
diff --git a/engines/dreamweb/backdrop.cpp b/engines/dreamweb/backdrop.cpp
index 63aec2d..3e4b4dc 100644
--- a/engines/dreamweb/backdrop.cpp
+++ b/engines/dreamweb/backdrop.cpp
@@ -27,12 +27,9 @@ namespace DreamGen {
void DreamGenContext::doblocks() {
uint16 dstOffset = data.word(kMapady) * 320 + data.word(kMapadx);
uint16 mapOffset = kMap + data.byte(kMapy) * kMapwidth + data.byte(kMapx);
- ds = data.word(kMapdata);
- const uint8 *mapData = ds.ptr(mapOffset, 0);
- ds = data.word(kBackdrop);
- const uint8 *blocks = ds.ptr(kBlocks, 0);
- es = data.word(kWorkspace);
- uint8 *dstBuffer = es.ptr(dstOffset, 0);
+ const uint8 *mapData = segRef(data.word(kMapdata)).ptr(mapOffset, 0);
+ const uint8 *blocks = segRef(data.word(kBackdrop)).ptr(kBlocks, 0);
+ uint8 *dstBuffer = workspace() + dstOffset;
for (size_t i = 0; i < 10; ++i) {
for (size_t j = 0; j < 11; ++j) {
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index c4e2ae1..134555d 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -2513,11 +2513,7 @@ void DreamGenContext::drawfloor() {
eraseoldobs();
drawflags();
calcmapad();
- push(es);
- push(bx);
doblocks();
- bx = pop();
- es = pop();
showallobs();
showallfree();
showallex();
More information about the Scummvm-git-logs
mailing list