Changes in 2.6 (not yet released):
- Implemented EPT A/D extensions support.
Bochs is fully aligned with the latest published revision of
Intel Architecture Manual (revision 043) now.
- Implemented ADX (ADCX/ADOX) instructions support, the feature can
be enabled using .bochsrc CPUID option.
- Another 10% CPU emulation speedup with even more optimal lazy flags
handling and stack access optimizations
- Support for AMD's SVM hardware emulation in Bochs CPU, to enable
configure with --enable-svm option
- Implemented AMD Extended XAPIC support, to enable set .bochsrc CPU
APIC option to 'xapic_ext'
! Added Corei5 750 (Lynnfield) configuration to the CPUDB
! Added Turion64 (Tyler) configuration to the CPUDB
! Added AMD Phenom X3 8650 (Toliman) configuration to the CPUDB
! Added Corei7 3770K (Ivy Bridge) configuration to the CPUDB
- Bugfixes for CPU emulation correctness and stability
(critical fixes in APIC/X2APIC, VMX and AVX/XOP emulation)
- Bochs Debugger and Instrumentation
- Implemented new debugger command 'info device [string]' that shows the
state of the device specified in 'string'
- Improved debug dump for ne2k, pci, pic and vga/cirrus devices. Added
debug dump for pci2isa, i/o apic, cmos, pit, floppy and dma devices.
- Added TLB to CPU param tree - now it can be browsed from Bochs internal
debugger and Bochs debugger GUI through param tree interfaces
- Implemented 'writemem' debugger command to dump virtual memory block
starting from selected linear address into a file
- Updated definition of instrumentation callbacks, see description in
instrumentation.txt / Fixed instrumentation examples
- Configure and compile
- Moved disk imaging, networking, sound and USB devices to subdirectories
in the iodev folder.
- pcidev: enable support for Linux kernel 3.x (Debian patch by Guillem Jover)
- debugger: generate parser / lexer files only if all required tools are present
- Config interface
- Added support for direct device plugin loading with bochsrc directive for
devices which have the same name for the plugin and config option.
- The bochsrc option 'plugin_ctrl' can now be used to load/unload optional
plugins directly when parsing the config file or command line. See the bochsrc
sample for supported devices.
- Moved bochsrc parsing / writing and config parameter handling for networking,
sound and USB devices to the plugin device code. The options are only
available when the corresponding plugin device is loaded.
- Added ability to set log action per device from .bochsrc.
- Added new command line option '-noconsole' to disable the console
window on Windows host.
- Renamed PCI Pseudo NIC option to "pcipnic" (for direct plugin loading)
- Moved several related options to the new "keyboard" bochsrc option.
- Added new parameter 'rtc_sync' for the 'clock' option. If this option
is enabled together with the realtime synchronization, the RTC runs
at realtime speed.
- Moved MWAIT_IS_NOP bochsrc option from CPUID to CPU so it can be set
even if cpu was configured using pre-defined CPUDB profile.
- Allow larger CPU 'quantum' values when emulating SMP systems for speed
(quantum values up to 32 are allowed now).
- I/O Devices
- Ported Intel(R) 82540EM Gigabit Ethernet adapter emulation from Qemu,
to enable configure with option --enable-e1000
- Added PCI network boot ROM support to all network adapters
- Added TFTP support to the 'slirp' networking module
- added "auto-assign to PCI slot" feature for PCI-only devices
- Added the capability to transfer more then one byte / word per ISA DMA cycle
- Major rewrite of the vga / cirrus code:
- vgacore (shared standard VGA emulation code)
- vga (Bochs VBE and PCI VGA)
- cirrus (CL-GD 5430 ISA / CL-GD 5446 PCI)
- Added VGA graphics blinking support
- More accurate vertical and horizontal retrace emulation
(based on the DOSBox implementation)
- hard drive / hdimage
- added new disk image mode 'vpc' for VirtualPC images
- undoable mode: added coherency check (flat image size and timestamp)
- sparse mode: fixed read support
- implemented PC speaker beep using the lowlevel sound interface
- added SDL audio output support
- ROM BIOS
- improved PCI boot ROM support (for VGA and other devices)
- added MADT entry for Interrupt Source Override to ACPI tables
- GUI and display libraries
- implemented "auto-off" timer for status LEDs indicating a data transfer
- Implemented "hideIPS" option in sdl and wx libraries
- Added support for sending absolute mouse position values from the gui if an
absolute pointing device (USB tablet) is active (rfb, sdl, win32, wx, x).
- Gui debugger now supported when using sdl gui on Windows
- bxcommit: added support for converting growing to flat mode images
- bxcommit: support command line options and non-interactive (quiet) mode
- bximage: increased maximum disk size to 8 TB
- SF patches applied
 Patch 5 : Change memory reference functions argument order by Yeong-uk Jo
 Patch 4 : Memory reference optimization 2 by Yeong-uk Jo
 Patch 3 : Memory reference optimization by Yeong-uk Jo
 Patch 2 : Some optimization by Yeong-uk Jo
 Patch 1 : ROM BIOS Compatibility patch by Yeong-uk Jo
 Fixed combo box size by Konrad Grochowski
 Gui debugger default regs by Thomas Nilsen
 Fix critical stack leak in Win32 GUI by Carlo Bramini
- these S.F. bugs were closed/fixed
 NE2000 doesn't compile on OS/X
 X doesn't build in latest code on OS/X
 Crash when saving snapshot to directory instead of file
 VMX State Not Restored After Entering SMM on 32-bit Systems
 VMEXIT Instruction Length Not Always Getting Updated
 Typo in preprocessor symbol
 Missing CR8 register
 Missing XD flag ( Execute Disable ) when showing PTEs
 Missing initializations
 Unable to use the debug GUI with SDL and plugins
 GUI debugger only shows 32-bit CRx registers in x86-64 mode
 UHCI PCI interrupts
 svga cirrus initialization
 info gdt does not show long mode segments
 Bochs crashes (SIGSEGV) when starting via ssh console
 Various missing initialization values reported by Valgrind
 mapping mode 0 not supported
 BOCHS panics when execute HBIOS.COM
 IO APIC index register width
 Missing #if in soundmod.h
 MADT:Interrupt Source Override missed
 update dump after manual chages to memory contents
 bug in svn e1000 module
 stepping not working in debugger GUI in case of smp vm
 closing config dialog box closes entire simulator
 Bochs cannot be compiled outside the source tree
 can't use --enable-gdb-stub on vs2008
 Bochs GUI doesn't appear properly for 2nd Bochs copy
 Changing VGA 9/8 dot mode causes screen corruption
- these S.F. feature requests were closed/implemented
 automatically enable devices in plugin control
 command line method to query bochs for features
 sdl sound
 debugger's ability to save physical/linear memory dumps
 Idea how to speedup simulation - stack direct access
 Other Network Devices?
 Disable show the console window
 can't set log action by device (bochsrc)