https://86box.net/2023/08/26/86box-v4-0.html
86Box logo86Box logo Downloads Docs Blog GitHub
86Box v4.0
August 26, 2023 - written by richardg867
[hero]
This is the August 2023 update to 86Box, bringing many improvements,
bugfixes (especially for non-Windows users) and some new hardware.
It's certainly been a while since our last update. Needless to say,
despite the bumpy ride to this release, we're still alive and working
on making 86Box great. We have some exciting new features currently
being worked on for future updates, and from now on, we'll be sharing
work-in-progress builds of new features with our Patreon supporters,
with no impact to our regular release schedule; the first WIP build
is already available to supporters, so go check it out.
---------------------------------------------------------------------
Main features
Input
There have been many fixes to keyboard and mouse input. Mouse
emulation was overhauled to massively improve responsiveness. The AT
and PS/2 keyboard controller emulation was also reworked to hopefully
eliminate the longstanding issue of keyboard and mouse input suddenly
stopping, as well as other issues with PS/2 keyboards and mice on
some machines.
Keyboard input on Linux and macOS hosts is now significantly
improved, fixing issues with missing or mismatched keys particularly
on international keyboards, as well as key holding. Absolute mouse
input on X11 Linux hosts, which is used when running 86Box through a
virtual machine or VNC, was also fixed.
ATI Mach8/32
The Mach8 and Mach32 were clones of the IBM 8514/A video accelerator
which helped ATI gain market momentum in the early 1990s. 86Box now
provides the first ever functional emulation of these cards. The
Mach32 in particular was a popular card, available in five different
bus variants (of which we currently emulate ISA, MCA, VLB and PCI) as
well as integrated to many motherboards, and had wide operating
system support.
Network
VDE virtual networking is now supported for connecting 86Box machines
and even other emulators to each other on Linux and macOS hosts.
While Windows is notably not supported by VDE, we're working on a
solution, so stay tuned. The 86Box documentation has a full setup
guide for creating a VDE network.
A nasty emulator crash when PCap fails to initialize was fixed, and
the SLiRP library was updated to its full version on Windows and
macOS hosts for potential performance improvements.
---------------------------------------------------------------------
Changelog
Emulator
* Added PipeWire support for audio on Linux hosts
* Added pure Wayland support for Linux hosts
* Fixed broken Linux AppImages for x86 32-bit, ARM32 and ARM64
architectures
* Fixed sound output issues on some Linux hosts due to mismatching
audio libraries
* Fixed incorrect key holding behavior on Linux and macOS hosts
* Fixed key mapping on Linux and macOS hosts with international
keyboards
* Fixed Keyboard requires capture option not allowing keyboard
capture if no mouse is enabled
* Fixed Shift+F10 temporarily blocking keyboard input
* Fixed absolute mouse input on X11 Linux hosts
* Fixed 4th and 5th mouse buttons on Windows hosts
* Fixed inconsistent mouse sensitivity with a scaled window or full
screen mode
* Fixed Direct3D 9 renderer scaling on HiDPI monitors
* Fixed Vulkan support on Linux hosts
* Fixed keyboard input through the secondary monitor window on
Windows hosts
* Fixed crash when exiting with a secondary monitor window open
* Fixed secondary monitor freezing after changing renderers
User interface
* Added soft power button for ACPI-capable machines
* Added host architecture and dynamic recompiler information to the
About window
* Added translation: Catalan by OBattler, Slovak by OBattler and
daviunic
* Fixed default file extension for new floppy, MO and ZIP images on
macOS hosts
* Fixed full screen keyboard shortcuts leading to stuck keys or not
working at all
* Fixed changes to video card settings being discarded after
changing machines
* Fixed new raw disk images not using the exact specified CHS
geometry
* Fixed text editing incorrectly enabled on hard disk and removable
drive tables (not that it did anything)
* Fixed CD-ROM mute option not showing its current state
* Fixed status bar icons still showing activity with Update status
bar icons turned off
* Fixed MCA device list missing leading zeros on device IDs
* Fixed missing AppImage icon on more Linux desktop environments
* Changed default hard disk image type to dynamic VHD
* Changed macOS app icon to conform to Apple standards
* Updated translations: Chinese (Taiwan), Ukrainian
Machines
* Re-added Compaq Deskpro 386 with proper chipset emulation
* Added IBM PS/2 Model 70 Type 4 486 machine (with forced Softfloat
FPU due to strict BIOS tests)
* Added Gemlight GMB-P54SPS Socket 5 motherboard
* Added Packard Bell PB810 Socket 7 motherboard
* Added Toshiba Infinia 7200 Socket 7 motherboard
* Added ECS P6BAT-A+ Slot 1 and Socket 370 motherboard
* Added real time clock to the Vendex HeadStart Turbo 888-XT
* Added AGP support to the QDI EXCELLENT II
* Added PS/2 mouse support to the Epson Action PC 2600 and TriGem
486G
* Added on-board S3 ViRGE/DX video to the Intel TC430HX
* Added on-board ATI Mach32 video to the IBM PS/ValuePoint P60
* Fixed Acer A1G crashing the emulator on 64-bit builds
* Fixed Acer V35N hanging during POST
* Fixed PC Chips M729 BIOS misbehaving and not retaining CMOS
settings
* Fixed ASUS P5A instability in DOS
* Fixed IBM PC 330 (type 6573) BIOS misbehavior and missing
on-board devices
* Fixed keyboard layout issues on the ECS Elite UM8810PAIO and
Samsung SPC7700P-LW
* Fixed incorrect memory detection on the Phoenix XT clone and
Tandy 1000 machines
* Fixed OS/2 crashing the emulator on the IBM PS/2 Model 80
* Fixed PS/2 mouse not being detected on the Samsung SPC-4216P
* Fixed game port joysticks on the IBM PCjr
* Fixed PCI device IRQs on ALi M1489 machines and the ECS P6BAP
* Fixed CD-ROM boot on the AMI Apollo
* Fixed discrete video card support on the TriGem 486G
* Fixed Olivetti M19 font corruption
* Fixed Amstrad PC20(0) font corruption in MDA mode
* Fixed incorrect keyboard layout on Amstrad machines
* Fixed incorrect on-board devices on the ASUS PCI/I-486SP3
* Fixed incorrect PCI slot layout on the ASUS P2B-LS
* Fixed ASUS P5A and Gigabyte GA-5AX hanging or rebooting on ACPI
shutdown
* Fixed DataExpert EXP8551 and PC Partner MB500N filed on the wrong
category (now Socket 7 Single Voltage)
* Fixed incorrect Planar IDs on the IBM PS/2 Model 55SX and 60
* Changed IBM PCjr memory size selection to a minimum of 64 KB with
64 KB increments
* Increased maximum RAM on the Gigabyte GA-586IP to 256 MB
Hardware
* Core
+ Added Softfloat FPU option for higher floating point accuracy
at the cost of performance
+ Added PIT mode option for higher Programmable Interval Timer
accuracy at the cost of performance
+ Added Celeron Covington CPU for when you feel like having no
L2 cache
+ Added Page Global Enable CPU feature to the Pentium II and
its derivatives
+ Improved performance of some MMX workloads on x86 hosts
+ Reworked PCI slot assignment system - Windows may redetect
installed cards!
+ Fixed PCI functionality on Windows 95 with the 430NX and
other early PCI chipsets
+ Fixed certain machines crashing the emulator when set to 16
MB RAM or higher
+ Fixed OpenStep text corruption and font sizing issues due to
missing FXTRACT FPU instruction
+ Fixed graphical glitching on 3D games with the Pentium II
Deschutes and Celeron Mendocino due to broken FXSAVE and
FXRSTOR FPU instructions
+ Fixed NetWare 6 failing to boot on the Pentium II and its
derivatives
+ Fixed interrupt controller emulation inaccuracies mostly
affecting MCA IBM PS/2 machines
+ Fixed a small MMU mapping inaccuracy on 32-bit ALU
instructions
+ Fixed undocumented 8088 and PIT quirks abused by the Area
5150 demo (we're working on making it work!)
* Display
+ Added ATI Mach8 ISA and Mach32 ISA/MCA/VLB/PCI video cards
+ Added INMOS XGA ISA video card
+ Added 8 MB video RAM option to the Number 9 9FX 771 (S3
Vision968) card
+ Fixed IBM XGA crashing the emulator if the primary video card
is not VGA
+ Fixed IBM XGA BIOS loading issues resulting in POST failures
(again)
+ Fixed QBasic hanging on exit on EGA cards
+ Fixed text corruption with S3 cards on XFree86
+ Fixed S3 ViRGE/GX family displaying a black screen on XFree86
+ Fixed cursor glitching with Miro and SPEA S3 Vision968 cards
on Windows 95
+ Fixed cursor glitching with Tseng ET4000/W32 cards on some
Windows versions
+ Fixed graphics corruption with ATI Mach64 cards on some video
modes and Windows versions
+ Fixed Hercules text mode missing the rightmost column
+ Fixed Hercules Plus graphics corruption in RAM font mode
+ Fixed Hercules Plus and InColor screen wrapping glitch
+ Fixed font selection and color palette on the Compaq Portable
gas plasma display
+ Fixed graphics corruption on EGA monochrome modes
+ Fixed specific graphics corruption issues on the IBM 8514/A
and XGA
+ Fixed small emulation inaccuracies on CGA, EGA and Cirrus
Logic cards
+ Fixed Voodoo Banshee/3 screen wrapping glitch in 2048x1536
mode
+ Fixed DDC monitor size data to prevent Xorg from defaulting
to 2048x1536 or other high resolutions
+ Fixed incorrect video RAM detection on S3 Vision864,
Vision964, Trident TGUI9400 and TGUI9440 cards
+ Fixed Reply Video Adapter (Cirrus Logic GD5426) MCA card
ignoring the configured video RAM amount
+ Fixed BIOS error on Cirrus Logic MCA cards
+ Fixed incorrect detection of the Compaq EGA
+ Fixed IBM 8514/A and XGA incorrectly selectable alongside
incompatible VGA cards
+ Changed 200-line CGA mode to no longer double to 400 lines
* Input
+ Reworked AT-PS/2 keyboard controller emulation to fix random
loss of input
+ Increased mouse polling rate to improve responsiveness
+ Added Command + Forward Delete shortcut for the Insert key on
macOS hosts
+ Fixed serial mouse detection on some Linux distributions
+ Fixed 3-button mode on the Logitech serial mouse
+ Fixed PS/2 mouse on SCO UNIX
+ Fixed 4-axis 4-button joystick on Windows hosts
+ Fixed vJoy driver crashing the emulator when configured as a
joystick
* Sound
+ Added support for up to 4 sound cards per machine
+ Fixed FluidSynth not working on Linux and macOS hosts (for
real this time)
+ Fixed incorrect default settings for FluidSynth
+ Fixed AdLib Gold hanging the emulated machine
+ Fixed Ensoniq AudioPCI audio distortion on some games
+ Fixed MPU-401 intelligent mode freezing some games
+ Fixed Windows Sound System crashing the emulator if OPL
functionality is disabled
+ Fixed VIAFMTSR software OPL3 emulation on VIA on-board sound
+ Fixed AcerMagic S20 and miroSOUND PCM10 sound cards not being
detected by some tools
+ Fixed incorrect default IRQ (now 5) on the AcerMagic S20 and
miroSOUND PCM10
+ Fixed MIDI input corrupting large SysEx messages on the
MPU-401 and compatible sound cards
+ Fixed Ensoniq AudioPCI incorrectly identifying as ES1373
instead of ES1371
+ Fixed VIA on-board sound impacting emulation performance when
supported by the machine's chipset but not used
+ Moved Innovation SSI-2001, CMS / Game Blaster and Gravis
Ultrasound to the new multiple sound card selector
+ Changed Ensoniq AudioPCI codec selection to reflect actual
ES1371 cards
+ Updated FluidSynth library on Windows hosts to no longer
require an external DLL
+ Updated ymfm library to fix a small OPL4 inaccuracy
* Network
+ Added VDE virtual networking support for Linux and macOS
hosts
+ Added Null Driver option to connect the network card to an
empty network, replacing the None option
+ Fixed PCap crashing the emulator upon failing to initialize
+ Fixed NetWare packet corruption on NE2000 cards
+ Fixed Western Digital WD8003E/A MCA cards not working when
configured for IRQ 4 or 15
+ Updated SLiRP library on Windows and macOS hosts
* Ports
+ Added serial port passthrough to real ports and named pipes
+ Fixed PostScript printer not working on macOS hosts (for real
this time)
+ Fixed serial ports not working on later ALi chipsets
+ Updated the ESC/P printer's FreeType library on Windows hosts
to no longer require an external DLL
* Storage
+ Added ATAPI and SCSI CD-ROM drive model selection with more
options
+ Added Monster FDC floppy drive controller card
+ Added generic tertiary and quaternary floppy drive controller
cards
+ Added Western Digital WDXT-GEN ISA MFM controller card
+ Added XTIDE BIOS variant specifically for NEC V20/V30 CPUs
+ Fixed Adaptec AHA-154x and BusLogic SCSI controllers crashing
the emulator on FreeBSD
+ Fixed slow detection of empty IDE channels on Linux
+ Fixed XTA controllers not working properly
+ Fixed XTIDE BIOS error on NEC V20/V30 CPUs
+ Fixed mounted folders discarding invalid characters used by
some DOS application CDs
+ Fixed ATAPI CD-ROM not working on Solaris 2
+ Fixed BusLogic and Rancho RT1000B SCSI controllers not
working with specific versions of their DOS drivers
+ Fixed Tekram DC-390 SCSI controller not resetting devices
attached to it
+ Fixed SCSI CD audio issues on OS/2 and on NCR ISA SCSI
controllers
+ Fixed SCSI ID assignment on the IBM PS/2 SCSI Adapter
+ Fixed dynamic and differential VHD images re-creating as
fixed images if deleted
+ Fixed VHD images with more than 63 (IDE) or 99 (SCSI) sectors
per track not being loaded correctly
+ Fixed emulator crash with hdd_image_load() message when
loading differential VHD images made on different timezones
+ Fixed mounted folders remaining locked on macOS hosts after
the CD-ROM is ejected
+ Fixed cassette incorrectly available on machines without
cassette support
* Other
+ Fixed ISA RTC cards not being detected by some software
+ Fixed ISA RTC cards reporting an incorrect year in some cases
+ Fixed ISABugger incorrectly available on machines without ISA
Known issues
* Some applications which heavily depend on specific 8088 CPU
behavior may not work properly
* The Ensoniq AudioPCI no longer works with the 2001 Creative WDM
driver (SBPCI_WebDrvsV5_12_01.exe); this driver is designed for
ES1373/CT5880 cards only, has identical BSOD issues on a real
ES1371, and only works in VMware and previous versions of 86Box
due to emulation inaccuracies
* Serial port passthrough is not complete and may require
reconfiguration in a future version
* Serial port passthrough may randomly stall the emulated machine
if the other end is not connected
* The ATI Mach8 and Mach32 may not render some very specific video
modes correctly
86Box is maintained by Miran Grca (OBattler) and the 86Box developers
. Website developed by Foxlet with retro-reduced version by
richardg867.