diff -Naur microwin/src/drivers/fb.c microwin_new/src/drivers/fb.c --- microwin/src/drivers/fb.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fb.c 2005-04-27 22:34:48.000000000 +0900 @@ -22,14 +22,30 @@ select_fb_subdriver(PSD psd) { PSUBDRIVER driver = NULL; +#if defined(FRAMEBUFFER_LIN1) | defined(X11) extern SUBDRIVER fblinear1; +#endif +#if defined(FRAMEBUFFER_LIN2) | defined(X11) extern SUBDRIVER fblinear2; +#endif +#if defined(FRAMEBUFFER_LIN4) | defined(X11) extern SUBDRIVER fblinear4; +#endif +#if defined(FRAMEBUFFER_LIN8) | defined(X11) extern SUBDRIVER fblinear8; +#endif +#if defined(FRAMEBUFFER_LIN16) | defined(X11) extern SUBDRIVER fblinear16; +#endif +#if defined(FRAMEBUFFER_LIN24) | defined(X11) extern SUBDRIVER fblinear24; +#endif +#if defined(FRAMEBUFFER_LIN32) | defined(X11) extern SUBDRIVER fblinear32; +#endif +#if defined(FRAMEBUFFER_LIN32ALPHA) | defined(X11) extern SUBDRIVER fblinear32alpha; +#endif #if FBVGA extern SUBDRIVER vgaplan4; extern SUBDRIVER memplan4; @@ -46,31 +62,50 @@ /* device and memory drivers are the same for packed pixels*/ if(psd->planes == 1) { switch(psd->bpp) { +#if defined(FRAMEBUFFER_LIN1) | defined(X11) case 1: driver = &fblinear1; break; +#endif +#if defined(FRAMEBUFFER_LIN2) | defined(X11) case 2: driver = &fblinear2; break; +#endif +#if defined(FRAMEBUFFER_LIN4) | defined(X11) case 4: driver = &fblinear4; break; +#endif +#if defined(FRAMEBUFFER_LIN8) | defined(X11) case 8: driver = &fblinear8; break; +#endif +#if defined(FRAMEBUFFER_LIN16) | defined(X11) case 16: driver = &fblinear16; break; +#endif +#if defined(FRAMEBUFFER_LIN24) | defined(X11) case 24: driver = &fblinear24; break; +#endif +#if defined(FRAMEBUFFER_LIN32) | defined(FRAMEBUFFER_LIN32ALPHA) | defined(X11) case 32: +#if defined(FRAMEBUFFER_LIN32) | defined(X11) + if (psd->pixtype == MWPF_TRUECOLOR0888) { + driver = &fblinear32; + } +#endif +#if defined(FRAMEBUFFER_LIN32ALPHA) | defined(X11) if (psd->pixtype == MWPF_TRUECOLOR8888) { driver = &fblinear32alpha; - } else { - driver = &fblinear32; } +#endif break; +#endif } } diff -Naur microwin/src/drivers/fblin16.c microwin_new/src/drivers/fblin16.c --- microwin/src/drivers/fblin16.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin16.c 2005-04-27 22:27:32.000000000 +0900 @@ -19,6 +19,8 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN16) | defined(X11) + #define USE_16BIT_ACCESS 0 /* =1 to force 16 bit display access*/ #if USE_16BIT_ACCESS @@ -1342,3 +1344,4 @@ linear16_stretchblit, linear16_stretchblitex, }; +#endif diff -Naur microwin/src/drivers/fblin1.c microwin_new/src/drivers/fblin1.c --- microwin/src/drivers/fblin1.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin1.c 2005-04-27 22:26:43.000000000 +0900 @@ -11,6 +11,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN1) | defined(X11) /* This file doesn't have full drawing mode functionality using * the applyOp() macro from fb.h */ @@ -176,3 +177,4 @@ gen_fillrect, linear1_blit }; +#endif diff -Naur microwin/src/drivers/fblin1rev.c microwin_new/src/drivers/fblin1rev.c --- microwin/src/drivers/fblin1rev.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin1rev.c 2005-04-27 22:24:38.000000000 +0900 @@ -12,6 +12,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN1) static unsigned char notmask[8] = { 0x7f, 0xbf, 0xdf, 0xef, 0xf7, 0xfb, 0xfd, 0xfe}; @@ -173,3 +174,4 @@ gen_fillrect, linear1_blit }; +#endif diff -Naur microwin/src/drivers/fblin24.c microwin_new/src/drivers/fblin24.c --- microwin/src/drivers/fblin24.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin24.c 2005-04-27 22:27:44.000000000 +0900 @@ -10,6 +10,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN24) | defined(X11) /* Calc linelen and mmap size, return 0 on fail*/ static int linear24_init(PSD psd) @@ -1339,3 +1340,4 @@ linear24_stretchblit, linear24_stretchblitex, }; +#endif diff -Naur microwin/src/drivers/fblin2.c microwin_new/src/drivers/fblin2.c --- microwin/src/drivers/fblin2.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin2.c 2005-04-27 22:26:56.000000000 +0900 @@ -13,6 +13,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN2) | defined(X11) static unsigned char notmask[4] = { 0x3f, 0xcf, 0xf3, 0xfc}; /* Calc linelen and mmap size, return 0 on fail*/ @@ -173,3 +174,4 @@ gen_fillrect, linear2_blit }; +#endif diff -Naur microwin/src/drivers/fblin2rev.c microwin_new/src/drivers/fblin2rev.c --- microwin/src/drivers/fblin2rev.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin2rev.c 2005-04-27 22:24:38.000000000 +0900 @@ -12,6 +12,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN2) static unsigned char notmask[4] = { 0xfc, 0xf3, 0xcf, 0x3f }; /* Calc linelen and mmap size, return 0 on fail*/ @@ -172,3 +173,4 @@ gen_fillrect, linear2_blit }; +#endif diff -Naur microwin/src/drivers/fblin32alpha.c microwin_new/src/drivers/fblin32alpha.c --- microwin/src/drivers/fblin32alpha.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin32alpha.c 2005-04-27 22:28:04.000000000 +0900 @@ -20,6 +20,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN32ALPHA) | defined(X11) typedef unsigned long MW_U32; typedef long MW_S32; @@ -1593,3 +1594,4 @@ linear32a_stretchblit, linear32a_stretchblitex, }; +#endif diff -Naur microwin/src/drivers/fblin32.c microwin_new/src/drivers/fblin32.c --- microwin/src/drivers/fblin32.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin32.c 2005-04-27 22:27:54.000000000 +0900 @@ -12,6 +12,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN32) | defined(X11) /* Calc linelen and mmap size, return 0 on fail*/ static int linear32_init(PSD psd) @@ -1108,3 +1109,4 @@ linear32_stretchblit, linear32_stretchblitex, }; +#endif diff -Naur microwin/src/drivers/fblin4.c microwin_new/src/drivers/fblin4.c --- microwin/src/drivers/fblin4.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4.c 2005-04-27 22:27:09.000000000 +0900 @@ -16,6 +16,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) | defined(X11) #if INVERT4BPP #define INVERT(c) ((c) = (~c & 0x0f)) #else @@ -196,3 +197,4 @@ gen_fillrect, linear4_blit }; +#endif diff -Naur microwin/src/drivers/fblin4hp.c microwin_new/src/drivers/fblin4hp.c --- microwin/src/drivers/fblin4hp.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4hp.c 2005-04-27 22:24:38.000000000 +0900 @@ -13,6 +13,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) //static unsigned char notmask[2] = { 0x0f, 0xf0}; // non-linear static unsigned char notmask[2] = { 0xf0, 0x0f }; // linear static unsigned char revnotmask[2] = { 0xf0, 0x0f}; @@ -545,3 +546,4 @@ linear4_stretchblit }; #endif +#endif diff -Naur microwin/src/drivers/fblin4orion.c microwin_new/src/drivers/fblin4orion.c --- microwin/src/drivers/fblin4orion.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4orion.c 2005-04-27 22:24:38.000000000 +0900 @@ -20,6 +20,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) //#define REMAP(c) ((c) = (remap[c])) #define REMAP(c) ((c) = (~c & 0x0f)) static unsigned char remap[16] = { 15,13,11,9,7,5,3,1,14,12,10,8,6,4,2,0 }; @@ -198,3 +199,4 @@ gen_fillrect, linear4_blit }; +#endif diff -Naur microwin/src/drivers/fblin4rev.c microwin_new/src/drivers/fblin4rev.c --- microwin/src/drivers/fblin4rev.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4rev.c 2005-04-27 22:24:38.000000000 +0900 @@ -14,6 +14,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) #if INVERT4BPP #define INVERT(c) ((c) = (~c & 0x0f)) #else @@ -194,3 +195,4 @@ gen_fillrect, linear4_blit }; +#endif diff -Naur microwin/src/drivers/fblin4sa1100.c microwin_new/src/drivers/fblin4sa1100.c --- microwin/src/drivers/fblin4sa1100.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4sa1100.c 2005-04-27 22:24:38.000000000 +0900 @@ -13,6 +13,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) static unsigned short notmask[4] = { 0x0fff, 0xf0ff, 0xff0f, 0xfff0}; /* Calc linelen and mmap size, return 0 on fail*/ @@ -174,3 +175,4 @@ gen_fillrect, linear4_blit }; +#endif diff -Naur microwin/src/drivers/fblin4sh3.c microwin_new/src/drivers/fblin4sh3.c --- microwin/src/drivers/fblin4sh3.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin4sh3.c 2005-04-27 22:24:38.000000000 +0900 @@ -23,6 +23,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN4) static unsigned char notmask[2] = { 0x0f, 0xf0}; /* Calc linelen and mmap size, return 0 on fail*/ @@ -208,3 +209,4 @@ gen_fillrect, linear4_blit }; +#endif diff -Naur microwin/src/drivers/fblin8.c microwin_new/src/drivers/fblin8.c --- microwin/src/drivers/fblin8.c 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/fblin8.c 2005-04-27 22:49:57.000000000 +0900 @@ -19,6 +19,7 @@ #include "device.h" #include "fb.h" +#if defined(FRAMEBUFFER_LIN8) | defined(X11) #if ALPHABLEND /* * Alpha lookup tables for 256 color palette systems @@ -850,3 +851,4 @@ linear8_drawarea, linear8_stretchblit }; +#endif diff -Naur microwin/src/drivers/Objects.rules microwin_new/src/drivers/Objects.rules --- microwin/src/drivers/Objects.rules 2005-04-27 22:23:32.000000000 +0900 +++ microwin_new/src/drivers/Objects.rules 2005-04-27 22:46:41.000000000 +0900 @@ -21,6 +21,33 @@ endif ifeq ($(FRAMEBUFFER), Y) +ifeq ($(FRAMEBUFFER_LIN1), Y) +CFLAGS += -DFRAMEBUFFER_LIN1 +endif +ifeq ($(FRAMEBUFFER_LIN2), Y) +CFLAGS += -DFRAMEBUFFER_LIN2 +endif +ifeq ($(FRAMEBUFFER_LIN4), Y) +CFLAGS += -DFRAMEBUFFER_LIN4 +endif +ifeq ($(FRAMEBUFFER_LIN8), Y) +CFLAGS += -DFRAMEBUFFER_LIN8 +endif +ifeq ($(FRAMEBUFFER_LIN12), Y) +CFLAGS += -DFRAMEBUFFER_LIN12 +endif +ifeq ($(FRAMEBUFFER_LIN16), Y) +CFLAGS += -DFRAMEBUFFER_LIN16 +endif +ifeq ($(FRAMEBUFFER_LIN24), Y) +CFLAGS += -DFRAMEBUFFER_LIN24 +endif +ifeq ($(FRAMEBUFFER_LIN32), Y) +CFLAGS += -DFRAMEBUFFER_LIN32 +endif +ifeq ($(FRAMEBUFFER_LIN32ALPHA), Y) +CFLAGS += -DFRAMEBUFFER_LIN32ALPHA +endif MW_CORE_OBJS += \ $(MW_DIR_OBJ)/drivers/fblin8.o \ $(MW_DIR_OBJ)/drivers/fblin16.o \