rnd-20020803-1-src
[rocksndiamonds.git] / src / libgame / msdos.h
index f2bfabef2bb0db198e703babbfd441fe811f6198..5ddb3eef42aea353ed8e7ab3eeafd492d01143f3 100644 (file)
@@ -1,28 +1,28 @@
 /***********************************************************
-*  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
+* Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-*  ©1995 Artsoft Development                               *
-*        Holger Schemel                                    *
-*        33659 Bielefeld-Senne                             *
-*        Telefon: (0521) 493245                            *
-*        eMail: aeglos@valinor.owl.de                      *
-*               aeglos@uni-paderborn.de                    *
-*               q99492@pbhrzx.uni-paderborn.de             *
+* (c) 1994-2002 Artsoft Entertainment                      *
+*               Holger Schemel                             *
+*               Detmolder Strasse 189                      *
+*               33604 Bielefeld                            *
+*               Germany                                    *
+*               e-mail: info@artsoft.org                   *
 *----------------------------------------------------------*
-*  msdos.h                                                 *
+* msdos.h                                                  *
 ***********************************************************/
 
 #ifndef MSDOS_H
 #define MSDOS_H
 
-#include <allegro.h>
 #include <time.h>
+#include "allegro.h"
+
 
 /* symbol 'window' is defined in DJGPP cross-compiler in libc.a(conio.o) */
-#define window window_djgpp
+#define window window_internal
 
 /* symbol 'font' is defined in "allegro.h" */
-#define font font_allegro
+#define font font_internal
 
 /* system dependent definitions */
 
 #define XRES   800
 #define YRES   600
 
+/* allegro defines some macros that bother the rest of the program */
+#ifdef joy_x
+#undef joy_x
+#undef joy_y
+#undef joy_left
+#undef joy_right
+#undef joy_up
+#undef joy_down
+#undef joy_b1
+#undef joy_b2
+#endif
+
 /* additional Allegro keyboard mapping */
 
 /* The following are all undefined in Allegro */
 
 /* end of X11 keyboard mapping */
 
-#define JOYSTICK_FILENAME      "joystick.cnf"
 
 #define screen myscreen
 
 #define MapNotify              19
 #define ClientMessage          33
 
+#define LineSolid               0
+#define LineOnOffDash           1
+#define LineDoubleDash          2
+
+#define CapNotLast              0
+#define CapButt                 1
+#define CapRound                2
+#define CapProjecting           3
+
+#define JoinMiter               0
+#define JoinRound               1
+#define JoinBevel               2
+
 #define GCForeground            (1L << 2)
 #define GCBackground            (1L << 3)
+#define GCLineWidth             (1L << 4)
+#define GCLineStyle             (1L << 5)
+#define GCCapStyle              (1L << 6)
+#define GCJoinStyle             (1L << 7)
 #define GCGraphicsExposures     (1L << 16)
 #define GCClipMask             (1L << 19)
 
@@ -624,6 +652,12 @@ typedef struct
   int clip_x_origin;           /* x origin for clipping */
   int clip_y_origin;           /* y origin for clipping */
   unsigned long value_mask;
+  int line_width;              /* line width */
+  int line_style;              /* LineSolid, LineOnOffDash, LineDoubleDash */
+  int cap_style;               /* CapNotLast, CapButt, 
+                                  CapRound, CapProjecting */
+  int join_style;              /* JoinMiter, JoinRound, JoinBevel */
+
 } XGCValues;
 
 typedef struct
@@ -671,6 +705,8 @@ typedef union _XEvent
   XKeyEvent xkey;
 } XEvent;
 
+Pixel AllegroAllocColorCell(int, int, int);
+
 void XMapWindow(Display *, Window);
 Display *XOpenDisplay(char *);
 Window XCreateSimpleWindow(Display *, Window, int, int,
@@ -708,9 +744,15 @@ Bool XQueryPointer(Display *, Window, Window *, Window *, int *, int *,
 void XAutoRepeatOn(Display *);
 void XAutoRepeatOff(Display *);
 
-boolean MSDOSOpenAudio(void);
+void AllegroDrawLine(Drawable, int, int, int, int, Pixel);
+Pixel AllegroGetPixel(Drawable, int, int);
+
+void MSDOSOpenAudio(void);
 void MSDOSCloseAudio(void);
 
 void NetworkServer(int, int);
 
+void MSDOSInitJoysticks();
+boolean MSDOSReadJoystick(int, int *, int *, boolean *, boolean *);
+
 #endif /* MSDOS_H */