refkeen: update to refkeen-20201016
Notes: the Catacomb 3D engines are now all available in the single executable "reflection-catacomb" and support for Wolfenstein 3D has been added with the executable "reflection-wolf3d". --------- Changelog --------- Oct 16, 2020 (v0.31.0): * Support more than one possible filename for game data and EXE names. Following this, a file named "NOAH3D.EXE" can now be identified as a part of Super 3-D Noah's Ark, in addition to "NOAH3DOS.EXE". This refers just to the matching DOS executable. File integrity check is done using the size and crc32. * Additionally, again thanks to the above, support for the Spear of Destiny Mission Packs is now in. Reason it's related is that the file extension of the mission-specific game data can vary, depending on the game installation being in use and its current state. For all missions (including the original), .SOD and .SD4 are valid file extensions. Other allowed extensions: .SD1 for the base game, .SD2 for mission 2 and .SD3 for mission 3. * Note that as a side-effect, data integrity checks are now done for all game data (graphics, maps, sounds) read from the Wolfenstein 3D codebase. In addition to earlier uses of it, the hidden "manualgamevergame" setting can now be used to disable this, albeit this might make it impossible to properly start Super 3-D Noah's Ark or any of the Spear of Destiny missions, depending on the filenames. * Add support for more versions of Wolfenstein 3D, again by using code from gamesrc-ver-recreation. This covers Apogee 6-episodes versions 1.1, 1.2 and 1.4, two GT Interactive releases, an id Software release, Apogee 3-episodes versions 1.2 and 1.4, an Imagineer version and the March '92 prototype. (Thanks to the wolf3denginepatches repository and Chris for assistance.) * Add detection of Wolfenstein 3D as it used to be offered via the last incarnation of 3drealms.com, either on its own or as a part of the 3D Realms Anthology. (Thanks Lunick.) * Add detection of Wolfenstein 3D, Spear of Destiny and Super 3-D Noah's Ark as currently available from GOG.com. (Thanks WayneCa and chungy.) * Improve detection of game installations which is done by inspecting the Windows Registry. Basically, this is now done by attempting to inspect data for 32-bit and 64-bit applications altogether, while additionally still trying to get data with SHGetValue as usual. * Wolf3D: The UPLOAD macro was replaced with an UPLOAD variable. * Internally rename the wl1ap12 namespace to wl6ap11, and do the same with other mentions of such strings. Most noticeable impact is probably that when separate Wolf3D EXEs are build, reflection-wl6ap11 is created instead of reflection-wl6ap12. * Typo fix: Do show "Wolfenstein 3D Shareware v1.4 (Local)" when referring to shareware v1.4, instead of mistakenly mentioning v1.2 in the string. * Use a bit shorter descriptions for certain Wolfenstein 3D and Spear of Destiny versions, so they can fit as launcher titles (BE_Launcher_Handler_SupportedGameVersionSelection). * Add high level XMS and EMS implementations, use them in Wolf3D's Page Manager, and also remove the REFKEEN_SIMPLIFIED/NOEMS/NOXMS implementations from Wolf3D. (Thanks Blzut3.) * Wolf3D: Following the removal of the REFKEEN_SIMPLIFIED-specific code from id_pm.c, pointers can now be appropriately converted in ShapeTest. * A small fix for using page up/down in the launcher while none of the menu items can be selected. * A couple of fixes for bugs introduced after the audio mixer refactoring, specific to runs without the audio subsystem. * Separate more audio and timing related code into more files, while reducing direct references to SDL (albeit it's still used in the same manner). * Generally, continue splitting the contents of be_cross_fs.c and making other restructurings and differing changes related to this code. * Wolf3D: Fix a possible buffer overflow in US_CheckParm, reproduced by passing an argument with no alphabetical character. A good example is the second argument in the following arguments string: "-tedlevel 1". * Make the codebase more usable with Visual Studio. * Launcher: Add a missing comment about the impact of the scale type setting on the border porches. * Bug fix: Conditionally hide or show the mouse cursor after toggling fullscreen, depending on game-specific setups. * Fix an instance in which the in-game contents don't get appropriately resized after toggling fullscreen. * Wolf3D: Make the mouse cursor usable while the game is paused, if a fullscreen isn't used. * Other misc. fixes/changes. Sep 28, 2020 (v0.30.1): * Don't show controller settings specific to the Catacombs for Wolf3D. * When letting the user choose a root drive on Windows for locating game data, append a backslash. For instance, use "C:\" instead of "C:". Otherwise, the wrong locations may get accessed with _topendir. * Fix dir resource leak in BEL_Cross_DirSelection_PrepareDirsAndGetNames. * Wolf3D: Fix the occurrence of a stale menu item in the main menu for the GOODTIMES and SPEAR versions. * Improve the scrolling in the launcher a little bit, mostly while pressing on up/down. Sep 26, 2020 (v0.30.0): * 6-years anniversary release. * Initial support for Wolfenstein 3D, Spear of Destiny (minus the mission packs) and Super 3-D Noah's Ark (DOS version). For Wolfenstein 3D, this covers all known shareware Apogee versions which allow cheating, as well as 6-episodes Activision version 1.4. For Spear of Destiny, this covers FormGen demo version 1.0 and Activision version 1.4. For Super 3-D Noah's Ark, this covers the one known version. * Note that for technical reasons, the Spear of Destiny mission packs cannot be loaded as-is. * Additionally, Super 3-D Noah's Ark can only be loaded if the original EXE for DOS is found and named "noah3dos.exe". That's because this is the way it's currently offered from Steam, and right now, there's no good way of supporting detection of the same data with another file name. * Currently unsupported in all games from the modified Wolfenstein 3D codebase: Game saving/loading, modern game controller scheme, probably more. * The rate of palette updates in Wolfenstein 3D is at least somewhat imprecise. * VSync was changed to be disabled by default for now. There are other potential problems with timing in Wolfenstein 3D, which might partially be related to instances in which the game tries to render more often than the host display's refresh rate. * It is now possible to make a single exe that can be used for starting any of the supported Catacomb titles. It is identified as "Reflection Catacomb". This requires building the code as C++, since it makes use of namespacing. * The exact same method can be used for building a single exe covering all currently supported versions of Wolfenstein 3D, Spear of Destiny and Super 3-D Noah's Ark. This exe is identified as "Reflection Wolfenstein 3D". * Template instantiations of reads and writes are now done from the game-specific code, so be_cross_fs.c doesn't need to include kd_def.h/c3_def.h/def.h. * Game definition structs were moved to separate headers. * 256-colors VGA graphics can now be drawn for Wolfenstein 3D. This was done with a subset of the existing EGA drawing routines as a base. * The overscan border is now shown only if aspect correction is toggled on. An original goal of the aspect correction toggle was to make the source ports more usable with displays that have a greater risk of screen burn-in. * Refactor the audio mixing code, so PC Speaker, AdLib / OPL and digitized sounds can be concurrently played back in Wolfenstein 3D. There's now a single audio mixer callback which can obtain data from multiple sound sources, resample the inputs to the output sampling rate and then mix them after resampling. * Use a pre-calculated sintable array for the Catacombs, as well as Wolfenstein 3D. It is present in a newly added fixed_sintable.c file. This fixes possible rendering errors, as well as errors related to gameplay. The source of the problem (as checked with one of the Catacombs) was that sintable[90] could be set to 0x10000, while it was rather set to 0xFFFF with the original executables. * Switch to Nuked OPL3 for OPL emulation. * Make it possible to toggle fullscreen via a key combo. This combo should generally be Alt+Enter. While untested, Command+Enter should be used on macOS. * Revert to updating ticks (e.g., the games' TimeCount variables) from the main thread instead of the SDL audio callback thread, albeit with the code in general still being closer to the later revisions. * Migrate to CMake for building the executables. * Other varying fixes and modifications.
This commit is contained in:
parent
131e9a4dae
commit
3fbe592707
|
@ -1,7 +1,6 @@
|
|||
# $NetBSD: Makefile,v 1.1 2015/08/19 19:21:33 yhardy Exp $
|
||||
https://github.com/NY00123/refkeen/archive/release-20170401.tar.gz
|
||||
|
||||
DISTNAME= refkeen-20190125
|
||||
DISTNAME= refkeen-20201016
|
||||
GITHUB_PROJECT= refkeen
|
||||
CATEGORIES= games
|
||||
MASTER_SITES= ${MASTER_SITE_GITHUB:=NY00123/}
|
||||
|
@ -12,20 +11,18 @@ HOMEPAGE= https://github.com/NY00123/refkeen/
|
|||
COMMENT= Port of Keen Dreams, Catacomb 3-D and The Catacomb Adventure Series
|
||||
LICENSE= gnu-gpl-v2
|
||||
|
||||
MAKE_FILE= GNUmakefile
|
||||
USE_TOOLS+= gmake
|
||||
USE_CMAKE= yes
|
||||
USE_LANGUAGES= c c++
|
||||
|
||||
REFKEEN_PROGS+= reflection-cat3d
|
||||
REFKEEN_PROGS+= reflection-catabyss
|
||||
REFKEEN_PROGS+= reflection-catapoc
|
||||
REFKEEN_PROGS+= reflection-catarm
|
||||
REFKEEN_PROGS+= reflection-catacomb
|
||||
REFKEEN_PROGS+= reflection-kdreams
|
||||
REFKEEN_PROGS+= reflection-wolf3d
|
||||
|
||||
INSTALLATION_DIRS= bin share/doc/${PKGNAME}
|
||||
|
||||
do-install:
|
||||
for prog in ${REFKEEN_PROGS}; do \
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/src/$$prog ${DESTDIR}${PREFIX}/bin/; \
|
||||
${INSTALL_PROGRAM} ${WRKSRC}/$$prog ${DESTDIR}${PREFIX}/bin/; \
|
||||
done
|
||||
${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/share/doc/${PKGNAME}/
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
@comment $NetBSD: PLIST,v 1.1 2015/08/19 19:21:33 yhardy Exp $
|
||||
bin/reflection-cat3d
|
||||
bin/reflection-catabyss
|
||||
bin/reflection-catapoc
|
||||
bin/reflection-catarm
|
||||
bin/reflection-catacomb
|
||||
bin/reflection-kdreams
|
||||
bin/reflection-wolf3d
|
||||
share/doc/${PKGNAME}/README.md
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
$NetBSD: distinfo,v 1.1 2015/08/19 19:21:33 yhardy Exp $
|
||||
|
||||
SHA1 (refkeen-20190125.tar.gz) = 080ec587ec91e9b1452f44e0f09d35905d4eed60
|
||||
RMD160 (refkeen-20190125.tar.gz) = 9ec0b892d8c7056d2f9d68cd636a80f7a760c9f4
|
||||
SHA512 (refkeen-20190125.tar.gz) = ab9a5097e994621c338b93d109ff28951a63edac2b91b78e45686a906e03c37d74f0341ee5367f13f5924ddf02878514b0559834b35f31d4b10edaf7059d8694
|
||||
Size (refkeen-20190125.tar.gz) = 3868047 bytes
|
||||
SHA1 (refkeen-20201016.tar.gz) = 45eff0f606cc864981b7b00eb308b5f33aeaafee
|
||||
RMD160 (refkeen-20201016.tar.gz) = 7ef6f40d3656a2ae163dc4bc99fff19510bd9fe7
|
||||
SHA512 (refkeen-20201016.tar.gz) = a37b6b761dfc99d2e855fef8a076aa507b0a79e5294129f331d735a015855b3d68c5caf6dcec5fb45daea47b8d64741855b04f887f29c67355c60f94ec30ecfa
|
||||
Size (refkeen-20201016.tar.gz) = 4154662 bytes
|
||||
|
|
Loading…
Reference in New Issue