./emulators/dosbox-x, DOSBox fork with enhancements

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 0.82.24, Package name: dosbox-x-0.82.24, Maintainer: nia

As a fork of DOSBox, DOSBox-X retains compatibility with the wide base of
DOS games DOSBox was designed for.

It also goes further, with a focus on accurate emulation of the hardware,
and many more ways to tweak and configure the DOS virtual machine.

The DOSBox-X team believes that a better way to emulate the legacy PC platform
is to give the user all the options they need to emulate everything from
original IBM PC hardware with 64KB of RAM all the way up to late 90's
hardware, whatever it takes to get that game or software package to run.


Required to run:
[graphics/png] [audio/fluidsynth] [x11/liboldXrandr] [devel/SDL2] [multimedia/ffmpeg4]

Required to build:
[pkgtools/x11-links] [x11/xcb-proto] [x11/fixesproto4] [pkgtools/cwrappers] [x11/xorgproto]

Package options: ffmpeg, opengl, x11

Master sites:

SHA1: f360acdd097eb56e0e11f5c7bb7945eb57820a59
RMD160: eb4813efd3a85c495aca6e48b2f24c3f6f4f9b05
Filesize: 34981.967 KB

Version history: (Expand)


CVS history: (Expand)


   2019-12-05 23:56:23 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
dosbox-x: Update to 0.82.24

0.82.24
  - FDC emulation now allows READ command to look for
    sector numbers that are out of range in order to
    support booter games that read out of range sector
    numbers as part of their copy protection.
  - Windows SDL1 window resizing fixed to avoid snapping
    and jumping issues when the window is sized down
    to the point the menu bar doubles or triples in
    height due to menu item wrapping.
  - FDC clear DMA terminal count automatically (with a
    warning printed to the log) at beginning of FDC
    read/write (PC-98 booter game Star Cruiser).
  - FDC DMA read/write failure now causes FDC to signal
    an error, and the debug output will say so.
  - FDC debug output now shows motor bits in the correct
    order, not backwards
  - CONFIG.COM and MIXER.COM are now registered only at
    DOS kernel startup, to resolve their disappearance
    after RE-DOS or guest system reset.
  - Some OpenGL cleanup and fixes for when compiling for
    Mac OS X Catalina.
  - Shell startup now prints the actual mapper binding
    (whatever it is) for the Host key instead of assuming
    F12/F11.
  - "Ro" key in PC-98 mode in the mapper interface now
    clarifies that it is Ro / _ since the shift state is
    the underscore.
  - Shell startup code fixed to show F11 for Windows and
    F12 for other platforms properly instead of always
    showing F11.
  - Added BOOT option --pc98-graphics to start up with
    graphics layer enabled in order to run HDI images
    using QMOUSE and games that expect NEC MOUSE.COM
    behavior of showing graphics layer on driver init.
  - BOOT now hides graphics layer on startup in PC-98 mode
    to reflect real hardware.
  - INT 33h mouse emulation now enables graphics layer
    on mouse startup and INT 33h AX=0 to imitate NEC
    MOUSE.COM behavior seen on real PC-98 hardware. This is
    needed for some Orange House games that assume this
    behavior, without which the graphics are invisible.
  - INT 33h define range functions now include separate
    range correction for text mode vs graphics mode.
  - Help sections in Configuration GUI have been improved,
    they are now easier to browse and read. (aybe)
  - CONFIG: added description for 'securemode' (aybe).
  - Integer properties are now correctly saved when
    they have been changed in configuration GUI (aybe).
  - Some scenarios with command history could display
    garbage characters from previous/next command (aybe).
  - Fixed all hard disk images created by IMGMAKE having
    VHD footers. (Allofich)
  - Windows Visual Studio solution: (aybe)
    - cleaned and clarified project properties for projects
    - removed configurations that didn't make sense
    - fixed broken debugging
    - consolidated to use single versions of SDK and IDE
    - enabled faster builds (multi-processor compilation)
    - fixed broken builds, e.g. ARM, ARM64
   2019-11-02 19:30:48 by Nia Alarie | Files touched by this commit (1)
Log message:
dosbox-x: Not mprotect safe on x86
   2019-11-01 18:53:41 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
dosbox-x: Update to 0.82.23

