From 198906b731e298ad5a071077839bb26098cbd253 Mon Sep 17 00:00:00 2001 From: ryoon Date: Mon, 1 Oct 2012 13:40:48 +0000 Subject: Update to 2.6 * It seems that NetBSD/i386 and amd64 do not boot on this version of bochs... Changelog: Changes in 2.6 (September 2, 2012): Brief summary : - More than 10% CPU emulation speedup ! - Support for AMD's SVM hardware emulation (including extended XAPIC support). - Implemented support for new x86 ISA extensions. Bochs is fully aligned with rev043 of Intel(R) Architecture Manual. - Improved emulation accuracy (critical fixes for APIC, VMX and AVX/XOP emulation). - Bochs internal debugger: new command to show state of a device from the debugger. - ROM BIOS: improved PCI boot ROM support (for VGA and other devices) - Networking: - Ported Intel(R) 82540EM Gigabit Ethernet adapter emulation from Qemu. - Added PCI network boot ROM support to all network adapters. - Added TFTP support to the 'slirp' networking module. - Harddrive: added support for VirtualPC disk images, fixed sparse disk images. - Sound: - implemented PC speaker beep using the lowlevel sound interface. - SDL audio output support. - Added ability to set log action per device from .bochsrc. - Moved disk imaging, networking, sound and USB devices to subdirectories in the iodev folder. Detailed change log : - CPU - Implemented EPT A/D extensions support. Bochs is fully aligned with rev043 of the of Intel(R) Architecture Manual. - Implemented ADX (ADCX/ADOX) instructions support, the feature can be enabled using .bochsrc CPUID option. - More than 10% CPU emulation speedup with even more optimal lazy flags handling, stack access optimizations and cross branch trace linking. - 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 for 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 - Networking - 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 - PCI - added "auto-assign to PCI slot" feature for PCI-only devices - DMA - Added the capability to transfer more then one byte / word per ISA DMA cycle - VGA - 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 - Sound - 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 - 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 - Implemented "hideIPS" option in rfb, sdl, win32 and wx libraries - wx: fixed random freezes with wxGTK and "show ips" feature enabled - rfb: the "show ips" feature now works on Windows host - Tools - 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 [3540389] Patch 5 : Change memory reference functions argument order by Yeong-uk Jo [3539254] Patch 4 : Memory reference optimization 2 by Yeong-uk Jo [3539251] Patch 3 : Memory reference optimization by Yeong-uk Jo [3539237] Patch 2 : Some optimization by Yeong-uk Jo [3539228] Patch 1 : ROM BIOS Compatibility patch by Yeong-uk Jo [3505209] Fixed combo box size by Konrad Grochowski [2864391] Gui debugger default regs by Thomas Nilsen [3486555] Fix critical stack leak in Win32 GUI by Carlo Bramini - these S.F. bugs were closed/fixed [625877] wx: power button -> thread deadlock [3534063] Configure does not check for flex presence [3555237] NE2000 doesn't compile on OS/X [3553168] X doesn't build in latest code on OS/X [3550175] Crash when saving snapshot to directory instead of file [3548109] VMX State Not Restored After Entering SMM on 32-bit Systems [3548108] VMEXIT Instruction Length Not Always Getting Updated [3545941] Typo in preprocessor symbol [3538731] Missing CR8 register [3538574] Missing XD flag ( Execute Disable ) when showing PTEs [3537556] Missing initializations [3537309] Unable to use the debug GUI with SDL and plugins [3537473] GUI debugger only shows 32-bit CRx registers in x86-64 mode [3533426] UHCI PCI interrupts [3459359] svga cirrus initialization [3535228] info gdt does not show long mode segments [3531806] Bochs crashes (SIGSEGV) when starting via ssh console [3531807] Various missing initialization values reported by Valgrind [635789] mapping mode 0 not supported [3307201] BOCHS panics when execute HBIOS.COM [3528809] IO APIC index register width [3528516] Missing #if in soundmod.h [3526069] MADT:Interrupt Source Override missed [3518753] update dump after manual chages to memory contents [3516859] bug in svn e1000 module [3516029] stepping not working in debugger GUI in case of smp vm [3510403] closing config dialog box closes entire simulator [3459998] Bochs cannot be compiled outside the source tree [2905969] can't use --enable-gdb-stub on vs2008 [3294001] Bochs GUI doesn't appear properly for 2nd Bochs copy [3493315] Changing VGA 9/8 dot mode causes screen corruption - these S.F. feature requests were closed/implemented [3540441] automatically enable devices in plugin control [1251456] command line method to query bochs for features [3409396] sdl sound [3519794] debugger's ability to save physical/linear memory dumps [1429612] Idea how to speedup simulation - stack direct access [1703452] Other Network Devices? [2919376] Disable show the console window [534271] can't set log action by device (bochsrc) --- emulators/bochs/Makefile | 5 ++--- emulators/bochs/PLIST | 5 +++-- emulators/bochs/distinfo | 12 ++++++------ emulators/bochs/patches/patch-configure | 10 ++++------ emulators/bochs/patches/patch-iodev_sound_soundosx.cc | 13 +++++++++++++ emulators/bochs/patches/patch-iodev_soundosx.cc | 13 ------------- 6 files changed, 28 insertions(+), 30 deletions(-) create mode 100644 emulators/bochs/patches/patch-iodev_sound_soundosx.cc delete mode 100644 emulators/bochs/patches/patch-iodev_soundosx.cc (limited to 'emulators/bochs') diff --git a/emulators/bochs/Makefile b/emulators/bochs/Makefile index eedde7ae90c..10319676397 100644 --- a/emulators/bochs/Makefile +++ b/emulators/bochs/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.67 2012/09/15 10:04:31 obache Exp $ +# $NetBSD: Makefile,v 1.68 2012/10/01 13:40:48 ryoon Exp $ -DISTNAME= bochs-2.5.1 -PKGREVISION= 4 +DISTNAME= bochs-2.6 CATEGORIES= emulators MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=bochs/} diff --git a/emulators/bochs/PLIST b/emulators/bochs/PLIST index 285c6c1a794..4836e95e3ca 100644 --- a/emulators/bochs/PLIST +++ b/emulators/bochs/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.16 2012/01/09 06:38:44 ryoon Exp $ +@comment $NetBSD: PLIST,v 1.17 2012/10/01 13:40:48 ryoon Exp $ bin/bochs bin/bxcommit bin/bximage @@ -21,12 +21,12 @@ ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pci.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pci2isa.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pci_ide.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pcipnic.la -${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pcivga.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pic.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_pit.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_serial.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_soundmod.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_speaker.la +${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_svga_cirrus.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_unmapped.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_usb_common.la ${PLIST.notiny}${PLIST.plugins}lib/bochs/plugins/libbx_usb_ohci.la @@ -63,6 +63,7 @@ share/bochs/keymaps/x11-pc-uk.map share/bochs/keymaps/x11-pc-us.map share/doc/bochs/CHANGES share/doc/bochs/COPYING +share/doc/bochs/LICENSE share/doc/bochs/README share/doc/bochs/TODO share/doc/bochs/bochsrc-sample.txt diff --git a/emulators/bochs/distinfo b/emulators/bochs/distinfo index 793ff843079..6508eb9ad78 100644 --- a/emulators/bochs/distinfo +++ b/emulators/bochs/distinfo @@ -1,10 +1,10 @@ -$NetBSD: distinfo,v 1.27 2012/05/23 05:08:00 dholland Exp $ +$NetBSD: distinfo,v 1.28 2012/10/01 13:40:48 ryoon Exp $ -SHA1 (bochs-2.5.1.tar.gz) = e1052e943ebb8e3b84f407e0e3f17607268253b6 -RMD160 (bochs-2.5.1.tar.gz) = 25b515d46032626921a8cf995183116e28eba9e2 -Size (bochs-2.5.1.tar.gz) = 4126651 bytes +SHA1 (bochs-2.6.tar.gz) = 327e7a6b5163a2795adae4a617554de4925b5cfe +RMD160 (bochs-2.6.tar.gz) = 5a0f771b15023b40b291277235ac0ca8ada3c75c +Size (bochs-2.6.tar.gz) = 4212828 bytes SHA1 (patch-.bochsrc) = df5b8879ec005fe44bca8bee42c549095012013d SHA1 (patch-Makefile.in) = ca8d485a9f4901df15eb3e521105de2ae833cfcb -SHA1 (patch-configure) = b8ee4eb622e434472b4a6fa66088e15333ef291f -SHA1 (patch-iodev_soundosx.cc) = e53434c1796133b1275a167bcec606bb185e283d +SHA1 (patch-configure) = 66438d48e5e99bfcf778a37570b76b9fc2732ce5 +SHA1 (patch-iodev_sound_soundosx.cc) = 60ba51ac619b8149710d5ae7940ed6e4a68b36c2 SHA1 (patch-main.cc) = 77296af5e8101c7c9ded37ec77571dbc61f98e4b diff --git a/emulators/bochs/patches/patch-configure b/emulators/bochs/patches/patch-configure index c532f810c54..0d9315074c1 100644 --- a/emulators/bochs/patches/patch-configure +++ b/emulators/bochs/patches/patch-configure @@ -1,10 +1,8 @@ -$NetBSD: patch-configure,v 1.3 2012/05/23 05:08:00 dholland Exp $ +$NetBSD: patch-configure,v 1.4 2012/10/01 13:40:48 ryoon Exp $ -Treat Linux 3.x like 2.6. - ---- configure~ 2012-01-06 18:51:12.000000000 +0000 +--- configure.orig 2012-09-02 11:30:15.000000000 +0000 +++ configure -@@ -22005,6 +22005,10 @@ $as_echo "$as_me: Linux detected as host +@@ -22084,6 +22084,10 @@ $as_echo "$as_me: Linux detected as host PCIDEV_MODULE_MAKE_ALL="all-kernel26" KERNEL_MODULE_SUFFIX="ko" ;; @@ -13,5 +11,5 @@ Treat Linux 3.x like 2.6. + KERNEL_MODULE_SUFFIX="ko" + ;; *) - as_fn_error "Linux kernel 2.4 or 2.6 is required for PCI host device mapping" "$LINENO" 5 + as_fn_error $? "Linux kernel 2.4, 2.6 or 3.x is required for PCI host device mapping" "$LINENO" 5 ;; diff --git a/emulators/bochs/patches/patch-iodev_sound_soundosx.cc b/emulators/bochs/patches/patch-iodev_sound_soundosx.cc new file mode 100644 index 00000000000..64167609628 --- /dev/null +++ b/emulators/bochs/patches/patch-iodev_sound_soundosx.cc @@ -0,0 +1,13 @@ +$NetBSD: patch-iodev_sound_soundosx.cc,v 1.1 2012/10/01 13:40:48 ryoon Exp $ + +--- iodev/sound/soundosx.cc.orig 2012-09-02 11:30:10.000000000 +0000 ++++ iodev/sound/soundosx.cc +@@ -21,7 +21,7 @@ + // This file (SOUNDOSX.CC) written and donated by Brian Huffman + + #ifdef PARANOID +-#include ++#include + #endif + + #include "iodev.h" diff --git a/emulators/bochs/patches/patch-iodev_soundosx.cc b/emulators/bochs/patches/patch-iodev_soundosx.cc deleted file mode 100644 index 139219e0265..00000000000 --- a/emulators/bochs/patches/patch-iodev_soundosx.cc +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-iodev_soundosx.cc,v 1.1 2011/03/02 15:43:12 ryoon Exp $ - ---- iodev/soundosx.cc.orig 2011-02-14 21:14:20.000000000 +0000 -+++ iodev/soundosx.cc -@@ -21,7 +21,7 @@ - // This file (SOUNDOSX.CC) written and donated by Brian Huffman - - #ifdef PARANOID --#include -+#include - #endif - - #include "iodev.h" -- cgit v1.2.3