]> Chaos Git - corbenik/corbenik.git/commitdiff
Fixup: screen mode for 16-bit modes
authorchaoskagami <chaos.kagami@gmail.com>
Thu, 1 Sep 2016 15:32:36 +0000 (11:32 -0400)
committerchaoskagami <chaos.kagami@gmail.com>
Thu, 1 Sep 2016 15:37:45 +0000 (11:37 -0400)
include/arm11.h
source/arm11.c

index e4c3ba352eacaa583df020c4892cae2c279092d1..08cf63a8cce96ec2811ac75d5a08a37691bf5382 100644 (file)
@@ -35,7 +35,7 @@
 #define MAKE_FRAMEBUFFER_PIXFMT(col, plx, screen) ((col & 0x7) | ((plx & 1) << 5) | ((screen & 1) << 6) | 0x80300)
 
 #define RGBA8        0
-#define BGR8         1
+#define RGB8         1
 #define RGB565_OES   2
 #define RGB5_A1_OES  3
 #define RGBA4_OES    4
index 9a447d13203a29fd99df716ecacb2d7f3be62ec2..b2c25fe9bc7b56fe65db5022912d2a67263e9deb 100644 (file)
@@ -148,9 +148,15 @@ void screen_mode(uint32_t mode) {
 
     bright = brightness[config->options[OPTION_BRIGHTNESS]];
 
-    stride = 240 * 3;
-    if (mode == RGBA8)
-        stride = 240 * 4;
+    stride = 240;
+    switch(mode) {
+        case RGB8:
+            stride *= 3;
+        case RGBA8:
+            stride *= 4;
+        default:
+            stride *= 2;
+    }
 
     init_top    = MAKE_FRAMEBUFFER_PIXFMT(mode, 0, 1);
     init_bottom = MAKE_FRAMEBUFFER_PIXFMT(mode, 0, 0);