InitDisplay();
InitWindow(argc, argv);
+ print_debug("now map window");
+
XMapWindow(display, window);
XFlush(display);
+ print_debug("window mapped");
+
+ print_debug("now init gfx");
+
InitGfx();
+
+ print_debug("gfx initialized");
+
InitElementProperties();
DrawMainMenu();
void InitNetworkServer()
{
+#ifndef MSDOS
int nr_wanted;
+#endif
if (!options.network)
return;
+#ifndef MSDOS
nr_wanted = Request("Choose player", REQ_PLAYER | REQ_STAY_CLOSED);
if (!ConnectToServer(options.server_host, options.server_port))
if (nr_wanted)
SendToServer_NrWanted(nr_wanted);
+#endif
}
void InitSound()
void InitJoysticks()
{
+#ifndef MSDOS
int i;
+#endif
if (global_joystick_status == JOYSTICK_OFF)
return;
void InitDisplay()
{
+#ifndef MSDOS
XVisualInfo vinfo_template, *vinfo;
int num_visuals;
+#endif
unsigned int depth;
/* connect to X server */
depth = DefaultDepth(display, screen);
cmap = DefaultColormap(display, screen);
+#ifndef MSDOS
/* look for good enough visual */
vinfo_template.screen = screen;
vinfo_template.class = (depth == 8 ? PseudoColor : TrueColor);
printf("Sorry, cannot get appropriate visual.\n");
exit(-1);
}
+#endif
}
void InitWindow(int argc, char *argv[])
{
unsigned int border_width = 4;
+ XGCValues gc_values;
+ unsigned long gc_valuemask;
+#ifndef MSDOS
+ XTextProperty windowName, iconName;
Pixmap icon_pixmap, iconmask_pixmap;
- unsigned int icon_width,icon_height;
- int icon_hot_x,icon_hot_y;
+ unsigned int icon_width, icon_height;
+ int icon_hot_x, icon_hot_y;
char icon_filename[256];
XSizeHints size_hints;
XWMHints wm_hints;
XClassHint class_hints;
- XTextProperty windowName, iconName;
- XGCValues gc_values;
- unsigned long gc_valuemask;
char *window_name = WINDOWTITLE_STRING;
char *icon_name = WINDOWTITLE_STRING;
long window_event_mask;
Atom proto_atom = None, delete_atom = None;
+#endif
int screen_width, screen_height;
int win_xpos = WIN_XPOS, win_ypos = WIN_YPOS;
unsigned long pen_fg = WhitePixel(display,screen);
gc_values.background = pen_bg;
gc_valuemask = GCGraphicsExposures | GCForeground | GCBackground;
gc = XCreateGC(display, window, gc_valuemask, &gc_values);
+
+
+
+ print_debug("OpenWindow finished");
}
void DrawInitText(char *text, int ypos, int color)
char *picturemask_ext = "Mask.xbm";
#else
int pcx_err;
+
+#if 1
char *picture_ext = ".pcx";
+#else
+ char *picture_ext = ".gif";
+#endif
+
#endif
+
+ print_debug("now load pic:");
+
+
/* Grafik laden */
if (pic->picture_filename)
{
#else /* !USE_XPM_LIBRARY */
- pcx_err = Read_PCX_to_Pixmaps(display, window, gc, filename,
- &pix[pos], &clipmask[pos]);
+
+
+ print_debug(filename);
+
+
+
+ pcx_err = Read_PCX_to_Pixmap(display, window, gc, filename,
+ &pix[pos], &clipmask[pos]);
+
+
+ print_debug("ok-1");
+
+
switch(pcx_err)
{
case PCX_Success:
+ print_debug("Success");
break;
case PCX_OpenFailed:
+ print_debug("OpenFailed");
Error(ERR_EXIT, "cannot open PCX file '%s'", filename);
case PCX_ReadFailed:
+ print_debug("ReadFailed");
Error(ERR_EXIT, "cannot read PCX file '%s'", filename);
case PCX_FileInvalid:
+ print_debug("FileInvalid");
Error(ERR_EXIT, "invalid PCX file '%s'", filename);
case PCX_NoMemory:
+ print_debug("NoMemory");
Error(ERR_EXIT, "not enough memory for PCX file '%s'", filename);
case PCX_ColorFailed:
+ print_debug("ColorFailed");
Error(ERR_EXIT, "cannot get colors for PCX file '%s'", filename);
default:
+ print_debug("default");
break;
}
+ print_debug("ok-2");
+
#if DEBUG_TIMING
printf("SUMMARY LOADING PCX FILE %s:", filename);
debug_print_timestamp(1, "");
#endif /* !USE_XPM_LIBRARY */
+
+ print_debug("-> 1");
+
+
+
if (!pix[pos])
Error(ERR_EXIT, "cannot get graphics for '%s'", pic->picture_filename);
+
+
+ print_debug("-> 2");
}
/* zugehörige Maske laden (wenn vorhanden) */
#endif /* USE_XPM_LIBRARY */
+
+ if (!clipmask[pos])
+ print_debug("Oops -- no clipmask");
+
if (!clipmask[pos])
Error(ERR_EXIT, "cannot get clipmask for '%s'", pic->picture_filename);
}
+
+
+ print_debug("LoadGfx done");
}
void InitElementProperties()