diff options
author | Travis Howell | 2005-05-10 06:42:31 +0000 |
---|---|---|
committer | Travis Howell | 2005-05-10 06:42:31 +0000 |
commit | 4c6bcd9f5aba879a085104901c0342ead779baf0 (patch) | |
tree | 524018b25f3567b5045dcc3ec461876988059a67 /scumm | |
parent | 4506dddbe3ef4b3ab9cccbef137aafe9e36c53da (diff) | |
download | scummvm-rg350-4c6bcd9f5aba879a085104901c0342ead779baf0.tar.gz scummvm-rg350-4c6bcd9f5aba879a085104901c0342ead779baf0.tar.bz2 scummvm-rg350-4c6bcd9f5aba879a085104901c0342ead779baf0.zip |
Add code for drawPixel
svn-id: r18027
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/script_v80he.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/scumm/script_v80he.cpp b/scumm/script_v80he.cpp index 09df503cca..d219a7d474 100644 --- a/scumm/script_v80he.cpp +++ b/scumm/script_v80he.cpp @@ -718,6 +718,7 @@ void ScummEngine_v80he::drawLine(int x1, int y1, int x, int unk1, int unk2, int } void ScummEngine_v80he::drawPixel(int x, int y, int flags) { + byte *src, *dst; VirtScreen *vs; if (x < 0 || x > 639) @@ -731,16 +732,21 @@ void ScummEngine_v80he::drawPixel(int x, int y, int flags) { markRectAsDirty(vs->number, x, y, x, y + 1); - // TODO flags if (flags & 0x4000) { - - + src = vs->getPixels(x, y); + dst = vs->getBackPixels(x, y); + *dst = *src; } else if (flags & 0x2000) { - - - } else if (flags & 0x8000) { - - + src = vs->getBackPixels(x, y); + dst = vs->getPixels(x, y); + *dst = *src; + } else { + dst = vs->getPixels(x, y); + *dst = flags; + if (flags & 0x8000) { + dst = vs->getBackPixels(x, y); + *dst = flags; + } } } |