X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.h;h=d3f518ed3b17c2f1e31ef4293f6ae500a00775d8;hb=8b685a52cd9bdf6ad20d1fb6e4c8f8d70c99603e;hp=e9b4cb510802a73c9dfbce395eae22919321b50b;hpb=7b447f4c902beff72ad385a99cd723eb7d1ea369;p=rocksndiamonds.git diff --git a/src/libgame/system.h b/src/libgame/system.h index e9b4cb51..d3f518ed 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -1,15 +1,13 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1994-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* system.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// system.h +// ============================================================================ #ifndef SYSTEM_H #define SYSTEM_H @@ -441,6 +439,9 @@ #define ERROR_BASENAME "stderr.txt" +#define STRING_PARENT_DIRECTORY ".." +#define STRING_TOP_DIRECTORY "/" + #define CHAR_PATH_SEPARATOR_UNIX '/' #define CHAR_PATH_SEPARATOR_DOS '\\' @@ -709,7 +710,6 @@ struct OptionInfo boolean network; boolean verbose; boolean debug; - boolean debug_x11_sync; }; struct ScreenModeInfo @@ -732,6 +732,8 @@ struct VideoSystemInfo boolean window_scaling_available; int window_scaling_percent; char *window_scaling_quality; + + boolean initialized; }; struct AudioSystemInfo @@ -775,6 +777,8 @@ struct GfxInfo int full_sxsize, full_sysize; int scrollbuffer_width, scrollbuffer_height; + int game_tile_size, standard_tile_size; + int dx, dy; int dxsize, dysize; @@ -789,6 +793,8 @@ struct GfxInfo int draw_deactivation_mask; int draw_background_mask; + boolean drawing_area_changed; + Bitmap *field_save_buffer; Bitmap *background_bitmap; @@ -812,6 +818,8 @@ struct GfxInfo int anim_random_frame; void (*draw_busy_anim_function)(void); + + int cursor_mode; }; struct JoystickInfo @@ -1203,13 +1211,15 @@ struct DoorPartPosInfo struct TextPosInfo { int x, y; + int xoffset; /* special case for tape date and time */ + int xoffset2; /* special case for tape date */ int width, height; int align, valign; - int size; + int size; /* also used for suffix ".digits" */ int font, font_alt; boolean draw_masked; boolean draw_player; /* special case for network player buttons */ - int sort_priority; + int sort_priority; /* also used for suffix ".draw_order" */ int id; }; @@ -1241,11 +1251,6 @@ extern int level_nr; extern struct LevelStats level_stats[]; -extern Display *display; -extern Visual *visual; -extern int screen; -extern Colormap cmap; - extern DrawWindow *window; extern DrawBuffer *backbuffer; extern DrawBuffer *drawto; @@ -1276,6 +1281,7 @@ void InitPlatformDependentStuff(void); void ClosePlatformDependentStuff(void); void InitGfxFieldInfo(int, int, int, int, int, int, int, int, Bitmap *); +void InitGfxTileSizeInfo(int, int); void InitGfxDoor1Info(int, int, int, int); void InitGfxDoor2Info(int, int, int, int); void InitGfxDoor3Info(int, int, int, int); @@ -1284,6 +1290,7 @@ void InitGfxScrollbufferInfo(int, int); void InitGfxClipRegion(boolean, int, int, int, int); void InitGfxDrawBusyAnimFunction(void (*draw_busy_anim_function)(void)); void InitGfxCustomArtworkInfo(); +void InitGfxOtherSettings(); void SetDrawDeactivationMask(int); void SetDrawBackgroundMask(int); void SetWindowBackgroundBitmap(Bitmap *); @@ -1306,10 +1313,9 @@ void FadeRectangle(Bitmap *bitmap, int, int, int, int, int, int, int, void FillRectangle(Bitmap *, int, int, int, int, Pixel); void ClearRectangle(Bitmap *, int, int, int, int); void ClearRectangleOnBackground(Bitmap *, int, int, int, int); -void SetClipMask(Bitmap *, GC, Pixmap); -void SetClipOrigin(Bitmap *, GC, int, int); void BlitBitmapMasked(Bitmap *, Bitmap *, int, int, int, int, int, int); boolean DrawingOnBackground(int, int); +boolean DrawingAreaChanged(); void BlitBitmapOnBackground(Bitmap *, Bitmap *, int, int, int, int, int, int); void DrawSimpleBlackLine(Bitmap *, int, int, int, int); void DrawSimpleWhiteLine(Bitmap *, int, int, int, int); @@ -1318,8 +1324,6 @@ Pixel GetPixel(Bitmap *, int, int); Pixel GetPixelFromRGB(Bitmap *, unsigned int,unsigned int,unsigned int); Pixel GetPixelFromRGBcompact(Bitmap *, unsigned int); -void FlushDisplay(void); -void SyncDisplay(void); void KeyboardAutoRepeatOn(void); void KeyboardAutoRepeatOff(void); boolean PointerInWindow(DrawWindow *); @@ -1331,8 +1335,9 @@ Bitmap *LoadCustomImage(char *); void ReloadCustomImage(Bitmap *, char *); Bitmap *ZoomBitmap(Bitmap *, int, int); -void CreateBitmapWithSmallBitmaps(Bitmap *, int); -void ScaleBitmap(Bitmap *, int); +void ReCreateGameTileSizeBitmap(Bitmap **); +void CreateBitmapWithSmallBitmaps(Bitmap **, int, int); +void ScaleBitmap(Bitmap **, int); void SetMouseCursor(int);