Changes:

  - Serial and parallel file output now disable stdio
    buffering so that output is more immediately
    accessible to the user.
  - Added file output to serial port emulation.
  - Parallel port emulation now support both dev: and
    file: to specify that LPTx output go to a file,
    not necessarily a device by name.
  - Fixed bug that capped vmemsizekb to 8KB.
  - BIOS bootup screen now shows correct text for CPU
    type instead of "? CPU" when cputype=auto.
  - PC-98 256-color mode fixed to ignore doublescan
    and 200-line bits of the GDC to match real hardware
    behavior. This fixes display problems with
    "Alone in the Dark"
  - BOOT command will now always set 640x200 8-color
    graphics mode when booting PC-98 disk images,
    to match the apparent behavior of real hardware.
  - PC-98 hardware apparently allows writing port 6Ah
    to jump directly to 256-color mode from 8-color
    mode, update DOSBox-X emulation to allow it.
    This fixes the PC-9821 port of "Alone in the Dark".
  - Slow CGA memory access handler now wraps to 16KB
    correctly, and resolves a segfault that can happen
    if the last 16KB is accessed by the guest if
    vmemsizekb=16.
  - vmemsize default is now -1, which means to pick a
    video memory size automatically.
  - Added PC-98 INT 1Bh AH=03h SCSI BIOS command, which
    allows FreeDOS98 to boot.
  - INT 33h emulation fixed not to reset mouse min/max
    range if the new video mode is a VESA BIOS SVGA
    mode (not a standard VGA mode). Some games seem to
    define the mouse min/max range AND THEN set the
    VESA BIOS mode, not the other way around.
  - INT 33h define range functions now apply rounding
    to the max range if the range is close to the
    dimensions of the screen, for games like Daggerfall
    that set the cursor maximum range to values close to,
    but not exactly, the dimensions of the VGA screen.
  - INT 33h define range functions updated to accept max
    ranges for mapping host to guest if set just after
    video modeset or if those INT 33h functions are called
    when no mouse buttons are down.
  - INT 10h AH=4Fh AL=08h (Set DAC width) now correctly
    set AL=4Fh to indicate the call is supported.
  - VGA DAC palette writes are now ALWAYS masked to 6-bit
    unless 8-BIT DAC mode is ON and enabled. This fixes
    palette problems with Amulets and Armor.
  - VGA DAC 6/8-bit palette management code simplified
  - Added dosbox.conf option to instruct DOSBox-X to leave
    the PC speaker clock gate enabled if set, for games
    that use that PIT output as a time source. Setting
    the option to "true" allows "Bàoxiào sānguózhì", a game
    with strange and elaborate timing code, to run without
    hanging at the second title screen.
  - VGA port 3DAh "undefined bits" setting changed to 0x04
    to accomodate "Blues Brothers"
  - Configuration GUI: If the settings are scrollable,
    tabbing between fields will now auto-scroll to the
    field and make it visible.
  - In the configuration GUI, scroll wheel input no longer
    changes the window focus.
  - Set CPU cycles dialog box layout fixed.
  - Added 'skip encoding unchanged frames' option to
    dosbox.conf. If set, AVI video capture will skip
    video frame compression if the frame has not changed
    from the previous frame. Option is off by default
    at this time in case it causes any issues with users
    and their video editing software.
   2019-10-20 11:42:13 by Nia Alarie | Files touched by this commit (1)
Log message:
dosbox-x: Disable dynarec on non-x86
   2019-10-01 21:37:51 by Nia Alarie | Files touched by this commit (7)
Log message:
Accept blame for a handful of packages.
   2019-10-01 16:23:22 by Nia Alarie | Files touched by this commit (2) | Package updated
Log message:
dosbox-x: Update to 0.82.22

