projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20001204-1-src
[rocksndiamonds.git]
/
src
/
libgame
/
msdos.c
diff --git
a/src/libgame/msdos.c
b/src/libgame/msdos.c
index cc8aedd7a6ab71af5c44b74e907e8fbfe8abbb6e..106b8657f5fdc8bd6186244bb59bb28e6644c384 100644
(file)
--- a/
src/libgame/msdos.c
+++ b/
src/libgame/msdos.c
@@
-1,21
+1,27
@@
/***********************************************************
/***********************************************************
-*
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-2000 Artsoft Entertainment *
+* Holger Schemel *
+* Detmolder Strasse 189 *
+* 33604 Bielefeld *
+* Germany *
+* e-mail: info@artsoft.org *
*----------------------------------------------------------*
*----------------------------------------------------------*
-*
msdos.c
*
+*
msdos.c
*
***********************************************************/
***********************************************************/
-#include "libgame.h"
+#include "system.h"
+
#if defined(PLATFORM_MSDOS)
#if defined(PLATFORM_MSDOS)
+#include "sound.h"
+#include "misc.h"
+#include "pcx.h"
+
+#define AllegroDefaultScreen() (display->screens[display->default_screen])
+
/* allegro driver declarations */
DECLARE_GFX_DRIVER_LIST(GFX_DRIVER_VBEAF GFX_DRIVER_VESA2L GFX_DRIVER_VESA1)
DECLARE_COLOR_DEPTH_LIST(COLOR_DEPTH_8)
/* allegro driver declarations */
DECLARE_GFX_DRIVER_LIST(GFX_DRIVER_VBEAF GFX_DRIVER_VESA2L GFX_DRIVER_VESA1)
DECLARE_COLOR_DEPTH_LIST(COLOR_DEPTH_8)
@@
-238,10
+244,10
@@
void XMapWindow(Display *display, Window window)
unsigned int width, height;
boolean mouse_off;
unsigned int width, height;
boolean mouse_off;
- x =
display->screens[display->default_screen]
.x;
- y =
display->screens[display->default_screen]
.y;
- width =
display->screens[display->default_screen]
.width;
- height =
display->screens[display->default_screen]
.height;
+ x =
AllegroDefaultScreen()
.x;
+ y =
AllegroDefaultScreen()
.y;
+ width =
AllegroDefaultScreen()
.width;
+ height =
AllegroDefaultScreen()
.height;
mouse_off = hide_mouse(display, x, y, width, height);
blit((BITMAP *)window, video_bitmap, 0, 0, x, y, width, height);
mouse_off = hide_mouse(display, x, y, width, height);
blit((BITMAP *)window, video_bitmap, 0, 0, x, y, width, height);
@@
-291,14
+297,8
@@
Display *XOpenDisplay(char *display_name)
Screen *screen;
Display *display;
BITMAP *mouse_bitmap = NULL;
Screen *screen;
Display *display;
BITMAP *mouse_bitmap = NULL;
- char *filename;
-
- filename = getPath3(options.ro_base_directory, GRAPHICS_DIRECTORY,
- MOUSE_FILENAME);
-
- mouse_bitmap = Read_PCX_to_AllegroBitmap(filename);
- free(filename);
+ mouse_bitmap = Read_PCX_to_AllegroBitmap(program.msdos_pointer_filename);
if (mouse_bitmap == NULL)
return NULL;
if (mouse_bitmap == NULL)
return NULL;
@@
-340,11
+340,11
@@
Window XCreateSimpleWindow(Display *display, Window parent, int x, int y,
video_bitmap = create_video_bitmap(XRES, YRES);
clear_to_color(video_bitmap, background);
video_bitmap = create_video_bitmap(XRES, YRES);
clear_to_color(video_bitmap, background);
-
display->screens[display->default_screen]
.video_bitmap = video_bitmap;
-
display->screens[display->default_screen]
.x = x;
-
display->screens[display->default_screen]
.y = y;
-
display->screens[display->default_screen]
.width = XRES;
-
display->screens[display->default_screen]
.height = YRES;
+
AllegroDefaultScreen()
.video_bitmap = video_bitmap;
+
AllegroDefaultScreen()
.x = x;
+
AllegroDefaultScreen()
.y = y;
+
AllegroDefaultScreen()
.width = XRES;
+
AllegroDefaultScreen()
.height = YRES;
set_mouse_sprite(display->mouse_ptr);
set_mouse_sprite(display->mouse_ptr);
@@
-353,10
+353,10
@@
Window XCreateSimpleWindow(Display *display, Window parent, int x, int y,
#endif
set_mouse_speed(1, 1);
#endif
set_mouse_speed(1, 1);
- set_mouse_range(
display->screens[display->default_screen]
.x + 1,
-
display->screens[display->default_screen]
.y + 1,
-
display->screens[display->default_screen].x + WIN_XSIZE
+ 1,
-
display->screens[display->default_screen].y + WIN_YSIZE
+ 1);
+ set_mouse_range(
AllegroDefaultScreen()
.x + 1,
+
AllegroDefaultScreen()
.y + 1,
+
AllegroDefaultScreen().x + video.width
+ 1,
+
AllegroDefaultScreen().y + video.height
+ 1);
show_video_bitmap(video_bitmap);
show_video_bitmap(video_bitmap);
@@
-425,8
+425,8
@@
void XFillRectangle(Display *display, Drawable d, GC gc, int x, int y,
if ((BITMAP *)d == video_bitmap)
{
if ((BITMAP *)d == video_bitmap)
{
- x +=
display->screens[display->default_screen]
.x;
- y +=
display->screens[display->default_screen]
.y;
+ x +=
AllegroDefaultScreen()
.x;
+ y +=
AllegroDefaultScreen()
.y;
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, x, y, width, height);
}
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, x, y, width, height);
}
@@
-446,7
+446,7
@@
Pixmap XCreatePixmap(Display *display, Drawable d, unsigned int width,
BITMAP *bitmap = NULL;
if (gfx_capabilities & GFX_HW_VRAM_BLIT &&
BITMAP *bitmap = NULL;
if (gfx_capabilities & GFX_HW_VRAM_BLIT &&
- width
== FXSIZE && height == FYSIZE
)
+ width
== gfx.scrollbuffer_width && height == gfx.scrollbuffer_height
)
bitmap = create_video_bitmap(width, height);
if (bitmap == NULL)
bitmap = create_video_bitmap(width, height);
if (bitmap == NULL)
@@
-469,14
+469,14
@@
inline void XCopyArea(Display *display, Drawable src, Drawable dest, GC gc,
if ((BITMAP *)src == video_bitmap)
{
if ((BITMAP *)src == video_bitmap)
{
- src_x +=
display->screens[display->default_screen]
.x;
- src_y +=
display->screens[display->default_screen]
.y;
+ src_x +=
AllegroDefaultScreen()
.x;
+ src_y +=
AllegroDefaultScreen()
.y;
}
if ((BITMAP *)dest == video_bitmap)
{
}
if ((BITMAP *)dest == video_bitmap)
{
- dest_x +=
display->screens[display->default_screen]
.x;
- dest_y +=
display->screens[display->default_screen]
.y;
+ dest_x +=
AllegroDefaultScreen()
.x;
+ dest_y +=
AllegroDefaultScreen()
.y;
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, dest_x, dest_y, width, height);
}
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, dest_x, dest_y, width, height);
}
@@
-645,6
+645,10
@@
void XFreeGC(Display *display, GC gc)
free(gcv);
}
free(gcv);
}
+void XUnmapWindow(Display *display, Window window)
+{
+}
+
void XCloseDisplay(Display *display)
{
BITMAP *bitmap = video_bitmap;
void XCloseDisplay(Display *display)
{
BITMAP *bitmap = video_bitmap;
@@
-812,8
+816,8
@@
int XPending(Display *display)
pending_events++;
xmotion = (XMotionEvent *)&event_buffer[pending_events];
xmotion->type = MotionNotify;
pending_events++;
xmotion = (XMotionEvent *)&event_buffer[pending_events];
xmotion->type = MotionNotify;
- xmotion->x = mouse_x -
display->screens[display->default_screen]
.x;
- xmotion->y = mouse_y -
display->screens[display->default_screen]
.y;
+ xmotion->x = mouse_x -
AllegroDefaultScreen()
.x;
+ xmotion->y = mouse_y -
AllegroDefaultScreen()
.y;
}
/* mouse button event */
}
/* mouse button event */
@@
-831,8
+835,8
@@
int XPending(Display *display)
xbutton = (XButtonEvent *)&event_buffer[pending_events];
xbutton->type = (mouse_b & bitmask ? ButtonPress : ButtonRelease);
xbutton->button = mapping[i];
xbutton = (XButtonEvent *)&event_buffer[pending_events];
xbutton->type = (mouse_b & bitmask ? ButtonPress : ButtonRelease);
xbutton->button = mapping[i];
- xbutton->x = mouse_x -
display->screens[display->default_screen]
.x;
- xbutton->y = mouse_y -
display->screens[display->default_screen]
.y;
+ xbutton->x = mouse_x -
AllegroDefaultScreen()
.x;
+ xbutton->y = mouse_y -
AllegroDefaultScreen()
.y;
}
}
last_mouse_b = mouse_b;
}
}
last_mouse_b = mouse_b;
@@
-868,10
+872,10
@@
void XDrawLine(Display *display, Drawable d, GC gc,
if ((BITMAP *)d == video_bitmap)
{
if ((BITMAP *)d == video_bitmap)
{
- x1 +=
display->screens[display->default_screen]
.x;
- y1 +=
display->screens[display->default_screen]
.y;
- x2 +=
display->screens[display->default_screen]
.x;
- y2 +=
display->screens[display->default_screen]
.y;
+ x1 +=
AllegroDefaultScreen()
.x;
+ y1 +=
AllegroDefaultScreen()
.y;
+ x2 +=
AllegroDefaultScreen()
.x;
+ y2 +=
AllegroDefaultScreen()
.y;
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, MIN(x1, x2), MIN(y1, y2),
MAX(x1, x2) - MIN(x1, x2),
freeze_mouse_flag = TRUE;
mouse_off = hide_mouse(display, MIN(x1, x2), MIN(y1, y2),
MAX(x1, x2) - MIN(x1, x2),
@@
-890,12
+894,16
@@
void XDestroyImage(XImage *ximage)
{
}
{
}
+void XDestroyWindow(Display *display, Window window)
+{
+}
+
Bool XQueryPointer(Display *display, Window window,
Window *root, Window *child, int *root_x, int *root_y,
int *win_x, int *win_y, unsigned int *mask)
{
Bool XQueryPointer(Display *display, Window window,
Window *root, Window *child, int *root_x, int *root_y,
int *win_x, int *win_y, unsigned int *mask)
{
- *win_x = mouse_x -
display->screens[display->default_screen]
.x;
- *win_y = mouse_y -
display->screens[display->default_screen]
.y;
+ *win_x = mouse_x -
AllegroDefaultScreen()
.x;
+ *win_y = mouse_y -
AllegroDefaultScreen()
.y;
return True;
}
return True;
}
@@
-911,12
+919,12
@@
void XAutoRepeatOff(Display *display)
keyboard_auto_repeat = FALSE;
}
keyboard_auto_repeat = FALSE;
}
-
boolean
MSDOSOpenAudio(void)
+
Bool
MSDOSOpenAudio(void)
{
return allegro_init_audio();
}
{
return allegro_init_audio();
}
-
boolean
MSDOSCloseAudio(void)
+
void
MSDOSCloseAudio(void)
{
/* nothing to be done here */
}
{
/* nothing to be done here */
}