From 852a8eef1e8858a40da0be4093eba3deaf468f51 Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Mon, 1 Oct 2007 01:43:20 +0200 Subject: [PATCH] rnd-20071001-1-src --- Makefile | 14 +++---- src/Makefile | 90 ++++++++++++++++++++++++++------------------ src/conftime.h | 2 +- src/files.c | 12 ++++-- src/libgame/sdl.c | 7 ++-- src/libgame/setup.c | 77 +++++++++++++++---------------------- src/libgame/system.h | 21 ++++++----- src/main.h | 6 +-- src/tools.c | 6 ++- 9 files changed, 125 insertions(+), 110 deletions(-) diff --git a/Makefile b/Makefile index a7a30e7d..a2ceff1d 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # ============================================================================= # Rocks'n'Diamonds Makefile # ----------------------------------------------------------------------------- -# (c) 1995-2006 Holger Schemel +# (c) 1995-2007 Holger Schemel # ============================================================================= # ----------------------------------------------------------------------------- @@ -38,8 +38,12 @@ X11_PATH = /usr/X11R6 # SCORE_ENTRIES = MANY_PER_NAME # paths for cross-compiling (only needed for non-native MS-DOS and Win32 build) -CROSS_PATH_MSDOS=/usr/local/cross-msdos/i386-msdosdjgpp -CROSS_PATH_WIN32=/usr/local/cross-tools/i386-mingw32msvc +CROSS_PATH_MSDOS = /usr/local/cross-msdos/i386-msdosdjgpp +CROSS_PATH_WIN32 = /usr/local/cross-tools/i386-mingw32msvc + +# compile special edition of R'n'D instead of the normal (classic) version +# SPECIAL_EDITION = rnd_jue + # ----------------------------------------------------------------------------- # there should be no need to change anything below @@ -91,10 +95,6 @@ cross-msdos: cross-win32: @PATH=$(CROSS_PATH_WIN32)/bin:${PATH} $(MAKE_CMD) PLATFORM=cross-win32 -cross-win32-jue: - @PATH=$(CROSS_PATH_WIN32)/bin:${PATH} $(MAKE_CMD) PLATFORM=cross-win32 \ - SPECIAL_ICON=jue - clean: @$(MAKE_CMD) clean diff --git a/src/Makefile b/src/Makefile index 8d8df942..a7c587c2 100644 --- a/src/Makefile +++ b/src/Makefile @@ -10,7 +10,7 @@ .EXPORT_ALL_VARIABLES: -ifndef PLATFORM # no platform specified -- try auto detection +ifndef PLATFORM # unknown platform -- try auto detection ifdef COMSPEC PLATFORM = msdos else @@ -18,7 +18,7 @@ PLATFORM = unix endif endif -ifdef X11_PATH # path to X11 specified by top level Makefile +ifdef X11_PATH # path to X11 from top level Makefile XINC_PATH = $(X11_PATH)/include XLIB_PATH = $(X11_PATH)/lib X11_INCL = -I$(XINC_PATH) @@ -28,39 +28,36 @@ endif AR = ar RANLIB = ranlib ETAGS = etags +RM = rm -f BMP2ICO = bmp2ico WINDRES = windres -ifeq ($(PLATFORM),msdos) # MS-DOS native compiling - -RM = del - -PROGBASE = rocks -PROGNAME = ../$(PROGBASE).exe +PROGBASE = rocksndiamonds -SYS_CFLAGS = -DTARGET_X11 -SYS_LDFLAGS = -s -lalleg +ifdef SPECIAL_EDITION # create special edition +PROGBASE = $(SPECIAL_EDITION) +endif -else # Unix or cross-compiling for MS-DOS and Win32 +PROGNAME = ../$(PROGBASE) -RM = rm -f -PROGBASE = rocksndiamonds -PROGNAME = ../$(PROGBASE) +# ----------------------------------------------------------------------------- +# configuring platform +# ----------------------------------------------------------------------------- -ifeq ($(PLATFORM),solaris) +ifeq ($(PLATFORM),solaris) # native compiling to Solaris EXTRA_LDFLAGS = -lnsl -lsocket -R$(XLIB_PATH) PLATFORM = unix endif -ifeq ($(PLATFORM),macosx) +ifeq ($(PLATFORM),macosx) # native compiling to Mac OS X EXTRA_LDFLAGS = -lstdc++ PLATFORM = unix TARGET = sdl endif -ifeq ($(PLATFORM),os2) +ifeq ($(PLATFORM),os2) # native compiling to OS/2 RANLIB = echo PROGNAME = ../$(PROGBASE).exe EXTRA_CFLAGS = -Zbin-files -D__ST_MT_ERRNO__ -Zmtd -fomit-frame-pointer @@ -69,63 +66,84 @@ PLATFORM = unix TARGET = x11 endif -ifeq ($(PLATFORM),unix) +ifeq ($(PLATFORM),unix) # native compiling to Unix (generic) PROFILING_FLAGS = -pg endif -ifeq ($(PLATFORM),cross-msdos) +ifeq ($(PLATFORM),cross-win32) # cross-compiling to Windows +PROGNAME = ../$(PROGBASE).exe +EXTRA_LDFLAGS = -lshfolder -lwsock32 +TARGET = sdl +endif + +ifeq ($(PLATFORM),cross-msdos) # cross-compiling to MS-DOS PROGBASE = rocks PROGNAME = ../$(PROGBASE).exe TARGET = allegro endif -ifeq ($(PLATFORM),cross-win32) -EXTRA_LDFLAGS = -lshfolder -lwsock32 +ifeq ($(PLATFORM),msdos) # native compiling to MS-DOS +PROGBASE = rocks PROGNAME = ../$(PROGBASE).exe -TARGET = sdl +SYS_CFLAGS = -DTARGET_X11 +SYS_LDFLAGS = -s -lalleg +RM = del endif -ifeq ($(TARGET),x11) + +# ----------------------------------------------------------------------------- +# configuring target +# ----------------------------------------------------------------------------- + +ifeq ($(TARGET),x11) # compiling for X11 target SYS_CFLAGS = -DTARGET_X11 $(X11_INCL) SYS_LDFLAGS = $(X11_LIBS) endif -ifeq ($(TARGET),sdl) +ifeq ($(TARGET),sdl) # compiling for SDL target SYS_CFLAGS = -DTARGET_SDL $(shell sdl-config --cflags) SDL_LIBS = -lSDL_image -lSDL_mixer -lSDL_net -lsmpeg SYS_LDFLAGS = $(SDL_LIBS) $(shell sdl-config --libs) endif -ifeq ($(TARGET),sdl-static) +ifeq ($(TARGET),sdl-static) # compiling for SDL target (static) SYS_CFLAGS = -DTARGET_SDL $(shell sdl-config --cflags) SDL_LIBS = -lSDL_image -lSDL_mixer -lSDL_net -lsmpeg SYS_LDFLAGS = $(SDL_LIBS) $(shell sdl-config --static-libs) endif -ifeq ($(TARGET),allegro) +ifeq ($(TARGET),allegro) # compiling for Allegro target SYS_CFLAGS = -DTARGET_ALLEGRO -I$(CROSS_PATH_MSDOS)/include SYS_LDFLAGS = -lalleg endif -endif # (PLATFORM != msdos) +# ----------------------------------------------------------------------------- +# configuring compile-time definitions +# ----------------------------------------------------------------------------- -ifdef RO_GAME_DIR # path to read-only game data specified +ifdef RO_GAME_DIR # path to read-only game data specified CONFIG_RO_GAME_DIR = -DRO_GAME_DIR="\"$(RO_GAME_DIR)\"" endif -ifdef RW_GAME_DIR # path to writable game data specified +ifdef RW_GAME_DIR # path to writable game data specified CONFIG_RW_GAME_DIR = -DRW_GAME_DIR="\"$(RW_GAME_DIR)\"" endif -ifdef SCORE_ENTRIES # number of score entries per player specified +ifdef SCORE_ENTRIES # number of score entries per player CONFIG_SCORE_ENTRIES = -D$(SCORE_ENTRIES) endif -CONFIG_GAME_DIR = $(CONFIG_RO_GAME_DIR) $(CONFIG_RW_GAME_DIR) +ifdef SPECIAL_EDITION +ifeq ($(SPECIAL_EDITION),rnd_jue) # create special edition +CONFIG_SPECIAL = -DCREATE_SPECIAL_EDITION -DCREATE_SPECIAL_EDITION_RND_JUE +endif +endif +CONFIG_GAME_DIR = $(CONFIG_RO_GAME_DIR) $(CONFIG_RW_GAME_DIR) +CONFIG_GAME = $(CONFIG_GAME_DIR) $(CONFIG_SCORE_ENTRIES) $(CONFIG_SPECIAL) -CONFIG = $(CONFIG_GAME_DIR) $(CONFIG_SCORE_ENTRIES) $(JOYSTICK) +CONFIG = $(CONFIG_GAME) $(JOYSTICK) DEBUG = -DDEBUG -g # PROFILING = $(PROFILING_FLAGS) @@ -136,9 +154,9 @@ OPTIONS = $(DEBUG) -Wall # only for debugging purposes # OPTIONS = -O3 -Wall -ansi -pedantic # OPTIONS = -O3 -Wall # OPTIONS = -O3 -# OPTIONS = -DSYSV -Ae # may be needed for HP-UX +# OPTIONS = -DSYSV -Ae # may be needed for HP-UX -ifdef BUILD_DIST # distribution build +ifdef BUILD_DIST # distribution build OPTIONS = -O3 -Wall endif @@ -214,8 +232,8 @@ RNDLIBS = $(LIBGAME) $(GAME_EM) ICONBASE = windows_icon ifeq ($(PLATFORM),cross-win32) -ifdef SPECIAL_ICON -ICONSUFFIX = 32x32_$(SPECIAL_ICON) +ifdef SPECIAL_EDITION +ICONSUFFIX = 32x32_$(SPECIAL_EDITION) else ICONSUFFIX = 32x32 endif diff --git a/src/conftime.h b/src/conftime.h index 0baa722a..f37b12c2 100644 --- a/src/conftime.h +++ b/src/conftime.h @@ -1 +1 @@ -#define COMPILE_DATE_STRING "2007-09-27 09:57" +#define COMPILE_DATE_STRING "2007-09-30 19:56" diff --git a/src/files.c b/src/files.c index 8827e08d..3b51e6e2 100644 --- a/src/files.c +++ b/src/files.c @@ -8292,9 +8292,9 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->prefer_aga_graphics = TRUE; si->game_frame_delay = GAME_FRAME_DELAY; - si->graphics_set = getStringCopy(GFX_CLASSIC_SUBDIR); - si->sounds_set = getStringCopy(SND_CLASSIC_SUBDIR); - si->music_set = getStringCopy(MUS_CLASSIC_SUBDIR); + si->graphics_set = getStringCopy(GFX_DEFAULT_SUBDIR); + si->sounds_set = getStringCopy(SND_DEFAULT_SUBDIR); + si->music_set = getStringCopy(MUS_DEFAULT_SUBDIR); si->override_level_graphics = FALSE; si->override_level_sounds = FALSE; si->override_level_music = FALSE; @@ -8353,6 +8353,12 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->system.audio_fragment_size = DEFAULT_AUDIO_FRAGMENT_SIZE; si->options.verbose = FALSE; + +#if defined(CREATE_SPECIAL_EDITION_RND_JUE) + si->handicap = FALSE; + si->fullscreen = TRUE; + si->auto_override_artwork = TRUE; +#endif } static void setSetupInfoToDefaults_EditorCascade(struct SetupInfo *si) diff --git a/src/libgame/sdl.c b/src/libgame/sdl.c index 66320a5b..ab3ac82d 100644 --- a/src/libgame/sdl.c +++ b/src/libgame/sdl.c @@ -402,8 +402,6 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height, int src_x = x, src_y = y; int dst_x = x, dst_y = y; unsigned int time_last, time_current; - float alpha; - int alpha_final; src_rect.x = src_x; src_rect.y = src_y; @@ -498,6 +496,7 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height, int ypos[melt_columns]; int max_steps = height / 8 + 32; int steps_done = 0; + float steps = 0; int i; SDL_BlitSurface(surface_source, &src_rect, surface_screen, &dst_rect); @@ -520,7 +519,6 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height, while (!done) { - float steps; int steps_final; time_last = time_current; @@ -610,6 +608,9 @@ void SDLFadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height, } else { + float alpha; + int alpha_final; + for (alpha = 0.0; alpha < 255.0;) { time_last = time_current; diff --git a/src/libgame/setup.c b/src/libgame/setup.c index df1dac7b..d69c6537 100644 --- a/src/libgame/setup.c +++ b/src/libgame/setup.c @@ -262,34 +262,14 @@ static char *getDefaultMusicDir(char *music_subdir) return music_dir; } -#if 1 -static char *getDefaultArtworkSet(int type) -{ - return (type == TREE_TYPE_GRAPHICS_DIR ? "gfx_classic" : - type == TREE_TYPE_SOUNDS_DIR ? "snd_classic" : - type == TREE_TYPE_MUSIC_DIR ? "mus_classic" : ""); -} - -static char *getDefaultArtworkDir(int type) -{ - return (type == TREE_TYPE_GRAPHICS_DIR ? - getDefaultGraphicsDir("gfx_classic") : - type == TREE_TYPE_SOUNDS_DIR ? - getDefaultSoundsDir("snd_classic") : - type == TREE_TYPE_MUSIC_DIR ? - getDefaultMusicDir("mus_classic") : ""); -} - -#else - -static char *getDefaultArtworkSet(int type) +static char *getClassicArtworkSet(int type) { return (type == TREE_TYPE_GRAPHICS_DIR ? GFX_CLASSIC_SUBDIR : type == TREE_TYPE_SOUNDS_DIR ? SND_CLASSIC_SUBDIR : type == TREE_TYPE_MUSIC_DIR ? MUS_CLASSIC_SUBDIR : ""); } -static char *getDefaultArtworkDir(int type) +static char *getClassicArtworkDir(int type) { return (type == TREE_TYPE_GRAPHICS_DIR ? getDefaultGraphicsDir(GFX_CLASSIC_SUBDIR) : @@ -298,7 +278,6 @@ static char *getDefaultArtworkDir(int type) type == TREE_TYPE_MUSIC_DIR ? getDefaultMusicDir(MUS_CLASSIC_SUBDIR) : ""); } -#endif static char *getUserGraphicsDir() { @@ -358,12 +337,18 @@ char *setLevelArtworkDir(TreeInfo *ti) *artwork_path_ptr = getStringCopy(getSetupArtworkDir(level_artwork)); else { - /* No (or non-existing) artwork configured in "levelinfo.conf". This would - normally result in using the artwork configured in the setup menu. But - if an artwork subdirectory exists (which might contain custom artwork - or an artwork configuration file), this level artwork must be treated - as relative to the default "classic" artwork, not to the artwork that - is currently configured in the setup menu. */ + /* + No (or non-existing) artwork configured in "levelinfo.conf". This would + normally result in using the artwork configured in the setup menu. But + if an artwork subdirectory exists (which might contain custom artwork + or an artwork configuration file), this level artwork must be treated + as relative to the default "classic" artwork, not to the artwork that + is currently configured in the setup menu. + + Update: For "special" versions of R'n'D (like "R'n'D jue"), do not use + the "default" artwork (which would be "jue0" for "R'n'D jue"), but use + the real "classic" artwork from the original R'n'D (like "gfx_classic"). + */ char *dir = getPath2(getCurrentLevelDir(), ARTWORK_DIRECTORY(ti->type)); @@ -371,8 +356,8 @@ char *setLevelArtworkDir(TreeInfo *ti) if (fileExists(dir)) { - *artwork_path_ptr = getStringCopy(getDefaultArtworkDir(ti->type)); - *artwork_set_ptr = getStringCopy(getDefaultArtworkSet(ti->type)); + *artwork_path_ptr = getStringCopy(getClassicArtworkDir(ti->type)); + *artwork_set_ptr = getStringCopy(getClassicArtworkSet(ti->type)); } else { @@ -581,7 +566,7 @@ char *getLevelSetTitleMessageFilename(int nr, boolean initial) } /* 5th try: look for default artwork in new default artwork directory */ - filename = getPath2(getDefaultGraphicsDir(GFX_CLASSIC_SUBDIR), basename); + filename = getPath2(getDefaultGraphicsDir(GFX_DEFAULT_SUBDIR), basename); if (fileExists(filename)) return filename; @@ -671,7 +656,7 @@ char *getCustomImageFilename(char *basename) } /* 4th try: look for default artwork in new default artwork directory */ - filename = getPath2(getDefaultGraphicsDir(GFX_CLASSIC_SUBDIR), basename); + filename = getPath2(getDefaultGraphicsDir(GFX_DEFAULT_SUBDIR), basename); if (fileExists(filename)) return filename; @@ -682,7 +667,7 @@ char *getCustomImageFilename(char *basename) if (fileExists(filename)) return filename; -#if CREATE_SPECIAL_EDITION +#if defined(CREATE_SPECIAL_EDITION) free(filename); /* !!! INSERT WARNING HERE TO REPORT MISSING ARTWORK FILES !!! */ @@ -744,7 +729,7 @@ char *getCustomSoundFilename(char *basename) } /* 4th try: look for default artwork in new default artwork directory */ - filename = getPath2(getDefaultSoundsDir(SND_CLASSIC_SUBDIR), basename); + filename = getPath2(getDefaultSoundsDir(SND_DEFAULT_SUBDIR), basename); if (fileExists(filename)) return filename; @@ -755,7 +740,7 @@ char *getCustomSoundFilename(char *basename) if (fileExists(filename)) return filename; -#if CREATE_SPECIAL_EDITION +#if defined(CREATE_SPECIAL_EDITION) free(filename); /* 6th try: look for fallback artwork in old default artwork directory */ @@ -812,7 +797,7 @@ char *getCustomMusicFilename(char *basename) } /* 4th try: look for default artwork in new default artwork directory */ - filename = getPath2(getDefaultMusicDir(MUS_CLASSIC_SUBDIR), basename); + filename = getPath2(getDefaultMusicDir(MUS_DEFAULT_SUBDIR), basename); if (fileExists(filename)) return filename; @@ -823,7 +808,7 @@ char *getCustomMusicFilename(char *basename) if (fileExists(filename)) return filename; -#if CREATE_SPECIAL_EDITION +#if defined(CREATE_SPECIAL_EDITION) free(filename); /* 6th try: look for fallback artwork in old default artwork directory */ @@ -906,7 +891,7 @@ char *getCustomMusicDirectory(void) } /* 4th try: look for default artwork in new default artwork directory */ - directory = getStringCopy(getDefaultMusicDir(MUS_CLASSIC_SUBDIR)); + directory = getStringCopy(getDefaultMusicDir(MUS_DEFAULT_SUBDIR)); if (fileExists(directory)) return directory; @@ -3522,7 +3507,7 @@ void LoadArtworkInfo() getTreeInfoFromIdentifier(artwork.gfx_first, setup.graphics_set); if (artwork.gfx_current == NULL) artwork.gfx_current = - getTreeInfoFromIdentifier(artwork.gfx_first, GFX_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.gfx_first, GFX_DEFAULT_SUBDIR); if (artwork.gfx_current == NULL) artwork.gfx_current = getFirstValidTreeInfoEntry(artwork.gfx_first); @@ -3530,7 +3515,7 @@ void LoadArtworkInfo() getTreeInfoFromIdentifier(artwork.snd_first, setup.sounds_set); if (artwork.snd_current == NULL) artwork.snd_current = - getTreeInfoFromIdentifier(artwork.snd_first, SND_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.snd_first, SND_DEFAULT_SUBDIR); if (artwork.snd_current == NULL) artwork.snd_current = getFirstValidTreeInfoEntry(artwork.snd_first); @@ -3538,7 +3523,7 @@ void LoadArtworkInfo() getTreeInfoFromIdentifier(artwork.mus_first, setup.music_set); if (artwork.mus_current == NULL) artwork.mus_current = - getTreeInfoFromIdentifier(artwork.mus_first, MUS_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.mus_first, MUS_DEFAULT_SUBDIR); if (artwork.mus_current == NULL) artwork.mus_current = getFirstValidTreeInfoEntry(artwork.mus_first); @@ -3648,7 +3633,7 @@ void LoadLevelArtworkInfo() getTreeInfoFromIdentifier(artwork.gfx_first, setup.graphics_set); if (artwork.gfx_current == NULL) artwork.gfx_current = - getTreeInfoFromIdentifier(artwork.gfx_first, GFX_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.gfx_first, GFX_DEFAULT_SUBDIR); if (artwork.gfx_current == NULL) artwork.gfx_current = getFirstValidTreeInfoEntry(artwork.gfx_first); } @@ -3659,7 +3644,7 @@ void LoadLevelArtworkInfo() getTreeInfoFromIdentifier(artwork.snd_first, setup.sounds_set); if (artwork.snd_current == NULL) artwork.snd_current = - getTreeInfoFromIdentifier(artwork.snd_first, SND_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.snd_first, SND_DEFAULT_SUBDIR); if (artwork.snd_current == NULL) artwork.snd_current = getFirstValidTreeInfoEntry(artwork.snd_first); } @@ -3670,7 +3655,7 @@ void LoadLevelArtworkInfo() getTreeInfoFromIdentifier(artwork.mus_first, setup.music_set); if (artwork.mus_current == NULL) artwork.mus_current = - getTreeInfoFromIdentifier(artwork.mus_first, MUS_CLASSIC_SUBDIR); + getTreeInfoFromIdentifier(artwork.mus_first, MUS_DEFAULT_SUBDIR); if (artwork.mus_current == NULL) artwork.mus_current = getFirstValidTreeInfoEntry(artwork.mus_first); } @@ -3846,7 +3831,7 @@ void LoadLevelSetup_LastSeries() /* always start with reliable default values */ leveldir_current = getFirstValidTreeInfoEntry(leveldir_first); -#if CREATE_SPECIAL_EDITION_RND_JUE +#if defined(CREATE_SPECIAL_EDITION_RND_JUE) leveldir_current = getTreeInfoFromIdentifier(leveldir_first, "jue_start"); if (leveldir_current == NULL) diff --git a/src/libgame/system.h b/src/libgame/system.h index 4f8c2f93..9b077498 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -48,9 +48,6 @@ #define FULLSCREEN_NOT_AVAILABLE FALSE #define FULLSCREEN_AVAILABLE TRUE -#define CREATE_SPECIAL_EDITION FALSE -#define CREATE_SPECIAL_EDITION_RND_JUE FALSE - /* default input keys */ #define DEFAULT_KEY_LEFT KSYM_Left #define DEFAULT_KEY_RIGHT KSYM_Right @@ -342,22 +339,26 @@ #define CACHE_DIRECTORY "cache" #if !defined(PLATFORM_MSDOS) -#if CREATE_SPECIAL_EDITION_RND_JUE -#define GFX_CLASSIC_SUBDIR "jue0" -#define SND_CLASSIC_SUBDIR "jue0" -#define MUS_CLASSIC_SUBDIR "jue0" -#else #define GFX_CLASSIC_SUBDIR "gfx_classic" #define SND_CLASSIC_SUBDIR "snd_classic" #define MUS_CLASSIC_SUBDIR "mus_classic" -#endif #else #define GFX_CLASSIC_SUBDIR "gfx_orig" #define SND_CLASSIC_SUBDIR "snd_orig" #define MUS_CLASSIC_SUBDIR "mus_orig" #endif -#if CREATE_SPECIAL_EDITION +#if defined(CREATE_SPECIAL_EDITION_RND_JUE) +#define GFX_DEFAULT_SUBDIR "jue0" +#define SND_DEFAULT_SUBDIR "jue0" +#define MUS_DEFAULT_SUBDIR "jue0" +#else +#define GFX_DEFAULT_SUBDIR GFX_CLASSIC_SUBDIR +#define SND_DEFAULT_SUBDIR SND_CLASSIC_SUBDIR +#define MUS_DEFAULT_SUBDIR MUS_CLASSIC_SUBDIR +#endif + +#if defined(CREATE_SPECIAL_EDITION) #define GFX_FALLBACK_FILENAME "fallback.pcx" #define SND_FALLBACK_FILENAME "fallback.wav" #define MUS_FALLBACK_FILENAME "fallback.wav" diff --git a/src/main.h b/src/main.h index fd26e494..763195b9 100644 --- a/src/main.h +++ b/src/main.h @@ -1960,11 +1960,11 @@ #define PROGRAM_GAME_BY_STRING "A Game by Artsoft Entertainment" #define PROGRAM_UNIX_DATADIR_STRING ".rocksndiamonds" -#if CREATE_SPECIAL_EDITION_RND_JUE +#if defined(CREATE_SPECIAL_EDITION_RND_JUE) #undef PROGRAM_TITLE_STRING -#define PROGRAM_TITLE_STRING "R'n'D - jue" +#define PROGRAM_TITLE_STRING "R'n'D jue" #undef PROGRAM_UNIX_DATADIR_STRING -#define PROGRAM_UNIX_DATADIR_STRING ".rocksndiamonds-jue" +#define PROGRAM_UNIX_DATADIR_STRING ".rnd_jue" #endif #define ICON_TITLE_STRING PROGRAM_TITLE_STRING diff --git a/src/tools.c b/src/tools.c index 3d3930df..5bf10171 100644 --- a/src/tools.c +++ b/src/tools.c @@ -427,8 +427,12 @@ void BackToFront() if (!global.fps_slowdown) info1[0] = '\0'; - sprintf(text, "%.1f fps%s", global.frames_per_second, info1); + sprintf(text, "%04.1f fps%s", global.frames_per_second, info1); +#if 1 + DrawTextExt(window, SX + SXSIZE + SX, 0, text, FONT_TEXT_2, BLIT_OPAQUE); +#else DrawTextExt(window, SX, SY, text, FONT_TEXT_2, BLIT_OPAQUE); +#endif } FlushDisplay(); -- 2.34.1