0.82.22
  - Added Normal2x render scalers so that 'force scaler'
    for 1x2 or 2x1 scalefactors works and you can scale
    up 320x200/640x200 VGA modes and 640x200 CGA modes
    by 2x.
  - Main window titlebar now reflects whether or
    not the debugger interface is active.
  - Debugger interface now flushes terminal input
    upon entering the debugger, so that keyboard
    input prior to entering the debugger is ignored.
  - Debugger mapper shortcut and menu item are now
    a toggle. Selecting once will enter the debugger
    and selecting again will resume emulation.
  - cycles=max now displays cycle percentage correctly
    instead of showing e.g. 100 cyc/ms
  - (Allofich) Note and ignore INT 33, AX=53C1 call
    for the Logitech CyberMan.
  - Fixed odd code addition that disabled (through
    the configuration) XMS, EMS, and UMB when
    booting a guest OS. This fixes a problem where
    those services are not available when rebooting
    back into the DOSBox-X shell from a guest OS.
  - CGA 640x200 and MCGA 640x480 modes fixed to
    have proper refresh rate when machine=mcga,
    instead of 140Hz.
  - MCGA horizontal active display register
    encodes N - 1, not N, according to real
    hardware register dumps.
  - INT 10h modes 2 and 3 updated set MCGA CRTC
    write protect bit, to match real PS/2 hardware
    behavior, and to unlock CRTC registers during
    mode set.
  - PC-98 VSYNC interrupt now fires at vertical
    retrace start (as documented) instead of at
    active display end behavior borrowed from
    DOSBox VGA emulation. This fixes "Tonight"
    by Swat.
  - Fixed mistake that placed N88 ROM BASIC stub
    (something specific to PC-98) in memory even
    in IBM PC/XT/AT emulation mode.
  - Fixed some callback slot leaks that can cause
    DOSBox-X to run out of callback slots if you
    reset the guest system too much.
  - Fixed invalid callback and errant interrupt
    handling during BIOS reset delay that happens
    if you use the keyboard shortcut to trigger
    system reset.
  - XMS emulation resets global enable and local
    enable state on XMS emulation startup to fix
    crashes related to inability to control A20 gate
    after system reset or DOS kernel restart.
  - Debugger "SM" command now accepts segment:offset
    syntax for memory location to write.
  - Fixed INT 21h AH=65h bug that returns DBCS table
    for AH=4h that should return filename uppercase
    table.
  - Configuration GUI property settings are now
    shown in a single column wide list with scrolling.
  - In the configuration GUI, help dialogs will now
    present the help text as a scrollable region if
    there is too much to fit on screen.
  - dosbox.conf mixer rate will now accept any
    sample rate from 4KHz to 192KHz instead of only
    fixed specific sample rates.
  - cascade interrupt ignore in service setting now
    accepts true, false, and auto. "auto" is now the
    default, and will choose true or false depending
    on machine type for correct emulation either way.
    It should no longer be necessary to add
    "cascade interrupt ignore in service=true" to
    your dosbox.conf every time you want to run a
    PC-98 game properly.
  - PC-98 FM board emulation will now load SOUND.ROM
    into segment CC00h if available, if FM board
    emulation is enabled.
  - PC-98 INT 18h AH=30h updated to return AH=05h
    AL=00h BH=00h if success, AH=00h AL=01h BH=01h
    if failure. This is needed to get Puyo Puyo 2
    to work, which for some reason fails if a call
    to set 15KHz mode works.
  - PC-98 LIO and SOUND BIOS entry points, while
    still not implemented, have been updated to
    print the name of the call according to an
    online reference.
  - DOS FCB rename now supports renaming the
    volume label as MS-DOS does.
  - Fixed bug that prevented proper DOS FCB rename
    if the FCB used to rename is extended.
  - FAT filesystem driver updated to also store
    updated volume label in the boot sector of the
    partition, as per MS-DOS FAT standards.
  - FCB create can now be used to set a FAT
    filesystem label. MS-DOS LABEL.EXE works
    correctly now.
  - FAT filesystem driver now allows LABEL command
    to change the FAT volume label of mounted disk
    images.
  - DOS kernel updated to support basic FCB methods
    of deleting/setting the volume label, at least
    on local folder mounts.
  - DOS kernel will now return the volume label of
    FAT filesystems mounted from disk images.
  - LABEL setting code fixed not to treat label as
    if an 8.3 filename.
  - LABEL is no longer a builtin shell command and
    appears on drive Z: as LABEL.COM
  - LABEL reimplemented to imitate MS-DOS behavior
    with regard to how it handles the command line.
  - File I/O checking and cleanup (Allofich)
  - Integrated commits from mainline (Allofich)
    - Handle errant IRQs as a real BIOS does. Also
    remove r3263 workaround, as it's no longer
    needed.
    - Fix flag behavior of several shift/rotate
    instructions, cause exceptions and fix
    potential 'pop ss' problems
    - Add support for Print Screen key and
    interrupt. In-game screenshot feature
    of Descent and Descent 2 now works.
   2019-09-23 01:28:55 by Nia Alarie | Files touched by this commit (1)
Log message:
dosbox-x: Add missing options file
   2019-09-22 11:54:14 by Nia Alarie | Files touched by this commit (8)
Log message:
Add emulators/dosbox-x. Based on work by Yorick Hardy in pkgsrc-wip.

As a fork of DOSBox, DOSBox-X retains compatibility with the wide base of
DOS games DOSBox was designed for.

It also goes further, with a focus on accurate emulation of the hardware,
and many more ways to tweak and configure the DOS virtual machine.

The DOSBox-X team believes that a better way to emulate the legacy PC platform
is to give the user all the options they need to emulate everything from
original IBM PC hardware with 64KB of RAM all the way up to late 90's
hardware, whatever it takes to get that game or software package to run.