diff options
Diffstat (limited to 'engines/dreamweb')
-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 |
4 files changed, 12 insertions, 20 deletions
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(); |