Add support for Atari-style interleaved bitplanes, with 2 bytes interleave
and 4 or 8 bits per pixel.

Signed-off-by: Geert Uytterhoeven <ge...@linux-m68k.org>
---
 hw/kdrive/fbdev/fbdev.c |   19 ++++++++++++++++++-
 1 files changed, 18 insertions(+), 1 deletions(-)

diff --git a/hw/kdrive/fbdev/fbdev.c b/hw/kdrive/fbdev/fbdev.c
index 52dfbf5..40747fe 100644
--- a/hw/kdrive/fbdev/fbdev.c
+++ b/hw/kdrive/fbdev/fbdev.c
@@ -439,7 +439,24 @@ fbdevSetShadow(ScreenPtr pScreen)
         break;
 
     case FB_TYPE_INTERLEAVED_PLANES:
-        FatalError("Interleaved bitplanes are not yet supported\n");
+        if (priv->fix.type_aux == 2) {
+            switch (priv->var.bits_per_pixel) {
+            case 4:
+                update = shadowUpdateIplan2p4;
+                break;
+
+            case 8:
+                update = shadowUpdateIplan2p8;
+                break;
+
+            default:
+                FatalError("Atari interleaved bitplanes with bpp %u are not 
yet supported\n",
+                           priv->var.bits_per_pixel);
+            }
+        } else {
+            FatalError("Interleaved bitplanes with interleave %u are not yet 
supported\n",
+                       priv->fix.type_aux);
+        }
         break;
 
     case FB_TYPE_TEXT:
-- 
1.7.0.4


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/1364390451-9656-18-git-send-email-ge...@linux-m68k.org

Reply via email to