DOSBox-X 0.84.0 2022-05-31 20:25
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.
- Disable leading directory validity check in