./emulators/bochs, IA32 and AMD64 PC emulator

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 2.6.8nb4, Package name: bochs-2.6.8nb4, Maintainer: pkgsrc-users

The program bochs is a highly portable open source x86 PC emulator
written in C++, and runs on most popular platforms. It includes
emulation of the Intel x86 CPU, common IO devices, and a custom
BIOS. Currently, bochs can be compiled to emulate a 386, 486,
Pentium, Pentium PRO or AMD64 CPU.

Bochs is capable of running most operating systems inside the
emulation including Linux, NetBSD, Windows 95, DOS, and Windows NT 4.

MESSAGE.Darwin [+/-]

Required to run:
[x11/libXpm] [x11/liboldXrandr]

Required to build:
[pkgtools/x11-links] [x11/renderproto] [x11/xproto] [x11/randrproto] [pkgtools/cwrappers]

Package options: x11

Master sites:

SHA1: 561dc622033facb321fd9ac2e56589ae724cfdb2
RMD160: cf6f9a427559c79e18c208a89e7146b6e9798ea5
Filesize: 4956.657 KB

Version history: (Expand)


CVS history: (Expand)


   2017-06-23 06:15:52 by Kamil Rytarowski | Files touched by this commit (1)
Log message:
bochs can be build with at least clang and gcc

Remove old (from 2004) property that there is allowed gcc only.
   2017-02-12 07:26:18 by Ryo ONODERA | Files touched by this commit (1451)
Log message:
Recursive revbump from fonts/harfbuzz
   2017-02-06 14:56:14 by Thomas Klausner | Files touched by this commit (1452)
Log message:
Recursive bump for harfbuzz's new graphite2 dependency.
   2016-08-03 12:23:40 by Adam Ciarcinski | Files touched by this commit (1248) | Package updated
Log message:
Revbump after graphics/gd update
   2016-02-25 13:50:49 by Jonathan Perkin | Files touched by this commit (6)
Log message:
Use OPSYSVARS.
   2015-11-03 21:31:11 by Alistair G. Crooks | Files touched by this commit (211)
Log message:
Add SHA512 digests for distfiles for emulators category

Problems found with existing digests:
	Package suse131_libSDL
	1c4d17a53bece6243cb3e6dd11c36d50f851a4f4 [recorded]
	da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
	Package suse131_libdbus
	de99fcfa8e2c7ced28caf38c24d217d6037aaa56 [recorded]
	da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
	Package suse131_qt4
	94daff738912c96ed8878ce1a131cd49fb379206 [recorded]
	886206018431aee9f8a01e1fb7e46973e8dca9d9 [calculated]

Problems found locating distfiles for atari800, compat12, compat 13,
compat14, compat15, compat20, compat30, compat40, compat50,
compat50-x11, compat51, compat51-x11, compat60, compat61,
compat61-x11, fmsx, osf1_lib, vice, xbeeb, xm7.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2015-08-18 09:31:20 by Thomas Klausner | Files touched by this commit (282)
Log message:
Bump all packages that depend on curses.bui* or terminfo.bui* since they
might incur ncurses dependencies on some platforms, and ncurses just bumped
its shlib.
Some packages were bumped twice now, sorry for that.
   2015-07-01 15:39:17 by Ryo ONODERA | Files touched by this commit (4) | Package updated
Log message:
Update 2.6.2 to 2.6.8
---------------------
Changes in 2.6.8 (May 3, 2015):

- 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
  - Updated definition of instrumentation callbacks, see description in
    instrumentation.txt / Fixed instrumentation examples

- 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 (patch by Ben Lunt).

- ROM BIOS
  - Fixed keyboard scancode processing after keyboard intercept.
  - Fixed rombios32 code to avoid incorrect ACPI table detection.

-------------------------------------------------------------------------
Changes in 2.6.7 (November 2, 2014):

- 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.

- I/O Devices
  - 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)

- Misc
  - Visual Studio workspace files updated to VS2013Ex format.
  - bximage_old/bxcommit: removed old obsolete image manipulation tools.
  - Documentation fixes and updates.

-------------------------------------------------------------------------
Changes in 2.6.6 (June 15, 2014):

- CPU / CPUDB
  - allow sandy bridge configuration even when AVX is not compiled in

- Configure and compile
  - fixed compilation error when 3dnow support is enabled
  - speedup Visual Studio build by almost 20% by adding /Gr compiler option

- Misc
  - fixed minimizing win32 gui window and resolution change while minimized
  - added compiled SeaBIOS 1.7.5 image into Bochs tree along with Bochs BIOS images
  - documentation fixes and updates

