Skip to content

DOSBox-X 0.84.0 2022-05-31 20:25

Compare
Choose a tag to compare
@joncampbell123 joncampbell123 released this 01 Jun 05:28
· 2416 commits to master since this release

Note: Installation instructions are available from the INSTALL page. Also, always check out the DOSBox-X homepage for latest updates.

For usage information please look at the DOSBox-X user guide, which is available from the DOSBox-X Wiki.

0.84.0

  • CMOS century register now aliased to register
    32h and 37h to appease Windows 2000, which assumes
    the century is stored there and will complain
    about invalid date/time otherwise (joncampbell123).
  • Treat IDE command E7h (FLUSH CACHE) as a no-op
    so that the common use of it from Windows 2000
    doesn't spam your log file (joncampbell123).
  • BIOS: At post, if DOS kernel was active and the
    DOS Shell was still running, initiate a proper
    system reset event. Some software, including the
    WINNT.EXE install program for Windows NT, like to
    restart the system by JMPing to the BIOS POST
    entry point. Prior to this fix, doing that from a
    DOS program caused instability with mounted images
    and the DOS shell due to recursion. (joncampbell123).
  • Fix FPU implementation for aarch64 cores (cimarronm)
  • Fixed INT 10h and DAC palette mapping to resolve
    incorrect colors with Hercules graphics mode when
    a game calls INT 10h to set video mode after setting
    it up. This resolves the incorrect blue on black
    color map for Grand Prix by Accolade (joncampbell123).
  • Add recursive mkdir_p() directory creation so that
    overlay filesystem support can correctly create
    a subdirectory of any depth, instead of only one
    level deep from an existing directory on disk.
    (joncampbell123)
  • Add dosbox(-x).conf option "isapnpport" to control
    whether the ISA Plug & Play I/O port is presented
    to the guest. Setting is "true", "false", or "auto".
    "auto" means to enable if PnP BIOS is enabled.
    Previously this port was always present even if
    the PnP BIOS was not. Some operating systems,
    including Windows NT/2000/XP, will enumerate ISA
    Plug & Play hardware by themselves whether or not
    the PnP BIOS is present. (joncampbell123)
  • Fix FPU operations using the top of stack on
    32-bit VS builds (cimarronm)
  • Add IDE ATAPI command MECHANISM STATUS for
    Windows NT 4.0 because that system seems
    to want to know if your CD-ROM drive is a
    CD changer (joncampbell123)
  • IDE Plug & Play resource descriptor changed to use
    2-byte structure for listing IRQ resource instead of
    3 bytes. This (for some reason) fixes problems with
    the IDE driver in Windows NT 4.0, Windows 2000, and
    Windows XP and allows them to boot properly.
    (joncampbell123)
  • INT 13h extensions function 48h is supposed to
    return physical geometry, not the logical geometry
    normally returned by function 08h. This means for
    IDE devices, to return the geometry the IDE controller
    is using. (joncampbell123)
  • Enhanced the Mapper Editor interface. The Mapper UI
    has been greatly improved. (aybe)
  • Add IDE ATAPI command MECHANISM STATUS for Windows
    NT 4.0 because that system seems to want to know if
    your CD-ROM drive is a CD changer. (joncampbell123)
  • Fix IDE devices to start up with the drive ready
    bit set for OSes that expect it when probing IDE
    devices. This allows the Linux kernel to see IDE
    ATA drives emulated by DOSBox-X. (joncampbell123)
  • Fix IDE ATAPI emulation to correctly handle CD
    READ across one or more DRQ block transfers. Use
    block size given by guest in consideration of DRQ
    block size, which allows ATAPI CD-ROM emulation to
    work properly with the Linux kernel. (joncampbell123)
  • Add debug command to show PC-98 color palettes.
    Corrected typo. (joncampbell123)
  • Add support for PC-98 monochrome graphics mode.
    (joncampbell123)
  • IDE emulation now handles implementation events per
    IDE device instead of per IDE controller, which
    may resolve IDE controller issues with some guests.
    (joncampbell123)
  • Added PC-98 GDC drawing commands, which is
    based on Neko Project II source code (nanshiki)
  • Added PC-98 LIO BIOS interface, which is based on
    Neko Project II source code (nanshiki)
  • INT 21h AH=31h Terminate And Stay Resident: If the
    program called INT 21h to free its own PSP segment,
    reassign the block back to the program as allocated
    and then resize as expected. Needed for PC-98 game
    "Yu No" in which PLAY6.EXE, one of the resident
    drivers used for music, does just that. (joncampbell123)
  • Add a hack to enable read access to port 0xa460 on PC-98 which
    returns Sound ID to detect the sound board available.
    Note that the current hack returns Sound ID of PC-9801-86 board
    regardless of the board selected to emulate. (maron2000)
  • Adds WINCHECK to list of programs which should not
    return a valid installation check for WinOldAp
    (AX=1700h/int2fh) so it doesn't mistakenly believe
    Windows is running (cimarronm)
  • Add minimal support for IDE SET FEATURES command EFh.
    (joncampbell123)
  • Fix CMPXCHG8B to change only the ZF flag, instead of
    changing ZF with other flags in an undefined state
    afterwards. This fixes problems with the Windows 2000
    kernel booting up and cputype=pentium (though I am
    unable to get past the INACCESSIBLE_BOOT_DEVICE error).
    (joncampbell123)
  • Updates XADD instruction to set appropriate flags
    (cimarronm)
  • Updates to FPU to handle opcode size prefix (66h)
    on FSTENV/FLDENV/FSAVE/FRSTOR instructions (cimarronm)
  • Update FLD constant FPU instructions to more
    accurately match FPU implementations (cimarronm)
  • Fixed dynamic_dynrec being displayed as dynamic_x86
    in menu, and PREFETCH instruction breakage in the
    dynamic core. (Jookia)
  • Fixed crash if no dynamic cores available (Jookia)
  • Fixed TTF mode breaking a guest not running the
    DOS kernel. (Jookia)
  • Fix DBCS table initialization on reset and
    restart (cimarronm)
  • Fixed some guest systems may not work as expected
    in non-TTF outputs. (Wengier)
  • Fixed IME input not working in MinGW builds, and
    FluidSynth in MinGW-lowend builds. (Wengier)
  • Fixed resizable OpenGL Voodoo window not working
    properly on Windows in previous version. (Wengier)
  • Fixed commands "CHOICE /N /C:123" and "MIXER /GUI"
    not working properly in previous version. (Wengier)
  • Integrated commits from mainline (Allofich)
    • Disable leading directory validity check in
      DOS_FindDevice.