bochs 2.6.9

Bochs is a powerful x86/amd64 hardware emulation and debugger software. Besides the CPU and instruct set extensions, it simulates common PC/AT hardware, an ISA and PCI system bus, memory, disks, video hardware, ethernet, and enough of a compatible BIOS to run DOS/Winows, Linux/BSD, Minix and other operating systems. It doesn't provide virtualization, thus runs extremely slow, but is safe to run for the host operating system.

Tags c++ c assembler emulator x86 hardware-simulation cpu-emulation
License GNU LGPL
State stable

Recent Releases

2.6.921 Mar 2017 15:45 minor feature: : Brief summary : - 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 : General. - 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. 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. - for CPU emulation correctness (critical for x86-64 and AVX opcodes emulation, assertion failures in proc_ctrl.cc). ! VMX: Implemented Page Modification Logging (PML). ! VMX: Implemented TSC Scaling Extension. ! Paging: Implemented Protection Keys. ! Implemented XSAVES/XRSTORS extensions. ! 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. ! CPUDB: Added AMD Ryzen configuration to CPUDB. I/O Devices. - Busmouse. - Added standard bus mouse support in addition to the existing InPort emulation code. - 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 in some disk image modes. - Serial / Parallel ports. - Added support for changing output file at runtime. - Networking. - Added ethernet module 'socket', designed to interconnect Bochs instances with external program 'bxhub' (simulating a
2.6.802 May 2015 13:05 bugfix major: CPU / CPUDB. Bugfixes for CPU emulation correctness (critical bugfix for x86-64 emulation). Memory type calculation support for Bochs debugger and instrumentation, to enable configure with --enable-memtype option. CPUDB: Added Pentium (P54C) configuration to CPUDB. CPUDB: Added Broadwell ULT configuration to CPUDB. Configure and compile. Configure option --enable-fast-function-calls now also used for MSVC nmake. Some configure fixes for the GTK debugger support. GUI and display libraries. The VGA update timer mode now can be selected with the 'vga' option. Release all pressed keys when the simwindow gets back the keyboard focus. Win32 gui: Captured mouse cursor now really trapped in window. SDL2: Implemented yes/no dialog (e.g. for VVFAT commit). Some fixes for wxWidgets 3.0 and unicode version compatiblity. Full save/restore support for enhanced gui debugger settings (window+font). Added debugger support for the term gui using a pseudo-terminal. I/O Devices. Hard drive. Added Oracle(tm) VM VirtualBox image support (VDI version 1.1). Re-enable "bulk I/O" repeat speedups extension. Some lowlevel cdrom code fixes for Windows and Linux. Sound. SB16: Fixed OPL chip detection by implementing ISA bus delay. SB16: Ported OPL3 emulation from DOSBox and partly removed legacy code. ES1370: Added MIDI UART output support. ES1370: Fixed critical bug that made Win9x drivers crash. Major rewrite of the lowlevel sound code. Added mixer thread support (required for all modules except 'sdl'). New mixer and SDL mixer are polling data from the PCM output buffers, the PC speaker beep generator and the OPL3 FM generator. PCM format conversion to 16 bit signed little endian. Added sound 'file' module for VOC, WAV, MID and raw data output and added dual output support (device+file) in midi/wave mode 3. Added capability to set up the sound driver per service. Floppy. Fixed "Read ID" command for single-sided media. ROM BIOS. Fixed keyboard scancode processing after keyboard intercep
2.6.705 Nov 2014 06:45 major feature: CPU / CPUDB: Implemented AVX-512BW/AVX-512DQ/AVX-512VL extensions emulation. implemented AVX512-IFMA532 instructions emulation. implemented AVX512-VBMI instructions emulation. Bugfixes for CPU emulation correctness (critical fixes for AVX-512, CMPXCHG16B and VMX) Fixed Bochs segmentation fault crash with Handlers Chaining Speedups enabled when compiling with gcc, especially with low optimization levels. Reverted removal of reporting Architectural Perfmon support in pre-defined CPUID modules. Windows 8 and Windows 10 require Performance Monitoring to be reported to boot. To workaround possible Windows 7 64-bit installation issues: use bx_generic CPUID module, which doesn't report Performance Monitoring in CPUID. GUI and display libraries: The VGA update timer and the status LED timer now always use the realtime mode independent from the 'clock' option setting. Added native SDL2 GUI support to Bochs. To enable configure with --with-sdl2. Added new user shortcut "scrlck" (SDL/SDL2 using "Scroll Lock" for fullscreen toggle). Write enhanced gui debugger settings to file on exit and restore on initialization. USB xHCI model now emulates a NEC/Renesas uPD720202 device (patch by Ben Lunt). Added USB port specific option 'size' for VVFAT disks (range 128M ... 128G). If the size is not specified or invalid, it defaults to 504M. Hard drive / HD image: Fixed crash when using a "fixed" type VPC image. ROM BIOS: fixed int74_function() for 4-byte (wheel mouse) packets. LGPL'd VGABIOS updated from CVS (fixed building VBE modes list) Visual Studio workspace files updated to VS2013Ex format. bximage_old/bxcommit: removed old obsolete image manipulation tools. Documentation fixes and updates.