-------------------------------------------------------------------------
Changes in 2.6.5 (June 1, 2014):

Brief summary :
- CPU: extra 5-10% emulation speedup with new trace linking optimization
- CPU: implemented new instructions (e.g. AVX-512, SHA, XSAVEC)
- CPUDB: added 2 new CPU models
- Bugfixes for CPU emulation correctness (including some critical ones)
- Gui debugger output window now can be used as a log viewer
- Added built-in slirp (user-mode networking) support (ported from Qemu)
- Added global sound config option and volume control support to the devices
- Added new experimental gui 'vncsrv" using the LibVNCServer library
- Rewrite of the bximage utility in C++ for image creation, conversion and resize

Detailed change log :

- CPU
  - Bugfixes for CPU emulation correctness (critical fixes for XSAVE, VMX, \ 
TBM/BMI and RDRAND instructions)
  - Implemented FCS/FDS Deprecation CPU feature
  - Implemented SHA instructions emulation
  - Implemented XSAVEC instruction emulation and XINUSE optimization in the \ 
XSAVEOPT instruction
  - Implemented AVX-512 instructions emulation (experimental)
  ! CPUDB: Added Intel(R) Core(TM) i7-4770 CPU (Haswell) configuration to CPUDB
  ! CPUDB: Added AMD A8-5600K APU (Trinity) configuration to CPUDB

  - Replace 'SSE' and 'AVX' .bochsrc option with single 'SIMD' option which \ 
controls presence
    of all CPU SIMD extensions from SSE to AVX-512

  - Extra 5-10% emulation speedup with new trace linking optimization. The \ 
optimization
    is enabled by default when configuring with --enable-all-optimizations option,
    to disable trace linking optimization configure with --disable-trace-linking.
    The optimization require to compile Bochs with at least -O2 optimization \ 
level on gcc.

- Bochs Debugger and Instrumentation
  - Added disam for Bochs internal instruction representation, especially useful \ 
for instrumentation
  - Updated definition of instrumentation callbacks, see description in
    instrumentation.txt / Fixed instrumentation examples
  - added capability to use the gui debugger output window as a log viewer

- General
  - Increased max. device log prefix size to 6 and added / modified prefixes
  - plugin version now uses the native DLL handling code for all Windows ports
  - critical bugfixes in save/restore functionality

- Configure and compile
  - configure and compilation fixes for Cygwin and Visual Studio environment
  - configure option --enable-cdrom now only controls the presence of
    platform-specific code for device access
  - building plugin version with MSVC nmake now supported

- Config interface
  - Added global sound control option for the driver and wave input/output
  - Added new bochsrc option to control the speaker output mode
  - Added support to specify the initial time for 'clock' option in ctime(3) \ 
string format
  - Added support for the LTDL_LIBRARY_PATH variable with MSVC plugins
  - All SB16 / ES1370 options are now changeable at runtime
  - textconfig: added menu item for saving configuration at runtime
  - Added bochsrc option for the Voodoo Graphics emulation (experimental)

- I/O Devices
  - Hard drive / CD-ROM
    - seek latency implemented for ATA/ATAPI read commands
    - portable ISO image file access now available on all platforms
  - Networking
    - added built-in slirp (user-mode networking) support (ported from Qemu)
    - removed the "slirp backend" support (required external slirp binary)
    - slirp/vnet: all supported TFTP extension options implemented now
  - Sound
    - SB16 / ES1370: added volume control support for wave output
    - SB16: fixed audio distortion when playing stereo wave files
    - ES1370: added 'wavemode' support similar to the SB16
    - soundwin: added capability to specify the ID of the MIDI device to use
  - Serial
    - Serial mouse detection fixes
  - Busmouse
    - Non-functional device rewritten to make it work in DOS and Win95 guests
      (use --enable-busmouse to configure and "mouse: type=bus" at runtime)

- ROM BIOS
  - PS/2 mouse function: allow setting mouse packet size to 4 for wheel support

- GUI and display libraries
  - Added new experimental gui 'vncsrv" using the LibVNCServer library
  - RFB: set maximum resolution to 1280x1024 (same as vncsrv)
  - RFB: don't wait for client connection on startup if timeout is set to 0
  - Added mouse wheel support to the rfb, vncsrv and wx guis
  - wx: added viewer window for the Bochs log output
  - win32: fixes and improvements for the fullscreen mode

- Tools
  - bximage utility rewritten in C++ for image creation, conversion, resize
    and redolog commit. Now vmware4 and vpc images can be created.