if (!wsdisplay_init(screen, argc, argv) && !rpc_init_screen(screen, argc, argv))
if (!wsdisplay_init(screen, argc, argv)) if (!rpc_init_screen(screen, argc, argv))
int vidc_init_screen(int index, ScreenPtr screen, int argc, char **argv){	extern int defaultColorVisualClass;	private.con_fd = -1;	private.wsdisplay_fd = -1;	if (!wsdisplay_init(screen, argc, argv) &&	    !rpc_init_screen(screen, argc, argv))		FatalError("Unabled to initialize frame buffer\n");	if ((private.vram_base = mmap(0, private.width * private.yres,		PROT_READ | PROT_WRITE, MAP_FILE | MAP_SHARED, private.vram_fd,		0)) == MAP_FAILED) {		FatalError("Unable to mmap frame buffer\n");		return FALSE;	}	/* Set the palette for blackpixel and whitepixel *//*	write_palette(255, 0, 0, 0);	write_palette(0, 255, 255, 255);*/	private.colour_map = 0;	switch (private.depth) {	case 1:		DPRINTF(("mfbScreenInit\n"));		if (!mfbScreenInit(screen, (pointer) private.vram_base,		    private.xres, private.yres, SCREEN_DPI_X, SCREEN_DPI_Y,		    private.xres)) {			close(private.vram_fd);			return FALSE;		}		DPRINTF(("mfbScreenInit done\n"));		break;		case 8:		DPRINTF(("cfbScreenInit\n"));		if (!cfbScreenInit(screen, (pointer) private.vram_base,		    private.xres, private.yres, SCREEN_DPI_X, SCREEN_DPI_Y,		    private.xres)) {			close(private.vram_fd);			return FALSE;		}		DPRINTF(("cfbScreenInit done\n"));		break;	case 16:		DPRINTF(("cfb16ScreenInit\n"));		defaultColorVisualClass = TrueColor;		if (!cfb16ScreenInit(screen, (pointer) private.vram_base,		    private.xres, private.yres, SCREEN_DPI_X, SCREEN_DPI_Y,		    private.xres)) {			close(private.vram_fd);			return FALSE;		}		DPRINTF(("cfb16ScreenInit done\n"));		break;	default:		FatalError("%d bpp not supported\n", private.depth);		break;	}		screen->InstallColormap = install_colour_map;	screen->UninstallColormap = uninstall_colour_map;	screen->ListInstalledColormaps = list_installed_colour_maps;	screen->StoreColors = store_colours;	screen->SaveScreen = vidc_save_screen;	if (!miDCInitialize(screen, &vidc_mouse_funcs)) {		FatalError("Can't initialise MI pointer device context\n");		return FALSE;	}	switch (private.depth) {	case 1:		if (!mfbCreateDefColormap(screen)) {			FatalError("Can't create default colour map\n");			return FALSE;		}		break;	case 8:	case 16:		if (!cfbCreateDefColormap(screen)) {			FatalError("Can't create default colour map\n");			return FALSE;		}		break;	}	return TRUE;}