-
-#if 0
-static void xdebug(char *msg)
-{
-#if 1
- XSync(display, False);
- printf("EM DEBUG: %s\n", msg);
-#endif
-}
-#endif
-
-int open_all(void)
-{
- char name[MAXNAME+2];
-#if 0
- void *dummyptr;
- int dummyint;
-#endif
- int i;
-
-#if 0
- display = XOpenDisplay(arg_display);
- if (display == 0)
- {
- fprintf(stderr, "%s: \"%s\": %s: %s\n", progname,
- XDisplayName(arg_display), "failed to open display",
- strerror(errno));
- return(1);
- }
-#endif
-
- defaultScreen = DefaultScreenOfDisplay(display);
- defaultVisual = DefaultVisualOfScreen(defaultScreen);
- defaultColourmap = DefaultColormapOfScreen(defaultScreen);
- defaultRootWindow = RootWindowOfScreen(defaultScreen);
- screenDepth = DefaultDepthOfScreen(defaultScreen);
- screenWidth = WidthOfScreen(defaultScreen);
- screenHeight = HeightOfScreen(defaultScreen);
- screenBlackPixel = BlackPixelOfScreen(defaultScreen);
- screenWhitePixel = WhitePixelOfScreen(defaultScreen);
-
-#if 0
- if (arg_install)
- {
- visualInfo.visualid = XVisualIDFromVisual(defaultVisual);
- dummyptr = XGetVisualInfo(display, VisualIDMask, &visualInfo, &dummyint);
- if (dummyptr == 0)
- {
- fprintf(stderr, "%s: \"%s\": %s: %s\n", progname,
- XDisplayName(arg_display), "failed to get visual info",
- strerror(errno));
- return(1);
- }
-
- memcpy(&visualInfo, dummyptr, sizeof(visualInfo));
- XFree(dummyptr);
-
- if (visualInfo.class != PseudoColor)
- {
- fprintf(stderr, "%s: \"%s\": %s\n", progname, XDisplayName(arg_display),
- "private colourmap only supported for pseudocolour display");
- return(1);
- }
-
- privateColourmap = XCreateColormap(display, defaultRootWindow,
- defaultVisual, AllocAll);
- if (privateColourmap == 0)
- {
- fprintf(stderr, "%s: \"%s\": %s: %s\n", progname,
- XDisplayName(arg_display), "failed to create colourmap",
- strerror(errno));
- return(1);
- }
-
- privateNumColours = visualInfo.colormap_size;
-
- privateColours = malloc(privateNumColours * sizeof(XColor));
- if (privateColours == 0)
- {
- fprintf(stderr, "%s: %s (%d): %s\n", progname, "malloc failed",
- privateNumColours * sizeof(XColor), strerror(errno));
- return(1);
- }
-
- for (dummyint = 0; dummyint < privateNumColours; dummyint++)
- privateColours[dummyint].pixel = dummyint;
-
- XQueryColors(display, defaultColourmap, privateColours, privateNumColours);
- XStoreColors(display, privateColourmap, privateColours, privateNumColours);
-
- privateFlags = malloc(privateNumColours);
- if (privateFlags == 0)
- {
- fprintf(stderr, "%s: %s (%d): %s\n", progname, "malloc failed",
- privateNumColours, strerror(errno));
- return(1);
- }
-
- memset(privateFlags, 0, privateNumColours);
-
- /* first two entries (black and white) are already allocated */
- privateFlags[0] = 1;
- privateFlags[1] = 1;
- }
-
- sizeHints.flags = PSize | PMinSize | PMaxSize;
- sizeHints.width = 20 * TILEX;
- sizeHints.height = 12 * TILEY + SCOREY;
- sizeHints.min_width = sizeHints.max_width = sizeHints.width;
- sizeHints.min_height = sizeHints.max_height = sizeHints.height;
-
- if (arg_geometry)
- {
- dummyint = XWMGeometry(display, XScreenNumberOfScreen(defaultScreen),
- arg_geometry, 0, 2, &sizeHints, &sizeHints.x,
- &sizeHints.y, &dummyint, &dummyint,
- &sizeHints.win_gravity);
- if (dummyint & (XValue | YValue))
- sizeHints.flags |= USPosition | PWinGravity;
- }
-
- xwindow = XCreateWindow(display, defaultRootWindow, sizeHints.x, sizeHints.y,
- sizeHints.width, sizeHints.height, 2, screenDepth,
- InputOutput, CopyFromParent, 0, 0);
- if (xwindow == 0)
- {
- fprintf(stderr, "%s: \"%s\": %s: %s\n", progname,
- XDisplayName(arg_display), "failed to open window",
- strerror(errno));
- return(1);
- }
-
- setWindowAttributes.background_pixel = screenBlackPixel;
- setWindowAttributes.border_pixel = screenWhitePixel;
- setWindowAttributes.backing_store = NotUseful;
- setWindowAttributes.override_redirect = False;
- setWindowAttributes.event_mask =
- KeyPressMask | EnterWindowMask | LeaveWindowMask | ExposureMask;
- setWindowAttributes.colormap =
- privateColourmap ? privateColourmap : defaultColourmap;
- XChangeWindowAttributes(display, xwindow,
- CWBackPixel | CWBorderPixel | CWBackingStore |
- CWOverrideRedirect | CWEventMask | CWColormap,
- &setWindowAttributes);
-
- XStoreName(display, xwindow, "Emerald Mine");
-
- wmHints.flags = InputHint | StateHint;
- wmHints.input = True;
- wmHints.initial_state = NormalState;
- XSetWMHints(display, xwindow, &wmHints);
-
- XSetWMNormalHints(display, xwindow, &sizeHints);
-
- deleteAtom = XInternAtom(display, "WM_DELETE_WINDOW", False);
- XSetWMProtocols(display, xwindow, &deleteAtom, 1);
-
- cursor = XCreateFontCursor(display, XC_trek);
- if (cursor) XDefineCursor(display, xwindow, cursor);
-
- XMapWindow(display, xwindow);
-#endif
-
-#if 0
- for (i = 0; i < 4; i++)
- {
- name[MAXNAME] = 0;
- if (arg_basedir)
- {
- snprintf(name, MAXNAME+2, "%s/%s/%s", arg_basedir, EM_GFX_DIR,
- xpmNames[i]);
- }
- else
- {
- snprintf(name, MAXNAME+2, "%s/%s", EM_GFX_DIR, xpmNames[i]);
- }
-
- if (name[MAXNAME]) snprintf_overflow("read graphics/ files");
-
- xpmAttributes[i].valuemask =
- XpmColormap | XpmReturnAllocPixels | XpmExactColors | XpmCloseness |
- XpmAllocColor | XpmFreeColors;
- xpmAttributes[i].colormap =
- privateColourmap ? privateColourmap : defaultColourmap;
- xpmAttributes[i].exactColors = False;
- xpmAttributes[i].closeness = xpmCloseness[i];
- xpmAttributes[i].alloc_color = xpmAllocColourFunc;
- xpmAttributes[i].free_colors = xpmFreeColoursFunc;
- dummyint = XpmReadFileToPixmap(display, xwindow, name, &xpmPixmaps[i],
- &xpmBitmaps[i], &xpmAttributes[i]);
- if (dummyint)
- {
- fprintf(stderr, "%s: \"%s\": \"%s\": %s: %s: %s\n", progname,
- XDisplayName(arg_display), name, "failed to read xpm",
- XpmGetErrorString(dummyint), strerror(errno));
- return(1);
- }
-
- xpmGot[i] = 1;
- }