tuxtxt: Use hw blitting with fbCopyArea() for cs hd2

This commit is contained in:
M. Liebmann
2017-02-19 23:45:12 +01:00
parent cc5a1b3b31
commit b7110faaf6

View File

@@ -5595,7 +5595,7 @@ void CopyBB2FB()
{
fb_pixel_t *src, *dst, *topsrc;
int fillcolor, i, screenwidth, swtmp;
#ifdef HAVE_SPARK_HARDWARE
#if defined(HAVE_SPARK_HARDWARE) || defined(BOXMODEL_CS_HD2)
CFrameBuffer *f = CFrameBuffer::getInstance();
#endif
@@ -5620,6 +5620,8 @@ void CopyBB2FB()
#else
#ifdef HAVE_SPARK_HARDWARE
f->blit2FB(lbb, var_screeninfo.xres, var_screeninfo.yres, 0, 0, 0, 0, true);
#elif defined BOXMODEL_CS_HD2
f->fbCopyArea(var_screeninfo.xres, var_screeninfo.yres, 0, 0, 0, var_screeninfo.yres);
#else
memcpy(lfb, lbb, fix_screeninfo.line_length*var_screeninfo.yres);
#endif
@@ -5668,12 +5670,16 @@ void CopyBB2FB()
if (screenmode == 1)
{
screenwidth = ( TV43STARTX );
#ifdef HAVE_SPARK_HARDWARE
#if defined(HAVE_SPARK_HARDWARE) || defined(BOXMODEL_CS_HD2)
int cx = var_screeninfo.xres - TV43STARTX; /* x start */
int cw = TV43STARTX; /* width */
int cy = StartY;
int ch = 24*fontheight;
#endif
#ifdef HAVE_SPARK_HARDWARE
f->blit2FB(lbb, cw, ch, cx, cy, cx, cy, true);
#elif defined BOXMODEL_CS_HD2
f->fbCopyArea(cw, ch, cx, cy, cx, cy+var_screeninfo.yres);
#else
fb_pixel_t *topdst = dst;
size_t width = (ex - screenwidth) * sizeof(fb_pixel_t);