bochs 2.6.10

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.1024 Apr 2019 00:45 minor feature: : General. - Disabled legacy "load32bitOShack" feature. CPU / CPUDB. - for CPU emulation correctness (critical for PCID, ADCX/ADOX, MOVBE, AVX/AVX-512 and VMX emulation). ! x87: implemented FOPCODE and FDP deprecation features. ! AVX-512: implemented AVX-512 VBMI2/VNNI/BITALG instructions. ! Crypto: Implemented VAES instructions / VPCLMULQDQ / GFNI instruction. ! VMX: Implement EPT-Based Sub-Page Protection. ! CPUID: Added Skylake-X CPU definition (features AVX-512 support). ! CPUID: Added Cannonlake CPU definition (features more AVX-512 levels, UMIP, SHA, PKU support). Bochs Deger and Instrumentation. - Added support for conditional breakpoints and conditional step/continue to Bochs deger. - Support 'info tab' command for 64-bit mode as well. - Bochs deger improvements patch by Doug Gale. - better handling of 64-bit addresses in the deger, added support for 64 bit symbols, added more symbol lookups. I/O Devices. - PCI. - Added basic support for the i440BX PCI/AGP chipset. - Timers. - Implemented HPET emulation. - Hard drive / HD image. - Added support for unlocking disk images (locks leftover from previous Bochs session) with the new command line argument '-unlock'. - Added ATAPI command "get event status notification". - : undoable/volatile mode images now inherit the base image geometry if present. - Voodoo. - Voodoo1 emulation speedup with combined PCI / memory FIFO implementation and multi-threading support (separate FIFO thread). - Voodoo2 model now working after some and implementation of the CMDFIFO (using FIFO thread) and one of the bitBLT functions. - Added Voodoo Banshee / Voodoo3 emulation support (still under construction, but basicly usable). The AGP models are available if chipset is i440BX. - Display (general). - Added basic DDC support for Bochs VBE, Cirrus and Voodoo Banshee / Voodoo3 adapters (reporting plug play monitor "Bochs Screen"). - USB. - Now creating separate plugins for each USB device implementation. - Added sector size option fo
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.