*** server/ddx/sun/sunFbs.c Mon Mar 22 19:25:35 1993 --- ../../fix/server/ddx/sun/sunFbs.c Mon May 24 10:12:39 1993 *************** *** 220,226 **** return TRUE; } ! Bool sunInitCommon (scrn, pScrn, offset, init1, init2, cr_cm, save) int scrn; ScreenPtr pScrn; off_t offset; --- 220,226 ---- return TRUE; } ! Bool sunInitCommon (scrn, pScrn, offset, init1, init2, cr_cm, save, fb_off) int scrn; ScreenPtr pScrn; off_t offset; *************** *** 229,239 **** Bool (*cr_cm)(); void (*save)(); { ! pointer fb; if (!sunScreenAllocate (pScrn)) return FALSE; ! if (!sunFbs[scrn].fb) { if ((fb = sunMemoryMap ((size_t) sunFbs[scrn].info.fb_size, offset, sunFbs[scrn].fd)) == NULL) --- 229,239 ---- Bool (*cr_cm)(); void (*save)(); { ! pointer fb = sunFbs[scrn].fb; if (!sunScreenAllocate (pScrn)) return FALSE; ! if (!fb) { if ((fb = sunMemoryMap ((size_t) sunFbs[scrn].info.fb_size, offset, sunFbs[scrn].fd)) == NULL) *************** *** 241,247 **** sunFbs[scrn].fb = fb; } /* mfbScreenInit() or cfbScreenInit() */ ! if (!(*init1)(pScrn, fb, sunFbs[scrn].info.fb_width, sunFbs[scrn].info.fb_height, monitorResolution, monitorResolution, --- 241,247 ---- sunFbs[scrn].fb = fb; } /* mfbScreenInit() or cfbScreenInit() */ ! if (!(*init1)(pScrn, fb + fb_off, sunFbs[scrn].info.fb_width, sunFbs[scrn].info.fb_height, monitorResolution, monitorResolution, *** server/ddx/sun/sunCfb.c Mon Mar 22 19:25:35 1993 --- ../../fix/server/ddx/sun/sunCfb.c Mon Jun 7 14:20:04 1993 *************** *** 255,261 **** sunFbs[screen].EnterLeave = NoopDDA; return sunInitCommon (screen, pScreen, CG3_MMAP_OFFSET, cfbScreenInit, CGScreenInit, ! sunSaveScreen, cfbCreateDefColormap); } #ifndef i386 /* { */ --- 255,261 ---- sunFbs[screen].EnterLeave = NoopDDA; return sunInitCommon (screen, pScreen, CG3_MMAP_OFFSET, cfbScreenInit, CGScreenInit, ! sunSaveScreen, cfbCreateDefColormap, 0); } #ifndef i386 /* { */ *************** *** 292,297 **** --- 292,305 ---- regp->update_cmap = 1; } + static void CG2ScreenInit (pScreen) + ScreenPtr pScreen; + { + SetupScreen (pScreen); + CGScreenInit (pScreen); + pPrivate->UpdateColormap = CG2UpdateColormap; + } + static Bool CG2SaveScreen (pScreen, on) ScreenPtr pScreen; *************** *** 330,343 **** if (mono) { ret = sunInitCommon (screen, pScreen, 0, mfbScreenInit, 0, ! mfbCreateDefColormap, CG2SaveScreen); ((CG2Ptr) sunFbs[screen].fb)->regs.ppmask.reg = 1; pScreen->whitePixel = 0; pScreen->blackPixel = 1; } else { ret = sunInitCommon (screen, pScreen, 0, ! cfbScreenInit, CGScreenInit, ! cfbCreateDefColormap, CG2SaveScreen); ((CG2Ptr) sunFbs[screen].fb)->regs.ppmask.reg = 0xFF; pPrivate = GetScreenPrivate (pScreen); pPrivate->UpdateColormap = CG2UpdateColormap; --- 338,352 ---- if (mono) { ret = sunInitCommon (screen, pScreen, 0, mfbScreenInit, 0, ! mfbCreateDefColormap, CG2SaveScreen, 0); ((CG2Ptr) sunFbs[screen].fb)->regs.ppmask.reg = 1; pScreen->whitePixel = 0; pScreen->blackPixel = 1; } else { ret = sunInitCommon (screen, pScreen, 0, ! cfbScreenInit, CG2ScreenInit, ! cfbCreateDefColormap, CG2SaveScreen, ! (int) &((struct cg2memfb *) 0)->pixplane); ((CG2Ptr) sunFbs[screen].fb)->regs.ppmask.reg = 0xFF; pPrivate = GetScreenPrivate (pScreen); pPrivate->UpdateColormap = CG2UpdateColormap; *************** *** 383,389 **** sunSupportsDepth8 = TRUE; return sunInitCommon (screen, pScreen, 0, cfbScreenInit, CGScreenInit, ! cfbCreateDefColormap, sunSaveScreen); } #ifdef FBTYPE_SUNFAST_COLOR /* { */ --- 392,398 ---- sunSupportsDepth8 = TRUE; return sunInitCommon (screen, pScreen, 0, cfbScreenInit, CGScreenInit, ! cfbCreateDefColormap, sunSaveScreen, (int) ((CG4Ptr) 0)->cpixel); } #ifdef FBTYPE_SUNFAST_COLOR /* { */ *** server/ddx/sun/sunMfb.c Mon Mar 22 19:25:36 1993 --- ../../fix/server/ddx/sun/sunMfb.c Mon May 24 10:18:45 1993 *************** *** 94,104 **** { Bool ret; sunFbs[screen].EnterLeave = NoopDDA; - ret = sunInitCommon (screen, pScreen, 0, - mfbScreenInit, NULL, - sunSaveScreen, mfbCreateDefColormap); pScreen->whitePixel = 0; pScreen->blackPixel = 1; return ret; } --- 94,104 ---- { Bool ret; sunFbs[screen].EnterLeave = NoopDDA; pScreen->whitePixel = 0; pScreen->blackPixel = 1; + ret = sunInitCommon (screen, pScreen, 0, + mfbScreenInit, NULL, + sunSaveScreen, mfbCreateDefColormap, 0); return ret; }