pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

refkeen: update to refkeen-20170401

Module Name:	pkgsrc-wip
Committed By:	Yorick Hardy <>
Pushed By:	yhardy
Date:		Sun Apr 2 12:15:49 2017 +0200
Changeset:	693950d96f9dec9ded6518a717c467a51b3cfaf8

Modified Files:

Log Message:
refkeen: update to refkeen-20170401


Apr 01, 2017 (v0.17.0):

  * A POSSIBLE REGRESSION: An unexpectedly low(er) framerate may be reproduced on Android, at least in the Catacombs.
  * ANOTHER WARNING: If the classic controller scheme is in use, then re-calibration may be required. This is the case due to a few internal changes, with one of them fixing a possible division by zero error. The latter could be reproduced in Keen Dreams v1.00,
    for which support is now in (see below).
  * Not well-tested: Launcher window is now positioned in the same display as the in-game window, in multi-display setups. Also, there's a new setting, which tells if the last display is saved for later runs. It's toggled on by default.
  * -cfgdir related bug fix, timing fixes and other misc. fixes.
  * If you don't mind building your own binaries from the sources, then compatibility with OS X/macOS is now in (thanks rhoenie and Dominus). Note that this isn't well-tested, due to the lack of direct access to a Mac.
  * Added support for Keen Dreams v1.00. Internally, this includes the ability to read data from KDREAMS.EXE as originally released, being packed with PKLITE v1.05. Doing this is now possible thanks to depklite, which is more-or-less a port from C++11 to C99 of
    OpenTESArena's ExeUnpacker.
  * Known issue: Warping to a non-existant level in Keen Dreams v1.00 (e.g., level 6) may, essentially, lead to undefined behaviors.
  * Added partial support for the Keen Dreams 2015 re-release (Steam, IndieGameStand). Note that this support is essentially a bonus, and it's still recommended to use the data from a supported DOS version. A great deal of updates were for sound playback support,
    but there's more than that.
  * Also, as of this release of Reflection Keen, this will not work with the 2015 re-release as downloaded from Steam on Windows, due to minor differences in GAMETEXT.KDR. These are a couple of text bugs, that should be corrected if the game is downloaded using
    the Linux (or Mac) client, but they haven't been carried over to Windows so far.
  * Further note that kdreams.cfg is updated after manually closing the game window, only if the 2015 data is used.
  * Compatibility with saved games from the 2015 re-release is more-or-less present, while compatibility with kdreams.cfg is only partial. So, watch out.
  * A few misc. 2015 specific features were implemented, e.g., a bug fix resetting the amount of keys when a new game is started. This does not necessarily cover all behaviors of the 2015 release, though. Also, as expected, 2015 specific features are not in effect
    when a DOS version's data is in use.
  * Support for joysticks / game controllers with the 2015 data is the same as with the DOS versions' data.
  * Mouse support is also the same, although it's possible to pass the 2015-specific command-line argument of /SWMOUSE to temporarily disable the "Absolute mouse motion" toggle. Note that the /NOASPECT and /WINDOWED arguments described in GAMETEXT.KDR didn't seem
    to work in the 2015 port itself (using an EXE from May 9 2016 or earlier), so these are not implemented here, either.

