/* A 4x4 split class */
class SplitScreen : public GenericScreen {
private:
- unsigned char subbufs[4][SCREEN_WIDTH * SCREEN_HEIGHT * 4];
+ unsigned char *subbufs[4];
GenericScreen *subscreens[4];
bool valid;
- void downscale_2x2(unsigned char *dst, unsigned char *src);
+ void copy_subscreen(unsigned char *dst, unsigned char *src, unsigned width, unsigned height);
public:
SplitScreen(GenericScreen *s1, GenericScreen *s2, GenericScreen *s3, GenericScreen *s4);
virtual ~SplitScreen();
bool check_invalidated();
- void draw(unsigned char *buf);
+ void draw(unsigned char *buf, unsigned width, unsigned height);
};
#endif /* !defined(_SPLITSCREEN_H) */