diff options
author | Paul Gilbert | 2011-07-15 22:12:56 +1000 |
---|---|---|
committer | Paul Gilbert | 2011-07-15 22:12:56 +1000 |
commit | 8c7130fdfaf6e7b6f93f158fc2399f81f2c12b71 (patch) | |
tree | 42975596f5f33badf17f2a55aa4f01e80ee4a179 /engines | |
parent | b74e1b6af026bf0420e548e7d63e11968041e9a2 (diff) | |
download | scummvm-rg350-8c7130fdfaf6e7b6f93f158fc2399f81f2c12b71.tar.gz scummvm-rg350-8c7130fdfaf6e7b6f93f158fc2399f81f2c12b71.tar.bz2 scummvm-rg350-8c7130fdfaf6e7b6f93f158fc2399f81f2c12b71.zip |
CGE: Fix display of in-game hotspot description
Diffstat (limited to 'engines')
-rw-r--r-- | engines/cge/talk.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/cge/talk.cpp b/engines/cge/talk.cpp index 146c720667..11dedf349b 100644 --- a/engines/cge/talk.cpp +++ b/engines/cge/talk.cpp @@ -309,11 +309,22 @@ void InfoLine::update(const char *tx) { uint16 size = 4 * psiz; // whole map size // clear whole rectangle + byte *pDest; + memset(v + 2, TEXT_BG, dsiz); // data bytes + for (pDest = v + lsiz; pDest < (v + psiz); pDest += lsiz) { + Common::copy(v, v + lsiz, pDest); + } + *(uint16 *)(v + psiz - 2) = EOI; // plane trailer uint16 + for (pDest = v + psiz; pDest < (v + 4 * psiz); pDest += psiz) { + Common::copy(v, v + psiz, pDest); + } + +/* memset(v + 2, TEXT_BG, dsiz); // data bytes memmove(v + lsiz, v, psiz - lsiz); *(uint16 *)(v + psiz - 2) = EOI; // plane trailer uint16 memmove(v + psiz, v, 3 * psiz); - +*/ // paint text line if (tx) { uint8 *p = v + 2, * q = p + size; |