Oct 12, 2016 (v0.16.0):

  * BREAKING CHANGE: The file HELP.TXT is now required in order to play The Catacomb Abyss.
  * Regarding The Catacomb Abyss v1.13, the expected/extracted EGAHEAD.ABS and MTEMP.TMP files should be a little bit smaller. Previously, whole segments would be extracted from the CATABYSS.EXE file, leading to a little bit larger files (with filesizes divisible
    by 16 bytes).
  * Added support for multi-touch input, along with an Android port; Currently requires Android 2.3.3 (API level 10) or later and targets 7.0 (24).
  * Some "modern" game controller input adjustments, including changes to the handling of debug keys.
  * Some launcher adjustments; Examples: The ability to set (emulated) command-line arguments for the game, showing/hiding an on-screen keyboard for text search/input, access to details about files from supported game versions.
  * "autolock" setting was replaced with the "mousegrab" setting, which behaves somewhat more (but not exactly) like the mouse grab setting from Chocolate Doom.
  * Added a "absmousemotion" setting, optionally letting one seamlessly move the mouse cursor out of the window in Keen Dreams' control panel. This is disabled by default, since it technically behaves a bit differently from vanilla Keen Dreams.
  * If multi-touch input is used, and the /NOMOUSE option is not passed to Keen Dreams, then the mouse cursor in the control panel can be used with a single finger, in a matter similar to enabling "absmousemotion" for an actual mouse. That is, the ship cursor
    (more precisely, its top-left corner) is shown where the finger resides.
  * Big Endian fixes (including fixed sound support).
  * Misc. graphics output optimizations. This includes changes to emulated EGA memory layout; Using one byte per pixel, rather than four monochromatic sections for the four EGA planes. Reason is this is better for the Catacombs, and it also didn't seem to make
    things worse for Keen Dreams.
  * Screen is refreshed more often, even if there's no actual on-screen update. This is done for somewhat better Steam Overlay support and other situations.
  * Minor DBOPL fixes.
  * Support better resampling of audio (from the OPL rate of 49716Hz to a different rate), using a resampling library. Currently SpeexDSP is used.
  * Fix some unaligned memory accesses, as well as a few buffer overflows.
  * Fix duplicated game controllers on startup, in launcher.
  * Other code modifications.

Nov 20, 2015 (v0.13.0):

  * A minor breaking change: The disablesndsubsystem setting was changed to sndsubsystem, for avoiding double negatives and being more consistent with newly added code (the launcher).
  * A new launcher is now in. By default, it is shown before starting any game, but command line arguments can be used to skip it. It is now the way to configure the Reflection Keen ports as an alternative to manually editing cfg files. This may be mostly useful
    for configuring game controllers with the modern controller scheme, but not only.
  * Reflection Keen may detect and use existing game installations from more than one location: Current working directory, installation of the Catacombs for windows, or a directory manually selected from the launcher. There are also checksum and filesize
    validations for game data.
  * Embedded resources like MAPHEAD.KDR are now written externally. They can be extracted from original DOS executables automatically and then used by Reflection Keen. However, the games still behave as if these resources were linked into the EXEs. For each game,
    they're loaded to memory by Reflection Keen before entering the game's main function.
  * Some Reflection Keen EXEs unifications were made. To summarize, there's now a single EXE per game, possibly supporting multiple original versions of the game.
  * Due to the above change, new files are now written to separate directories, based on the game version.
  * The EXE filenames are also longer, just to reduce the chances of weird conflicts. Names without file extension: reflection-kdreams, reflection-cat3d, reflection-catabyss, reflection-catarm and reflection-catapoc.
  * The cfg files were renamed in a similar manner (for the sake of consistency). This may technically look like a breaking change on its own, only the cfg files and more should be relocated to different directories anyway.
  * Files can be accessed by filenames in a case insensitive-manner. Case sensitivity still applies to folder names, though!
  * By default, the Reflection Keen cfg files are now written to a specific directory depending on the current user. It may be overridden using the -cfgdir command-line argument. For instance, on Linux, the default location is $XDG_CONFIG_HOME/reflection-keen, if
    $XDG_CONFIG_HOME is defined and filled, or ~/.config/reflection-keen otherwise.
  * Reflection Keen looks for gamecontrollerdb.txt in the same place where the cfg files are stored.
  * Other files are similarly written to a possible different directory depending on the current user, by default. -datadir can be specified to override this. For another Linux example, the default location is $XDG_DATA_HOME/reflection-keen or ~/.local/share/
  * Improvements were made to the modern game controller scheme. The ability to configure it from the newly added launcher is one thing, but there's more. Some of these may be a bit too technical, but a clear example may be the ability to show an on-screen
    keyboard for entering debug keys (e.g., cheat codes).
  * As a consequence, the modern game controller scheme is now the default.
  * Changes were made to "key repeat/delay" behaviors. These are now done in software (using SDL_GetTicks for timing), and should be similar while using a game controller in the launcher. This is also the case while using a controller in-game with the modern
    controller scheme, as long as keyboard key presses are emulated internally, or an on-screen keyboard is in use.
  * While a bit technical, BE_SDL* functions were renamed BE_ST*, emphasizing the fact they may contain platform/framework specific code, but it doesn't have to be SDL (e.g., in case there's no available port of SDL on some platform). Filenames were similarly
    renamed, so there are now be_st.h, be_st_sdl.h and be_st_sdl*.c.
  * More fixes and other changes.

