Index: uspace/srv/fb/fb.c
===================================================================
--- uspace/srv/fb/fb.c	(revision 20eb5e4d3d9057eaf8e976463ec55ff13ff5a8e3)
+++ uspace/srv/fb/fb.c	(revision 4b8f1c34c25b81932a91b8e81daa5fcd3edea446)
@@ -243,5 +243,6 @@
 rgb_byte8(void *dst, int rgb)
 {
-	*(uint8_t *)dst = RED(rgb, 3) << 5 | GREEN(rgb, 2) << 3 | BLUE(rgb, 3);
+	*(uint8_t *)dst = 255 - (RED(rgb, 3) << 5 | GREEN(rgb, 2) << 3 |
+		BLUE(rgb, 3));
 }
 
@@ -250,5 +251,5 @@
 byte8_rgb(void *src)
 {
-	int color = *(uint8_t *)src;
+	int color = 255 - (*(uint8_t *)src);
 	return (((color >> 5) & 0x7) << (16 + 5)) |
 	    (((color >> 3) & 0x3) << (8 + 6)) | ((color & 0x7) << 5);
@@ -566,5 +567,5 @@
 	}
 
-	screen.fbaddress = (unsigned char *) (((uintptr_t) addr) + offset);
+	screen.fbaddress = (unsigned char *) (((uintptr_t) addr));
 	screen.xres = xres;
 	screen.yres = yres;
