-#else /* USE_PIXMAP */
-
-/* Draws the pacman sprite, removing the previous location. */
-static void
-draw_pacman_sprite (ModeInfo * mi)
-{
- Display *display = MI_DISPLAY (mi);
- Window window = MI_WINDOW (mi);
- pacmangamestruct *pp = &pacmangames[MI_SCREEN (mi)];
- unsigned int dir;
-
- pp->pacman.cf = pp->pacman.col * pp->xs + pp->pacman.delta.x *
- pp->pacman.cfactor + pp->xb + pp->spritedx;
- pp->pacman.rf = pp->pacman.row * pp->ys + pp->pacman.delta.y *
- pp->pacman.rfactor + pp->yb + pp->spritedy;
-
- dir = (ABS (pp->pacman.cfactor) * (2 - pp->pacman.cfactor) +
- ABS (pp->pacman.rfactor) * (1 + pp->pacman.rfactor)) % 4;
-
- XSetForeground (display, pp->stippledGC, MI_BLACK_PIXEL (mi));
- if (pp->pacman.oldcf != NOWHERE && pp->pacman.oldrf != NOWHERE) {
-#ifdef FLASH
- XFillRectangle (display, window, pp->stippledGC,
- pp->pacman.oldcf, pp->pacman.oldrf,
- pp->spritexs, pp->spriteys);
-#else
- ERASE_IMAGE (display, window, pp->stippledGC,
- pp->pacman.cf, pp->pacman.rf,
- pp->pacman.oldcf, pp->pacman.oldrf,
- pp->spritexs, pp->spriteys);
-#endif
- }
-
- XSetTSOrigin (display, pp->stippledGC, pp->pacman.cf, pp->pacman.rf);
- if (MI_NPIXELS (mi) > 2)
- XSetForeground (display, pp->stippledGC, MI_PIXEL (mi, YELLOW));
- else
- XSetForeground (display, pp->stippledGC, MI_WHITE_PIXEL (mi));
-
- XSetStipple (display, pp->stippledGC,
- pp->pacmanPixmap[dir][pp->pacman.mouthstage]);
-#ifdef FLASH
- XSetFillStyle (display, pp->stippledGC, FillStippled);
-#else
- XSetFillStyle (display, pp->stippledGC, FillOpaqueStippled);
-#endif
- if (pp->xs < 2 || pp->ys < 2)
- XDrawPoint (display, window, pp->stippledGC,
- pp->pacman.cf, pp->pacman.rf);
- else
- XFillRectangle (display, window, pp->stippledGC,
- pp->pacman.cf, pp->pacman.rf,
- pp->spritexs, pp->spriteys);
- pp->pacman.mouthstage += pp->pacman.mouthdirection;
- if ((pp->pacman.mouthstage >= MAXMOUTH) || (pp->pacman.mouthstage < 0)) {
- pp->pacman.mouthdirection *= -1;
- pp->pacman.mouthstage += pp->pacman.mouthdirection * 2;
- }
- pp->pacman.oldcf = pp->pacman.cf;
- pp->pacman.oldrf = pp->pacman.rf;
-}
-
-/* Draws a ghost sprite, removing the previous sprite and restores the level. */
-static void
-draw_ghost_sprite (ModeInfo * mi, const unsigned ghost)
-{
- Display *display = MI_DISPLAY (mi);
- Window window = MI_WINDOW (mi);
- pacmangamestruct *pp = &pacmangames[MI_SCREEN (mi)];
-
- pp->ghosts[ghost].cf =
- pp->ghosts[ghost].col * pp->xs + pp->ghosts[ghost].delta.x *
- pp->ghosts[ghost].cfactor + pp->xb + pp->spritedx;
- pp->ghosts[ghost].rf =
- pp->ghosts[ghost].row * pp->ys + pp->ghosts[ghost].delta.y *
- pp->ghosts[ghost].rfactor + pp->yb + pp->spritedy;
-
- XSetForeground (display, pp->stippledGC, MI_BLACK_PIXEL (mi));
- XFillRectangle (display,
- window,
- pp->stippledGC,
- pp->ghosts[ghost].cf,
- pp->ghosts[ghost].rf, pp->spritexs, pp->spriteys);
-
- if (pp->ghosts[ghost].oldcf != NOWHERE ||
- pp->ghosts[ghost].oldrf != NOWHERE) {
-#ifdef FLASH
- XFillRectangle (display, window,
- pp->stippledGC, pp->ghosts[ghost].oldcf,
- pp->ghosts[ghost].oldrf, pp->spritexs, pp->spriteys);
-#else
- ERASE_IMAGE (display, window, pp->stippledGC,
- pp->ghosts[ghost].cf, pp->ghosts[ghost].rf,
- pp->ghosts[ghost].oldcf, pp->ghosts[ghost].oldrf,
- pp->spritexs, pp->spriteys);
-#endif
- }
-
- drawlevelblock (mi, pp,
- (unsigned int) pp->ghosts[ghost].col,
- (unsigned int) pp->ghosts[ghost].row);
-
- XSetTSOrigin (display, pp->stippledGC,
- pp->ghosts[ghost].cf, pp->ghosts[ghost].rf);
-
- if (MI_NPIXELS (mi) > 2)
- XSetForeground (display, pp->stippledGC, MI_PIXEL (mi, GREEN));
- else
- XSetForeground (display, pp->stippledGC, MI_WHITE_PIXEL (mi));
-
- XSetStipple (display, pp->stippledGC, pp->ghostPixmap[0][0][0]);
-
-#ifdef FLASH
- XSetFillStyle (display, pp->stippledGC, FillStippled);
-#else
- XSetFillStyle (display, pp->stippledGC, FillOpaqueStippled);
-#endif
- if (pp->xs < 2 || pp->ys < 2)
- XDrawPoint (display, window, pp->stippledGC,
- pp->ghosts[ghost].cf, pp->ghosts[ghost].rf);
- else
- XFillRectangle (display,
- window,
- pp->stippledGC,
- pp->ghosts[ghost].cf,
- pp->ghosts[ghost].rf, pp->spritexs, pp->spriteys);
-
- pp->ghosts[ghost].oldcf = pp->ghosts[ghost].cf;
- pp->ghosts[ghost].oldrf = pp->ghosts[ghost].rf;
-}
-#endif /* USE_PIXMAP */