aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/video.h
diff options
context:
space:
mode:
authorSven Hesse2006-05-01 12:43:50 +0000
committerSven Hesse2006-05-01 12:43:50 +0000
commit2eabfd5f287686b7f5186af71cc199b99cf06bdd (patch)
tree28a5fe8ae89282646f7441b4eec77d964e41c81a /engines/gob/video.h
parent7b7d29067508ad8a6c8115dec10e98ae2092b5a5 (diff)
downloadscummvm-rg350-2eabfd5f287686b7f5186af71cc199b99cf06bdd.tar.gz
scummvm-rg350-2eabfd5f287686b7f5186af71cc199b99cf06bdd.tar.bz2
scummvm-rg350-2eabfd5f287686b7f5186af71cc199b99cf06bdd.zip
- More differences in Draw_v2::spriteOperation()
- GOB2 handles _frontSurface/_backSurface a bit differently, this fixes (most of) the drawing glitches in the intro - Added using a fallback when the user's game version doesn't have the requested language - off_2E51B et al. stubs, I think it has something to do with the menu svn-id: r22254
Diffstat (limited to 'engines/gob/video.h')
-rw-r--r--engines/gob/video.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/gob/video.h b/engines/gob/video.h
index 02b9090cc9..293643ed55 100644
--- a/engines/gob/video.h
+++ b/engines/gob/video.h
@@ -89,10 +89,11 @@ public:
PalDesc() : vgaPal(0), unused1(0), unused2(0) {}
};
+ bool _extraMode;
+
Video(class GobEngine *vm);
virtual ~Video() {};
int32 getRectSize(int16 width, int16 height, int16 flag, int16 mode);
- SurfaceDesc *initSurfDesc(int16 vidMode, int16 width, int16 height, int16 flags);
void freeSurfDesc(SurfaceDesc * surfDesc);
int16 clampValue(int16 val, int16 max);
void drawSprite(SurfaceDesc * source, SurfaceDesc * dest, int16 left,
@@ -113,12 +114,13 @@ public:
void initPrimary(int16 mode);
char spriteUncompressor(byte *sprBuf, int16 srcWidth, int16 srcHeight, int16 x,
int16 y, int16 transp, SurfaceDesc * destDesc);
- void waitRetrace(int16);
void freeDriver(void);
void setHandlers();
virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
int16 color1, int16 color2, int16 transp, SurfaceDesc * dest) = 0;
+ virtual SurfaceDesc *initSurfDesc(int16 vidMode, int16 width, int16 height, int16 flags) = 0;
+ virtual void waitRetrace(int16) = 0;
protected:
class VideoDriver *_videoDriver;
@@ -131,6 +133,8 @@ class Video_v1 : public Video {
public:
virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
int16 color1, int16 color2, int16 transp, SurfaceDesc * dest);
+ virtual SurfaceDesc *initSurfDesc(int16 vidMode, int16 width, int16 height, int16 flags);
+ virtual void waitRetrace(int16);
Video_v1(GobEngine *vm);
virtual ~Video_v1() {};
@@ -140,6 +144,8 @@ class Video_v2 : public Video_v1 {
public:
virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
int16 color1, int16 color2, int16 transp, SurfaceDesc * dest);
+ virtual SurfaceDesc *initSurfDesc(int16 vidMode, int16 width, int16 height, int16 flags);
+ virtual void waitRetrace(int16);
Video_v2(GobEngine *vm);
virtual ~Video_v2() {};