-Version 1.5.0
--------------
+Release Version 2.0.0 [01 JAN 2001]
+-----------------------------------
+ - major code redesign to maintain generic game functions in a separate
+ library and make it easier to port the game to new targets like SDL
- can be compiled with SDL library to build native Windows version
+ - DOS and Windows versions can be compiled with gcc cross-compiler
- trying to open already busy audio device does not block the game
- fixed network playing bug (patch from web site)
- SDL version can load and play music modules
level directory, standalone server execution and verbose
execution
-Release Version 1.1 [???] [NOT RELEASED]
-----------------------------------------
+Version 1.1 [???] [NOT RELEASED]
+--------------------------------
- new (but broken) GIF graphics loader to be independent
from the XPM library and to replace all graphics by GIF files
-Release Version 1.0 [9 APR 1997] [NOT RELEASED]
------------------------------------------------
+Version 1.0 [9 APR 1997] [NOT RELEASED]
+---------------------------------------
- the game now contains many really playable levels,
not only a few levels for testing
- the game is now even better playable by keyboard
to make it possible to go on with a game at any tape
position
-Prerelease Version 0.9b2 [21 NOV 1995] [NOT RELEASED]
------------------------------------------------------
+Version 0.9b2 [21 NOV 1995] [NOT RELEASED]
+------------------------------------------
- new game elements
Prerelease Version 0.9b [4 NOV 1995]
-Installation instructions for Rocks'n'Diamonds 1.2.0
-====================================================
+Installation instructions for Rocks'n'Diamonds
+==============================================
Compilation
-----------
-If your system supports Linux/i386/ELF/libc5 executables (Linux package)
+If your system supports Linux/i386/ELF/glibc executables (Linux package)
or if you run DOS/Windows (DOS package), you can directly use the included
precompiled binary.
If you use a different system, just recompile the game:
-If you use Linux with gcc or DOS/Windows with djgpp, just try 'make'
+If you use Linux with gcc or DOS or Windows 3.x with djgpp, just try 'make'
which should work without problems.
If you use SUN/Solaris with gcc and GNU make, try 'make solaris'.
+To build the game with SDL support (needed for fullscreen and MOD support),
+type "make sdl". You need at least SDL version 1.1.x and the additional
+SDL libraries SDL_image and SDL_mixer. To get a recent version of the SDL
+library, see http://www.libsdl.org.
+
If the above doesn't work, edit the Makefile in the top level directory.
If it doesn't work either, edit the Makefile in the 'src' subdirectory.
If you had to modify any Makefile to compile it, please drop me a note
-about it to 'aeglos@valinor.owl.de'. Thanks!
+about it to 'info@artsoft.org'. Thanks!
Customization
If you have any comments, additions or modifications to the Makefile(s),
-please send me mail: 'aeglos@valinor.owl.de'. Thanks!
-
-05-DEC-1998, Holger Schemel
+please send me mail: 'info@artsoft.org'. Thanks!
dist-msdos:
./Scripts/make_dist.sh dos .
-dist: dist-unix dist-msdos
+dist-win32:
+ ./Scripts/make_dist.sh win .
+
+dist-clean:
+ @$(MAKE_CMD) dist-clean
+
+dist: dist-unix dist-msdos dist-win32
depend dep:
$(MAKE_CMD) depend
This menu will show the text 'team' instead of 'name' if you activated
the team (local multiplayer) mode in the setup menu. See below.
-The menue 'level'
+The menu 'level'
-----------------
Choose any level from the current level series you want. The former
'handicap' limitation in choosing levels has been removed because of
endif
ifeq ($(PLATFORM),unix)
-PROFILING = -pg
+PROFILING_FLAGS = -pg
endif
ifeq ($(PLATFORM),cross-msdos)
CONFIG = $(CONFIG_GAME_DIR) $(CONFIG_SCORE_ENTRIES) $(JOYSTICK)
DEBUG = -DDEBUG -g
+# PROFILING = $(PROFILING_FLAGS)
-OPTIONS = $(DEBUG) -Wall # only for debugging purposes
+# OPTIONS = $(DEBUG) -Wall # only for debugging purposes
# OPTIONS = $(DEBUG) -O3 -Wall # only for debugging purposes
# OPTIONS = $(DEBUG) -Wall -ansi -pedantic # only for debugging purposes
# OPTIONS = -O3 -Wall -ansi -pedantic
-# OPTIONS = -O3 -Wall
+OPTIONS = -O3 -Wall
# OPTIONS = -O3
# OPTIONS = -DSYSV -Ae # may be needed for HP-UX
.c.o:
$(CC) $(PROFILING) $(CFLAGS) -c $*.c
-clean:
+clean-obj:
$(MAKE) -C $(LIBDIR) clean
$(RM) $(OBJS)
$(RM) $(LIBGAME)
+
+clean-bin:
$(RM) $(PROGNAME)
$(RM) ../*.exe
+clean: clean-obj clean-bin
+
#-----------------------------------------------------------------------------#
# development only stuff #
#-----------------------------------------------------------------------------#
+dist-clean: clean-obj
+
depend:
$(MAKE) -C $(LIBDIR) depend
for i in $(SRCS); do $(CPP) $(CFLAGS) -M $$i; done > .depend
Pixmap icon_pixmap, iconmask_pixmap;
unsigned int icon_width, icon_height;
int icon_hot_x, icon_hot_y;
+#if 0
char icon_filename[256];
+#endif
XSizeHints size_hints;
XWMHints wm_hints;
XClassHint class_hints;
options.ro_base_directory, GRAPHICS_DIRECTORY,
icon_pic.picture_filename);
#endif
- XReadBitmapFile(display, new_window->drawable, program.x11_icon_filename,
- &icon_width, &icon_height,
- &icon_pixmap, &icon_hot_x, &icon_hot_y);
- if (!icon_pixmap)
- Error(ERR_EXIT, "cannot read icon bitmap file '%s'", icon_filename);
+ if (XReadBitmapFile(display, new_window->drawable,
+ program.x11_icon_filename,
+ &icon_width, &icon_height, &icon_pixmap,
+ &icon_hot_x, &icon_hot_y) != BitmapSuccess)
+ Error(ERR_EXIT, "cannot read icon bitmap file '%s'",
+ program.x11_icon_filename);
#if 0
sprintf(icon_filename, "%s/%s/%s",
options.ro_base_directory, GRAPHICS_DIRECTORY,
icon_pic.picturemask_filename);
#endif
- XReadBitmapFile(display, new_window->drawable, program.x11_iconmask_filename,
- &icon_width, &icon_height,
- &iconmask_pixmap, &icon_hot_x, &icon_hot_y);
- if (!iconmask_pixmap)
- Error(ERR_EXIT, "cannot read icon bitmap file '%s'", icon_filename);
+ if (XReadBitmapFile(display, new_window->drawable,
+ program.x11_iconmask_filename,
+ &icon_width, &icon_height, &iconmask_pixmap,
+ &icon_hot_x, &icon_hot_y) != BitmapSuccess)
+ Error(ERR_EXIT, "cannot read icon bitmap file '%s'",
+ program.x11_iconmask_filename);
size_hints.width = size_hints.min_width = size_hints.max_width = width;
size_hints.height = size_hints.min_height = size_hints.max_height = height;