diff --git a/src/driver/fb_accel_arm.cpp b/src/driver/fb_accel_arm.cpp index f249db4d9..c664fca0f 100644 --- a/src/driver/fb_accel_arm.cpp +++ b/src/driver/fb_accel_arm.cpp @@ -460,7 +460,9 @@ void CFbAccelARM::paintRect(const int x, const int y, const int dx, const int dy if(dx <1 || dy <1 ) return; - bcm_accel_fill(fix.smem_start, screeninfo.xres, screeninfo.yres, stride,x, y, dx, dy,col); + // do not accelerate small areas + if (fix.smem_start != 0 && dx > 25 && dy > 25) + bcm_accel_fill(fix.smem_start, screeninfo.xres, screeninfo.yres, stride,x, y, dx, dy,col); int line = 0; fb_pixel_t *fbp = getFrameBufferPointer() + (swidth * y); @@ -474,6 +476,6 @@ void CFbAccelARM::paintRect(const int x, const int y, const int dx, const int dy } mark(x, y, x+dx, y+dy); - blit(); + //blit(); } #endif diff --git a/src/driver/fb_accel_mips.cpp b/src/driver/fb_accel_mips.cpp index 7abfd93d2..baa7a179b 100644 --- a/src/driver/fb_accel_mips.cpp +++ b/src/driver/fb_accel_mips.cpp @@ -461,7 +461,9 @@ void CFbAccelMIPS::paintRect(const int x, const int y, const int dx, const int d if(dx <1 || dy <1 ) return; - bcm_accel_fill(fix.smem_start, screeninfo.xres, screeninfo.yres, stride,x, y, dx, dy,col); + // do not accelerate small areas + if (fix.smem_start != 0 && dx > 25 && dy > 25) + bcm_accel_fill(fix.smem_start, screeninfo.xres, screeninfo.yres, stride,x, y, dx, dy,col); int line = 0; fb_pixel_t *fbp = getFrameBufferPointer() + (swidth * y); @@ -475,6 +477,6 @@ void CFbAccelMIPS::paintRect(const int x, const int y, const int dx, const int d } mark(x, y, x+dx, y+dy); - blit(); + //blit(); } #endif