static void HandleAnimation(int);
static boolean AnimateToon(int, boolean);
-static void DrawAnim(Bitmap, GC, int, int, int, int, int, int, int, int);
+static void DrawAnim(Bitmap *, GC, int, int, int, int, int, int, int, int);
struct AnimInfo
{
};
struct AnimInfo *anim = &toon[toon_nr];
int anim_bitmap_nr = (toon_nr < 6 ? PIX_TOONS : PIX_HEROES);
- Bitmap anim_bitmap = pix[anim_bitmap_nr];
+ Bitmap *anim_bitmap = pix[anim_bitmap_nr];
GC anim_clip_gc = pix[anim_bitmap_nr]->stored_clip_gc;
if (restart)
return(FALSE);
}
-void DrawAnim(Bitmap toon_bitmap, GC toon_clip_gc,
+void DrawAnim(Bitmap *toon_bitmap, GC toon_clip_gc,
int src_x, int src_y, int width, int height,
int dest_x, int dest_y, int pad_x, int pad_y)
{
static void CreateControlButtons()
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
struct GadgetInfo *gi;
unsigned long event_mask;
int i;
/* create buttons for element list */
for (i=0; i<ED_NUM_ELEMENTLIST_BUTTONS; i++)
{
- Bitmap deco_bitmap;
+ Bitmap *deco_bitmap;
int deco_x, deco_y, deco_xpos, deco_ypos;
int gd_xoffset, gd_yoffset;
int gd_x1, gd_x2, gd_y;
for (j=0; j<2; j++)
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
struct GadgetInfo *gi;
int id = (j == 0 ?
counterbutton_info[i].gadget_id_down :
for (i=0; i<ED_NUM_TEXTINPUT; i++)
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
int gd_x, gd_y;
struct GadgetInfo *gi;
unsigned long event_mask;
for (i=0; i<ED_NUM_SCROLLBARS; i++)
{
int id = scrollbar_info[i].gadget_id;
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
int gd_x1, gd_x2, gd_y1, gd_y2;
struct GadgetInfo *gi;
int items_max, items_visible, item_position;
static void CreateCheckbuttonGadgets()
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
struct GadgetInfo *gi;
unsigned long event_mask;
int gd_x1, gd_x2, gd_x3, gd_x4, gd_y;
for (i=0; i<NUM_GAME_BUTTONS; i++)
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
struct GadgetInfo *gi;
int button_type;
boolean checked;
break;
case GDI_DESIGN_UNPRESSED:
- gi->design[GD_BUTTON_UNPRESSED].bitmap = va_arg(ap, Bitmap);
+ gi->design[GD_BUTTON_UNPRESSED].bitmap = va_arg(ap, Bitmap *);
gi->design[GD_BUTTON_UNPRESSED].x = va_arg(ap, int);
gi->design[GD_BUTTON_UNPRESSED].y = va_arg(ap, int);
break;
case GDI_DESIGN_PRESSED:
- gi->design[GD_BUTTON_PRESSED].bitmap = va_arg(ap, Bitmap);
+ gi->design[GD_BUTTON_PRESSED].bitmap = va_arg(ap, Bitmap *);
gi->design[GD_BUTTON_PRESSED].x = va_arg(ap, int);
gi->design[GD_BUTTON_PRESSED].y = va_arg(ap, int);
break;
case GDI_ALT_DESIGN_UNPRESSED:
- gi->alt_design[GD_BUTTON_UNPRESSED].bitmap= va_arg(ap, Bitmap);
+ gi->alt_design[GD_BUTTON_UNPRESSED].bitmap= va_arg(ap, Bitmap *);
gi->alt_design[GD_BUTTON_UNPRESSED].x = va_arg(ap, int);
gi->alt_design[GD_BUTTON_UNPRESSED].y = va_arg(ap, int);
break;
case GDI_ALT_DESIGN_PRESSED:
- gi->alt_design[GD_BUTTON_PRESSED].bitmap = va_arg(ap, Bitmap);
+ gi->alt_design[GD_BUTTON_PRESSED].bitmap = va_arg(ap, Bitmap *);
gi->alt_design[GD_BUTTON_PRESSED].x = va_arg(ap, int);
gi->alt_design[GD_BUTTON_PRESSED].y = va_arg(ap, int);
break;
break;
case GDI_DECORATION_DESIGN:
- gi->deco.design.bitmap = va_arg(ap, Bitmap);
+ gi->deco.design.bitmap = va_arg(ap, Bitmap *);
gi->deco.design.x = va_arg(ap, int);
gi->deco.design.y = va_arg(ap, int);
break;
struct GadgetDesign
{
- Bitmap bitmap; /* Bitmap with gadget surface */
+ Bitmap *bitmap; /* Bitmap with gadget surface */
int x, y; /* position of rectangle in Bitmap */
};
atexit(SDL_Quit);
}
-inline void SDLInitVideoBuffer(DrawBuffer *backbuffer, DrawWindow *window,
+inline void SDLInitVideoBuffer(DrawBuffer **backbuffer, DrawWindow **window,
boolean fullscreen)
{
/* open SDL video output device (window or fullscreen mode) */
*window = CreateBitmap(video.width, video.height, video.depth);
}
-inline boolean SDLSetVideoMode(DrawBuffer *backbuffer, boolean fullscreen)
+inline boolean SDLSetVideoMode(DrawBuffer **backbuffer, boolean fullscreen)
{
boolean success = TRUE;
int surface_flags = SDL_HWSURFACE | (fullscreen ? SDL_FULLSCREEN : 0);
if (fullscreen && !video.fullscreen_enabled && video.fullscreen_available)
{
/* switch display to fullscreen mode, if available */
- DrawWindow window_old = *backbuffer;
- DrawWindow window_new = CreateBitmapStruct();
+ DrawWindow *window_old = *backbuffer;
+ DrawWindow *window_new = CreateBitmapStruct();
if ((window_new->surface = SDL_SetVideoMode(video.width, video.height,
video.depth, surface_flags))
if ((!fullscreen && video.fullscreen_enabled) || !*backbuffer)
{
/* switch display to window mode */
- DrawWindow window_old = *backbuffer;
- DrawWindow window_new = CreateBitmapStruct();
+ DrawWindow *window_old = *backbuffer;
+ DrawWindow *window_new = CreateBitmapStruct();
if ((window_new->surface = SDL_SetVideoMode(video.width, video.height,
video.depth, surface_flags))
return success;
}
-inline void SDLCopyArea(Bitmap src_bitmap, Bitmap dst_bitmap,
+inline void SDLCopyArea(Bitmap *src_bitmap, Bitmap *dst_bitmap,
int src_x, int src_y,
int width, int height,
int dst_x, int dst_y, int copy_mode)
{
- Bitmap real_dst_bitmap = (dst_bitmap == window ? backbuffer : dst_bitmap);
+ Bitmap *real_dst_bitmap = (dst_bitmap == window ? backbuffer : dst_bitmap);
SDL_Rect src_rect, dst_rect;
src_rect.x = src_x;
SDL_UpdateRect(backbuffer->surface, dst_x, dst_y, width, height);
}
-inline void SDLFillRectangle(Bitmap dst_bitmap, int x, int y,
+inline void SDLFillRectangle(Bitmap *dst_bitmap, int x, int y,
int width, int height, unsigned int color)
{
- Bitmap real_dst_bitmap = (dst_bitmap == window ? backbuffer : dst_bitmap);
+ Bitmap *real_dst_bitmap = (dst_bitmap == window ? backbuffer : dst_bitmap);
SDL_Rect rect;
unsigned int color_r = (color >> 16) && 0xff;
unsigned int color_g = (color >> 8) && 0xff;
/* SDL type definitions */
-typedef struct SDLSurfaceInfo *Bitmap;
-typedef struct SDLSurfaceInfo *DrawBuffer;
-typedef struct SDLSurfaceInfo *DrawWindow;
+typedef struct SDLSurfaceInfo Bitmap;
+typedef struct SDLSurfaceInfo DrawBuffer;
+typedef struct SDLSurfaceInfo DrawWindow;
typedef Uint32 Pixel;
typedef SDLKey Key;
/* SDL function definitions */
inline void SDLInitVideoDisplay(void);
-inline void SDLInitVideoBuffer(DrawBuffer *, DrawWindow *, boolean);
-inline boolean SDLSetVideoMode(DrawBuffer *, boolean);
-inline void SDLCopyArea(Bitmap, Bitmap, int, int, int, int, int, int, int);
-inline void SDLFillRectangle(Bitmap, int, int, int, int, unsigned int);
+inline void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean);
+inline boolean SDLSetVideoMode(DrawBuffer **, boolean);
+inline void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
+inline void SDLFillRectangle(Bitmap *, int, int, int, int, unsigned int);
inline void SDLDrawSimpleLine(SDL_Surface *, int, int, int, int, unsigned int);
inline void SDLDrawLine(SDL_Surface *, int, int, int, int, Uint32);
/* functions from SGE library */
int screen = 0;
Colormap cmap = None;
-DrawWindow window = NULL;
-DrawBuffer backbuffer = NULL;
-DrawBuffer drawto = NULL;
+DrawWindow *window = NULL;
+DrawBuffer *backbuffer = NULL;
+DrawBuffer *drawto = NULL;
int button_status = MB_NOT_PRESSED;
boolean motion_status = FALSE;
#endif
}
-inline void InitVideoBuffer(DrawBuffer *backbuffer, DrawWindow *window,
+inline void InitVideoBuffer(DrawBuffer **backbuffer, DrawWindow **window,
int width, int height, int depth,
boolean fullscreen)
{
#endif
}
-inline Bitmap CreateBitmapStruct(void)
+inline Bitmap *CreateBitmapStruct(void)
{
#ifdef TARGET_SDL
return checked_calloc(sizeof(struct SDLSurfaceInfo));
#endif
}
-inline Bitmap CreateBitmap(int width, int height, int depth)
+inline Bitmap *CreateBitmap(int width, int height, int depth)
{
- Bitmap new_bitmap = CreateBitmapStruct();
+ Bitmap *new_bitmap = CreateBitmapStruct();
int real_depth = GetRealDepth(depth);
#ifdef TARGET_SDL
return new_bitmap;
}
-inline void FreeBitmap(Bitmap bitmap)
+inline void FreeBitmap(Bitmap *bitmap)
{
if (bitmap == NULL)
return;
free(bitmap);
}
-inline void CloseWindow(DrawWindow window)
+inline void CloseWindow(DrawWindow *window)
{
#ifdef TARGET_X11
if (window->drawable)
#endif
}
-inline void BlitBitmap(Bitmap src_bitmap, Bitmap dst_bitmap,
+inline void BlitBitmap(Bitmap *src_bitmap, Bitmap *dst_bitmap,
int src_x, int src_y,
int width, int height,
int dst_x, int dst_y)
#endif
}
-inline void ClearRectangle(Bitmap bitmap, int x, int y, int width, int height)
+inline void ClearRectangle(Bitmap *bitmap, int x, int y, int width, int height)
{
#ifdef TARGET_SDL
SDLFillRectangle(bitmap, x, y, width, height, 0x000000);
#endif
#endif
-inline void SetClipMask(Bitmap bitmap, GC clip_gc, Pixmap clip_pixmap)
+inline void SetClipMask(Bitmap *bitmap, GC clip_gc, Pixmap clip_pixmap)
{
#ifdef TARGET_X11
if (clip_gc)
#endif
}
-inline void SetClipOrigin(Bitmap bitmap, GC clip_gc, int clip_x, int clip_y)
+inline void SetClipOrigin(Bitmap *bitmap, GC clip_gc, int clip_x, int clip_y)
{
#ifdef TARGET_X11
if (clip_gc)
#endif
}
-inline void BlitBitmapMasked(Bitmap src_bitmap, Bitmap dst_bitmap,
+inline void BlitBitmapMasked(Bitmap *src_bitmap, Bitmap *dst_bitmap,
int src_x, int src_y,
int width, int height,
int dst_x, int dst_y)
#endif
}
-inline void DrawSimpleWhiteLine(Bitmap bitmap, int from_x, int from_y,
+inline void DrawSimpleWhiteLine(Bitmap *bitmap, int from_x, int from_y,
int to_x, int to_y)
{
#ifdef TARGET_SDL
}
#if !defined(TARGET_X11_NATIVE)
-inline void DrawLine(Bitmap bitmap, int from_x, int from_y,
+inline void DrawLine(Bitmap *bitmap, int from_x, int from_y,
int to_x, int to_y, Pixel pixel, int line_width)
{
int x, y;
}
#endif
-inline void DrawLines(Bitmap bitmap, struct XY *points, int num_points,
+inline void DrawLines(Bitmap *bitmap, struct XY *points, int num_points,
Pixel pixel)
{
#if !defined(TARGET_X11_NATIVE)
#endif
}
-inline Pixel GetPixelFromRGB(Bitmap bitmap, unsigned int color_r,
+inline Pixel GetPixelFromRGB(Bitmap *bitmap, unsigned int color_r,
unsigned int color_g, unsigned int color_b)
{
Pixel pixel;
return pixel;
}
-inline Pixel GetPixelFromRGBcompact(Bitmap bitmap, unsigned int color)
+inline Pixel GetPixelFromRGBcompact(Bitmap *bitmap, unsigned int color)
{
unsigned int color_r = (color >> 16) & 0xff;
unsigned int color_g = (color >> 8) & 0xff;
#endif
}
-inline boolean PointerInWindow(DrawWindow window)
+inline boolean PointerInWindow(DrawWindow *window)
{
#ifdef TARGET_SDL
return TRUE;
extern int screen;
extern Colormap cmap;
-extern DrawWindow window;
-extern DrawBuffer backbuffer;
-extern DrawBuffer drawto;
+extern DrawWindow *window;
+extern DrawBuffer *backbuffer;
+extern DrawBuffer *drawto;
extern int button_status;
extern boolean motion_status;
void InitGfxScrollbufferInfo(int, int);
inline void InitVideoDisplay(void);
-inline void InitVideoBuffer(DrawBuffer *,DrawWindow *, int, int, int, boolean);
-inline Bitmap CreateBitmapStruct(void);
-inline Bitmap CreateBitmap(int, int, int);
-inline void FreeBitmap(Bitmap);
-inline void BlitBitmap(Bitmap, Bitmap, int, int, int, int, int, int);
-inline void ClearRectangle(Bitmap, int, int, int, int);
-inline void SetClipMask(Bitmap, GC, Pixmap);
-inline void SetClipOrigin(Bitmap, GC, int, int);
-inline void BlitBitmapMasked(Bitmap, Bitmap, int, int, int, int, int, int);
-inline void DrawSimpleWhiteLine(Bitmap, int, int, int, int);
-inline void DrawLines(Bitmap, struct XY *, int, Pixel);
-inline Pixel GetPixelFromRGB(Bitmap, unsigned int, unsigned int, unsigned int);
-inline Pixel GetPixelFromRGBcompact(Bitmap, unsigned int);
+inline void InitVideoBuffer(DrawBuffer **,DrawWindow **, int,int,int, boolean);
+inline Bitmap *CreateBitmapStruct(void);
+inline Bitmap *CreateBitmap(int, int, int);
+inline void FreeBitmap(Bitmap *);
+inline void BlitBitmap(Bitmap *, Bitmap *, int, int, int, int, int, int);
+inline void ClearRectangle(Bitmap *, int, int, int, int);
+inline void SetClipMask(Bitmap *, GC, Pixmap);
+inline void SetClipOrigin(Bitmap *, GC, int, int);
+inline void BlitBitmapMasked(Bitmap *, Bitmap *, int, int, int, int, int, int);
+inline void DrawSimpleWhiteLine(Bitmap *, int, int, int, int);
+inline void DrawLines(Bitmap *, struct XY *, int, Pixel);
+inline Pixel GetPixelFromRGB(Bitmap *, unsigned int,unsigned int,unsigned int);
+inline Pixel GetPixelFromRGBcompact(Bitmap *, unsigned int);
inline void FlushDisplay(void);
inline void SyncDisplay(void);
inline void KeyboardAutoRepeatOn(void);
inline void KeyboardAutoRepeatOff(void);
-inline boolean PointerInWindow(DrawWindow);
+inline boolean PointerInWindow(DrawWindow *);
inline boolean SetVideoMode(boolean);
inline boolean ChangeVideoModeIfNeeded(boolean);
/* font functions */
/* ========================================================================= */
-void InitFontInfo(Bitmap bitmap_big, Bitmap bitmap_medium,
- Bitmap bitmap_small)
+void InitFontInfo(Bitmap *bitmap_big, Bitmap *bitmap_medium,
+ Bitmap *bitmap_small)
{
font.bitmap_big = bitmap_big;
font.bitmap_medium = bitmap_medium;
redraw_mask |= REDRAW_DOOR_1;
}
-void DrawTextExt(DrawBuffer bitmap, int x, int y,
+void DrawTextExt(DrawBuffer *bitmap, int x, int y,
char *text, int font_size, int font_type)
{
- Bitmap font_bitmap;
+ Bitmap *font_bitmap;
int font_width, font_height, font_start;
boolean print_inverse = FALSE;
struct FontInfo
{
- Bitmap bitmap_big, bitmap_medium, bitmap_small;
+ Bitmap *bitmap_big;
+ Bitmap *bitmap_medium;
+ Bitmap *bitmap_small;
};
-void InitFontInfo(Bitmap, Bitmap, Bitmap);
+void InitFontInfo(Bitmap *, Bitmap *, Bitmap *);
int getFontWidth(int, int);
int getFontHeight(int, int);
void DrawInitText(char *, int, int);
void DrawTextF(int, int, int, char *, ...);
void DrawTextFCentered(int, int, char *, ...);
void DrawText(int, int, char *, int, int);
-void DrawTextExt(DrawBuffer, int, int, char *, int, int);
+void DrawTextExt(DrawBuffer *, int, int, char *, int, int);
#endif /* TEXT_H */
#if defined(TARGET_X11)
static void X11InitDisplay();
-static DrawWindow X11InitWindow();
+static DrawWindow *X11InitWindow();
inline void X11InitVideoDisplay(void)
{
video.default_depth = XDefaultDepth(display, screen);
}
-inline void X11InitVideoBuffer(DrawBuffer *backbuffer, DrawWindow *window)
+inline void X11InitVideoBuffer(DrawBuffer **backbuffer, DrawWindow **window)
{
*window = X11InitWindow();
#endif /* !PLATFORM_MSDOS */
}
-static DrawWindow X11InitWindow()
+static DrawWindow *X11InitWindow()
{
- DrawWindow new_window = CreateBitmapStruct();
+ DrawWindow *new_window = CreateBitmapStruct();
unsigned int border_width = 4;
XGCValues gc_values;
unsigned long gc_valuemask;
/* X11 type definitions */
-typedef struct X11DrawableInfo *Bitmap;
-typedef struct X11DrawableInfo *DrawWindow;
-typedef struct X11DrawableInfo *DrawBuffer;
+typedef struct X11DrawableInfo Bitmap;
+typedef struct X11DrawableInfo DrawWindow;
+typedef struct X11DrawableInfo DrawBuffer;
/* "Pixel" is already defined in X11/Intrinsic.h */
typedef KeySym Key;
/* X11 function definitions */
inline void X11InitVideoDisplay(void);
-inline void X11InitVideoBuffer(DrawBuffer *, DrawWindow *);
+inline void X11InitVideoBuffer(DrawBuffer **, DrawWindow **);
#endif /* X11_H */
#include "joystick.h"
GC tile_clip_gc;
-Bitmap pix[NUM_BITMAPS];
+Bitmap *pix[NUM_BITMAPS];
Pixmap tile_clipmask[NUM_TILES];
-DrawBuffer drawto_field, fieldbuffer;
+DrawBuffer *fieldbuffer;
+DrawBuffer *drawto_field;
int joystick_device = 0;
char *joystick_device_name[MAX_PLAYERS] =
};
extern GC tile_clip_gc;
-extern Bitmap pix[];
+extern Bitmap *pix[];
extern Pixmap tile_clipmask[];
-extern DrawBuffer drawto_field, fieldbuffer;
+extern DrawBuffer *fieldbuffer;
+extern DrawBuffer *drawto_field;
extern int joystick_device;
extern char *joystick_device_name[];
static void CreateScreenScrollbuttons()
{
- Bitmap gd_bitmap = pix[PIX_MORE];
+ Bitmap *gd_bitmap = pix[PIX_MORE];
struct GadgetInfo *gi;
unsigned long event_mask;
int i;
for (i=0; i<NUM_SCREEN_SCROLLBARS; i++)
{
int id = scrollbar_info[i].gadget_id;
- Bitmap gd_bitmap = pix[PIX_MORE];
+ Bitmap *gd_bitmap = pix[PIX_MORE];
int gd_x1, gd_x2, gd_y1, gd_y2;
struct GadgetInfo *gi;
int items_max, items_visible, item_position;
for (i=0; i<NUM_TAPE_BUTTONS; i++)
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
struct GadgetInfo *gi;
int gd_xoffset, gd_yoffset;
int gd_x1, gd_x2, gd_y;
void BackToFront()
{
int x,y;
- DrawBuffer buffer = (drawto_field == window ? backbuffer : drawto_field);
+ DrawBuffer *buffer = (drawto_field == window ? backbuffer : drawto_field);
if (setup.direct_draw && game_status == PLAYING)
redraw_mask &= ~REDRAW_MAIN;
MarkTileDirty(x,y);
}
-void DrawGraphicExt(DrawBuffer bitmap, int x, int y, int graphic)
+void DrawGraphicExt(DrawBuffer *bitmap, int x, int y, int graphic)
{
int bitmap_nr;
int src_x, src_y;
MarkTileDirty(x,y);
}
-void DrawGraphicThruMaskExt(DrawBuffer d, int dest_x, int dest_y, int graphic)
+void DrawGraphicThruMaskExt(DrawBuffer *d, int dest_x, int dest_y, int graphic)
{
int tile = graphic;
int bitmap_nr;
int src_x, src_y;
- Bitmap src_bitmap;
+ Bitmap *src_bitmap;
GC drawing_gc;
if (graphic == GFX_LEERRAUM)
MarkTileDirty(x/2, y/2);
}
-void getMiniGraphicSource(int graphic, Bitmap *bitmap, int *x, int *y)
+void getMiniGraphicSource(int graphic, Bitmap **bitmap, int *x, int *y)
{
if (graphic >= GFX_START_ROCKSSCREEN && graphic <= GFX_END_ROCKSSCREEN)
{
}
}
-void DrawMiniGraphicExt(DrawBuffer d, int x, int y, int graphic)
+void DrawMiniGraphicExt(DrawBuffer *d, int x, int y, int graphic)
{
- Bitmap bitmap;
+ Bitmap *bitmap;
int src_x, src_y;
getMiniGraphicSource(graphic, &bitmap, &src_x, &src_y);
int src_x, src_y, dest_x, dest_y;
int tile = graphic;
int bitmap_nr;
- Bitmap src_bitmap;
+ Bitmap *src_bitmap;
GC drawing_gc;
if (graphic < 0)
for(x=start; x<=DXSIZE; x+=stepsize)
{
- Bitmap bitmap = pix[PIX_DOOR];
+ Bitmap *bitmap = pix[PIX_DOOR];
GC gc = bitmap->stored_clip_gc;
WaitUntilDelayReached(&door_delay, door_delay_value);
}
#ifndef TARGET_SDL
-int ReadPixel(DrawBuffer bitmap, int x, int y)
+int ReadPixel(DrawBuffer *bitmap, int x, int y)
{
XImage *pixel_image;
unsigned long pixel_value;
for (i=0; i<NUM_TOOL_BUTTONS; i++)
{
- Bitmap gd_bitmap = pix[PIX_DOOR];
- Bitmap deco_bitmap = None;
+ Bitmap *gd_bitmap = pix[PIX_DOOR];
+ Bitmap *deco_bitmap = None;
int deco_x = 0, deco_y = 0, deco_xpos = 0, deco_ypos = 0;
struct GadgetInfo *gi;
unsigned long event_mask;
void DrawGraphicAnimationThruMask(int, int, int, int, int, int);
void getGraphicSource(int, int *, int *, int *);
void DrawGraphic(int, int, int);
-void DrawGraphicExt(DrawBuffer, int, int, int);
+void DrawGraphicExt(DrawBuffer *, int, int, int);
void DrawGraphicThruMask(int, int, int);
-void DrawGraphicThruMaskExt(DrawBuffer, int, int, int);
+void DrawGraphicThruMaskExt(DrawBuffer *, int, int, int);
void DrawMiniGraphic(int, int, int);
-void getMiniGraphicSource(int, Bitmap *, int *, int *);
-void DrawMiniGraphicExt(DrawBuffer, int, int, int);
+void getMiniGraphicSource(int, Bitmap **, int *, int *);
+void DrawMiniGraphicExt(DrawBuffer *, int, int, int);
void DrawGraphicShifted(int, int, int, int, int, int, int);
void DrawGraphicShiftedThruMask(int, int, int, int, int, int);
void DrawScreenElementExt(int, int, int, int, int, int, int);
unsigned int MoveDoor(unsigned int);
void DrawSpecialEditorDoor();
void UndrawSpecialEditorDoor();
-int ReadPixel(DrawBuffer, int, int);
+int ReadPixel(DrawBuffer *, int, int);
void CreateToolButtons();