From d4646c335a06fc91e45c690667ed109d14286af3 Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Sun, 4 Dec 2011 10:01:37 +0100 Subject: [PATCH] DREAMWEB: Move 'readKey' from dreamgen --- devtools/tasmrecover/tasm-recover | 2 ++ engines/dreamweb/dreamgen.cpp | 18 ------------------ engines/dreamweb/stubs.cpp | 17 +++++++++++++++++ 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 6c549d55a25..ded36c254bf 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -98,6 +98,7 @@ p = parser(skip_binary_data = [ 'monitorfile22', 'monitorfile23', 'monitorfile24', + 'introtextfile', ]) p.strip_path = 3 context = p.parse('dreamweb/dreamweb.asm') @@ -475,6 +476,7 @@ generator = cpp(context, "DreamGen", blacklist = [ ], skip_output = [ # These functions are processed but not output 'dreamweb', + 'readkey', ], skip_dispatch_call = True, skip_addr_constants = True, header_omit_blacklisted = True, function_name_remapping = { diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 9596090f866..26080eab419 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -11096,24 +11096,6 @@ _tmp1: multiGet(); } -void DreamGenContext::readKey() { - STACK_CHECK; - bx = data.word(kBufferout); - _cmp(bx, data.word(kBufferin)); - if (flags.z()) - goto nokey; - _inc(bx); - _and(bx, 15); - data.word(kBufferout) = bx; - di = offset_keybuffer; - _add(di, bx); - al = cs.byte(di); - data.byte(kCurrentkey) = al; - return; -nokey: - data.byte(kCurrentkey) = 0; -} - void DreamGenContext::getRidOfReels() { STACK_CHECK; _cmp(data.byte(kRoomloaded), 0); diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index f671bfdd22d..92053ca5af7 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -3056,6 +3056,23 @@ void DreamGenContext::atmospheres() { cancelCh0(); } +void DreamGenContext::readKey() { + STACK_CHECK; + bx = data.word(kBufferout); + _cmp(bx, data.word(kBufferin)); + if (flags.z()) + goto nokey; + _inc(bx); + _and(bx, 15); + data.word(kBufferout) = bx; + di = offset_keybuffer; + _add(di, bx); + al = cs.byte(di); + data.byte(kCurrentkey) = al; + return; +nokey: + data.byte(kCurrentkey) = 0; +} } /*namespace dreamgen */