aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdevtools/tasmrecover/tasm-recover5
-rw-r--r--engines/dreamweb/dreamgen.cpp228
-rw-r--r--engines/dreamweb/dreamgen.h230
3 files changed, 232 insertions, 231 deletions
diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 4e2e7b0692..fa480ea925 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -155,6 +155,11 @@ p = parser(skip_binary_data = [
'increment2',
'keypadax',
'keypadcx',
+ 'soundbuffer',
+ 'cursloc',
+ 'liftsoundcount',
+ 'playblock',
+ 'gotfrom',
# vgagrafx.asm
'cityname',
'extragraphics1',
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 6f8cff0ff1..dfeda18d6c 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -2651,14 +2651,14 @@ void DreamGenContext::getDestInfo() {
push(ax);
dx = data;
es = dx;
- si = 1180;
+ si = 1174;
_add(si, ax);
cl = es.byte(si);
ax = pop();
push(cx);
dx = data;
es = dx;
- si = 1196;
+ si = 1190;
_add(si, ax);
ax = pop();
}
@@ -2710,7 +2710,7 @@ clearedlocations:
bx = ax;
dx = data;
es = dx;
- _add(bx, 1180);
+ _add(bx, 1174);
es.byte(bx) = 0;
}
@@ -2749,7 +2749,7 @@ dirroot:
si = offset_rootdir;
_inc(si);
es = cs;
- di = 1056;
+ di = 1050;
_inc(di);
cx = 12;
_movsb(cx, true);
@@ -2851,7 +2851,7 @@ notyetassigned:
push(bx);
_add(bx, 2);
ds = cs;
- si = 1214;
+ si = 1208;
checkpass:
_lodsw();
ah = es.byte(bx);
@@ -2922,7 +2922,7 @@ void DreamGenContext::read() {
return;
okcom:
es = cs;
- di = 1056;
+ di = 1050;
ax = data.word(kTextfile1);
data.word(kMonsource) = ax;
ds = ax;
@@ -3052,7 +3052,7 @@ keyok2:
ds = cs;
si = offset_operand1+1;
es = cs;
- di = 1056+1;
+ di = 1050+1;
cx = 12;
_movsb(cx, true);
monitorLogo();
@@ -3179,7 +3179,7 @@ void DreamGenContext::parser() {
al = '=';
_stosb();
ds = cs;
- si = 1214;
+ si = 1208;
notspace1:
_lodsw();
_cmp(al, 32);
@@ -3808,7 +3808,7 @@ nomatchslot:
void DreamGenContext::clearBuffers() {
STACK_CHECK;
es = data.word(kBuffers);
- cx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+907-450+68-0)/2;
+ cx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+901-444+68-0)/2;
ax = 0;
di = 0;
_stosw(cx, true);
@@ -3820,11 +3820,11 @@ void DreamGenContext::clearBuffers() {
es = data.word(kBuffers);
di = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64));
ds = cs;
- si = 450;
- cx = (907-450);
+ si = 444;
+ cx = (901-444);
_movsb(cx, true);
es = data.word(kBuffers);
- di = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+907-450);
+ di = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+901-444);
ds = cs;
si = 0;
cx = (68-0);
@@ -3842,11 +3842,11 @@ void DreamGenContext::clearChanges() {
ds = data.word(kBuffers);
si = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64));
es = cs;
- di = 450;
- cx = (907-450);
+ di = 444;
+ cx = (901-444);
_movsb(cx, true);
ds = data.word(kBuffers);
- si = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+907-450);
+ si = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+901-444);
es = cs;
di = 0;
cx = (68-0);
@@ -3860,7 +3860,7 @@ void DreamGenContext::clearChanges() {
di = 0;
_stosw(cx, true);
es = cs;
- di = 1180;
+ di = 1174;
al = 1;
_stosb(2);
al = 0;
@@ -4099,111 +4099,111 @@ void DreamGenContext::__start() {
//0x0150: .... .... .... ....
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x0160: .... .... .... ....
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
//0x0170: .... .... .... ....
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
//0x0180: .... .... .... ....
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x00,
//0x0190: .... .... .... ....
- 0xff, 0xff, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x01a0: .... .... .... ....
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00,
- //0x01b0: .... .... .... ....
- 0xff, 0x00, 0x01, 0x2c, 0x00, 0x14, 0x00, 0x02, 0x00, 0x01, 0x01, 0x37, 0x00, 0x00, 0x00, 0x32,
- //0x01c0: ..., .... ...7 ...2
- 0x14, 0x00, 0x18, 0x16, 0x00, 0x4a, 0x00, 0x01, 0x00, 0x00, 0x18, 0x21, 0x0a, 0x4b, 0x00, 0x01,
- //0x01d0: .... .J.. ...! .K..
- 0x00, 0x01, 0x01, 0x2c, 0x00, 0x1b, 0x00, 0x02, 0x00, 0x02, 0x01, 0x2c, 0x00, 0x60, 0x00, 0x03,
- //0x01e0: ..., .... ..., .`..
- 0x00, 0x04, 0x01, 0x2c, 0x00, 0x76, 0x00, 0x02, 0x00, 0x05, 0x01, 0x2c, 0x0a, 0x00, 0x00, 0x02,
- //0x01f0: ..., .v.. ..., ....
- 0x00, 0x00, 0x05, 0x16, 0x14, 0x35, 0x00, 0x03, 0x00, 0x00, 0x05, 0x16, 0x14, 0x28, 0x00, 0x01,
- //0x0200: .... .5.. .... .(..
- 0x00, 0x02, 0x05, 0x16, 0x14, 0x32, 0x00, 0x01, 0x00, 0x03, 0x02, 0x0b, 0x0a, 0xc0, 0x00, 0x01,
- //0x0210: .... .2.. .... ....
- 0x00, 0x00, 0x02, 0x0b, 0x0a, 0xb6, 0x00, 0x02, 0x00, 0x01, 0x08, 0x0b, 0x0a, 0x00, 0x00, 0x02,
- //0x0220: .... .... .... ....
- 0x00, 0x01, 0x17, 0x00, 0x32, 0x00, 0x00, 0x03, 0x00, 0x00, 0x1c, 0x0b, 0x14, 0xfa, 0x00, 0x04,
- //0x0230: .... 2... .... ....
- 0x00, 0x00, 0x17, 0x00, 0x32, 0x2b, 0x00, 0x02, 0x00, 0x08, 0x17, 0x0b, 0x28, 0x82, 0x00, 0x02,
- //0x0240: .... 2+.. .... (...
- 0x00, 0x01, 0x17, 0x16, 0x28, 0x7a, 0x00, 0x02, 0x00, 0x02, 0x17, 0x16, 0x28, 0x69, 0x00, 0x02,
- //0x0250: .... (z.. .... (i..
- 0x00, 0x03, 0x17, 0x16, 0x28, 0x51, 0x00, 0x02, 0x00, 0x04, 0x17, 0x0b, 0x28, 0x87, 0x00, 0x02,
- //0x0260: .... (Q.. .... (...
- 0x00, 0x05, 0x17, 0x16, 0x28, 0x91, 0x00, 0x02, 0x00, 0x06, 0x04, 0x16, 0x1e, 0x00, 0x00, 0x02,
- //0x0270: .... (... .... ....
- 0x00, 0x00, 0x2d, 0x16, 0x1e, 0xc8, 0x00, 0x00, 0x00, 0x14, 0x2d, 0x16, 0x1e, 0x27, 0x00, 0x02,
- //0x0280: ..-. .... ..-. .'..
- 0x00, 0x00, 0x2d, 0x16, 0x1e, 0x19, 0x00, 0x02, 0x00, 0x00, 0x08, 0x16, 0x28, 0x20, 0x00, 0x02,
- //0x0290: ..-. .... .... ( ..
- 0x00, 0x00, 0x07, 0x0b, 0x14, 0x40, 0x00, 0x02, 0x00, 0x00, 0x16, 0x16, 0x14, 0x52, 0x00, 0x02,
- //0x02a0: .... .@.. .... .R..
- 0x00, 0x00, 0x1b, 0x0b, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x14, 0x00, 0x1e, 0x00, 0x00, 0x02,
- //0x02b0: .... .... .... ....
- 0x00, 0x00, 0x0e, 0x21, 0x28, 0x15, 0x00, 0x01, 0x00, 0x00, 0x1d, 0x0b, 0x0a, 0x00, 0x00, 0x01,
- //0x02c0: ...! (... .... ....
- 0x00, 0x00, 0x02, 0x16, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x19, 0x00, 0x32, 0x04, 0x00, 0x02,
- //0x02d0: .... .... .... 2...
- 0x00, 0x00, 0x32, 0x16, 0x1e, 0x79, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x00, 0x00, 0x14,
- //0x02e0: ..2. .y.. ..2. ....
- 0x00, 0x00, 0x34, 0x16, 0x1e, 0xc0, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xe9, 0x00, 0x02,
- //0x02f0: ..4. .... ..4. ....
- 0x00, 0x00, 0x32, 0x16, 0x28, 0x68, 0x00, 0x37, 0x00, 0x00, 0x35, 0x21, 0x00, 0x63, 0x00, 0x02,
- //0x0300: ..2. (h.7 ..5! .c..
- 0x00, 0x00, 0x32, 0x16, 0x28, 0x00, 0x00, 0x03, 0x00, 0x00, 0x32, 0x16, 0x1e, 0xa2, 0x00, 0x02,
- //0x0310: ..2. (... ..2. ....
- 0x00, 0x00, 0x34, 0x16, 0x1e, 0x39, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x00, 0x00, 0x02,
- //0x0320: ..4. .9.. ..4. ....
- 0x00, 0x00, 0x36, 0x00, 0x00, 0x48, 0x00, 0x03, 0x00, 0x00, 0x37, 0x2c, 0x00, 0x00, 0x00, 0x02,
- //0x0330: ..6. .H.. ..7, ....
- 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x02, 0x00, 0x02,
- //0x0340: .... .... .... ....
- 0x00, 0x00, 0x0e, 0x16, 0x00, 0x2c, 0x01, 0x01, 0x00, 0x00, 0x0a, 0x16, 0x1e, 0xae, 0x00, 0x00,
- //0x0350: .... .,.. .... ....
- 0x00, 0x00, 0x0c, 0x16, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0b, 0x0b, 0x14, 0x00, 0x00, 0x32,
- //0x0360: .... .... .... ...2
- 0x14, 0x00, 0x0b, 0x0b, 0x1e, 0x00, 0x00, 0x32, 0x14, 0x00, 0x0b, 0x16, 0x14, 0x00, 0x00, 0x32,
- //0x0370: .... ...2 .... ...2
- 0x14, 0x00, 0x0e, 0x21, 0x28, 0x00, 0x00, 0x32, 0x14, 0x00, 0xff, 0x44, 0x52, 0x45, 0x41, 0x4d,
- //0x0380: ...! (..2 ...D REAM
- 0x57, 0x45, 0x42, 0x2e, 0x56, 0x39, 0x39, 0x00, 0x00, 0x01, 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c,
- //0x0390: WEB. V99. .... PUBL
- 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20,
- //0x03a0: IC PUBL IC
- 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f,
- //0x03b0: . ..BL ACKD RAGO
- 0x4e, 0x20, 0x52, 0x59, 0x41, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00,
- //0x03c0: N RY AN ...
- 0x48, 0x45, 0x4e, 0x44, 0x52, 0x49, 0x58, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49,
- //0x03d0: HEND RIX LOUI
- 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d,
- //0x03e0: S . ..SE PTIM
- 0x55, 0x53, 0x20, 0x20, 0x20, 0x20, 0x42, 0x45, 0x43, 0x4b, 0x45, 0x54, 0x54, 0x20, 0x20, 0x20,
- //0x03f0: US BE CKET T
- 0x20, 0x00, 0xff, 0xff, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
- //0x0400: ...
- 0x20, 0x00, 0x22, 0x52, 0x4f, 0x4f, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00,
- //0x0410: ."R OOT .
- 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x30, 0x30,
- //0x0420: " .00
- 0x30, 0x30, 0x00, 0x30, 0x30, 0x00, 0x0d, 0x0a, 0x0d, 0x0a, 0x24, 0x4f, 0x42, 0x4a, 0x45, 0x43,
- //0x0430: 00.0 0... ..$O BJEC
- 0x54, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x4f, 0x4e, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
- //0x0440: T NA ME O NE
- 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
- //0x0450:
- 0x20, 0x20, 0x20, 0x00, 0x10, 0x12, 0x12, 0x11, 0x10, 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01,
- //0x0460: . .... .... ....
- 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, 0x00,
- //0x0470: .... .... .... D:..
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x01, 0x2c, 0x00, 0x14,
+ //0x01b0: .... .... .... .,..
+ 0x00, 0x02, 0x00, 0x01, 0x01, 0x37, 0x00, 0x00, 0x00, 0x32, 0x14, 0x00, 0x18, 0x16, 0x00, 0x4a,
+ //0x01c0: .... .7.. .2.. ...J
+ 0x00, 0x01, 0x00, 0x00, 0x18, 0x21, 0x0a, 0x4b, 0x00, 0x01, 0x00, 0x01, 0x01, 0x2c, 0x00, 0x1b,
+ //0x01d0: .... .!.K .... .,..
+ 0x00, 0x02, 0x00, 0x02, 0x01, 0x2c, 0x00, 0x60, 0x00, 0x03, 0x00, 0x04, 0x01, 0x2c, 0x00, 0x76,
+ //0x01e0: .... .,.` .... .,.v
+ 0x00, 0x02, 0x00, 0x05, 0x01, 0x2c, 0x0a, 0x00, 0x00, 0x02, 0x00, 0x00, 0x05, 0x16, 0x14, 0x35,
+ //0x01f0: .... .,.. .... ...5
+ 0x00, 0x03, 0x00, 0x00, 0x05, 0x16, 0x14, 0x28, 0x00, 0x01, 0x00, 0x02, 0x05, 0x16, 0x14, 0x32,
+ //0x0200: .... ...( .... ...2
+ 0x00, 0x01, 0x00, 0x03, 0x02, 0x0b, 0x0a, 0xc0, 0x00, 0x01, 0x00, 0x00, 0x02, 0x0b, 0x0a, 0xb6,
+ //0x0210: .... .... .... ....
+ 0x00, 0x02, 0x00, 0x01, 0x08, 0x0b, 0x0a, 0x00, 0x00, 0x02, 0x00, 0x01, 0x17, 0x00, 0x32, 0x00,
+ //0x0220: .... .... .... ..2.
+ 0x00, 0x03, 0x00, 0x00, 0x1c, 0x0b, 0x14, 0xfa, 0x00, 0x04, 0x00, 0x00, 0x17, 0x00, 0x32, 0x2b,
+ //0x0230: .... .... .... ..2+
+ 0x00, 0x02, 0x00, 0x08, 0x17, 0x0b, 0x28, 0x82, 0x00, 0x02, 0x00, 0x01, 0x17, 0x16, 0x28, 0x7a,
+ //0x0240: .... ..(. .... ..(z
+ 0x00, 0x02, 0x00, 0x02, 0x17, 0x16, 0x28, 0x69, 0x00, 0x02, 0x00, 0x03, 0x17, 0x16, 0x28, 0x51,
+ //0x0250: .... ..(i .... ..(Q
+ 0x00, 0x02, 0x00, 0x04, 0x17, 0x0b, 0x28, 0x87, 0x00, 0x02, 0x00, 0x05, 0x17, 0x16, 0x28, 0x91,
+ //0x0260: .... ..(. .... ..(.
+ 0x00, 0x02, 0x00, 0x06, 0x04, 0x16, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x2d, 0x16, 0x1e, 0xc8,
+ //0x0270: .... .... .... -...
+ 0x00, 0x00, 0x00, 0x14, 0x2d, 0x16, 0x1e, 0x27, 0x00, 0x02, 0x00, 0x00, 0x2d, 0x16, 0x1e, 0x19,
+ //0x0280: .... -..' .... -...
+ 0x00, 0x02, 0x00, 0x00, 0x08, 0x16, 0x28, 0x20, 0x00, 0x02, 0x00, 0x00, 0x07, 0x0b, 0x14, 0x40,
+ //0x0290: .... ..( .... ...@
+ 0x00, 0x02, 0x00, 0x00, 0x16, 0x16, 0x14, 0x52, 0x00, 0x02, 0x00, 0x00, 0x1b, 0x0b, 0x1e, 0x00,
+ //0x02a0: .... ...R .... ....
+ 0x00, 0x02, 0x00, 0x00, 0x14, 0x00, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x0e, 0x21, 0x28, 0x15,
+ //0x02b0: .... .... .... .!(.
+ 0x00, 0x01, 0x00, 0x00, 0x1d, 0x0b, 0x0a, 0x00, 0x00, 0x01, 0x00, 0x00, 0x02, 0x16, 0x00, 0x02,
+ //0x02c0: .... .... .... ....
+ 0x00, 0x02, 0x00, 0x00, 0x19, 0x00, 0x32, 0x04, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x79,
+ //0x02d0: .... ..2. .... 2..y
+ 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x00, 0x00, 0x14, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xc0,
+ //0x02e0: .... 2... .... 4...
+ 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xe9, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x28, 0x68,
+ //0x02f0: .... 4... .... 2.(h
+ 0x00, 0x37, 0x00, 0x00, 0x35, 0x21, 0x00, 0x63, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x28, 0x00,
+ //0x0300: .7.. 5!.c .... 2.(.
+ 0x00, 0x03, 0x00, 0x00, 0x32, 0x16, 0x1e, 0xa2, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x39,
+ //0x0310: .... 2... .... 4..9
+ 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x36, 0x00, 0x00, 0x48,
+ //0x0320: .... 4... .... 6..H
+ 0x00, 0x03, 0x00, 0x00, 0x37, 0x2c, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
+ //0x0330: .... 7,.. .... ....
+ 0x00, 0x1c, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x2c,
+ //0x0340: .... .... .... ...,
+ 0x01, 0x01, 0x00, 0x00, 0x0a, 0x16, 0x1e, 0xae, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x16, 0x14, 0x00,
+ //0x0350: .... .... .... ....
+ 0x00, 0x01, 0x00, 0x00, 0x0b, 0x0b, 0x14, 0x00, 0x00, 0x32, 0x14, 0x00, 0x0b, 0x0b, 0x1e, 0x00,
+ //0x0360: .... .... .2.. ....
+ 0x00, 0x32, 0x14, 0x00, 0x0b, 0x16, 0x14, 0x00, 0x00, 0x32, 0x14, 0x00, 0x0e, 0x21, 0x28, 0x00,
+ //0x0370: .2.. .... .2.. .!(.
+ 0x00, 0x32, 0x14, 0x00, 0xff, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x56, 0x39,
+ //0x0380: .2.. .DRE AMWE B.V9
+ 0x39, 0x00, 0x00, 0x01, 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20,
+ //0x0390: 9... ..PU BLIC
+ 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00,
+ //0x03a0: PU BLIC ...
+ 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f, 0x4e, 0x20, 0x52, 0x59, 0x41, 0x4e,
+ //0x03b0: BLAC KDRA GON RYAN
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x48, 0x45, 0x4e, 0x44, 0x52, 0x49,
+ //0x03c0: . ..HE NDRI
+ 0x58, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20,
+ //0x03d0: X LO UIS
+ 0x20, 0x00, 0x00, 0x00, 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d, 0x55, 0x53, 0x20, 0x20, 0x20, 0x20,
+ //0x03e0: ... SEPT IMUS
+ 0x42, 0x45, 0x43, 0x4b, 0x45, 0x54, 0x54, 0x20, 0x20, 0x20, 0x20, 0x00, 0xff, 0xff, 0x20, 0x20,
+ //0x03f0: BECK ETT . ..
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x52, 0x4f, 0x4f,
+ //0x0400: . "ROO
+ 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20,
+ //0x0410: T ."
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30, 0x00,
+ //0x0420: . 0000 .00.
+ 0x0d, 0x0a, 0x0d, 0x0a, 0x24, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x20, 0x4e, 0x41, 0x4d, 0x45,
+ //0x0430: .... $OBJ ECT NAME
+ 0x20, 0x4f, 0x4e, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
+ //0x0440: ONE
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x10, 0x12,
+ //0x0450: ...
+ 0x12, 0x11, 0x10, 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02,
+ //0x0460: .... .... .... ....
+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ //0x0470: .... ..D: .... ....
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x0480: .... .... .... ....
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x0490: .... .... .... ....
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x02,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x02, 0x04, 0x01, 0x0a, 0x09, 0x08, 0x06,
//0x04a0: .... .... .... ....
- 0x04, 0x01, 0x0a, 0x09, 0x08, 0x06, 0x0b, 0x04, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x0b, 0x04, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x04b0: .... .... .... ....
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x04c0: .... .... .... ....
@@ -4219,9 +4219,9 @@ void DreamGenContext::__start() {
//0x0510: .... .... .... ....
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//0x0520: .... .... .... ....
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00,
//0x0530: .... .... .... ....
- 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, };
+ 0x00, };
ds.assign(src, src + sizeof(src));
dreamweb();
}
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index b565b4e13a..e530a3b968 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -32,13 +32,13 @@
namespace DreamGen {
-static const uint16 offset_money1poke = 0x042e;
-static const uint16 offset_operand1 = 0x0404;
-static const uint16 offset_openchangesize = 0x0398;
-static const uint16 offset_commandline = 0x043b;
-static const uint16 offset_rootdir = 0x0412;
-static const uint16 offset_money2poke = 0x0433;
-static const uint16 offset_keys = 0x039a;
+static const uint16 offset_money2poke = 0x042d;
+static const uint16 offset_rootdir = 0x040c;
+static const uint16 offset_openchangesize = 0x0392;
+static const uint16 offset_keys = 0x0394;
+static const uint16 offset_commandline = 0x0435;
+static const uint16 offset_money1poke = 0x0428;
+static const uint16 offset_operand1 = 0x03fe;
static const uint16 kStartvars = 0;
static const uint16 kProgresspoints = 1;
static const uint16 kWatchon = 2;
@@ -272,113 +272,109 @@ static const uint16 kDumpy = 291;
static const uint16 kWalkandexam = 293;
static const uint16 kWalkexamtype = 294;
static const uint16 kWalkexamnum = 295;
-static const uint16 kCursloc = 296;
-static const uint16 kCurslocx = 298;
-static const uint16 kCurslocy = 300;
-static const uint16 kCurpos = 302;
-static const uint16 kMonadx = 304;
-static const uint16 kMonady = 306;
-static const uint16 kGotfrom = 308;
-static const uint16 kMonsource = 310;
-static const uint16 kNumtodo = 312;
-static const uint16 kTimecount = 314;
-static const uint16 kCounttotimed = 316;
-static const uint16 kTimedseg = 318;
-static const uint16 kTimedoffset = 320;
-static const uint16 kTimedy = 322;
-static const uint16 kTimedx = 323;
-static const uint16 kNeedtodumptimed = 324;
-static const uint16 kLoadingorsave = 325;
-static const uint16 kCurrentslot = 326;
-static const uint16 kCursorpos = 327;
-static const uint16 kColourpos = 328;
-static const uint16 kFadedirection = 329;
-static const uint16 kNumtofade = 330;
-static const uint16 kFadecount = 331;
-static const uint16 kAddtogreen = 332;
-static const uint16 kAddtored = 333;
-static const uint16 kAddtoblue = 334;
-static const uint16 kLastsoundreel = 335;
-static const uint16 kSpeechloaded = 337;
-static const uint16 kSpeechlength = 338;
-static const uint16 kVolume = 340;
-static const uint16 kVolumeto = 341;
-static const uint16 kVolumedirection = 342;
-static const uint16 kVolumecount = 343;
-static const uint16 kPlayblock = 344;
-static const uint16 kWongame = 345;
-static const uint16 kLasthardkey = 346;
-static const uint16 kBufferin = 347;
-static const uint16 kBufferout = 349;
-static const uint16 kExtras = 351;
-static const uint16 kWorkspace = 353;
-static const uint16 kMapstore = 355;
-static const uint16 kCharset1 = 357;
-static const uint16 kBuffers = 359;
-static const uint16 kMainsprites = 361;
-static const uint16 kBackdrop = 363;
-static const uint16 kMapdata = 365;
-static const uint16 kSounddata = 367;
-static const uint16 kSounddata2 = 369;
-static const uint16 kRecordspace = 371;
-static const uint16 kFreedat = 373;
-static const uint16 kSetdat = 375;
-static const uint16 kReel1 = 377;
-static const uint16 kReel2 = 379;
-static const uint16 kReel3 = 381;
-static const uint16 kRoomdesc = 383;
-static const uint16 kFreedesc = 385;
-static const uint16 kSetdesc = 387;
-static const uint16 kBlockdesc = 389;
-static const uint16 kSetframes = 391;
-static const uint16 kFreeframes = 393;
-static const uint16 kPeople = 395;
-static const uint16 kReels = 397;
-static const uint16 kCommandtext = 399;
-static const uint16 kPuzzletext = 401;
-static const uint16 kTraveltext = 403;
-static const uint16 kTempgraphics = 405;
-static const uint16 kTempgraphics2 = 407;
-static const uint16 kTempgraphics3 = 409;
-static const uint16 kTempsprites = 411;
-static const uint16 kTextfile1 = 413;
-static const uint16 kTextfile2 = 415;
-static const uint16 kTextfile3 = 417;
-static const uint16 kBlinkframe = 419;
-static const uint16 kBlinkcount = 420;
-static const uint16 kReasseschanges = 421;
-static const uint16 kPointerspath = 422;
-static const uint16 kManspath = 423;
-static const uint16 kPointerfirstpath = 424;
-static const uint16 kFinaldest = 425;
-static const uint16 kDestination = 426;
-static const uint16 kLinestartx = 427;
-static const uint16 kLinestarty = 429;
-static const uint16 kLineendx = 431;
-static const uint16 kLineendy = 433;
-static const uint16 kLinepointer = 435;
-static const uint16 kLinedirection = 436;
-static const uint16 kLinelength = 437;
-static const uint16 kLiftsoundcount = 438;
-static const uint16 kCh0blockstocopy = 439;
-static const uint16 kCh0playing = 441;
-static const uint16 kCh0repeat = 442;
-static const uint16 kCh1playing = 443;
-static const uint16 kCh1blockstocopy = 444;
-static const uint16 kSoundbufferwrite = 446;
-static const uint16 kCurrentsample = 448;
-static const uint16 kRoomssample = 449;
-static const uint16 kReelroutines = 450;
-static const uint16 kBasicsample = 907;
-static const uint16 kCurrentfile = 1056;
-static const uint16 kRoomscango = 1180;
-static const uint16 kRoompics = 1196;
-static const uint16 kOplist = 1211;
-static const uint16 kInputline = 1214;
-static const uint16 kPresslist = 1342;
-static const uint16 kQuitrequested = 1348;
-static const uint16 kSubtitles = 1349;
-static const uint16 kForeignrelease = 1350;
+static const uint16 kCurslocx = 296;
+static const uint16 kCurslocy = 298;
+static const uint16 kCurpos = 300;
+static const uint16 kMonadx = 302;
+static const uint16 kMonady = 304;
+static const uint16 kMonsource = 306;
+static const uint16 kNumtodo = 308;
+static const uint16 kTimecount = 310;
+static const uint16 kCounttotimed = 312;
+static const uint16 kTimedseg = 314;
+static const uint16 kTimedoffset = 316;
+static const uint16 kTimedy = 318;
+static const uint16 kTimedx = 319;
+static const uint16 kNeedtodumptimed = 320;
+static const uint16 kLoadingorsave = 321;
+static const uint16 kCurrentslot = 322;
+static const uint16 kCursorpos = 323;
+static const uint16 kColourpos = 324;
+static const uint16 kFadedirection = 325;
+static const uint16 kNumtofade = 326;
+static const uint16 kFadecount = 327;
+static const uint16 kAddtogreen = 328;
+static const uint16 kAddtored = 329;
+static const uint16 kAddtoblue = 330;
+static const uint16 kLastsoundreel = 331;
+static const uint16 kSpeechloaded = 333;
+static const uint16 kSpeechlength = 334;
+static const uint16 kVolume = 336;
+static const uint16 kVolumeto = 337;
+static const uint16 kVolumedirection = 338;
+static const uint16 kVolumecount = 339;
+static const uint16 kWongame = 340;
+static const uint16 kLasthardkey = 341;
+static const uint16 kBufferin = 342;
+static const uint16 kBufferout = 344;
+static const uint16 kExtras = 346;
+static const uint16 kWorkspace = 348;
+static const uint16 kMapstore = 350;
+static const uint16 kCharset1 = 352;
+static const uint16 kBuffers = 354;
+static const uint16 kMainsprites = 356;
+static const uint16 kBackdrop = 358;
+static const uint16 kMapdata = 360;
+static const uint16 kSounddata = 362;
+static const uint16 kSounddata2 = 364;
+static const uint16 kRecordspace = 366;
+static const uint16 kFreedat = 368;
+static const uint16 kSetdat = 370;
+static const uint16 kReel1 = 372;
+static const uint16 kReel2 = 374;
+static const uint16 kReel3 = 376;
+static const uint16 kRoomdesc = 378;
+static const uint16 kFreedesc = 380;
+static const uint16 kSetdesc = 382;
+static const uint16 kBlockdesc = 384;
+static const uint16 kSetframes = 386;
+static const uint16 kFreeframes = 388;
+static const uint16 kPeople = 390;
+static const uint16 kReels = 392;
+static const uint16 kCommandtext = 394;
+static const uint16 kPuzzletext = 396;
+static const uint16 kTraveltext = 398;
+static const uint16 kTempgraphics = 400;
+static const uint16 kTempgraphics2 = 402;
+static const uint16 kTempgraphics3 = 404;
+static const uint16 kTempsprites = 406;
+static const uint16 kTextfile1 = 408;
+static const uint16 kTextfile2 = 410;
+static const uint16 kTextfile3 = 412;
+static const uint16 kBlinkframe = 414;
+static const uint16 kBlinkcount = 415;
+static const uint16 kReasseschanges = 416;
+static const uint16 kPointerspath = 417;
+static const uint16 kManspath = 418;
+static const uint16 kPointerfirstpath = 419;
+static const uint16 kFinaldest = 420;
+static const uint16 kDestination = 421;
+static const uint16 kLinestartx = 422;
+static const uint16 kLinestarty = 424;
+static const uint16 kLineendx = 426;
+static const uint16 kLineendy = 428;
+static const uint16 kLinepointer = 430;
+static const uint16 kLinedirection = 431;
+static const uint16 kLinelength = 432;
+static const uint16 kCh0blockstocopy = 433;
+static const uint16 kCh0playing = 435;
+static const uint16 kCh0repeat = 436;
+static const uint16 kCh1playing = 437;
+static const uint16 kCh1blockstocopy = 438;
+static const uint16 kSoundbufferwrite = 440;
+static const uint16 kCurrentsample = 442;
+static const uint16 kRoomssample = 443;
+static const uint16 kReelroutines = 444;
+static const uint16 kBasicsample = 901;
+static const uint16 kCurrentfile = 1050;
+static const uint16 kRoomscango = 1174;
+static const uint16 kRoompics = 1190;
+static const uint16 kOplist = 1205;
+static const uint16 kInputline = 1208;
+static const uint16 kPresslist = 1336;
+static const uint16 kQuitrequested = 1342;
+static const uint16 kSubtitles = 1343;
+static const uint16 kForeignrelease = 1344;
static const uint16 kBlocktextdat = (0);
static const uint16 kPersonframes = (0);
static const uint16 kDebuglevel1 = (0);
@@ -417,8 +413,8 @@ static const uint16 kListofchanges = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768
static const uint16 kUndertimedtext = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4));
static const uint16 kRainlist = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30));
static const uint16 kInitialreelrouts = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64));
-static const uint16 kInitialvars = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+907-450);
-static const uint16 kLengthofbuffer = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+907-450+68-0);
+static const uint16 kInitialvars = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+901-444);
+static const uint16 kLengthofbuffer = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)+(256*30)+(6*64)+901-444+68-0);
static const uint16 kReellist = (0+(36*144));
static const uint16 kIntext = (0+(38*2));
static const uint16 kLengthofmap = (0+(66*60));
@@ -469,7 +465,7 @@ static const uint16 kKeypady = (72);
static const uint16 kZoomx = (8);
static const uint16 kInventx = (80);
static const uint16 kMenux = (80+40);
-static const uint16 kLenofreelrouts = (907-450);
+static const uint16 kLenofreelrouts = (901-444);
static const uint16 kHeaderlen = (96);