diff options
author | nia <nia@pkgsrc.org> | 2019-06-10 12:41:23 +0000 |
---|---|---|
committer | nia <nia@pkgsrc.org> | 2019-06-10 12:41:23 +0000 |
commit | 8d96b7b26efbc920a80ab59a16d227a1b3d3301c (patch) | |
tree | c670aa64e7f034f3a4b422379067de521b3f7965 /emulators | |
parent | 4ce4ef1eca1216c61dfa96ae317125b8cb6679bd (diff) | |
download | pkgsrc-8d96b7b26efbc920a80ab59a16d227a1b3d3301c.tar.gz |
dosbox: Update to 0.74.2 (0.74-2)
Changes:
- Rewrite auto/max cycles algorithm to work better with windows 7, other
OSes might benefit as well.
- Update 64bit recompiler to work on OSX and Linux.
- Several improvements to make the recompilers work with newer compilers and
add some workarounds about clang confusing itself.
- Fix several variables being the wrong size in the recompiler.
- Support absolute 64 bit addressing. (DRC:64 bit error messages)
- Zero extend data in dynrec core for LLVM compilation/
- Reduce overhead of the Mac version with a lot. Results in a speed increase.
- Replace NV_PixelDataRange with the more common ARB_PixelBufferObject
extension. Should help with output=opengl.
- Reuse graphics window if possible instead of always creating a new one!
- Add patches to work better when called by WINE:
- support WINE style namemangling.
- allow Z:\ to be moved to a different drive.
- Try to fix stuttering audio with opengl output on Linux. (or at least
improve it. Linux users might need to increase the prebuffer option a bit)
- Fix automake and autoconf problems.
- Fix problems related to packed struct layouts.
- Fix compilation on gcc 4.4 and gcc 4.6.1.
- Fix compilation with -DPIC.
- Hopefully fix crash on shutdown, when unknown condition is encountered.
- Fix -lto with gcc.
- Fix clang compliation with asm fpu core.
- Fix mapper crash on startup and when changing the mapper key.
- Fix compilation in VS2015.
- Fix compilation on mingw64.
- Fix compilation on Frisbee and newer clang.
- Fix compilation machines that have X11 libraries installed, but use a SDL
without X11.
- Fix a few problems relating to video capturing:
- Writing out the index too often. (slowdown with longer captures)
- Not being aware of when only the refresh rate changed.
- Fix call order when bitshifting the return order (VS C /O2 builds).
- Fix sign-extension error in S3 draw funcion, i.e. win3.1 analog clock.
- Fix expanddot not caring about the size of the inputbuffer.
- Some fixes for the debugger related to starting a program through debug.com.
- Bring OS/2 port code up to date.
- Reduce the amount of warning when compiling with quite a bit.
- Allow 15/26/32 bits input to the opengl output.
- Add cmd-q as exit key for macs.
- Fix icon and titlebar on very old setups.
- Fix off by one display size calculation errors with very large displays.
- Fix out of bounds access the unused byte in the 32 bit colour value of the
hardware mouse cursor pixel was affected.
- Fix depreciated warnings on Mac, allow soundfont loading for coreaudio.
- Keep repeating a pressed key if another key was unpressed.
- Fix crash on OS X related to putting junk in the titlebar.
- Extend fullresolution=0x0 to work on Linux and Mac.
- Change gameblaster and tandy sound core to latest mame version.
- Improve numlock and capslock support on Linux and Macs. Still not perfect
on Windows.
- Added even more code to workaround Windows behaving weirdly with alt-tab.
Diffstat (limited to 'emulators')
-rw-r--r-- | emulators/dosbox/MESSAGE.NetBSD | 7 | ||||
-rw-r--r-- | emulators/dosbox/Makefile | 10 | ||||
-rw-r--r-- | emulators/dosbox/distinfo | 17 | ||||
-rw-r--r-- | emulators/dosbox/options.mk | 15 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-include_dos__inc.h | 14 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-src_Makefile.in | 31 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-src_dosbox.cpp | 15 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-src_gui_sdl__mapper.cpp | 19 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-src_gui_sdlmain.cpp | 26 | ||||
-rw-r--r-- | emulators/dosbox/patches/patch-src_ints_int10__vesa.cpp | 20 |
10 files changed, 49 insertions, 125 deletions
diff --git a/emulators/dosbox/MESSAGE.NetBSD b/emulators/dosbox/MESSAGE.NetBSD new file mode 100644 index 00000000000..7f1f3fab92e --- /dev/null +++ b/emulators/dosbox/MESSAGE.NetBSD @@ -0,0 +1,7 @@ +=========================================================================== +$NetBSD: MESSAGE.NetBSD,v 1.1 2019/06/10 12:41:23 nia Exp $ + +Lowering the system audio latency (or blk_ms) with sysctl(8) may be +required to achieve full performance and framerates. + +=========================================================================== diff --git a/emulators/dosbox/Makefile b/emulators/dosbox/Makefile index e80c4b46c9a..b2ffdfae732 100644 --- a/emulators/dosbox/Makefile +++ b/emulators/dosbox/Makefile @@ -1,12 +1,12 @@ -# $NetBSD: Makefile,v 1.45 2018/07/04 13:40:17 jperkin Exp $ +# $NetBSD: Makefile,v 1.46 2019/06/10 12:41:23 nia Exp $ -DISTNAME= dosbox-0.74 -PKGREVISION= 10 +DISTNAME= dosbox-0.74-2 +PKGNAME= dosbox-0.74.2 CATEGORIES= emulators MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=dosbox/} MAINTAINER= pkgsrc-users@NetBSD.org -HOMEPAGE= http://dosbox.sourceforge.net/ +HOMEPAGE= https://www.dosbox.com/ COMMENT= Multi-platform DOS emulator using SDL LICENSE= gnu-gpl-v2 @@ -26,11 +26,13 @@ SUBST_STAGE.fixme= pre-configure SUBST_FILES.fixme= docs/dosbox.1 SUBST_SED.fixme= -e s,/usr/share/,${PREFIX}/share/,g +# dynamic recompiler enabled by default NOT_PAX_MPROTECT_SAFE+= bin/dosbox post-install: ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${PREFIX}/share/doc/dosbox +.include "options.mk" .include "../../audio/SDL_sound/buildlink3.mk" .include "../../devel/SDL/buildlink3.mk" .include "../../graphics/png/buildlink3.mk" diff --git a/emulators/dosbox/distinfo b/emulators/dosbox/distinfo index 793a4484e17..b0fba0b856a 100644 --- a/emulators/dosbox/distinfo +++ b/emulators/dosbox/distinfo @@ -1,12 +1,7 @@ -$NetBSD: distinfo,v 1.24 2018/03/21 13:48:48 kamil Exp $ +$NetBSD: distinfo,v 1.25 2019/06/10 12:41:23 nia Exp $ -SHA1 (dosbox-0.74.tar.gz) = 2d99f0013350efb29b769ff19ddc8e4d86f4e77e -RMD160 (dosbox-0.74.tar.gz) = 4534d87206de8401cd0de471d8172726f2c6b788 -SHA512 (dosbox-0.74.tar.gz) = 4a6ff4c658997a495119d200ec6ad37649da940814a4b14fca0dd29a99142026e324695b7aa9d2946efc2abf9067a819d911e43778efe905ed10ddf9b9f2dd3d -Size (dosbox-0.74.tar.gz) = 1265711 bytes -SHA1 (patch-include_dos__inc.h) = c6c9e5e29b3861fa477ae6c00e335dc57737f8ff -SHA1 (patch-src_Makefile.in) = 6f811b5a1450ca88cb47d99d0381fb682d8b994d -SHA1 (patch-src_dosbox.cpp) = f96771b9a478d116a10f868cb29aaea7c909ead5 -SHA1 (patch-src_gui_sdl__mapper.cpp) = 030a05b6036f28063a42f4fc601dc7add5a85d6b -SHA1 (patch-src_gui_sdlmain.cpp) = 317cd169e6b75a238bb1a4a72812654d36049227 -SHA1 (patch-src_ints_int10__vesa.cpp) = ef8130d934e9eb7fc1582f6500aed089674c9ed1 +SHA1 (dosbox-0.74-2.tar.gz) = 3008694ef998853257c6a4cb5374229e157ceaf3 +RMD160 (dosbox-0.74-2.tar.gz) = cd8e465a22840932d20b52293f76206e8d3b8ed2 +SHA512 (dosbox-0.74-2.tar.gz) = 5e02ba84bfb89318f2ce4d2f387d36a0988e4e5c04e89d6c902f865bbf951a38850fc51b24632cec706687b51b4f661de918975367e6fd0d775c5f40a623cf78 +Size (dosbox-0.74-2.tar.gz) = 1324059 bytes +SHA1 (patch-src_Makefile.in) = 64e5f4fa66d4784961afc375fbe2d8d91008d8d0 diff --git a/emulators/dosbox/options.mk b/emulators/dosbox/options.mk new file mode 100644 index 00000000000..c9ecad46bed --- /dev/null +++ b/emulators/dosbox/options.mk @@ -0,0 +1,15 @@ +# $NetBSD: options.mk,v 1.1 2019/06/10 12:41:23 nia Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.dosbox + +PKG_SUPPORTED_OPTIONS+= alsa +PKG_SUGGESTED_OPTIONS.Linux+= alsa + +.include "../../mk/bsd.options.mk" + +.if !empty(PKG_OPTIONS:Malsa) +CONFIGURE_ARGS+= --enable-alsa-midi +.include "../../audio/alsa-lib/buildlink3.mk" +.else +CONFIGURE_ARGS+= --disable-alsa-midi +.endif diff --git a/emulators/dosbox/patches/patch-include_dos__inc.h b/emulators/dosbox/patches/patch-include_dos__inc.h deleted file mode 100644 index fd9f3eacd5d..00000000000 --- a/emulators/dosbox/patches/patch-include_dos__inc.h +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-include_dos__inc.h,v 1.1 2014/04/17 00:49:51 wiz Exp $ - -Add missing header for offsetof() and friends. - ---- include/dos_inc.h.orig 2010-05-10 17:43:54.000000000 +0000 -+++ include/dos_inc.h -@@ -27,6 +27,7 @@ - #ifndef DOSBOX_MEM_H - #include "mem.h" - #endif -+#include <stddef.h> - - #ifdef _MSC_VER - #pragma pack (1) diff --git a/emulators/dosbox/patches/patch-src_Makefile.in b/emulators/dosbox/patches/patch-src_Makefile.in index c812aa2d931..823b1462bb9 100644 --- a/emulators/dosbox/patches/patch-src_Makefile.in +++ b/emulators/dosbox/patches/patch-src_Makefile.in @@ -1,29 +1,28 @@ -$NetBSD: patch-src_Makefile.in,v 1.1 2013/10/21 09:48:10 fhajny Exp $ +$NetBSD: patch-src_Makefile.in,v 1.2 2019/06/10 12:41:23 nia Exp $ Remove unused archives, fixes build with Sun ld. ---- src/Makefile.in.orig 2010-05-12 09:57:43.000000000 +0000 + +--- src/Makefile.in.orig 2018-08-30 13:06:20.000000000 +0000 +++ src/Makefile.in -@@ -52,10 +52,10 @@ am__dosbox_SOURCES_DIST = dosbox.cpp win - @HAVE_WINDRES_TRUE@am__objects_1 = winres.$(OBJEXT) - am_dosbox_OBJECTS = dosbox.$(OBJEXT) $(am__objects_1) - dosbox_OBJECTS = $(am_dosbox_OBJECTS) --dosbox_DEPENDENCIES = cpu/libcpu.a debug/libdebug.a dos/libdos.a \ -+dosbox_DEPENDENCIES = cpu/libcpu.a dos/libdos.a \ +@@ -109,8 +109,7 @@ dosbox_OBJECTS = $(am_dosbox_OBJECTS) + dosbox_DEPENDENCIES = cpu/libcpu.a debug/libdebug.a dos/libdos.a \ fpu/libfpu.a hardware/libhardware.a gui/libgui.a \ ints/libints.a misc/libmisc.a shell/libshell.a \ -- hardware/serialport/libserial.a libs/gui_tk/libgui_tk.a -+ hardware/serialport/libserial.a - DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) - depcomp = $(SHELL) $(top_srcdir)/depcomp - am__depfiles_maybe = depfiles -@@ -217,8 +217,8 @@ AM_CPPFLAGS = -I$(top_srcdir)/include +- hardware/mame/libmame.a hardware/serialport/libserial.a \ +- libs/gui_tk/libgui_tk.a ++ hardware/mame/libmame.a hardware/serialport/libserial.a + AM_V_P = $(am__v_P_@AM_V@) + am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) + am__v_P_0 = false +@@ -321,9 +320,9 @@ AM_CPPFLAGS = -I$(top_srcdir)/include SUBDIRS = cpu debug dos fpu gui hardware libs ints misc shell platform @HAVE_WINDRES_TRUE@ico_stuff = winres.rc dosbox_SOURCES = dosbox.cpp $(ico_stuff) -dosbox_LDADD = cpu/libcpu.a debug/libdebug.a dos/libdos.a fpu/libfpu.a hardware/libhardware.a gui/libgui.a \ -- ints/libints.a misc/libmisc.a shell/libshell.a hardware/serialport/libserial.a libs/gui_tk/libgui_tk.a +dosbox_LDADD = cpu/libcpu.a dos/libdos.a fpu/libfpu.a hardware/libhardware.a gui/libgui.a \ -+ ints/libints.a misc/libmisc.a shell/libshell.a hardware/serialport/libserial.a + ints/libints.a misc/libmisc.a shell/libshell.a hardware/mame/libmame.a \ +- hardware/serialport/libserial.a libs/gui_tk/libgui_tk.a ++ hardware/serialport/libserial.a EXTRA_DIST = winres.rc dosbox.ico all: all-recursive diff --git a/emulators/dosbox/patches/patch-src_dosbox.cpp b/emulators/dosbox/patches/patch-src_dosbox.cpp deleted file mode 100644 index 4d2ad42b1a6..00000000000 --- a/emulators/dosbox/patches/patch-src_dosbox.cpp +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-src_dosbox.cpp,v 1.1 2017/09/16 03:27:20 maya Exp $ - -Default to 8192 block size - sounds better - ---- src/dosbox.cpp.orig 2010-05-10 17:43:54.000000000 +0000 -+++ src/dosbox.cpp -@@ -454,7 +454,7 @@ void DOSBOX_Init(void) { - - const char *blocksizes[] = { - "1024", "2048", "4096", "8192", "512", "256", 0}; -- Pint = secprop->Add_int("blocksize",Property::Changeable::OnlyAtStart,1024); -+ Pint = secprop->Add_int("blocksize",Property::Changeable::OnlyAtStart,8192); - Pint->Set_values(blocksizes); - Pint->Set_help("Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged."); - diff --git a/emulators/dosbox/patches/patch-src_gui_sdl__mapper.cpp b/emulators/dosbox/patches/patch-src_gui_sdl__mapper.cpp deleted file mode 100644 index 52e20efc573..00000000000 --- a/emulators/dosbox/patches/patch-src_gui_sdl__mapper.cpp +++ /dev/null @@ -1,19 +0,0 @@ -$NetBSD: patch-src_gui_sdl__mapper.cpp,v 1.1 2014/04/17 00:49:51 wiz Exp $ - -Avoid overrunning array. - ---- src/gui/sdl_mapper.cpp.orig 2010-05-10 18:58:06.000000000 +0000 -+++ src/gui/sdl_mapper.cpp -@@ -2384,9 +2384,11 @@ void MAPPER_StartUp(Section * sec) { - mapper.sticks.num=0; - mapper.sticks.num_groups=0; - Bitu i; -- for (i=0; i<16; i++) { -+ for (i=0; i<MAX_VJOY_BUTTONS; i++) { - virtual_joysticks[0].button_pressed[i]=false; - virtual_joysticks[1].button_pressed[i]=false; -+ } -+ for (i=0; i<16; i++) { - virtual_joysticks[0].hat_pressed[i]=false; - virtual_joysticks[1].hat_pressed[i]=false; - } diff --git a/emulators/dosbox/patches/patch-src_gui_sdlmain.cpp b/emulators/dosbox/patches/patch-src_gui_sdlmain.cpp deleted file mode 100644 index 6617af1251d..00000000000 --- a/emulators/dosbox/patches/patch-src_gui_sdlmain.cpp +++ /dev/null @@ -1,26 +0,0 @@ -$NetBSD: patch-src_gui_sdlmain.cpp,v 1.1 2017/02/07 23:56:14 joerg Exp $ - -Pointers are not ordered with 0. Fix format string. - ---- src/gui/sdlmain.cpp.orig 2017-01-08 18:35:26.455430930 +0000 -+++ src/gui/sdlmain.cpp -@@ -1134,8 +1134,8 @@ static void GUI_StartUp(Section * sec) { - #endif - const char * gl_ext = (const char *)glGetString (GL_EXTENSIONS); - if(gl_ext && *gl_ext){ -- sdl.opengl.packed_pixel=(strstr(gl_ext,"EXT_packed_pixels") > 0); -- sdl.opengl.paletted_texture=(strstr(gl_ext,"EXT_paletted_texture") > 0); -+ sdl.opengl.packed_pixel=(strstr(gl_ext,"EXT_packed_pixels") != NULL); -+ sdl.opengl.paletted_texture=(strstr(gl_ext,"EXT_paletted_texture") != NULL); - #if defined(NVIDIA_PixelDataRange) - sdl.opengl.pixel_data_range=(strstr(gl_ext,"GL_NV_pixel_data_range") >0 ) && - glPixelDataRangeNV && db_glAllocateMemoryNV && db_glFreeMemoryNV; -@@ -1529,7 +1529,7 @@ static void show_warning(char const * co - if ( !sdl.inited && SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE) < 0 ) textonly = true; - sdl.inited = true; - #endif -- printf(message); -+ printf("%s", message); - if(textonly) return; - if(!sdl.surface) sdl.surface = SDL_SetVideoMode(640,400,0,0); - if(!sdl.surface) return; diff --git a/emulators/dosbox/patches/patch-src_ints_int10__vesa.cpp b/emulators/dosbox/patches/patch-src_ints_int10__vesa.cpp deleted file mode 100644 index b3eba6f68fa..00000000000 --- a/emulators/dosbox/patches/patch-src_ints_int10__vesa.cpp +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-src_ints_int10__vesa.cpp,v 1.1 2018/03/21 13:48:48 kamil Exp $ - -Fix C++11 syntax of a literal. - ---- src/ints/int10_vesa.cpp.orig 2010-05-10 17:43:54.000000000 +0000 -+++ src/ints/int10_vesa.cpp -@@ -39,7 +39,7 @@ static struct { - static char string_oem[]="S3 Incorporated. Trio64"; - static char string_vendorname[]="DOSBox Development Team"; - static char string_productname[]="DOSBox - The DOS Emulator"; --static char string_productrev[]="DOSBox "VERSION; -+static char string_productrev[]="DOSBox " VERSION; - - #ifdef _MSC_VER - #pragma pack (1) -@@ -518,4 +518,3 @@ void INT10_SetupVESA(void) { - phys_writew( Real2Phys(int10.rom.pmode_interface) + 6, 0); - int10.rom.pmode_interface_size=int10.rom.used - RealOff( int10.rom.pmode_interface ); - } -- |