To see a diff of this commit:;a=commitdiff;h=693950d96f9dec9ded6518a717c467a51b3cfaf8

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

 refkeen/Makefile | 25 ++++++++++---------------
 refkeen/PLIST    | 15 +++++----------
 refkeen/distinfo |  7 ++++---
 3 files changed, 19 insertions(+), 28 deletions(-)

diff --git a/refkeen/Makefile b/refkeen/Makefile
index 64b846b767..e727eec2c8 100644
--- a/refkeen/Makefile
+++ b/refkeen/Makefile
@@ -1,12 +1,11 @@
 # $NetBSD: Makefile,v 1.1 2015/08/19 19:21:33 yhardy Exp $
-DISTNAME=	refkeen-src-20150313
+DISTNAME=	refkeen-20170401
-EXTRACT_SUFX=	.tar.bz2
@@ -15,16 +14,11 @@ LICENSE=	gnu-gpl-v2
 USE_TOOLS+=	gmake
-REFKEEN_PROGS+= refcat3d-100
-REFKEEN_PROGS+= refcat3d-122
-REFKEEN_PROGS+= refcatabyss-113
-REFKEEN_PROGS+= refcatabyss-124
-REFKEEN_PROGS+= refcatapoc-101
-REFKEEN_PROGS+= refcatarm-102
-REFKEEN_PROGS+= refkdreams-cga105
-REFKEEN_PROGS+= refkdreams-reg193
-REFKEEN_PROGS+= refkdreams-shar113
-REFKEEN_PROGS+= refkdreams-shar120
+REFKEEN_PROGS+= reflection-cat3d
+REFKEEN_PROGS+= reflection-catabyss
+REFKEEN_PROGS+= reflection-catapoc
+REFKEEN_PROGS+= reflection-catarm
+REFKEEN_PROGS+= reflection-kdreams
@@ -34,5 +28,6 @@ do-install:
+.include "../../audio/speexdsp/"
 .include "../../devel/SDL2/"
 .include "../../mk/"
diff --git a/refkeen/PLIST b/refkeen/PLIST
index 2fbe7d58ea..f19eb466c2 100644
--- a/refkeen/PLIST
+++ b/refkeen/PLIST
@@ -1,12 +1,7 @@
 @comment $NetBSD: PLIST,v 1.1 2015/08/19 19:21:33 yhardy Exp $
diff --git a/refkeen/distinfo b/refkeen/distinfo
index be73e96dde..3281b48375 100644
--- a/refkeen/distinfo
+++ b/refkeen/distinfo
@@ -1,5 +1,6 @@
 $NetBSD: distinfo,v 1.1 2015/08/19 19:21:33 yhardy Exp $
-SHA1 (refkeen-src-20150313.tar.bz2) = 67d72d2c855141bdd4a265359b2e63b44029e1fd
-RMD160 (refkeen-src-20150313.tar.bz2) = f1cab9c84f8cf5130d9d9c7f7362d7349d521e88
-Size (refkeen-src-20150313.tar.bz2) = 734211 bytes
+SHA1 (refkeen-20170401.tar.gz) = bb17078e8852e7e9ece3612bb6f6b4594386cfee
+RMD160 (refkeen-20170401.tar.gz) = 91b5d0663d42b3be9123929035801efcea456e83
+SHA512 (refkeen-20170401.tar.gz) = 9ecef406a794191c7e3cd24e411740412ea70d6c6c6446aecb075b6c5ae360347d96a867da626db57b538dd65ee8147d04930c8f9b600ae57dc0a36b4b9a23a2
+Size (refkeen-20170401.tar.gz) = 3013389 bytes

Home | Main Index | Thread Index | Old Index