Bochs v2.6.9 is released. Bochs is a highly portable open source IA-32 (x86) PC emulator written in C++, that runs on most popular platforms. It includes emulation of the Intel x86 CPU, common I/O devices, and a custom BIOS. Currently, Bochs can be compiled to emulate a 386, 486, Pentium/PentiumII/PentiumIII/Pentium4 or x86-64 CPU including optional MMX, SSEx and 3DNow! instructions.
Bochs is capable of running most Operating Systems inside the emulation including Linux, DOS, Windows® 95/98 and Windows® NT/2000/XP or Windows Vista. Bochs was written by Kevin Lawton and is currently maintained by this project.
Bochs can be compiled and used in a variety of modes, some which are still in development. The 'typical' use of bochs is to provide complete x86 PC emulation, including the x86 processor, hardware devices, and memory. This allows you to run OS's and software within the emulator on your workstation, much like you have a machine inside of a machine. For instance, let's say your workstation is a Unix/X11 workstation, but you want to run Win'95 applications. Bochs will allow you to run Win 95 and associated software on your Unix/X11 workstation, displaying a window on your workstation, simulating a monitor on a PC.
Bochs v2.6.9 Changelog:
|Brief summary :|
- CPU: implemented new instructions and x86 architecture extensions.
- Bugfixes for CPU emulation correctness.
- Added Android host platform support.
- Added USB EHCI device emulation support.
- Added USB floppy (UFI/CBI) support.
- Added ethernet module 'socket', designed to interconnect Bochs instances.
- Show textconfig at runtime in the Bochs VGA window (gui console).
Detailed change log :
- Added new log action "warn", designed to show a message box on error events.
- Show message box before exit if log action is set to "fatal".
- Added macro BX_FATAL for all cases when continuing is not recommended, since
it can cause an application crash or incorrect simulation behaviour.
- Configure and compile
- Added Android host platform support.
- Configure script now prints warnings for features not maintained yet.
- GUI and display libraries
- Show the runtime configuration in the Bochs VGA window (gui console) instead
of console / xterm (rfb, sdl, sdl2, vncsrv and X11 guis).
- SDL2: Added get/set clipboard text support.
- CPU / CPUDB
- Bugfixes for CPU emulation correctness (critical bugfix for x86-64 and AVX opcodes emulation,
fixed assertion failures in proc_ctrl.cc)
! VMX: Implemented Page Modification Logging (PML)
! VMX: Implemented TSC Scaling Extension
! Paging: Implemented Protection Keys
! Implemented UMIP: User Mode Instruction Prevention (don't allow execution of SLDT/SIDT/SGDT/STR/SMSW with CPL>0)
! Implemented RDPID instruction
! Implemented VPOPCNTD/VPOPCNTQ AVX512 instructions
! Implemented XSAVES/XRSTORS instructions and IA32_XSS MSR
! Implemented Translation Cache Extensions (TCE) for AMD CPUID and EFER.TCE control
! Implemented CLZERO instruction (AMD), enabled in Ryzen CPU model
! Implemented MONITORX/MWAITX instructions (AMD), enabled in Ryzen CPU model
! CPUDB: Added AMD Ryzen configuration to CPUDB
- I/O Devices
- Added standard bus mouse support in addition to the existing InPort
emulation code. (patch by Ben Lunt).
- Hard drive
- Implemented lock mechanism for hard disk images. An image that is opened
in r/w mode cannot be used multiple times (e.g. by another Bochs session).
- Several fixes in some disk image modes.
- Serial / Parallel ports
- Added support for changing output file at runtime.
- Added ethernet module 'socket', designed to interconnect Bochs instances
with external program 'bxhub' (simulating a multi-port ethernet hub).
- Now creating separate plugins for each network driver implementation
(slirp, win32, etc.).
- Added PCM output data resampling in a separate thread. The resampler
requires either libsamplerate or the SoX resampler library installed.
- SDL: Added audio capture support (requires library version >= 2.0.5).
- Now creating separate plugins for each sound driver (alsa, win, etc.).
- Added USB EHCI device emulation support (EHCI core ported from Qemu).
- Added USB floppy (UFI/CBI) support (patch by Ben Lunt).
- Added asynchronus USB packet completion support (needed by disk/cdrom
seek and read/write latency emulation).
- Implemented USB remote wakeup mechanism.
- Fixed NAK response handling in all USB HCs.
- USB printer: added support for changing output file at runtime.
- Added common USB device option "debug" to turn on BX_DEBUG reporting at
- ROM BIOS
- Implemented Bochs BIOS option "fastboot" for skipping the boot menu delay.
Download: Bochs v2.6.9