X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmsdos.h;fp=src%2Fmsdos.h;h=0000000000000000000000000000000000000000;hb=6ea6dac4068909e5adc06102dd215539c64afef8;hp=f4f7a5add42ed8026c752dffe2bda6fa1973a50e;hpb=d2185c2bcdba9fc69846c99a2d01ef037ce2266f;p=rocksndiamonds.git diff --git a/src/msdos.h b/src/msdos.h deleted file mode 100644 index f4f7a5ad..00000000 --- a/src/msdos.h +++ /dev/null @@ -1,477 +0,0 @@ -/*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * -*----------------------------------------------------------* -* (c) 1995-98 Artsoft Entertainment * -* Holger Schemel * -* Oststrasse 11a * -* 33604 Bielefeld * -* phone: ++49 +521 290471 * -* email: aeglos@valinor.owl.de * -*----------------------------------------------------------* -* msdos.h * -***********************************************************/ - -#ifndef XPM_INCLUDE_FILE -#define XPM_INCLUDE_FILE -#endif - -#define XRES 800 -#define YRES 600 - -#define TRUE 1 -#define FALSE 0 - -#include -#include - -/* some file path definitions */ - -#define JOYDAT_PATH GAME_DIR -#define JOYDAT_FILENAME "ROCKS.joy" -#define JOYDAT_FILE JOYDAT_PATH "/" JOYDAT_FILENAME - -/* Allegro keyboard mapping */ - -#define OSD_KEY_ESC 1 /* keyboard scan codes */ -#define OSD_KEY_1 2 /* (courtesy of allegro.h) */ -#define OSD_KEY_2 3 -#define OSD_KEY_3 4 -#define OSD_KEY_4 5 -#define OSD_KEY_5 6 -#define OSD_KEY_6 7 -#define OSD_KEY_7 8 -#define OSD_KEY_8 9 -#define OSD_KEY_9 10 -#define OSD_KEY_0 11 -#define OSD_KEY_MINUS 12 -#define OSD_KEY_EQUALS 13 -#define OSD_KEY_BACKSPACE 14 -#define OSD_KEY_TAB 15 -#define OSD_KEY_Q 16 -#define OSD_KEY_W 17 -#define OSD_KEY_E 18 -#define OSD_KEY_R 19 -#define OSD_KEY_T 20 -#define OSD_KEY_Y 21 -#define OSD_KEY_U 22 -#define OSD_KEY_I 23 -#define OSD_KEY_O 24 -#define OSD_KEY_P 25 -#define OSD_KEY_OPENBRACE 26 -#define OSD_KEY_CLOSEBRACE 27 -#define OSD_KEY_ENTER 28 -#define OSD_KEY_LCONTROL 29 -#define OSD_KEY_A 30 -#define OSD_KEY_S 31 -#define OSD_KEY_D 32 -#define OSD_KEY_F 33 -#define OSD_KEY_G 34 -#define OSD_KEY_H 35 -#define OSD_KEY_J 36 -#define OSD_KEY_K 37 -#define OSD_KEY_L 38 -#define OSD_KEY_COLON 39 -#define OSD_KEY_QUOTE 40 -#define OSD_KEY_TILDE 41 -#define OSD_KEY_LSHIFT 42 -/* 43 */ -#define OSD_KEY_Z 44 -#define OSD_KEY_X 45 -#define OSD_KEY_C 46 -#define OSD_KEY_V 47 -#define OSD_KEY_B 48 -#define OSD_KEY_N 49 -#define OSD_KEY_M 50 -#define OSD_KEY_COMMA 51 -#define OSD_KEY_STOP 52 -#define OSD_KEY_SLASH 53 -#define OSD_KEY_RSHIFT 54 -#define OSD_KEY_ASTERISK 55 -#define OSD_KEY_ALT 56 -#define OSD_KEY_SPACE 57 -#define OSD_KEY_CAPSLOCK 58 -#define OSD_KEY_F1 59 -#define OSD_KEY_F2 60 -#define OSD_KEY_F3 61 -#define OSD_KEY_F4 62 -#define OSD_KEY_F5 63 -#define OSD_KEY_F6 64 -#define OSD_KEY_F7 65 -#define OSD_KEY_F8 66 -#define OSD_KEY_F9 67 -#define OSD_KEY_F10 68 -#define OSD_KEY_NUMLOCK 69 -#define OSD_KEY_SCRLOCK 70 -#define OSD_KEY_HOME 71 -#define OSD_KEY_UP 72 -#define OSD_KEY_PGUP 73 -#define OSD_KEY_MINUS_PAD 74 -#define OSD_KEY_LEFT 75 -#define OSD_KEY_5_PAD 76 -#define OSD_KEY_RIGHT 77 -#define OSD_KEY_PLUS_PAD 78 -#define OSD_KEY_END 79 -#define OSD_KEY_DOWN 80 -#define OSD_KEY_PGDN 81 -#define OSD_KEY_INSERT 82 -#define OSD_KEY_DEL 83 -#define OSD_KEY_RCONTROL 84 /* different from Allegro */ -#define OSD_KEY_ALTGR 85 /* different from Allegro */ -/* 86 */ -#define OSD_KEY_F11 87 -#define OSD_KEY_F12 88 -#define OSD_KEY_COMMAND 89 -#define OSD_KEY_OPTION 90 -/* 91 - 100 */ -/* The following are all undefined in Allegro */ -#define OSD_KEY_1_PAD 101 -#define OSD_KEY_2_PAD 102 -#define OSD_KEY_3_PAD 103 -#define OSD_KEY_4_PAD 104 -/* 105 */ -#define OSD_KEY_6_PAD 106 -#define OSD_KEY_7_PAD 107 -#define OSD_KEY_8_PAD 108 -#define OSD_KEY_9_PAD 109 -#define OSD_KEY_0_PAD 110 -#define OSD_KEY_STOP_PAD 111 -#define OSD_KEY_EQUALS_PAD 112 -#define OSD_KEY_SLASH_PAD 113 -#define OSD_KEY_ASTER_PAD 114 -#define OSD_KEY_ENTER_PAD 115 - -#define OSD_MAX_KEY 115 - -/* X11 keyboard mapping */ - -#define XK_KP_Enter OSD_KEY_ENTER_PAD -#define XK_KP_0 OSD_KEY_0_PAD -#define XK_KP_1 OSD_KEY_1_PAD -#define XK_KP_2 OSD_KEY_2_PAD -#define XK_KP_3 OSD_KEY_3_PAD -#define XK_KP_4 OSD_KEY_4_PAD -#define XK_KP_6 OSD_KEY_6_PAD -#define XK_KP_7 OSD_KEY_7_PAD -#define XK_KP_8 OSD_KEY_8_PAD -#define XK_KP_9 OSD_KEY_9_PAD -/* -#define XK_KP_Home OSD_KEY_7_PAD -#define XK_KP_Page_Up OSD_KEY_9_PAD -#define XK_KP_Page_Down OSD_KEY_3_PAD -#define XK_KP_End OSD_KEY_1_PAD -#define XK_KP_Left OSD_KEY_4_PAD -#define XK_KP_Up OSD_KEY_8_PAD -#define XK_KP_Right OSD_KEY_6_PAD -#define XK_KP_Down OSD_KEY_2_PAD -*/ -#define XK_0 OSD_KEY_1 -#define XK_1 OSD_KEY_2 -#define XK_2 OSD_KEY_3 -#define XK_3 OSD_KEY_4 -#define XK_4 OSD_KEY_5 -#define XK_5 OSD_KEY_6 -#define XK_6 OSD_KEY_7 -#define XK_7 OSD_KEY_8 -#define XK_8 OSD_KEY_9 -#define XK_9 OSD_KEY_0 -#define XK_A OSD_KEY_A -#define XK_B OSD_KEY_B -#define XK_C OSD_KEY_C -#define XK_D OSD_KEY_D -#define XK_E OSD_KEY_E -#define XK_F OSD_KEY_F -#define XK_G OSD_KEY_G -#define XK_H OSD_KEY_H -#define XK_I OSD_KEY_I -#define XK_J OSD_KEY_J -#define XK_K OSD_KEY_K -#define XK_L OSD_KEY_L -#define XK_M OSD_KEY_M -#define XK_N OSD_KEY_N -#define XK_O OSD_KEY_O -#define XK_P OSD_KEY_P -#define XK_Q OSD_KEY_Q -#define XK_R OSD_KEY_R -#define XK_S OSD_KEY_S -#define XK_T OSD_KEY_T -#define XK_U OSD_KEY_U -#define XK_V OSD_KEY_V -#define XK_W OSD_KEY_W -#define XK_X OSD_KEY_X -#define XK_Y OSD_KEY_Y -#define XK_Z OSD_KEY_Z -#define XK_a OSD_KEY_A -#define XK_b OSD_KEY_B -#define XK_c OSD_KEY_C -#define XK_d OSD_KEY_D -#define XK_e OSD_KEY_E -#define XK_f OSD_KEY_F -#define XK_g OSD_KEY_G -#define XK_h OSD_KEY_H -#define XK_i OSD_KEY_I -#define XK_j OSD_KEY_J -#define XK_k OSD_KEY_K -#define XK_l OSD_KEY_L -#define XK_m OSD_KEY_M -#define XK_n OSD_KEY_N -#define XK_o OSD_KEY_O -#define XK_p OSD_KEY_P -#define XK_q OSD_KEY_Q -#define XK_r OSD_KEY_R -#define XK_s OSD_KEY_S -#define XK_t OSD_KEY_T -#define XK_u OSD_KEY_U -#define XK_v OSD_KEY_V -#define XK_w OSD_KEY_W -#define XK_x OSD_KEY_X -#define XK_y OSD_KEY_Y -#define XK_z OSD_KEY_Z -#define XK_Return OSD_KEY_ENTER -#define XK_Escape OSD_KEY_ESC -#define XK_Shift_L OSD_KEY_LSHIFT -#define XK_Shift_R OSD_KEY_RSHIFT -#define XK_Left OSD_KEY_LEFT -#define XK_Up OSD_KEY_UP -#define XK_Right OSD_KEY_RIGHT -#define XK_Down OSD_KEY_DOWN -#define XK_BackSpace OSD_KEY_BACKSPACE -#define XK_Delete OSD_KEY_DEL -#define XK_Space OSD_KEY_SPACE -#define XK_F12 OSD_KEY_F12 -#define XK_F11 OSD_KEY_F11 -#define XK_F10 OSD_KEY_F10 - -#define MOUSE_FILENAME "graphics\\mouse.gif" -#define screen myscreen - -#define XFlush(a) -#define XSync(a,b) -#define XSetClipOrigin(a,b,c,d) -#define XGetImage(a,b,c,d,e,f,g,h) ((XImage *) NULL) -#define XAutoRepeatOn(a) -#define XAutoRepeatOff(a) -#define XDisplayName(a) ((char *) NULL) -#define XFreeColors(a,b,c,d,e) -#define XpmFreeAttributes(a) -#define XSelectInput(a,b,c) -#define XDefaultDepth(a,b) (8) -#define XSetWMProperties(a,b,c,d,e,f,g,h,i) - -#define MAX_EVENT_BUFFER 256 - -#define Status int -#define Bool int -#define True 1 -#define False 0 - -#define DUMMY_FILE (void*) -1 -#define DUMMY_MASK -1 - -#define KeyPressMask (1L<<0) -#define KeyReleaseMask (1L<<1) -#define ButtonPressMask (1L<<2) -#define ButtonReleaseMask (1L<<3) -#define ButtonMotionMask (1L<<13) -#define ExposureMask (1L<<15) -#define StructureNotifyMask (1L<<17) -#define FocusChangeMask (1L<<21) - -#define KeyPress 2 -#define KeyRelease 3 -#define ButtonPress 4 -#define ButtonRelease 5 -#define MotionNotify 6 -#define FocusIn 9 -#define FocusOut 10 -#define Expose 12 -#define UnmapNotify 18 -#define MapNotify 19 - -#define GCForeground (1L<<2) -#define GCBackground (1L<<3) -#define GCGraphicsExposures (1L<<16) -#define GCClipMask (1L<<19) - -#define NormalState 1 /* most applications want to start this way */ -#define InputHint (1L << 0) -#define StateHint (1L << 1) -#define IconPixmapHint (1L << 2) -#define IconMaskHint (1L << 5) -#define PSize (1L << 3) /* program specified size */ -#define PMinSize (1L << 4) /* program specified minimum size */ -#define PMaxSize (1L << 5) /* program specified maximum size */ - -#define XpmSuccess 0 -#define XpmOpenFailed -1 -#define XpmFileInvalid -2 -#define XpmNoMemory -3 -#define XpmColorFailed -4 -#define XpmCloseness (1L<<12) - -#define BitmapSuccess 0 -#define BitmapOpenFailed 1 -#define BitmapFileInvalid 2 -#define BitmapNoMemory 3 - -#define ZPixmap 2 /* depth == drawable depth */ - -#define DefaultScreen(dpy) (((_XPrivDisplay)dpy)->default_screen) -#define DefaultColormap(dpy, scr)(ScreenOfDisplay(dpy,scr)->cmap) -#define ScreenOfDisplay(dpy, scr)(&((_XPrivDisplay)dpy)->screens[scr]) -#define BlackPixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->black_pixel) -#define WhitePixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->white_pixel) -#define RootWindow(dpy, scr) (ScreenOfDisplay(dpy,scr)->root) -#define AllPlanes ((unsigned long)~0L) - -#define XGetPixel(ximage, x, y) \ - ((*((ximage)->f.get_pixel))((ximage), (x), (y))) - -typedef unsigned long Pixel; /* Index into colormap */ -typedef unsigned long XID; -typedef XID Window; -typedef XID Drawable; -typedef XID Pixmap; -typedef XID Colormap; -typedef XID KeySym; -typedef XID GContext; -typedef struct _XDisplay Display; - -typedef struct _XGC -{ - GContext gid; /* protocol ID for graphics context */ -} *GC; - -typedef struct { - Colormap cmap; /* default color map */ - Window root; /* Root window id. */ - unsigned long white_pixel; - unsigned long black_pixel; /* White and Black pixel values */ - int x; - int y; - unsigned int width; - unsigned int height; - BITMAP *video_bitmap; -} Screen; - -typedef struct _XDisplay -{ - int default_screen; /* default screen for operations */ - Screen *screens; /* pointer to list of screens */ - BITMAP *mouse_ptr; -} *_XPrivDisplay; - -typedef struct _XImage { - struct funcs { - unsigned long (*get_pixel) (struct _XImage *, int, int); - } f; -} XImage; - -typedef struct { - long flags; /* marks which fields in this structure are defined */ - int width, height; /* should set so old wm's don't mess up */ - int min_width, min_height; - int max_width, max_height; -} XSizeHints; - -typedef struct { - long flags; /* marks which fields in this structure are defined */ - Bool input; /* does this application rely on the window manager to - get keyboard input? */ - int initial_state; /* see below */ - Pixmap icon_pixmap; /* pixmap to be used as icon */ - Pixmap icon_mask; /* icon mask bitmap */ -} XWMHints; - -typedef struct { - char *res_name; - char *res_class; -} XClassHint; - -typedef struct { - unsigned char *value; /* same as Property routines */ -} XTextProperty; - -typedef struct { - unsigned long foreground;/* foreground pixel */ - unsigned long background;/* background pixel */ - Bool graphics_exposures;/* boolean, should exposures be generated */ - Pixmap clip_mask; /* bitmap clipping; other calls for rects */ - int clip_x_origin; /* origin for clipping */ - int clip_y_origin; - unsigned long value_mask; -} XGCValues; - -typedef struct { - unsigned long valuemask; /* Specifies which attributes are */ - unsigned int closeness; /* Allowable RGB deviation */ - Pixel *pixels; /* List of used color pixels */ - unsigned int npixels; /* Number of used pixels */ -} XpmAttributes; - -typedef struct { - int type; - int x, y; - int width, height; -} XExposeEvent; - -typedef struct { - int type; /* of event */ - int x, y; /* pointer x, y coordinates in event window */ - unsigned int button; /* detail */ -} XButtonEvent; - -typedef struct { - int type; - int x, y; /* pointer x, y coordinates in event window */ -} XMotionEvent; - -typedef struct { - int type; /* of event */ - unsigned int state; /* key or button mask */ -} XKeyEvent; - -typedef struct { - int type; /* FocusIn or FocusOut */ -} XFocusChangeEvent; - - -typedef union _XEvent { - int type; /* must not be changed; first element */ - XExposeEvent xexpose; - XButtonEvent xbutton; - XMotionEvent xmotion; - XKeyEvent xkey; -} XEvent; - - -extern void XMapWindow(Display*, Window); -// extern void XFlush(Display*); -extern Display *XOpenDisplay(char*); -// extern char *XDisplayName(char*); -extern Window XCreateSimpleWindow(Display*, Window, int, int, unsigned int, unsigned int, unsigned int, unsigned long, unsigned long); -extern int XReadBitmapFile(Display*, Drawable, char*, unsigned int*, unsigned int*, Pixmap*, int*, int*); -extern Status XStringListToTextProperty(char**, int, XTextProperty*); -// extern void XSetWMProperties(Display*, Window, XTextProperty*, XTextProperty*, char**, int, XSizeHints*, XWMHints*, XClassHint*); -extern void XFree(void*); -// extern void XSelectInput(Display*, Window, long); -extern GC XCreateGC(Display*, Drawable, unsigned long, XGCValues*); -extern void XFillRectangle(Display*, Drawable, GC, int, int, unsigned int, unsigned int); -extern Pixmap XCreatePixmap(Display*, Drawable, unsigned int, unsigned int, unsigned int); -// extern int XDefaultDepth(Display*, int); -extern inline void XCopyArea(Display*, Drawable, Drawable, GC, int, int, unsigned int, unsigned int, int, int); -extern int XpmReadFileToPixmap(Display*, Drawable, char*, Pixmap*, Pixmap*, XpmAttributes*); -// extern void XFreeColors(Display*, Colormap, unsigned long*, int, unsigned long); -// extern void XpmFreeAttributes(XpmAttributes*); -extern void XFreePixmap(Display*, Pixmap); -extern void XFreeGC(Display*, GC); -extern void XCloseDisplay(Display*); -extern int XPending(Display*); -extern void XNextEvent(Display*, XEvent*); -// extern void XSync(Display*, Bool); -// extern void XAutoRepeatOn(Display*); -// extern void XAutoRepeatOff(Display*); -extern KeySym XLookupKeysym(XKeyEvent*, int); -// extern void XSetClipOrigin(Display*, GC, int, int); -// extern XImage *XGetImage(Display*, Drawable, int, int, unsigned int, unsigned int, unsigned long, int); - -BITMAP *load_gif(char *filename, RGB *pal);