Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/emulators/dosbox-x dosbox-x: Update to 0.83.3
details: https://anonhg.NetBSD.org/pkgsrc/rev/b77856e3a17f
branches: trunk
changeset: 435419:b77856e3a17f
user: nia <nia%pkgsrc.org@localhost>
date: Tue Jul 07 12:05:49 2020 +0000
description:
dosbox-x: Update to 0.83.3
0.83.3
- IMGMAKE can now generate FAT12, FAT16, and FAT32
filesystems. New option "-fat" is added to select
the filesystem for the disk image.
- Fixed command-line like "./dosbox-x /dir/app.bat"
not able to launch the specified program (Wengier)
- Fixed bug in DIR command's /P option which might
cause it to not work properly. (Wengier)
- The default key modifier for the Windows clipboard
copy & paste via the right mouse button feature is
now "shift" instead of "disabled". (Wengier)
- Single-stepping in the debugger with the 286 and
8086 normal cores now works correctly when stepping
over instructions with a segment prefix.
- Pentium MMX instructions now only available for
Pentium MMX or higher. Fixed the bug that allowed
MMX instructions for Pentium and lower if programs
ignored the CPUID feature bits. Also fixed Pentium
MMX instructions so that they work in both 16-bit
real mode and 32-bit protected mode to match how
they work in real hardware (joncampbell123)
- Updated DOSBox-X's implementation for Pentium MMX
instructions to latest version by kekko (Wengier)
- DOSBox-X will try to automatically run the program
with LOADFIX if the error message "Packed file is
corrupt" is detected. (Wengier)
- MOUNT command can now mount a drive to the UNC
root path in the form \\ComputerName\SharedFolder
on Windows systems. (Wengier)
- Improved the HX-DOS build package to make it fully
automated: all required HX DOS Extender files will
be included in the package, and dosbox-x.exe can
now be run directly in a real DOS system without
external requirements. (Wengier)
- Fixed incorrect frame rate reported by 3Dfx Voodoo
emulation (rderooy, backported from DOSBox SVN).
- Added the "Boot from disk image" menu item (A:, C:,
and D: drives only) in the "Drive" menu to boot the
specified disk image directly in Windows. (Wengier)
- Support for converting mouse wheel movements into
keyboard presses like arrow keys, configurable by
the option "mouse_wheel_key" (default is 0 which
disables this feature). When set to 1, mouse wheel
movements are converted to up/down arrows. Setting
it to 2 or 3 converts such movements to left/right
arrows or PageUp/PageDn keys respectively. (Wengier)
- Support for reloading the keyboard mapper file with
the config -set command. (Wengier)
- IMGMOUNT command without parameters will show disk
names for drive-number only mounts. (Wengier)
- IMGMOUNT can now autodetect DOS <= 3.21 harddisk
geometry with MFM sector images (rderooy & Wengier)
- IMGMOUNT -fs none fixed to use same geometry detect
function that FAT filesystem mounting uses.
- Added suppprt for mounting overlay drives using MOUNT
command with "-t overlay" option. Backported from
DOSBox SVN and adopted for DOSBox-X with additional
features such as long filename and PC-98 support, it
allows the users to redirect new and changed file(s)
to a different location transparently. (Wengier)
- Cleaned up the DPI awareness auto-detection code to
allow Visual Studio builds to again run on Windows 7.
Meanwhile, MinGW builds (either SDL1 or SDL2 version)
are still required for Windows XP systems. (Wengier)
- Updated Nuked OPL3 to latest version 1.8 for accurate
OPL3 emulation (Wengier)
- Added AUTOTYPE command to perform scripted keyboard
entry into a running DOS program or game. Ported from
DOSBox-staging, it can be used to reliably skip intro,
provide input to answer initial startup or config
questions, or conduct a simple demo. (Wengier)
- Added code page 866 (Cyrillic Russian) to support
host to guest code page mapping (tuffnatty)
- Mouse buttons (left, middle, right) can now be mapped
to keys in the keyboard mapper. (Wengier)
- Support for mounting .cue files with MP3/OGG/WAV/FLAC
compressed audio tracks. (Wengier)
- Rewrote the Windows installer for DOSBox-X, as well as
the building script for the installer. All required
build tools including the Inno Setup Compiler are now
provided in the repository and will be automatically
called by the building script. (Wengier)
- Added config option "mapperfile_sdl2" for SDL2 builds.
SDL1 and SDL2 builds of DOSBox-X can not use the same
mapper file, or they will likely malfunction. Adding
this option allows SDL1 and SDL2 builds of DOSBox-X
to work with the same dosbox-x.conf file. (Wengier)
- Added GUI menu option under "DOS" to change the long
filename setting (enable, disable, or auto). (Wengier)
- Improvements and fixes to the save/load state feature:
It now supports Sound Blaster Goldplay mode;
It now saves PC-98 FM interrupt state so that reloading
state does not cause hung music;
It is also fixed not to crash when used within a guest
operting system (when the DOS kernel has been shut down
using the BOOT command);
It now supports memory size up to 1000MB;
It will save and verify the DOSBox-X version and build.
States saved by DOSBox-X in one platform (e.g. 64-bit
Windows) may not work in another (e.g. 32-bit Linux).
The GUI menu will show if the save slot is empty, and if
not the program name of save state will be displayed.
- Re-ported and improved the save state feature for saving
and loading states with support for up to 10 save slots.
They can be selected from the "Capture" menu. (Wengier)
- Added COUNTRY command to set country code for country-
specific date and time formats. For example, the command
"COUNTRY 61" sets the country code to 61 (International
English) which uses the DD-MM-YYYY date format instead
of the default (U.S.) MM-DD-YYYY date format. (Wengier)
- DOS 440Dh IOCTL function 67h (get access flag) added to
allow FDISK.EXE to determine FAT filesystem type. Also
implemented function 40h (set device parameters) and
function 46h (set volume serial number). (Wengier)
- Unknown DOS 440Dh IOCTLs warnings now indicate whether
triggered by call or query.
- S3 VESA BIOS mode number for 1024x768 32bpp changed to
avoid conflict with Windows 95 S3 driver and 800x600
16bpp mode.
- FAT driver no longer mounts FAT32 volumes unless the
DOS version is 7.1 or higher, and it no longer mounts
FAT16B LBA volumes unless the DOS version is 7.0 or
higher. These are to mimic the MS-DOS behavior.
- Fixed FAT driver not to attempt to mount partitions that
have nothing to do with the FAT filesystem (such as
type 0Dh and extended LBA partition tables). Also fixed
the FAT driver to not assume partition start sector 63
if it cannot identify a partition to use.
- Added code to FAT driver to identify telltale pattern
left by Microsoft FDISK when a partition is created (but
not yet formatted) and reject.
diffstat:
emulators/dosbox-x/Makefile | 23 +-
emulators/dosbox-x/distinfo | 13 +-
emulators/dosbox-x/patches/patch-configure.ac | 114 -------------
emulators/dosbox-x/patches/patch-include_byteorder.h | 20 --
emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp | 20 ++
5 files changed, 38 insertions(+), 152 deletions(-)
diffs (243 lines):
diff -r 8fb0c57c5eda -r b77856e3a17f emulators/dosbox-x/Makefile
--- a/emulators/dosbox-x/Makefile Tue Jul 07 11:50:04 2020 +0000
+++ b/emulators/dosbox-x/Makefile Tue Jul 07 12:05:49 2020 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.14 2020/06/03 13:36:26 nia Exp $
+# $NetBSD: Makefile,v 1.15 2020/07/07 12:05:49 nia Exp $
-DISTNAME= dosbox-x-0.83.2
+DISTNAME= dosbox-x-0.83.3
CATEGORIES= emulators
MASTER_SITES= ${MASTER_SITE_GITHUB:=joncampbell123/}
GITHUB_TAG= dosbox-x-v${PKGVERSION_NOREV}
@@ -20,14 +20,6 @@
LIBS.NetBSD+= -lcompat
-.include "../../mk/bsd.prefs.mk"
-
-.if ${OPSYS} != "Linux"
-CPPFLAGS+= -Dfopen64=fopen
-CPPFLAGS+= -Dftello64=ftello
-CPPFLAGS+= -Dfseeko64=fseeko
-.endif
-
CONFIGURE_ARGS+= --disable-alsatest
CONFIGURE_ARGS+= --disable-sdl2test
CONFIGURE_ARGS+= --disable-sdltest
@@ -39,6 +31,7 @@
CONFIGURE_ARGS+= --disable-fpu
CONFIGURE_ARGS+= --disable-unaligned-memory
.else
+TOOL_DEPENDS+= nasm>=2.14:../../devel/nasm
# LOG: Setting execute permission on the code cache has failed
NOT_PAX_MPROTECT_SAFE+= bin/dosbox-x
.endif
@@ -49,6 +42,7 @@
PKGCONFIG_OVERRIDE+= vs2015/sdlnet/SDL_net.pc.in
PKGCONFIG_OVERRIDE+= vs2015/zlib/zlib.pc.in
+INSTALLATION_DIRS+= bin share/dosbox-x
INSTALLATION_DIRS+= share/applications
INSTALLATION_DIRS+= share/pixmaps
@@ -58,7 +52,14 @@
pre-configure:
cd ${WRKSRC} && autoreconf -fi
-post-install:
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/dosbox-x ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_DATA} ${WRKSRC}/font/FREECG98.BMP \
+ ${DESTDIR}${PREFIX}/share/dosbox-x
+ ${INSTALL_DATA} ${WRKSRC}/CHANGELOG \
+ ${DESTDIR}${PREFIX}/share/dosbox-x
+ ${INSTALL_DATA} ${WRKSRC}/dosbox-x.reference.conf \
+ ${DESTDIR}${PREFIX}/share/dosbox-x
${INSTALL_DATA} ${WRKSRC}/src/dosbox.png \
${DESTDIR}${PREFIX}/share/pixmaps/dosbox.png
${INSTALL_DATA} ${FILESDIR}/dosbox-x.desktop \
diff -r 8fb0c57c5eda -r b77856e3a17f emulators/dosbox-x/distinfo
--- a/emulators/dosbox-x/distinfo Tue Jul 07 11:50:04 2020 +0000
+++ b/emulators/dosbox-x/distinfo Tue Jul 07 12:05:49 2020 +0000
@@ -1,8 +1,7 @@
-$NetBSD: distinfo,v 1.9 2020/06/03 13:36:26 nia Exp $
+$NetBSD: distinfo,v 1.10 2020/07/07 12:05:49 nia Exp $
-SHA1 (dosbox-x-0.83.2.tar.gz) = 45937131b9470fb57cb1023936a00e0c5cea9dee
-RMD160 (dosbox-x-0.83.2.tar.gz) = 027f0fd112e9ef6b25943e107170fbd714469245
-SHA512 (dosbox-x-0.83.2.tar.gz) = ea45de86d66cbe806a3b5c089ebe8307ad541c0f4830605010b2254541650045f87518305037d35da4b12de17bf82086daf67297560eab03d37e046ac63096bd
-Size (dosbox-x-0.83.2.tar.gz) = 41708385 bytes
-SHA1 (patch-configure.ac) = c2e25ae1532145ea43cb62694e906d17b2d7fc77
-SHA1 (patch-include_byteorder.h) = 86eccfbc2318ddc8d71a6de8723947a48d98a126
+SHA1 (dosbox-x-0.83.3.tar.gz) = 7b26c91e329bdbfcaf8c64e6b7697206bcf23016
+RMD160 (dosbox-x-0.83.3.tar.gz) = 889093583c7c414b3cf80a4fd29ec4f68ed2bf50
+SHA512 (dosbox-x-0.83.3.tar.gz) = fae5124ee2922a09d13427325f121f9961473e26d84824b3b6968516053e13abce92733b2eb323ba5d61735611f3254cc5692a83aa8f1695fe81b953ac75f593
+Size (dosbox-x-0.83.3.tar.gz) = 41777977 bytes
+SHA1 (patch-src_dos_dos__programs.cpp) = 99e49762c6812b518917daf21d27d1fb8d2b1681
diff -r 8fb0c57c5eda -r b77856e3a17f emulators/dosbox-x/patches/patch-configure.ac
--- a/emulators/dosbox-x/patches/patch-configure.ac Tue Jul 07 11:50:04 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-$NetBSD: patch-configure.ac,v 1.2 2020/06/03 13:36:26 nia Exp $
-
-Fix == test in configure script.
-
---- configure.ac.orig 2020-06-01 06:00:19.000000000 +0000
-+++ configure.ac
-@@ -171,7 +171,7 @@ CFLAGS=["`echo $CFLAGS' ' | sed -e 's/-O
- CXXFLAGS=["`echo $CXXFLAGS' ' | sed -e 's/-O[^ ]* //g'`"]
-
- if test x$enable_optimize != xno; then
-- if test x$enable_emscripten == xyes; then
-+ if test x$enable_emscripten = xyes; then
- CFLAGS="$CFLAGS -Os"
- CXXFLAGS="$CXXFLAGS -Os"
- else
-@@ -180,21 +180,21 @@ if test x$enable_optimize != xno; then
- fi
- fi
-
--if test x$enable_emscripten == xyes; then
-+if test x$enable_emscripten = xyes; then
- AC_DEFINE(C_EMSCRIPTEN,1,[Targeting Emscripten])
- fi
-
- dnl Some stuff for the icon.
- case "$host" in
- *-*-cygwin* | *-*-mingw32*)
-- if test x$enable_hx == xyes; then
-+ if test x$enable_hx = xyes; then
- CXXFLAGS="$CXXFLAGS -DHX_DOS"
- AC_DEFINE(C_HX_DOS,1,[Targeting HX DOS extender])
- fi
- ;;
- esac
-
--if test x$enable_force_menu_sdldraw == xyes; then
-+if test x$enable_force_menu_sdldraw = xyes; then
- CXXFLAGS="$CXXFLAGS -DFORCE_SDLDRAW"
- AC_DEFINE(C_FORCE_MENU_SDLDRAW,1,[Force SDL drawn menus])
- fi
-@@ -300,7 +300,7 @@ case "$host" in
- ;;
- esac
-
--if test x$enable_emscripten == xyes; then
-+if test x$enable_emscripten = xyes; then
- CXXFLAGS="$CXXFLAGS"
- else
- dnl Some default CPU flags
-@@ -425,8 +425,8 @@ case "$host" in
- esac
- fi
-
--AM_CONDITIONAL(MACOSX, test x"$macosx" == x"1")
--AM_CONDITIONAL(EMSCRIPTEN, test x"$enable_emscripten" == x"yes")
-+AM_CONDITIONAL(MACOSX, test x"$macosx" = x"1")
-+AM_CONDITIONAL(EMSCRIPTEN, test x"$enable_emscripten" = x"yes")
-
- dnl The target cpu checks for dynamic cores
- AH_TEMPLATE(C_TARGETCPU,[The type of cpu this target has])
-@@ -594,7 +594,7 @@ AC_CHECK_LIB(fluidsynth, fluid_synth_sys
- dnl LIBRARY TEST: FreeType2
- AH_TEMPLATE(C_FREETYPE,[Define to 1 to enable freetype support])
- AC_ARG_ENABLE(freetype,AC_HELP_STRING([--disable-freetype],[Disable freetype support]),enable_freetype=$enableval,enable_freetype=yes)
--AM_CONDITIONAL(C_FREETYPE, test "x$enable_freetype" == "xyes")
-+AM_CONDITIONAL(C_FREETYPE, test "x$enable_freetype" = "xyes")
- if test x$enable_freetype = xyes; then
- AC_MSG_CHECKING(for freetype)
- pkg-config --exists freetype2; RES=$?
-@@ -636,7 +636,7 @@ fi
- dnl FEATURE: PRINTER (requires FreeType2)
- AH_TEMPLATE(C_PRINTER,[Define to 1 to enable printer emulation])
- AC_ARG_ENABLE(printer,AC_HELP_STRING([--disable-printer],[disable printer emulation]),enable_printer=$enableval,enable_printer=yes)
--AM_CONDITIONAL(C_PRINTER, test "x$enable_printer" == "xyes")
-+AM_CONDITIONAL(C_PRINTER, test "x$enable_printer" = "xyes")
- if test x$enable_freetype = xyes; then
- if test x$enable_printer = xyes; then
- AC_DEFINE(C_PRINTER,1)
-@@ -646,7 +646,7 @@ fi
- dnl FEATURE: xBRZ
- AH_TEMPLATE(C_XBRZ,[Define to 1 to enable XBRZ scaler])
- AC_ARG_ENABLE(xbrz,AC_HELP_STRING([--enable-xbrz],[compile with xBRZ scaler (default yes)]),enable_xbrz=$enableval,enable_xbrz=yes)
--AM_CONDITIONAL(C_XBRZ, test "x$enable_xbrz" == "xyes")
-+AM_CONDITIONAL(C_XBRZ, test "x$enable_xbrz" = "xyes")
- if test x$enable_emscripten != xyes; then
- if test x$enable_xbrz = xyes; then
- AC_DEFINE(C_XBRZ,1)
-@@ -656,7 +656,7 @@ fi
- dnl FEATURE: xBRZ
- AH_TEMPLATE(C_SCALER_FULL_LINE,[Define to 1 to alter the simpler render scalers to operate only on the full scanline instead of detecting differences. This is a performance adjustment for slow or
embedded systems])
- AC_ARG_ENABLE(scaler-full-line,AC_HELP_STRING([--enable-scaler-full-line],[scaler render full line instead of detecting changes, for slower
systems]),enable_scaler_full_line=$enableval,enable_scaler_full_line=no)
--AM_CONDITIONAL(C_SCALER_FULL_LINE, test "x$enable_scaler_full_line" == "xyes")
-+AM_CONDITIONAL(C_SCALER_FULL_LINE, test "x$enable_scaler_full_line" = "xyes")
- if test x$enable_scaler_full_line = xyes; then
- AC_DEFINE(C_SCALER_FULL_LINE,1)
- fi
-@@ -698,7 +698,7 @@ else
- enable_mt32=no
- AC_MSG_RESULT(no)
- fi
--AM_CONDITIONAL(C_MT32, test "x$enable_mt32" == "xyes")
-+AM_CONDITIONAL(C_MT32, test "x$enable_mt32" = "xyes")
-
- dnl NASM (Netwide Assembler)
- AC_PATH_PROG([NASM], [nasm])
-@@ -1031,7 +1031,7 @@ else
- AC_MSG_RESULT(no)
- fi
-
--AM_CONDITIONAL(C_DIRECT3D, test x"$do_d3d" == x"1")
-+AM_CONDITIONAL(C_DIRECT3D, test x"$do_d3d" = x"1")
-
- AH_TEMPLATE(C_ICONV,[Define to 1 to use GNU libiconv])
- if test x$have_iconv_h = xyes; then
diff -r 8fb0c57c5eda -r b77856e3a17f emulators/dosbox-x/patches/patch-include_byteorder.h
--- a/emulators/dosbox-x/patches/patch-include_byteorder.h Tue Jul 07 11:50:04 2020 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-$NetBSD: patch-include_byteorder.h,v 1.1 2019/09/22 09:54:14 nia Exp $
-
-Include the correct endian.h on NetBSD.
-
---- include/byteorder.h.orig 2018-11-22 06:17:27.000000000 +0000
-+++ include/byteorder.h
-@@ -115,11 +115,11 @@
- #define _BSD_SOURCE
- #include <endian.h>
-
--#elif defined(__OpenBSD__)
-+#elif defined(__OpenBSD__) || defined(__NetBSD__)
-
- #include <sys/endian.h>
-
--#elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
-+#elif defined(__FreeBSD__) || defined(__DragonFly__)
-
- #include <sys/endian.h>
-
diff -r 8fb0c57c5eda -r b77856e3a17f emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emulators/dosbox-x/patches/patch-src_dos_dos__programs.cpp Tue Jul 07 12:05:49 2020 +0000
@@ -0,0 +1,20 @@
+$NetBSD: patch-src_dos_dos__programs.cpp,v 1.1 2020/07/07 12:05:49 nia Exp $
+
+dos_programs.cpp: In member function 'bool AUTOTYPE::ReadDoubleArg(const string&, const char*, const double&, const double&, const double&, double&)':
+dos_programs.cpp:5556:12: error: expected unqualified-id before '(' token
+ if (std::isfinite(user_value)) {
+
+--- src/dos/dos_programs.cpp.orig 2020-06-30 23:09:17.000000000 +0000
++++ src/dos/dos_programs.cpp
+@@ -5550,11 +5550,7 @@ bool AUTOTYPE::ReadDoubleArg(const std::
+ if (cmd->FindString(flag, str_value, true)) {
+ // Can the user's value be parsed?
+ const double user_value = to_finite<double>(str_value);
+-#if defined(MACOSX)
+ if (isfinite(user_value)) { /* *sigh* Really, clang, really? */
+-#else
+- if (std::isfinite(user_value)) {
+-#endif
+ result = true;
+
+ // Clamp the user's value if needed
Home |
Main Index |
Thread Index |
Old Index