Changes in 2.3.6 (December 24, 2007):
Brief summary :
+ More than 25% emulation speedup vs
Bochs 2.3.5 release!
- Thanks to Darek Mihocka (http://www.emulators.com)
for providing patches and
ideas that made the
speedup possible!
+ Up to 40% speedup vs
Bochs 2.3.5 release with trace cache optimization!
- Lots of bugfixes in CPU emulation
-
Bochs benchmarking support
- Added emulation of Intel SSE4.2 instruction set
Detailed change log :
- CPU
- Added emulation of SSE4.2 instruction set, to enable use
--enable-sse=4 --enable-sse-extension configure options
to enable POPCNT instruction only use configure option
--enable-popcnt
- Implemented MTRR emulation, to enable use --enable-mtrr configure
option. MTRRs is enabled by default when cpu-level >= 6.
- Implemented experimental MONITOR/MWAIT support including optimized
MWAIT CPU state and hardware monitoring of physical address range,
to enable use --enable-monitor-mwait configure option.
- Removed hostasm optimizations, after
Bochs rebenchmarking it was found
that the feature bringing no speedup or even sometimes slows down
emulation!
- Merged trace cache optimization patch, the trace cache optimization
is enabled by default when configure with --enable-all-optimizations
option, to disable trace cache optimization configure with
--disable-trace-cache
- Many minor bugfixes in CPU emulation (both ia32 and x86-64)
- Updated CPU instrumentation callbacks
-
Bochs Internal Debugger and Disassembler
- Many fixes in
Bochs internal debugger and disassembler, some debugger
interfaces significantly changed due transition to the param tree
architecture
- Added support for restoring of the CPU state from external file
directly from
Bochs debugger
- Configure and compile
- Renamed configure option --enable-4meg-pages to --enable-large-pages.
The option enables page size extensions (PSE) which refers to 2M pages
as well.
- Removed --enable-save-restore configure option, save/restore feature
changed to be one of the basic
Bochs features and compiled by default
for all configurations.
- Added new
Bochs benchmark mode. To run
Bochs in benchmark mode execute
it with new command line option ´
bochs -benchmark time´. The emulation
will be automatically stopped after ´time´ millions of emulation
cycles executed.
- Another very useful option for benchmarking of
Bochs could be enabled
using new ´print_timestamps´ directive from .bochsrc:
print_timestamps: enable=1
- Added --enable-show-ips option to all configuration scripts used to
build release binaries, so all future releases will enjoy IPS display.
- Enable alignment check in the CPU and #AC exception by default for
--cpu-level >= 4 (like in real hardware)
- SF patches applied
[1857149] Define some IPL values by Sebastian
[1850183] Get memory access mode in BX_INSTR_LIN_READ by Lluis Vilanova
[1841421] pic: keep slave_pic.INT and master_pic.IRQ_in bit 2 in sync by Russ Cox
[1841420] give segment numbers in exception logs by Russ Cox
[1801696] Allow Intel builds on Mac OS X
[1830658] Fix >32GB disk banner by Samuel Thibault
[1813314] Move #define IPL_* and typedef ipl_entry by Sebastian
[1809001] Save PnP Option ROM Product Name string in IPL Boot Table by Sebastian
[1821242] Fix for #1801285, Niclist.exe broken by Sebastian
[1819567] Code warning cleanup
[1816162] Update comment on bios_printf() by Sebastian
[1811139] Trivial Fix when BX_PCIBIOS and BX_ROMBIOS32 not defined by Myles Watson
[1811190] Improve HD recognition and CD boot by Myles Watson
[1811860] Implement %X in bios_printf by Sebastian
[1809649] printf %lx %ld %lu by Myles Watson
[1809651] move BX_SUPPORT_FLOPPY by Myles Watson
[1809652] dpte and Int13DPT fixes by Myles Watson
[1809669] clip cylinders to 16383 in hard drive by Myles Watson
[1799903] Build BIOS on amd64 by Robert Millan
[1799877] Fix for parallel build (make -j2) by Robert Millan
- these S.F. bugs were closed
[1837354] website bug: View the Source link broken
[1801268] Reset from real mode no longer working
[1843250] Using forward slashes gives invalid filename
[1823446] BIOS bug, local APIC #0 not detected
[1801285] Niclist.exe broken
[1364472] breakpoints sometimes don´t work
[994451] breakpoint bug
[1801295] NSIS installer vs Windows Notepad
[1715328] Unreal mode quirk
[1503972] debugger doesn´t debug first instruction on exception
[1069071] div al, byte ptr [ds:0x7c18] fails to execute
[1800080] Wrong "BX_MAX_SMP_THREADS_SUPPORTED" assertion