diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 5608ecfebf54..4b7e28c270f6 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -334,6 +334,7 @@ generator = cpp(context, "DreamGen", blacklist = [ 'out22c', 'paltoendpal', 'paltostartpal', + 'panelicons1', 'paneltomap', 'parseblaster', 'personnametext', diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 685b08e30400..c72bd02a6cda 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -10867,37 +10867,6 @@ void DreamGenContext::middlePanel() { showFrame(); } -void DreamGenContext::panelIcons1() { - STACK_CHECK; - di = 0; - _cmp(data.byte(kWatchon), 1); - if (flags.z()) - goto watchison; - di = 48; -watchison: - push(di); - ds = data.word(kIcons2); - _add(di, 204); - bx = 4; - al = 2; - ah = 0; - showFrame(); - di = pop(); - push(di); - _cmp(data.byte(kZoomon), 1); - if (flags.z()) - goto zoomisoff; - ds = data.word(kIcons1); - _add(di, 228); - bx = 8; - al = 5; - ah = 0; - showFrame(); -zoomisoff: - di = pop(); - showWatch(); -} - void DreamGenContext::blank() { STACK_CHECK; _cmp(data.byte(kCommandtype), 199); diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index c053e5620485..2328c3be4d41 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -939,7 +939,6 @@ class DreamGenContext : public Context { void loadSecondSample(); void transferConToEx(); void businessMan(); - void panelIcons1(); void adjustDown(); void withWhat(); void createFile(); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index 940d26a4877b..3205ee856915 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -2813,6 +2813,18 @@ void DreamGenContext::showMan() { showFrame(icons1(), 28, 25, 2, 0); } +void DreamGenContext::panelIcons1() { + uint16 x; + if (data.byte(kWatchon) != 1) + x = 48; + else + x = 0; + showFrame(icons2(), 204 + x, 4, 2, 0); + if (data.byte(kZoomon) != 1) + showFrame(icons1(), 228 + x, 8, 5, 0); + showWatch(); +} + uint8 DreamGenContext::getLocation(uint8 index) { return data.byte(kRoomscango + index); } diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h index 54e413ff8dca..6a728d9edcc1 100644 --- a/engines/dreamweb/stubs.h +++ b/engines/dreamweb/stubs.h @@ -408,6 +408,7 @@ void showOuterPad(); void showExit(); void showMan(); + void panelIcons1(); void buttonOne(); void buttonTwo(); void buttonThree();