diff options
| -rwxr-xr-x | devtools/tasmrecover/tasm-recover | 1 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.cpp | 19 | ||||
| -rw-r--r-- | engines/dreamweb/dreamgen.h | 1 | ||||
| -rw-r--r-- | engines/dreamweb/keypad.cpp | 11 | ||||
| -rw-r--r-- | engines/dreamweb/stubs.h | 1 | 
5 files changed, 13 insertions, 20 deletions
| diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 2f53f11e29..99bfd218c5 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -357,6 +357,7 @@ generator = cpp(context, "DreamGen", blacklist = [  	'buttonpress',  	'credits',  	'isitright', +	'addtopresslist',  	'entercode',  	], skip_output = [  	# These functions are processed but not output diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 56d0b3dfe3..2adc016554 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -9152,25 +9152,6 @@ doqk:  	data.byte(kGetback) = 1;  } -void DreamGenContext::addToPressList() { -	STACK_CHECK; -	_cmp(data.word(kPresspointer), 5); -	if (flags.z()) -		return /* (nomorekeys) */; -	al = data.byte(kPressed); -	_cmp(al, 10); -	if (!flags.z()) -		goto not10; -	al = 0; -not10: -	bx = data.word(kPresspointer); -	dx = data; -	es = dx; -	_add(bx, 8573); -	es.byte(bx) = al; -	_inc(data.word(kPresspointer)); -} -  void DreamGenContext::showOuterPad() {  	STACK_CHECK;  	di = (36+112)-3; diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index e729f1ef99..e79e4c9830 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -931,7 +931,6 @@ public:  	void doLoad();  	void showExit();  	void useTrainer(); -	void addToPressList();  	void dumpCurrent();  	void showDiaryKeys();  	void dontLoadSeg(); diff --git a/engines/dreamweb/keypad.cpp b/engines/dreamweb/keypad.cpp index e133f1f4a7..b773d65ea9 100644 --- a/engines/dreamweb/keypad.cpp +++ b/engines/dreamweb/keypad.cpp @@ -81,6 +81,17 @@ bool DreamGenContext::isItRight(uint8 digit0, uint8 digit1, uint8 digit2, uint8  		&& digit2 == data.byte(kPresslist+2) && digit3 == data.byte(kPresslist+3);  } +void DreamGenContext::addToPressList() { +	if (data.word(kPresspointer) == 5) +		return; +	uint8 pressed = data.byte(kPressed); +	if (pressed == 10) +		pressed = 0; + +	data.byte(kPresslist + data.word(kPresspointer)) = pressed; +	++data.word(kPresspointer); +} +  void DreamGenContext::enterCode(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3) {  	RectWithCallback keypadList[] = {  		{ kKeypadx+9,kKeypadx+30,kKeypady+9,kKeypady+22,&DreamGenContext::buttonOne }, diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 346d2d1bb4..62da07d0b7 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -396,6 +396,7 @@  	void buttonNought();  	void buttonEnter();  	void buttonPress(uint8 buttonId); +	void addToPressList();  	bool isItRight(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3);  	void enterCode(uint8 digit0, uint8 digit1, uint8 digit2, uint8 digit3);  	void enterCode(); | 
