From bd3836e4095926e4587de2171a0fe3cca5db90a1 Mon Sep 17 00:00:00 2001 From: James Sanford Date: Wed, 10 Oct 2012 22:55:44 -0700 Subject: [PATCH] Try using RGB_565 bitmap. --- jni/android_driver.c | 10 +++++----- jni/video.c | 8 +++++++- src/com/froop/app/kegs/KegsView.java | 2 +- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/jni/android_driver.c b/jni/android_driver.c index b76a84b..137b6da 100644 --- a/jni/android_driver.c +++ b/jni/android_driver.c @@ -188,13 +188,13 @@ x_push_kimage(Kimage *kimage_ptr, int destx, int desty, int srcx, int srcy, int x, y; indata += (srcy * in_width) + srcx; - pixels = ((char *)pixels + (g_bitmap_info.stride * desty)) + (destx * 4); + pixels = ((char *)pixels + (g_bitmap_info.stride * desty)) + (destx * 2); for (y=0; y> g_green_right_shift; newblue = blue >> g_blue_right_shift; - +#if 1 +// jsanford TESTING FIXME +// can be even shorter, see above... + tmp = 0 + ((red & 0xF8) << (11 - 3)) + ((green & 0xFC) << (5 - 2)) + ((blue & 0xF8) >> 3); +#else + tmp = ((newred & g_red_mask) << g_red_left_shift) + ((newgreen & g_green_mask) << g_green_left_shift) + ((newblue & g_blue_mask) << g_blue_left_shift); #ifdef __ANDROID__ tmp |= 0xFF000000; // Alpha FF. +#endif #endif g_palette_8to1624[col_num] = tmp; diff --git a/src/com/froop/app/kegs/KegsView.java b/src/com/froop/app/kegs/KegsView.java index a4f6ebc..85676bf 100644 --- a/src/com/froop/app/kegs/KegsView.java +++ b/src/com/froop/app/kegs/KegsView.java @@ -45,7 +45,7 @@ class KegsView extends SurfaceView implements SurfaceHolder.Callback { mBitmap = Bitmap.createBitmap(BitmapSize.Const.A2Width, BitmapSize.Const.A2Height, - Bitmap.Config.ARGB_8888); + Bitmap.Config.RGB_565); mBitmap.setHasAlpha(false); mBitmapThread.setBitmap(surfaceHolder, mBitmap);