diff options
| author | Filippos Karapetis | 2011-12-12 13:09:19 +0200 | 
|---|---|---|
| committer | Filippos Karapetis | 2011-12-12 13:10:07 +0200 | 
| commit | 83610d98b074d9661880167e9ab3ab23db12a181 (patch) | |
| tree | cc5dcbd8153ae062dcc65154749ecccfc4b78878 | |
| parent | 18cfbc6c2da9a55ac4ead063348e264f50924075 (diff) | |
| download | scummvm-rg350-83610d98b074d9661880167e9ab3ab23db12a181.tar.gz scummvm-rg350-83610d98b074d9661880167e9ab3ab23db12a181.tar.bz2 scummvm-rg350-83610d98b074d9661880167e9ab3ab23db12a181.zip | |
Revert "DREAMWEB: Simplify the time display code"
This reverts commit 546c6a07e4803541647ad18d69c650fdd4cf974c.
This wasn't a good idea, after all - it breaks saves and the game
time is always the real time (which is not what the original did - it
only synced the game time with the real time at the beginning)
| -rwxr-xr-x | devtools/tasmrecover/tasm-recover | 3 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.cpp | 266 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.h | 731 | ||||
| -rw-r--r-- | engines/dreamweb/stubs.cpp | 33 | ||||
| -rw-r--r-- | engines/dreamweb/stubs.h | 1 | 
5 files changed, 529 insertions, 505 deletions
| diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index d9d39b95c4..dac600a261 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -133,9 +133,6 @@ p = parser(skip_binary_data = [  	'currentirq',  	'gameerror',  	'howmuchalloc', -	'secondcount', -	'minutecount', -	'hourcount',  	# vgagrafx.asm  	'cityname',  	'extragraphics1', diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 21a0213980..94658a164b 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -2996,14 +2996,14 @@ void DreamGenContext::getDestInfo() {  	push(ax);  	dx = data;  	es = dx; -	si = 1284; +	si = 1287;  	_add(si, ax);  	cl = es.byte(si);  	ax = pop();  	push(cx);  	dx = data;  	es = dx; -	si = 1300; +	si = 1303;  	_add(si, ax);  	ax = pop();  } @@ -3055,7 +3055,7 @@ clearedlocations:  	bx = ax;  	dx = data;  	es = dx; -	_add(bx, 1284); +	_add(bx, 1287);  	es.byte(bx) = 0;  } @@ -3091,7 +3091,7 @@ void DreamGenContext::execCommand() {  	es = cs;  	bx = offset_comlist;  	ds = cs; -	si = 1318; +	si = 1321;  	al = ds.byte(si);  	_cmp(al, 0);  	if (!flags.z()) @@ -3184,7 +3184,7 @@ dirroot:  	si = offset_rootdir;  	_inc(si);  	es = cs; -	di = 1160; +	di = 1163;  	_inc(di);  	cx = 12;  	_movsb(cx, true); @@ -3286,7 +3286,7 @@ notyetassigned:  	push(bx);  	_add(bx, 2);  	ds = cs; -	si = 1318; +	si = 1321;  checkpass:  	_lodsw();  	ah = es.byte(bx); @@ -3357,7 +3357,7 @@ void DreamGenContext::read() {  	return;  okcom:  	es = cs; -	di = 1160; +	di = 1163;  	ax = data.word(kTextfile1);  	data.word(kMonsource) = ax;  	ds = ax; @@ -3487,7 +3487,7 @@ keyok2:  	ds = cs;  	si = offset_operand1+1;  	es = cs; -	di = 1160+1; +	di = 1163+1;  	cx = 12;  	_movsb(cx, true);  	monitorLogo(); @@ -3614,7 +3614,7 @@ void DreamGenContext::parser() {  	al = '=';  	_stosb();  	ds = cs; -	si = 1318; +	si = 1321;  notspace1:  	_lodsw();  	_cmp(al, 32); @@ -5530,7 +5530,7 @@ notalley:  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)+938-481+65-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)+941-484+68-0)/2;  	ax = 0;  	di = 0;  	_stosw(cx, true); @@ -5542,14 +5542,14 @@ 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 = 481; -	cx = (938-481); +	si = 484; +	cx = (941-484);  	_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)+938-481); +	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)+941-484);  	ds = cs;  	si = 0; -	cx = (65-0); +	cx = (68-0);  	_movsb(cx, true);  	clearChanges();  } @@ -5564,14 +5564,14 @@ 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 = 481; -	cx = (938-481); +	di = 484; +	cx = (941-484);  	_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)+938-481); +	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)+941-484);  	es = cs;  	di = 0; -	cx = (65-0); +	cx = (68-0);  	_movsb(cx, true);  	data.byte(kExpos) = 0;  	data.word(kExframepos) = 0; @@ -5582,7 +5582,7 @@ void DreamGenContext::clearChanges() {  	di = 0;  	_stosw(cx, true);  	es = cs; -	di = 1284; +	di = 1287;  	al = 1;  	_stosb(2);  	al = 0; @@ -5775,36 +5775,36 @@ searchmess:  void DreamGenContext::__start() {   	static const uint8 src[] = { -		0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x13, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0000: .... .... .... .... -		0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff,   		//0x0010: .... .... .... .... -		0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0020: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x00, 0x00, 0x00, 0xff, 0x00,   		//0x0030: .... .... .... .... -		0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x0d, 0x00, 0xb6, 0x00, 0x00, 0x00,  -		//0x0040: 0... .... .... .... +		0xff, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x0d, 0x00, 0xb6,  +		//0x0040: ...0 .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0050: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0060: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  -		//0x0070: .... h.&. .... .... +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		//0x0070: .... ...h .&.. ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0080: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0090: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x00a0: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x00b0: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x00c0: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x00,  -		//0x00d0: .... .... .... .  .  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  -		//0x00e0: .... .... .... .... +		//0x00d0: .... .... .... .... +		0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		//0x00e0:   .. .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x00f0: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  @@ -5821,125 +5821,125 @@ 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, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,   		//0x0190: .... .... .... .... -		0xff, 0xff, 0xff, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x01a0: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x01b0: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x01c0: .... .... .... .... -		0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,  +		0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x01d0: .... .... .... .... -		0x00, 0x01, 0x2c, 0x00, 0x14, 0x00, 0x02, 0x00, 0x01, 0x01, 0x37, 0x00, 0x00, 0x00, 0x32, 0x14,  -		//0x01e0: ..,. .... ..7. ..2. -		0x00, 0x18, 0x16, 0x00, 0x4a, 0x00, 0x01, 0x00, 0x00, 0x18, 0x21, 0x0a, 0x4b, 0x00, 0x01, 0x00,  -		//0x01f0: .... J... ..!. K... -		0x01, 0x01, 0x2c, 0x00, 0x1b, 0x00, 0x02, 0x00, 0x02, 0x01, 0x2c, 0x00, 0x60, 0x00, 0x03, 0x00,  -		//0x0200: ..,. .... ..,. `... -		0x04, 0x01, 0x2c, 0x00, 0x76, 0x00, 0x02, 0x00, 0x05, 0x01, 0x2c, 0x0a, 0x00, 0x00, 0x02, 0x00,  -		//0x0210: ..,. v... ..,. .... -		0x00, 0x05, 0x16, 0x14, 0x35, 0x00, 0x03, 0x00, 0x00, 0x05, 0x16, 0x14, 0x28, 0x00, 0x01, 0x00,  -		//0x0220: .... 5... .... (... -		0x02, 0x05, 0x16, 0x14, 0x32, 0x00, 0x01, 0x00, 0x03, 0x02, 0x0b, 0x0a, 0xc0, 0x00, 0x01, 0x00,  -		//0x0230: .... 2... .... .... -		0x00, 0x02, 0x0b, 0x0a, 0xb6, 0x00, 0x02, 0x00, 0x01, 0x08, 0x0b, 0x0a, 0x00, 0x00, 0x02, 0x00,  +		0x00, 0x00, 0xff, 0x00, 0x01, 0x2c, 0x00, 0x14, 0x00, 0x02, 0x00, 0x01, 0x01, 0x37, 0x00, 0x00,  +		//0x01e0: .... .,.. .... .7.. +		0x00, 0x32, 0x14, 0x00, 0x18, 0x16, 0x00, 0x4a, 0x00, 0x01, 0x00, 0x00, 0x18, 0x21, 0x0a, 0x4b,  +		//0x01f0: .2.. ...J .... .!.K +		0x00, 0x01, 0x00, 0x01, 0x01, 0x2c, 0x00, 0x1b, 0x00, 0x02, 0x00, 0x02, 0x01, 0x2c, 0x00, 0x60,  +		//0x0200: .... .,.. .... .,.` +		0x00, 0x03, 0x00, 0x04, 0x01, 0x2c, 0x00, 0x76, 0x00, 0x02, 0x00, 0x05, 0x01, 0x2c, 0x0a, 0x00,  +		//0x0210: .... .,.v .... .,.. +		0x00, 0x02, 0x00, 0x00, 0x05, 0x16, 0x14, 0x35, 0x00, 0x03, 0x00, 0x00, 0x05, 0x16, 0x14, 0x28,  +		//0x0220: .... ...5 .... ...( +		0x00, 0x01, 0x00, 0x02, 0x05, 0x16, 0x14, 0x32, 0x00, 0x01, 0x00, 0x03, 0x02, 0x0b, 0x0a, 0xc0,  +		//0x0230: .... ...2 .... .... +		0x00, 0x01, 0x00, 0x00, 0x02, 0x0b, 0x0a, 0xb6, 0x00, 0x02, 0x00, 0x01, 0x08, 0x0b, 0x0a, 0x00,   		//0x0240: .... .... .... .... -		0x01, 0x17, 0x00, 0x32, 0x00, 0x00, 0x03, 0x00, 0x00, 0x1c, 0x0b, 0x14, 0xfa, 0x00, 0x04, 0x00,  -		//0x0250: ...2 .... .... .... -		0x00, 0x17, 0x00, 0x32, 0x2b, 0x00, 0x02, 0x00, 0x08, 0x17, 0x0b, 0x28, 0x82, 0x00, 0x02, 0x00,  -		//0x0260: ...2 +... ...( .... -		0x01, 0x17, 0x16, 0x28, 0x7a, 0x00, 0x02, 0x00, 0x02, 0x17, 0x16, 0x28, 0x69, 0x00, 0x02, 0x00,  -		//0x0270: ...( z... ...( i... -		0x03, 0x17, 0x16, 0x28, 0x51, 0x00, 0x02, 0x00, 0x04, 0x17, 0x0b, 0x28, 0x87, 0x00, 0x02, 0x00,  -		//0x0280: ...( Q... ...( .... -		0x05, 0x17, 0x16, 0x28, 0x91, 0x00, 0x02, 0x00, 0x06, 0x04, 0x16, 0x1e, 0x00, 0x00, 0x02, 0x00,  -		//0x0290: ...( .... .... .... -		0x00, 0x2d, 0x16, 0x1e, 0xc8, 0x00, 0x00, 0x00, 0x14, 0x2d, 0x16, 0x1e, 0x27, 0x00, 0x02, 0x00,  -		//0x02a0: .-.. .... .-.. '... -		0x00, 0x2d, 0x16, 0x1e, 0x19, 0x00, 0x02, 0x00, 0x00, 0x08, 0x16, 0x28, 0x20, 0x00, 0x02, 0x00,  -		//0x02b0: .-.. .... ...(  ... -		0x00, 0x07, 0x0b, 0x14, 0x40, 0x00, 0x02, 0x00, 0x00, 0x16, 0x16, 0x14, 0x52, 0x00, 0x02, 0x00,  -		//0x02c0: .... @... .... R... -		0x00, 0x1b, 0x0b, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x14, 0x00, 0x1e, 0x00, 0x00, 0x02, 0x00,  +		0x00, 0x02, 0x00, 0x01, 0x17, 0x00, 0x32, 0x00, 0x00, 0x03, 0x00, 0x00, 0x1c, 0x0b, 0x14, 0xfa,  +		//0x0250: .... ..2. .... .... +		0x00, 0x04, 0x00, 0x00, 0x17, 0x00, 0x32, 0x2b, 0x00, 0x02, 0x00, 0x08, 0x17, 0x0b, 0x28, 0x82,  +		//0x0260: .... ..2+ .... ..(. +		0x00, 0x02, 0x00, 0x01, 0x17, 0x16, 0x28, 0x7a, 0x00, 0x02, 0x00, 0x02, 0x17, 0x16, 0x28, 0x69,  +		//0x0270: .... ..(z .... ..(i +		0x00, 0x02, 0x00, 0x03, 0x17, 0x16, 0x28, 0x51, 0x00, 0x02, 0x00, 0x04, 0x17, 0x0b, 0x28, 0x87,  +		//0x0280: .... ..(Q .... ..(. +		0x00, 0x02, 0x00, 0x05, 0x17, 0x16, 0x28, 0x91, 0x00, 0x02, 0x00, 0x06, 0x04, 0x16, 0x1e, 0x00,  +		//0x0290: .... ..(. .... .... +		0x00, 0x02, 0x00, 0x00, 0x2d, 0x16, 0x1e, 0xc8, 0x00, 0x00, 0x00, 0x14, 0x2d, 0x16, 0x1e, 0x27,  +		//0x02a0: .... -... .... -..' +		0x00, 0x02, 0x00, 0x00, 0x2d, 0x16, 0x1e, 0x19, 0x00, 0x02, 0x00, 0x00, 0x08, 0x16, 0x28, 0x20,  +		//0x02b0: .... -... .... ..(  +		0x00, 0x02, 0x00, 0x00, 0x07, 0x0b, 0x14, 0x40, 0x00, 0x02, 0x00, 0x00, 0x16, 0x16, 0x14, 0x52,  +		//0x02c0: .... ...@ .... ...R +		0x00, 0x02, 0x00, 0x00, 0x1b, 0x0b, 0x1e, 0x00, 0x00, 0x02, 0x00, 0x00, 0x14, 0x00, 0x1e, 0x00,   		//0x02d0: .... .... .... .... -		0x00, 0x0e, 0x21, 0x28, 0x15, 0x00, 0x01, 0x00, 0x00, 0x1d, 0x0b, 0x0a, 0x00, 0x00, 0x01, 0x00,  -		//0x02e0: ..!( .... .... .... -		0x00, 0x02, 0x16, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x19, 0x00, 0x32, 0x04, 0x00, 0x02, 0x00,  -		//0x02f0: .... .... ...2 .... -		0x00, 0x32, 0x16, 0x1e, 0x79, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x00, 0x00, 0x14, 0x00,  -		//0x0300: .2.. y... .2.. .... -		0x00, 0x34, 0x16, 0x1e, 0xc0, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xe9, 0x00, 0x02, 0x00,  -		//0x0310: .4.. .... .4.. .... -		0x00, 0x32, 0x16, 0x28, 0x68, 0x00, 0x37, 0x00, 0x00, 0x35, 0x21, 0x00, 0x63, 0x00, 0x02, 0x00,  -		//0x0320: .2.( h.7. .5!. c... -		0x00, 0x32, 0x16, 0x28, 0x00, 0x00, 0x03, 0x00, 0x00, 0x32, 0x16, 0x1e, 0xa2, 0x00, 0x02, 0x00,  -		//0x0330: .2.( .... .2.. .... -		0x00, 0x34, 0x16, 0x1e, 0x39, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x00, 0x00, 0x02, 0x00,  -		//0x0340: .4.. 9... .4.. .... -		0x00, 0x36, 0x00, 0x00, 0x48, 0x00, 0x03, 0x00, 0x00, 0x37, 0x2c, 0x00, 0x00, 0x00, 0x02, 0x00,  -		//0x0350: .6.. H... .7,. .... -		0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x02, 0x00, 0x02, 0x00,  +		0x00, 0x02, 0x00, 0x00, 0x0e, 0x21, 0x28, 0x15, 0x00, 0x01, 0x00, 0x00, 0x1d, 0x0b, 0x0a, 0x00,  +		//0x02e0: .... .!(. .... .... +		0x00, 0x01, 0x00, 0x00, 0x02, 0x16, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x19, 0x00, 0x32, 0x04,  +		//0x02f0: .... .... .... ..2. +		0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x79, 0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x1e, 0x00,  +		//0x0300: .... 2..y .... 2... +		0x00, 0x14, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xc0, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0xe9,  +		//0x0310: .... 4... .... 4... +		0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x28, 0x68, 0x00, 0x37, 0x00, 0x00, 0x35, 0x21, 0x00, 0x63,  +		//0x0320: .... 2.(h .7.. 5!.c +		0x00, 0x02, 0x00, 0x00, 0x32, 0x16, 0x28, 0x00, 0x00, 0x03, 0x00, 0x00, 0x32, 0x16, 0x1e, 0xa2,  +		//0x0330: .... 2.(. .... 2... +		0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x39, 0x00, 0x02, 0x00, 0x00, 0x34, 0x16, 0x1e, 0x00,  +		//0x0340: .... 4..9 .... 4... +		0x00, 0x02, 0x00, 0x00, 0x36, 0x00, 0x00, 0x48, 0x00, 0x03, 0x00, 0x00, 0x37, 0x2c, 0x00, 0x00,  +		//0x0350: .... 6..H .... 7,.. +		0x00, 0x02, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x02,   		//0x0360: .... .... .... .... -		0x00, 0x0e, 0x16, 0x00, 0x2c, 0x01, 0x01, 0x00, 0x00, 0x0a, 0x16, 0x1e, 0xae, 0x00, 0x00, 0x00,  -		//0x0370: .... ,... .... .... -		0x00, 0x0c, 0x16, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0b, 0x0b, 0x14, 0x00, 0x00, 0x32, 0x14,  -		//0x0380: .... .... .... ..2. -		0x00, 0x0b, 0x0b, 0x1e, 0x00, 0x00, 0x32, 0x14, 0x00, 0x0b, 0x16, 0x14, 0x00, 0x00, 0x32, 0x14,  -		//0x0390: .... ..2. .... ..2. -		0x00, 0x0e, 0x21, 0x28, 0x00, 0x00, 0x32, 0x14, 0x00, 0xff, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57,  -		//0x03a0: ..!( ..2. ..DR EAMW -		0x45, 0x42, 0x2e, 0x56, 0x39, 0x39, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e,  -		//0x03b0: EB.V 99.D REAM WEB. -		0x56, 0x4f, 0x4c, 0x00, 0x00, 0x01, 0x45, 0x58, 0x49, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,  -		//0x03c0: VOL. ..EX IT        -		0x48, 0x45, 0x4c, 0x50, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x49, 0x53, 0x54, 0x20, 0x20,  -		//0x03d0: HELP        LI ST   -		0x20, 0x20, 0x20, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f,  -		//0x03e0:      READ        LO -		0x47, 0x4f, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4b, 0x45, 0x59, 0x53, 0x20, 0x20, 0x20, 0x20,  -		//0x03f0: GON       KEYS      -		0x20, 0x20, 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,  -		//0x0400:   .. PUBL IC        -		0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x42, 0x4c,  -		//0x0410: PUBL IC      . ..BL -		0x41, 0x43, 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f, 0x4e, 0x20, 0x52, 0x59, 0x41, 0x4e, 0x20, 0x20,  -		//0x0420: ACKD RAGO N RY AN   -		0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x48, 0x45, 0x4e, 0x44, 0x52, 0x49, 0x58, 0x20,  -		//0x0430:       ... HEND RIX  -		0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49, 0x53, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00,  -		//0x0440:      LOUI S       . -		0x00, 0x00, 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d, 0x55, 0x53, 0x20, 0x20, 0x20, 0x20, 0x42, 0x45,  -		//0x0450: ..SE PTIM US     BE -		0x43, 0x4b, 0x45, 0x54, 0x54, 0x20, 0x20, 0x20, 0x20, 0x00, 0xff, 0xff, 0x20, 0x20, 0x20, 0x20,  -		//0x0460: CKET T     ...      -		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x52, 0x4f, 0x4f, 0x54, 0x20,  -		//0x0470:            ."R OOT  -		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,  -		//0x0480:         . "         -		0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30, 0x00, 0x0d, 0x0a,  -		//0x0490:       .00 00.0 0... -		0x0d, 0x0a, 0x24, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x20, 0x4e, 0x41, 0x4d, 0x45, 0x20, 0x4f,  -		//0x04a0: ..$O BJEC T NA ME O -		0x4e, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,  -		//0x04b0: NE                  -		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x10, 0x12, 0x12, 0x11,  -		//0x04c0:              . .... -		0x10, 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02,  +		0x00, 0x02, 0x00, 0x00, 0x0e, 0x16, 0x00, 0x2c, 0x01, 0x01, 0x00, 0x00, 0x0a, 0x16, 0x1e, 0xae,  +		//0x0370: .... ..., .... .... +		0x00, 0x00, 0x00, 0x00, 0x0c, 0x16, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x0b, 0x0b, 0x14, 0x00,  +		//0x0380: .... .... .... .... +		0x00, 0x32, 0x14, 0x00, 0x0b, 0x0b, 0x1e, 0x00, 0x00, 0x32, 0x14, 0x00, 0x0b, 0x16, 0x14, 0x00,  +		//0x0390: .2.. .... .2.. .... +		0x00, 0x32, 0x14, 0x00, 0x0e, 0x21, 0x28, 0x00, 0x00, 0x32, 0x14, 0x00, 0xff, 0x44, 0x52, 0x45,  +		//0x03a0: .2.. .!(. .2.. .DRE +		0x41, 0x4d, 0x57, 0x45, 0x42, 0x2e, 0x56, 0x39, 0x39, 0x00, 0x44, 0x52, 0x45, 0x41, 0x4d, 0x57,  +		//0x03b0: AMWE B.V9 9.DR EAMW +		0x45, 0x42, 0x2e, 0x56, 0x4f, 0x4c, 0x00, 0x00, 0x01, 0x45, 0x58, 0x49, 0x54, 0x20, 0x20, 0x20,  +		//0x03c0: EB.V OL.. .EXI T    +		0x20, 0x20, 0x20, 0x48, 0x45, 0x4c, 0x50, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x49, 0x53,  +		//0x03d0:    H ELP        LIS +		0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x52, 0x45, 0x41, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20,  +		//0x03e0: T       R EAD       +		0x20, 0x4c, 0x4f, 0x47, 0x4f, 0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4b, 0x45, 0x59, 0x53, 0x20,  +		//0x03f0:  LOG ON      K EYS  +		0x20, 0x20, 0x20, 0x20, 0x20, 0x01, 0x00, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20,  +		//0x0400:       ..P UBLI C    +		0x20, 0x20, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00,  +		//0x0410:    P UBLI C      .. +		0x00, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x44, 0x52, 0x41, 0x47, 0x4f, 0x4e, 0x20, 0x52, 0x59, 0x41,  +		//0x0420: .BLA CKDR AGON  RYA +		0x4e, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0x48, 0x45, 0x4e, 0x44, 0x52,  +		//0x0430: N         ...H ENDR +		0x49, 0x58, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4c, 0x4f, 0x55, 0x49, 0x53, 0x20, 0x20, 0x20, 0x20,  +		//0x0440: IX      L OUIS      +		0x20, 0x20, 0x00, 0x00, 0x00, 0x53, 0x45, 0x50, 0x54, 0x49, 0x4d, 0x55, 0x53, 0x20, 0x20, 0x20,  +		//0x0450:   .. .SEP TIMU S    +		0x20, 0x42, 0x45, 0x43, 0x4b, 0x45, 0x54, 0x54, 0x20, 0x20, 0x20, 0x20, 0x00, 0xff, 0xff, 0x20,  +		//0x0460:  BEC KETT      ...  +		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x52, 0x4f,  +		//0x0470:                ."RO +		0x4f, 0x54, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x22, 0x20, 0x20, 0x20, 0x20,  +		//0x0480: OT          ."      +		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x30,  +		//0x0490:           .000 0.00 +		0x00, 0x0d, 0x0a, 0x0d, 0x0a, 0x24, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x20, 0x4e, 0x41, 0x4d,  +		//0x04a0: .... .$OB JECT  NAM +		0x45, 0x20, 0x4f, 0x4e, 0x45, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,  +		//0x04b0: E ON E              +		0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x10,  +		//0x04c0:                  .. +		0x12, 0x12, 0x11, 0x10, 0x10, 0x10, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02,   		//0x04d0: .... .... .... .... -		0x02, 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  -		//0x04e0: .... D:.. .... .... +		0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x44, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		//0x04e0: .... ...D :... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x04f0: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0500: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x02, 0x04, 0x01, 0x0a, 0x09, 0x08, 0x06, 0x0b, 0x04,  +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x03, 0x02, 0x04, 0x01, 0x0a, 0x09, 0x08,   		//0x0510: .... .... .... .... -		0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,  +		0x06, 0x0b, 0x04, 0x07, 0x07, 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, 0x00, 0x00,   		//0x0530: .... .... .... .... @@ -5955,7 +5955,9 @@ void DreamGenContext::__start() {  		//0x0580: .... .... .... ....  		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   		//0x0590: .... .... .... .... -		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, }; +		0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00,  +		//0x05a0: .... .... .... .... +		0x00, 0x00, };  	ds.assign(src, src + sizeof(src));  	dreamweb();   } diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index 56f53c6efb..ef45dd5a97 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -32,370 +32,373 @@  namespace DreamGen { -static const uint16 offset_money2poke = 0x049b; -static const uint16 offset_openchangesize = 0x03c4; -static const uint16 offset_keys = 0x0402; -static const uint16 offset_money1poke = 0x0496; -static const uint16 offset_rootdir = 0x047a; -static const uint16 offset_operand1 = 0x046c; -static const uint16 offset_commandline = 0x04a3; -static const uint16 offset_comlist = 0x03c6; +static const uint16 offset_money1poke = 0x0499; +static const uint16 offset_openchangesize = 0x03c7; +static const uint16 offset_comlist = 0x03c9; +static const uint16 offset_money2poke = 0x049e; +static const uint16 offset_commandline = 0x04a6; +static const uint16 offset_rootdir = 0x047d; +static const uint16 offset_keys = 0x0405; +static const uint16 offset_operand1 = 0x046f;  static const uint16 kStartvars = 0;  static const uint16 kProgresspoints = 1;  static const uint16 kWatchon = 2;  static const uint16 kShadeson = 3; -static const uint16 kZoomon = 4; -static const uint16 kLocation = 5; -static const uint16 kExpos = 6; -static const uint16 kExframepos = 7; -static const uint16 kExtextpos = 9; -static const uint16 kCard1money = 11; -static const uint16 kListpos = 13; -static const uint16 kRyanpage = 15; -static const uint16 kWatchingtime = 16; -static const uint16 kReeltowatch = 18; -static const uint16 kEndwatchreel = 20; -static const uint16 kSpeedcount = 22; -static const uint16 kWatchspeed = 23; -static const uint16 kReeltohold = 24; -static const uint16 kEndofholdreel = 26; -static const uint16 kWatchmode = 28; -static const uint16 kDestafterhold = 29; -static const uint16 kNewsitem = 30; -static const uint16 kLiftflag = 31; -static const uint16 kLiftpath = 32; -static const uint16 kLockstatus = 33; -static const uint16 kDoorpath = 34; -static const uint16 kCounttoopen = 35; -static const uint16 kCounttoclose = 36; -static const uint16 kRockstardead = 37; -static const uint16 kGeneraldead = 38; -static const uint16 kSartaindead = 39; -static const uint16 kAidedead = 40; -static const uint16 kBeenmugged = 41; -static const uint16 kGunpassflag = 42; -static const uint16 kCanmovealtar = 43; -static const uint16 kTalkedtoattendant = 44; -static const uint16 kTalkedtosparky = 45; -static const uint16 kTalkedtoboss = 46; -static const uint16 kTalkedtorecep = 47; -static const uint16 kCardpassflag = 48; -static const uint16 kMadmanflag = 49; -static const uint16 kKeeperflag = 50; -static const uint16 kLasttrigger = 51; -static const uint16 kMandead = 52; -static const uint16 kSeed = 53; -static const uint16 kNeedtotravel = 56; -static const uint16 kThroughdoor = 57; -static const uint16 kNewobs = 58; -static const uint16 kRyanon = 59; -static const uint16 kCombatcount = 60; -static const uint16 kLastweapon = 61; -static const uint16 kDreamnumber = 62; -static const uint16 kRoomafterdream = 63; -static const uint16 kShakecounter = 64; -static const uint16 kSpeechcount = 65; -static const uint16 kCharshift = 66; -static const uint16 kKerning = 68; -static const uint16 kBrightness = 69; -static const uint16 kRoomloaded = 70; -static const uint16 kDidzoom = 71; -static const uint16 kLinespacing = 72; -static const uint16 kTextaddressx = 74; -static const uint16 kTextaddressy = 76; -static const uint16 kTextlen = 78; -static const uint16 kLastxpos = 79; -static const uint16 kIcontop = 81; -static const uint16 kIconleft = 83; -static const uint16 kItemframe = 85; -static const uint16 kItemtotran = 86; -static const uint16 kRoomad = 87; -static const uint16 kOldsubject = 89; -static const uint16 kWithobject = 91; -static const uint16 kWithtype = 92; -static const uint16 kLookcounter = 93; -static const uint16 kCommand = 95; -static const uint16 kCommandtype = 96; -static const uint16 kOldcommandtype = 97; -static const uint16 kObjecttype = 98; -static const uint16 kGetback = 99; -static const uint16 kInvopen = 100; -static const uint16 kMainmode = 101; -static const uint16 kPickup = 102; -static const uint16 kLastinvpos = 103; -static const uint16 kExamagain = 104; -static const uint16 kNewtextline = 105; -static const uint16 kOpenedob = 106; -static const uint16 kOpenedtype = 107; -static const uint16 kOldmapadx = 108; -static const uint16 kOldmapady = 110; -static const uint16 kMapadx = 112; -static const uint16 kMapady = 114; -static const uint16 kMapoffsetx = 116; -static const uint16 kMapoffsety = 118; -static const uint16 kMapxstart = 120; -static const uint16 kMapystart = 122; -static const uint16 kMapxsize = 124; -static const uint16 kMapysize = 125; -static const uint16 kHavedoneobs = 126; -static const uint16 kManisoffscreen = 127; -static const uint16 kRainspace = 128; -static const uint16 kFacing = 129; -static const uint16 kLeavedirection = 130; -static const uint16 kTurntoface = 131; -static const uint16 kTurndirection = 132; -static const uint16 kMaintimer = 133; -static const uint16 kIntrocount = 135; -static const uint16 kArrowad = 136; -static const uint16 kCurrentkey = 138; -static const uint16 kOldkey = 139; -static const uint16 kUseddirection = 140; -static const uint16 kCurrentkey2 = 141; -static const uint16 kTimercount = 142; -static const uint16 kOldtimercount = 143; -static const uint16 kMapx = 144; -static const uint16 kMapy = 145; -static const uint16 kNewscreen = 146; -static const uint16 kRyanx = 147; -static const uint16 kRyany = 148; -static const uint16 kLastflag = 149; -static const uint16 kLastflagex = 150; -static const uint16 kFlagx = 151; -static const uint16 kFlagy = 152; -static const uint16 kCurrentex = 153; -static const uint16 kCurrentfree = 154; -static const uint16 kFramesad = 155; -static const uint16 kDataad = 157; -static const uint16 kFrsegment = 159; -static const uint16 kObjectx = 161; -static const uint16 kObjecty = 163; -static const uint16 kOffsetx = 165; -static const uint16 kOffsety = 167; -static const uint16 kSavesize = 169; -static const uint16 kSavesource = 171; -static const uint16 kSavex = 173; -static const uint16 kSavey = 174; -static const uint16 kCurrentob = 175; -static const uint16 kPrioritydep = 176; -static const uint16 kDestpos = 177; -static const uint16 kReallocation = 178; -static const uint16 kRoomnum = 179; -static const uint16 kNowinnewroom = 180; -static const uint16 kResetmanxy = 181; -static const uint16 kNewlocation = 182; -static const uint16 kAutolocation = 183; -static const uint16 kMustload = 184; -static const uint16 kAnswered = 185; -static const uint16 kSaidno = 186; -static const uint16 kDoorcheck1 = 187; -static const uint16 kDoorcheck2 = 188; -static const uint16 kDoorcheck3 = 189; -static const uint16 kDoorcheck4 = 190; -static const uint16 kMousex = 191; -static const uint16 kMousey = 193; -static const uint16 kMousebutton = 195; -static const uint16 kMousebutton1 = 197; -static const uint16 kMousebutton2 = 199; -static const uint16 kMousebutton3 = 201; -static const uint16 kMousebutton4 = 203; -static const uint16 kOldbutton = 205; -static const uint16 kOldx = 207; -static const uint16 kOldy = 209; -static const uint16 kLastbutton = 211; -static const uint16 kOldpointerx = 213; -static const uint16 kOldpointery = 215; -static const uint16 kDelherex = 217; -static const uint16 kDelherey = 219; -static const uint16 kPointerxs = 221; -static const uint16 kPointerys = 222; -static const uint16 kDelxs = 223; -static const uint16 kDelys = 224; -static const uint16 kPointerframe = 225; -static const uint16 kPointerpower = 226; -static const uint16 kAuxpointerframe = 227; -static const uint16 kPointermode = 228; -static const uint16 kPointerspeed = 229; -static const uint16 kPointercount = 230; -static const uint16 kInmaparea = 231; -static const uint16 kSlotdata = 232; -static const uint16 kThisslot = 233; -static const uint16 kSlotflags = 234; -static const uint16 kTalkmode = 235; -static const uint16 kTalkpos = 236; -static const uint16 kCharacter = 237; -static const uint16 kPersondata = 238; -static const uint16 kTalknum = 240; -static const uint16 kNumberinroom = 241; -static const uint16 kCurrentcel = 242; -static const uint16 kOldselection = 243; -static const uint16 kStopwalking = 244; -static const uint16 kMouseon = 245; -static const uint16 kPlayed = 246; -static const uint16 kTimer1 = 248; -static const uint16 kTimer2 = 249; -static const uint16 kTimer3 = 250; -static const uint16 kWholetimer = 251; -static const uint16 kTimer1to = 253; -static const uint16 kTimer2to = 254; -static const uint16 kTimer3to = 255; -static const uint16 kWatchdump = 256; -static const uint16 kLogonum = 257; -static const uint16 kOldlogonum = 258; -static const uint16 kNewlogonum = 259; -static const uint16 kNetseg = 260; -static const uint16 kNetpoint = 262; -static const uint16 kKeynum = 264; -static const uint16 kCursorstate = 265; -static const uint16 kPressed = 266; -static const uint16 kPresspointer = 267; -static const uint16 kGraphicpress = 269; -static const uint16 kPresscount = 270; -static const uint16 kKeypadax = 271; -static const uint16 kKeypadcx = 273; -static const uint16 kLightcount = 275; -static const uint16 kFolderpage = 276; -static const uint16 kDiarypage = 277; -static const uint16 kMenucount = 278; -static const uint16 kSymboltopx = 279; -static const uint16 kSymboltopnum = 280; -static const uint16 kSymboltopdir = 281; -static const uint16 kSymbolbotx = 282; -static const uint16 kSymbolbotnum = 283; -static const uint16 kSymbolbotdir = 284; -static const uint16 kSymboltolight = 285; -static const uint16 kSymbol1 = 286; -static const uint16 kSymbol2 = 287; -static const uint16 kSymbol3 = 288; -static const uint16 kSymbolnum = 289; -static const uint16 kDumpx = 290; -static const uint16 kDumpy = 292; -static const uint16 kWalkandexam = 294; -static const uint16 kWalkexamtype = 295; -static const uint16 kWalkexamnum = 296; -static const uint16 kCursloc = 297; -static const uint16 kCurslocx = 299; -static const uint16 kCurslocy = 301; -static const uint16 kCurpos = 303; -static const uint16 kMonadx = 305; -static const uint16 kMonady = 307; -static const uint16 kGotfrom = 309; -static const uint16 kMonsource = 311; -static const uint16 kNumtodo = 313; -static const uint16 kTimecount = 315; -static const uint16 kCounttotimed = 317; -static const uint16 kTimedseg = 319; -static const uint16 kTimedoffset = 321; -static const uint16 kTimedy = 323; -static const uint16 kTimedx = 324; -static const uint16 kNeedtodumptimed = 325; -static const uint16 kLoadingorsave = 326; -static const uint16 kCurrentslot = 327; -static const uint16 kCursorpos = 328; -static const uint16 kColourpos = 329; -static const uint16 kFadedirection = 330; -static const uint16 kNumtofade = 331; -static const uint16 kFadecount = 332; -static const uint16 kAddtogreen = 333; -static const uint16 kAddtored = 334; -static const uint16 kAddtoblue = 335; -static const uint16 kLastsoundreel = 336; -static const uint16 kSpeechloaded = 338; -static const uint16 kSpeechlength = 339; -static const uint16 kVolume = 341; -static const uint16 kVolumeto = 342; -static const uint16 kVolumedirection = 343; -static const uint16 kVolumecount = 344; -static const uint16 kPlayblock = 345; -static const uint16 kWongame = 346; -static const uint16 kLasthardkey = 347; -static const uint16 kBufferin = 348; -static const uint16 kBufferout = 350; -static const uint16 kExtras = 352; -static const uint16 kWorkspace = 354; -static const uint16 kMapstore = 356; -static const uint16 kCharset1 = 358; -static const uint16 kBuffers = 360; -static const uint16 kMainsprites = 362; -static const uint16 kBackdrop = 364; -static const uint16 kMapdata = 366; -static const uint16 kSounddata = 368; -static const uint16 kSounddata2 = 370; -static const uint16 kRecordspace = 372; -static const uint16 kFreedat = 374; -static const uint16 kSetdat = 376; -static const uint16 kReel1 = 378; -static const uint16 kReel2 = 380; -static const uint16 kReel3 = 382; -static const uint16 kRoomdesc = 384; -static const uint16 kFreedesc = 386; -static const uint16 kSetdesc = 388; -static const uint16 kBlockdesc = 390; -static const uint16 kSetframes = 392; -static const uint16 kFreeframes = 394; -static const uint16 kPeople = 396; -static const uint16 kReels = 398; -static const uint16 kCommandtext = 400; -static const uint16 kPuzzletext = 402; -static const uint16 kTraveltext = 404; -static const uint16 kTempgraphics = 406; -static const uint16 kTempgraphics2 = 408; -static const uint16 kTempgraphics3 = 410; -static const uint16 kTempsprites = 412; -static const uint16 kTextfile1 = 414; -static const uint16 kTextfile2 = 416; -static const uint16 kTextfile3 = 418; -static const uint16 kBlinkframe = 420; -static const uint16 kBlinkcount = 421; -static const uint16 kReasseschanges = 422; -static const uint16 kPointerspath = 423; -static const uint16 kManspath = 424; -static const uint16 kPointerfirstpath = 425; -static const uint16 kFinaldest = 426; -static const uint16 kDestination = 427; -static const uint16 kLinestartx = 428; -static const uint16 kLinestarty = 430; -static const uint16 kLineendx = 432; -static const uint16 kLineendy = 434; -static const uint16 kIncrement1 = 436; -static const uint16 kIncrement2 = 438; -static const uint16 kLineroutine = 440; -static const uint16 kLinepointer = 441; -static const uint16 kLinedirection = 442; -static const uint16 kLinelength = 443; -static const uint16 kLiftsoundcount = 444; -static const uint16 kEmmhandle = 445; -static const uint16 kEmmpageframe = 447; -static const uint16 kEmmhardwarepage = 449; -static const uint16 kCh0emmpage = 450; -static const uint16 kCh0offset = 452; -static const uint16 kCh0blockstocopy = 454; -static const uint16 kCh0playing = 456; -static const uint16 kCh0repeat = 457; -static const uint16 kCh0oldemmpage = 458; -static const uint16 kCh0oldoffset = 460; -static const uint16 kCh0oldblockstocopy = 462; -static const uint16 kCh1playing = 464; -static const uint16 kCh1emmpage = 465; -static const uint16 kCh1offset = 467; -static const uint16 kCh1blockstocopy = 469; -static const uint16 kCh1blocksplayed = 471; -static const uint16 kSoundbufferwrite = 473; -static const uint16 kSoundemmpage = 475; -static const uint16 kSpeechemmpage = 477; -static const uint16 kCurrentsample = 479; -static const uint16 kRoomssample = 480; -static const uint16 kReelroutines = 481; -static const uint16 kBasicsample = 938; -static const uint16 kVolumetabname = 951; -static const uint16 kCurrentfile = 1160; -static const uint16 kRoomscango = 1284; -static const uint16 kRoompics = 1300; -static const uint16 kOplist = 1315; -static const uint16 kInputline = 1318; -static const uint16 kPresslist = 1446; -static const uint16 kQuitrequested = 1452; -static const uint16 kSubtitles = 1453; -static const uint16 kForeignrelease = 1454; +static const uint16 kSecondcount = 4; +static const uint16 kMinutecount = 5; +static const uint16 kHourcount = 6; +static const uint16 kZoomon = 7; +static const uint16 kLocation = 8; +static const uint16 kExpos = 9; +static const uint16 kExframepos = 10; +static const uint16 kExtextpos = 12; +static const uint16 kCard1money = 14; +static const uint16 kListpos = 16; +static const uint16 kRyanpage = 18; +static const uint16 kWatchingtime = 19; +static const uint16 kReeltowatch = 21; +static const uint16 kEndwatchreel = 23; +static const uint16 kSpeedcount = 25; +static const uint16 kWatchspeed = 26; +static const uint16 kReeltohold = 27; +static const uint16 kEndofholdreel = 29; +static const uint16 kWatchmode = 31; +static const uint16 kDestafterhold = 32; +static const uint16 kNewsitem = 33; +static const uint16 kLiftflag = 34; +static const uint16 kLiftpath = 35; +static const uint16 kLockstatus = 36; +static const uint16 kDoorpath = 37; +static const uint16 kCounttoopen = 38; +static const uint16 kCounttoclose = 39; +static const uint16 kRockstardead = 40; +static const uint16 kGeneraldead = 41; +static const uint16 kSartaindead = 42; +static const uint16 kAidedead = 43; +static const uint16 kBeenmugged = 44; +static const uint16 kGunpassflag = 45; +static const uint16 kCanmovealtar = 46; +static const uint16 kTalkedtoattendant = 47; +static const uint16 kTalkedtosparky = 48; +static const uint16 kTalkedtoboss = 49; +static const uint16 kTalkedtorecep = 50; +static const uint16 kCardpassflag = 51; +static const uint16 kMadmanflag = 52; +static const uint16 kKeeperflag = 53; +static const uint16 kLasttrigger = 54; +static const uint16 kMandead = 55; +static const uint16 kSeed = 56; +static const uint16 kNeedtotravel = 59; +static const uint16 kThroughdoor = 60; +static const uint16 kNewobs = 61; +static const uint16 kRyanon = 62; +static const uint16 kCombatcount = 63; +static const uint16 kLastweapon = 64; +static const uint16 kDreamnumber = 65; +static const uint16 kRoomafterdream = 66; +static const uint16 kShakecounter = 67; +static const uint16 kSpeechcount = 68; +static const uint16 kCharshift = 69; +static const uint16 kKerning = 71; +static const uint16 kBrightness = 72; +static const uint16 kRoomloaded = 73; +static const uint16 kDidzoom = 74; +static const uint16 kLinespacing = 75; +static const uint16 kTextaddressx = 77; +static const uint16 kTextaddressy = 79; +static const uint16 kTextlen = 81; +static const uint16 kLastxpos = 82; +static const uint16 kIcontop = 84; +static const uint16 kIconleft = 86; +static const uint16 kItemframe = 88; +static const uint16 kItemtotran = 89; +static const uint16 kRoomad = 90; +static const uint16 kOldsubject = 92; +static const uint16 kWithobject = 94; +static const uint16 kWithtype = 95; +static const uint16 kLookcounter = 96; +static const uint16 kCommand = 98; +static const uint16 kCommandtype = 99; +static const uint16 kOldcommandtype = 100; +static const uint16 kObjecttype = 101; +static const uint16 kGetback = 102; +static const uint16 kInvopen = 103; +static const uint16 kMainmode = 104; +static const uint16 kPickup = 105; +static const uint16 kLastinvpos = 106; +static const uint16 kExamagain = 107; +static const uint16 kNewtextline = 108; +static const uint16 kOpenedob = 109; +static const uint16 kOpenedtype = 110; +static const uint16 kOldmapadx = 111; +static const uint16 kOldmapady = 113; +static const uint16 kMapadx = 115; +static const uint16 kMapady = 117; +static const uint16 kMapoffsetx = 119; +static const uint16 kMapoffsety = 121; +static const uint16 kMapxstart = 123; +static const uint16 kMapystart = 125; +static const uint16 kMapxsize = 127; +static const uint16 kMapysize = 128; +static const uint16 kHavedoneobs = 129; +static const uint16 kManisoffscreen = 130; +static const uint16 kRainspace = 131; +static const uint16 kFacing = 132; +static const uint16 kLeavedirection = 133; +static const uint16 kTurntoface = 134; +static const uint16 kTurndirection = 135; +static const uint16 kMaintimer = 136; +static const uint16 kIntrocount = 138; +static const uint16 kArrowad = 139; +static const uint16 kCurrentkey = 141; +static const uint16 kOldkey = 142; +static const uint16 kUseddirection = 143; +static const uint16 kCurrentkey2 = 144; +static const uint16 kTimercount = 145; +static const uint16 kOldtimercount = 146; +static const uint16 kMapx = 147; +static const uint16 kMapy = 148; +static const uint16 kNewscreen = 149; +static const uint16 kRyanx = 150; +static const uint16 kRyany = 151; +static const uint16 kLastflag = 152; +static const uint16 kLastflagex = 153; +static const uint16 kFlagx = 154; +static const uint16 kFlagy = 155; +static const uint16 kCurrentex = 156; +static const uint16 kCurrentfree = 157; +static const uint16 kFramesad = 158; +static const uint16 kDataad = 160; +static const uint16 kFrsegment = 162; +static const uint16 kObjectx = 164; +static const uint16 kObjecty = 166; +static const uint16 kOffsetx = 168; +static const uint16 kOffsety = 170; +static const uint16 kSavesize = 172; +static const uint16 kSavesource = 174; +static const uint16 kSavex = 176; +static const uint16 kSavey = 177; +static const uint16 kCurrentob = 178; +static const uint16 kPrioritydep = 179; +static const uint16 kDestpos = 180; +static const uint16 kReallocation = 181; +static const uint16 kRoomnum = 182; +static const uint16 kNowinnewroom = 183; +static const uint16 kResetmanxy = 184; +static const uint16 kNewlocation = 185; +static const uint16 kAutolocation = 186; +static const uint16 kMustload = 187; +static const uint16 kAnswered = 188; +static const uint16 kSaidno = 189; +static const uint16 kDoorcheck1 = 190; +static const uint16 kDoorcheck2 = 191; +static const uint16 kDoorcheck3 = 192; +static const uint16 kDoorcheck4 = 193; +static const uint16 kMousex = 194; +static const uint16 kMousey = 196; +static const uint16 kMousebutton = 198; +static const uint16 kMousebutton1 = 200; +static const uint16 kMousebutton2 = 202; +static const uint16 kMousebutton3 = 204; +static const uint16 kMousebutton4 = 206; +static const uint16 kOldbutton = 208; +static const uint16 kOldx = 210; +static const uint16 kOldy = 212; +static const uint16 kLastbutton = 214; +static const uint16 kOldpointerx = 216; +static const uint16 kOldpointery = 218; +static const uint16 kDelherex = 220; +static const uint16 kDelherey = 222; +static const uint16 kPointerxs = 224; +static const uint16 kPointerys = 225; +static const uint16 kDelxs = 226; +static const uint16 kDelys = 227; +static const uint16 kPointerframe = 228; +static const uint16 kPointerpower = 229; +static const uint16 kAuxpointerframe = 230; +static const uint16 kPointermode = 231; +static const uint16 kPointerspeed = 232; +static const uint16 kPointercount = 233; +static const uint16 kInmaparea = 234; +static const uint16 kSlotdata = 235; +static const uint16 kThisslot = 236; +static const uint16 kSlotflags = 237; +static const uint16 kTalkmode = 238; +static const uint16 kTalkpos = 239; +static const uint16 kCharacter = 240; +static const uint16 kPersondata = 241; +static const uint16 kTalknum = 243; +static const uint16 kNumberinroom = 244; +static const uint16 kCurrentcel = 245; +static const uint16 kOldselection = 246; +static const uint16 kStopwalking = 247; +static const uint16 kMouseon = 248; +static const uint16 kPlayed = 249; +static const uint16 kTimer1 = 251; +static const uint16 kTimer2 = 252; +static const uint16 kTimer3 = 253; +static const uint16 kWholetimer = 254; +static const uint16 kTimer1to = 256; +static const uint16 kTimer2to = 257; +static const uint16 kTimer3to = 258; +static const uint16 kWatchdump = 259; +static const uint16 kLogonum = 260; +static const uint16 kOldlogonum = 261; +static const uint16 kNewlogonum = 262; +static const uint16 kNetseg = 263; +static const uint16 kNetpoint = 265; +static const uint16 kKeynum = 267; +static const uint16 kCursorstate = 268; +static const uint16 kPressed = 269; +static const uint16 kPresspointer = 270; +static const uint16 kGraphicpress = 272; +static const uint16 kPresscount = 273; +static const uint16 kKeypadax = 274; +static const uint16 kKeypadcx = 276; +static const uint16 kLightcount = 278; +static const uint16 kFolderpage = 279; +static const uint16 kDiarypage = 280; +static const uint16 kMenucount = 281; +static const uint16 kSymboltopx = 282; +static const uint16 kSymboltopnum = 283; +static const uint16 kSymboltopdir = 284; +static const uint16 kSymbolbotx = 285; +static const uint16 kSymbolbotnum = 286; +static const uint16 kSymbolbotdir = 287; +static const uint16 kSymboltolight = 288; +static const uint16 kSymbol1 = 289; +static const uint16 kSymbol2 = 290; +static const uint16 kSymbol3 = 291; +static const uint16 kSymbolnum = 292; +static const uint16 kDumpx = 293; +static const uint16 kDumpy = 295; +static const uint16 kWalkandexam = 297; +static const uint16 kWalkexamtype = 298; +static const uint16 kWalkexamnum = 299; +static const uint16 kCursloc = 300; +static const uint16 kCurslocx = 302; +static const uint16 kCurslocy = 304; +static const uint16 kCurpos = 306; +static const uint16 kMonadx = 308; +static const uint16 kMonady = 310; +static const uint16 kGotfrom = 312; +static const uint16 kMonsource = 314; +static const uint16 kNumtodo = 316; +static const uint16 kTimecount = 318; +static const uint16 kCounttotimed = 320; +static const uint16 kTimedseg = 322; +static const uint16 kTimedoffset = 324; +static const uint16 kTimedy = 326; +static const uint16 kTimedx = 327; +static const uint16 kNeedtodumptimed = 328; +static const uint16 kLoadingorsave = 329; +static const uint16 kCurrentslot = 330; +static const uint16 kCursorpos = 331; +static const uint16 kColourpos = 332; +static const uint16 kFadedirection = 333; +static const uint16 kNumtofade = 334; +static const uint16 kFadecount = 335; +static const uint16 kAddtogreen = 336; +static const uint16 kAddtored = 337; +static const uint16 kAddtoblue = 338; +static const uint16 kLastsoundreel = 339; +static const uint16 kSpeechloaded = 341; +static const uint16 kSpeechlength = 342; +static const uint16 kVolume = 344; +static const uint16 kVolumeto = 345; +static const uint16 kVolumedirection = 346; +static const uint16 kVolumecount = 347; +static const uint16 kPlayblock = 348; +static const uint16 kWongame = 349; +static const uint16 kLasthardkey = 350; +static const uint16 kBufferin = 351; +static const uint16 kBufferout = 353; +static const uint16 kExtras = 355; +static const uint16 kWorkspace = 357; +static const uint16 kMapstore = 359; +static const uint16 kCharset1 = 361; +static const uint16 kBuffers = 363; +static const uint16 kMainsprites = 365; +static const uint16 kBackdrop = 367; +static const uint16 kMapdata = 369; +static const uint16 kSounddata = 371; +static const uint16 kSounddata2 = 373; +static const uint16 kRecordspace = 375; +static const uint16 kFreedat = 377; +static const uint16 kSetdat = 379; +static const uint16 kReel1 = 381; +static const uint16 kReel2 = 383; +static const uint16 kReel3 = 385; +static const uint16 kRoomdesc = 387; +static const uint16 kFreedesc = 389; +static const uint16 kSetdesc = 391; +static const uint16 kBlockdesc = 393; +static const uint16 kSetframes = 395; +static const uint16 kFreeframes = 397; +static const uint16 kPeople = 399; +static const uint16 kReels = 401; +static const uint16 kCommandtext = 403; +static const uint16 kPuzzletext = 405; +static const uint16 kTraveltext = 407; +static const uint16 kTempgraphics = 409; +static const uint16 kTempgraphics2 = 411; +static const uint16 kTempgraphics3 = 413; +static const uint16 kTempsprites = 415; +static const uint16 kTextfile1 = 417; +static const uint16 kTextfile2 = 419; +static const uint16 kTextfile3 = 421; +static const uint16 kBlinkframe = 423; +static const uint16 kBlinkcount = 424; +static const uint16 kReasseschanges = 425; +static const uint16 kPointerspath = 426; +static const uint16 kManspath = 427; +static const uint16 kPointerfirstpath = 428; +static const uint16 kFinaldest = 429; +static const uint16 kDestination = 430; +static const uint16 kLinestartx = 431; +static const uint16 kLinestarty = 433; +static const uint16 kLineendx = 435; +static const uint16 kLineendy = 437; +static const uint16 kIncrement1 = 439; +static const uint16 kIncrement2 = 441; +static const uint16 kLineroutine = 443; +static const uint16 kLinepointer = 444; +static const uint16 kLinedirection = 445; +static const uint16 kLinelength = 446; +static const uint16 kLiftsoundcount = 447; +static const uint16 kEmmhandle = 448; +static const uint16 kEmmpageframe = 450; +static const uint16 kEmmhardwarepage = 452; +static const uint16 kCh0emmpage = 453; +static const uint16 kCh0offset = 455; +static const uint16 kCh0blockstocopy = 457; +static const uint16 kCh0playing = 459; +static const uint16 kCh0repeat = 460; +static const uint16 kCh0oldemmpage = 461; +static const uint16 kCh0oldoffset = 463; +static const uint16 kCh0oldblockstocopy = 465; +static const uint16 kCh1playing = 467; +static const uint16 kCh1emmpage = 468; +static const uint16 kCh1offset = 470; +static const uint16 kCh1blockstocopy = 472; +static const uint16 kCh1blocksplayed = 474; +static const uint16 kSoundbufferwrite = 476; +static const uint16 kSoundemmpage = 478; +static const uint16 kSpeechemmpage = 480; +static const uint16 kCurrentsample = 482; +static const uint16 kRoomssample = 483; +static const uint16 kReelroutines = 484; +static const uint16 kBasicsample = 941; +static const uint16 kVolumetabname = 954; +static const uint16 kCurrentfile = 1163; +static const uint16 kRoomscango = 1287; +static const uint16 kRoompics = 1303; +static const uint16 kOplist = 1318; +static const uint16 kInputline = 1321; +static const uint16 kPresslist = 1449; +static const uint16 kQuitrequested = 1455; +static const uint16 kSubtitles = 1456; +static const uint16 kForeignrelease = 1457;  static const uint16 kBlocktextdat = (0);  static const uint16 kPersonframes = (0);  static const uint16 kDebuglevel1 = (0); @@ -434,8 +437,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)+938-481); -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)+938-481+65-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)+941-484); +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)+941-484+68-0);  static const uint16 kReellist = (0+(36*144));  static const uint16 kIntext = (0+(38*2));  static const uint16 kLengthofmap = (0+(66*60)); @@ -477,16 +480,16 @@ static const uint16 kOpsx = (60);  static const uint16 kMaplength = (60);  static const uint16 kSymbolx = (64);  static const uint16 kSetdatlen = (64*128); -static const uint16 kLengthofvars = (65-0);  static const uint16 kMapwidth = (66);  static const uint16 kTextstart = (66*2);  static const uint16 kMaplen = (66*60);  static const uint16 kDiaryx = (68+24); +static const uint16 kLengthofvars = (68-0);  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 = (938-481); +static const uint16 kLenofreelrouts = (941-484);  static const uint16 kHeaderlen = (96); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index dd2e16e00b..226c085a2b 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -480,6 +480,7 @@ void DreamGenContext::dreamweb() {  	data.word(kOldpointerx) = 0xffff;  	fadeDOS(); +	getTime();  	clearBuffers();  	clearPalette();  	set16ColPalette(); @@ -936,6 +937,18 @@ void DreamGenContext::dumpTimedText() {  	data.byte(kNeedtodumptimed) = 0;  } +void DreamGenContext::getTime() { +	TimeDate t; +	g_system->getTimeAndDate(t); +	debug(1, "\tgettime: %02d:%02d:%02d", t.tm_hour, t.tm_min, t.tm_sec); +	ch = t.tm_hour; +	cl = t.tm_min; +	dh = t.tm_sec; +	data.byte(kSecondcount) = dh; +	data.byte(kMinutecount) = cl; +	data.byte(kHourcount) = ch; +} +  uint16 DreamGenContext::allocateMem(uint16 paragraphs) {  	uint size = (paragraphs + 2) * 16;  	debug(1, "allocate mem, %u bytes", size); @@ -2058,12 +2071,9 @@ void DreamBase::showTime() {  		return;  	Frame *charset = (Frame *)getSegment(data.word(kCharset1)).ptr(0, 0); -	TimeDate t; -	g_system->getTimeAndDate(t); - -	int seconds = t.tm_sec; -	int minutes = t.tm_min; -	int hours = t.tm_hour; +	int seconds = data.byte(kSecondcount); +	int minutes = data.byte(kMinutecount); +	int hours = data.byte(kHourcount);  	showFrame(charset, 282+5, 21, 91*3+10 + seconds / 10, 0);  	showFrame(charset, 282+9, 21, 91*3+10 + seconds % 10, 0); @@ -2086,6 +2096,17 @@ void DreamGenContext::watchCount() {  		data.byte(kWatchdump) = 1;  	} else if (data.byte(kTimercount) == 18) {  		data.byte(kTimercount) = 0; +		++data.byte(kSecondcount); +		if (data.byte(kSecondcount) == 60) { +			data.byte(kSecondcount) = 0; +			++data.byte(kMinutecount); +			if (data.byte(kMinutecount) == 60) { +				data.byte(kMinutecount) = 0; +				++data.byte(kHourcount); +				if (data.byte(kHourcount) == 24) +					data.byte(kHourcount) = 0; +			} +		}  		showTime();  		data.byte(kWatchdump) = 1;  	} diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index f4f8f96f4b..950da21574 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -528,6 +528,7 @@  	void selectLocation();  	void showGroup();  	void loadSpeech(); +	void getTime();  	void set16ColPalette();  	void examineInventory();  	void showSaveOps(); | 
