Index: uspace/srv/fb/Makefile
===================================================================
--- uspace/srv/fb/Makefile	(revision 198a9efff7fb5190fcd2f9a787b7239ceba755cb)
+++ uspace/srv/fb/Makefile	(revision 74bcf5ec1b12e253f7cbddcc3937d8bb13274c4c)
@@ -30,8 +30,7 @@
 #
 
--include ../../../Makefile.config
-
 LIBC_PREFIX = ../../lib/libc
 SOFTINT_PREFIX = ../../lib/softint
+
 include $(LIBC_PREFIX)/Makefile.toolchain
 
@@ -48,39 +47,41 @@
 	ppm.c
 
-ifneq ($(ARCH), ia64)
+ifneq ($(UARCH),ia64)
 	SOURCES += fb.c \
 		font-8x16.c
 	CFLAGS += -DFB_ENABLED
 endif
-ifeq ($(ARCH), ia32)
+
+ifeq ($(UARCH),ia32)
 	SOURCES += ega.c
 	CFLAGS += -DEGA_ENABLED
 endif
-ifeq ($(ARCH), ia64)
+
+ifeq ($(UARCH),ia64)
 	SOURCES += ega.c \
-		   ski.c \
-		   serial_console.c
+		ski.c \
+		serial_console.c
 	CFLAGS += -DSKI_ENABLED
 	CFLAGS += -DEGA_ENABLED
 endif
-ifeq ($(ARCH), amd64)
+
+ifeq ($(UARCH),amd64)
 	SOURCES += ega.c
 	CFLAGS += -DEGA_ENABLED
 endif
-ifeq ($(ARCH), arm32)
-	CFLAGS += -DFB_INVERT_ENDIAN
+
+ifeq ($(UARCH),mips32)
+	SOURCES += msim.c \
+		serial_console.c
+	CFLAGS += -DMSIM_ENABLED
 endif
-ifeq ($(ARCH), mips32)
-	SOURCES += msim.c \
-                   serial_console.c
-	CFLAGS += -DMSIM_ENABLED -DFB_INVERT_ENDIAN
-endif
-ifeq ($(ARCH), sparc64)
+
+ifeq ($(UARCH),sparc64)
 	SOURCES += sgcn.c \
-	           serial_console.c
+		serial_console.c
 	CFLAGS += -DSGCN_ENABLED
 endif
 
-CFLAGS += -D$(ARCH)
+CFLAGS += -D$(UARCH)
 
 
@@ -100,5 +101,5 @@
 
 $(OUTPUT): $(OBJECTS) $(LIBS)
-	$(LD) -T $(LIBC_PREFIX)/arch/$(ARCH)/_link.ld $(OBJECTS) $(LIBS) $(LFLAGS) -o $@ -Map $(OUTPUT).map
+	$(LD) -T $(LIBC_PREFIX)/arch/$(UARCH)/_link.ld $(OBJECTS) $(LIBS) $(LFLAGS) -o $@ -Map $(OUTPUT).map
 
 disasm: $(OUTPUT).disasm
Index: uspace/srv/fb/fb.c
===================================================================
--- uspace/srv/fb/fb.c	(revision 198a9efff7fb5190fcd2f9a787b7239ceba755cb)
+++ uspace/srv/fb/fb.c	(revision 74bcf5ec1b12e253f7cbddcc3937d8bb13274c4c)
@@ -237,18 +237,23 @@
 
 
+/** RGB 8:8:8 conversion
+ *
+ */
+static void rgb_888(void *dst, uint32_t rgb)
+{
+	((uint8_t *) dst)[0] = BLUE(rgb, 8);
+	((uint8_t *) dst)[1] = GREEN(rgb, 8);
+	((uint8_t *) dst)[2] = RED(rgb, 8);
+}
+
+
 /** BGR 8:8:8 conversion
  *
  */
-static void rgb_888(void *dst, uint32_t rgb)
-{
-#if defined(FB_INVERT_ENDIAN)
+static void bgr_888(void *dst, uint32_t rgb)
+{
 	((uint8_t *) dst)[0] = RED(rgb, 8);
 	((uint8_t *) dst)[1] = GREEN(rgb, 8);
 	((uint8_t *) dst)[2] = BLUE(rgb, 8);
-#else
-	((uint8_t *) dst)[0] = BLUE(rgb, 8);
-	((uint8_t *) dst)[1] = GREEN(rgb, 8);
-	((uint8_t *) dst)[2] = RED(rgb, 8);
-#endif
 }
 
@@ -596,4 +601,8 @@
 	case VISUAL_RGB_8_8_8:
 		screen.rgb_conv = rgb_888;
+		screen.pixelbytes = 3;
+		break;
+	case VISUAL_BGR_8_8_8:
+		screen.rgb_conv = bgr_888;
 		screen.pixelbytes = 3;
 		break;
