Commit Graph

676 Commits

Author SHA1 Message Date
Volker Ruppert
ed41df332a Support for compiling plugin version of Bochs with MSVC nmake now complete.
- embedding combined manifest makes BOCHS.EXE usable
- list of DLL plugins now depends on the pci and debugger options
- 'make clean' now removes the generated manifest files
- renamed variable for external rules
- documentation update
2014-05-03 10:58:10 +00:00
Volker Ruppert
95585bf719 Initial version of nmake DLL plugin support in iodev. The plugin DLL set is now
complete and usable with the BOCHS.EXE built with the IDE.
TODO #1: fix BOCHS.EXE built with nmake (manifest issue)
TODO #2: make the currently fixed DLL plugin list variable
2014-05-02 17:14:16 +00:00
Stanislav Shwartsman
2fe0aaa472 added configure option for trace linking optimization and mention it in CHANGES 2014-05-01 18:30:23 +00:00
Volker Ruppert
eb484919fe Next step for plugin support with MSVC nmake: device plugins that need special
rules can be built now (keyboard, pit, gameport, serial, vga, svga_cirrus,
hdimage, netmod, soundmod, usb_common). The generated DLLs are usable with the
BOCHS.EXE built with the IDE, but the nmake won't work at all yet.
2014-04-21 18:43:22 +00:00
Volker Ruppert
87b6149ed0 First step for compiling plugin DLLs with MSVC nmake. The hdimage plugin
(bx_hdimage.dll) can be built now. All plugins that require special rules
could be fixed for nmake in a similar way.
TODO: find a way to compile plugins with standard rules (GNU make uses bx_%.dll
in that case, but MSVC nmake doesn't support this syntax).
2014-04-21 06:58:15 +00:00
Volker Ruppert
2777ac0dc5 Added separate target for MSVC plugins (causing an error for now) 2014-04-06 07:22:16 +00:00
Volker Ruppert
64385beaa4 Renamed "slirp_new" to "slirp" (source file, symbols, classes, docs) 2014-04-02 17:38:09 +00:00
Volker Ruppert
fee79a2837 Removed the "slirp backend" networking module from the Bochs sources. It had
required an external binary and it couldn't be ported to Windows. Now the new
builtin and portable slirp support based on Qemu's implementation is almost
stable and all the 'vnet' DHCP and TFTP features have been ported to the new
slirp module.
TODO: rename all the "slirp_new" stuff to "slirp"
2014-04-01 18:18:04 +00:00
Volker Ruppert
5ca0a003b6 Configure script and config.h.in reorganization: put all device-related config
options in one section and added busmouse option.
2014-03-23 12:00:58 +00:00
Volker Ruppert
e62076e53d Somw work to make the new slirp module compile and work with MSVC
- added container_of() macro replacement
- fixed unresolved symbol in netmod.cc
- added MSVC-style structure packing pragmas
- check for the presence of min / max macros
- enabled slirp_new for MSVC in configure script
TODO list:
- check for more updates from Qemu
- fix lots of compiler warnings
- reduce code duplication with 'vnet' module (DHCP, TFTP, ARP)
- add separate config file for slirp to make it more flexible (using the
  'script' parameter)
- update MSVC workspace files
- add SMB support on Linux
- remove slirp backend module after next Bochs release
2014-02-25 19:44:14 +00:00
Volker Ruppert
b7238798fc Explicitly disable the new slirp module for the MSVC case until the
container_of() macros is fixed (required for Cygwin).
2014-02-23 21:22:41 +00:00
Volker Ruppert
dfc71f8ae4 Applied patch for builtin "slirp" (user-mode networking) support. This version
is almost a port of the Qemu 1.1.2 implementation. It has been tested successfully
on Linux and Windows (MinGW/MSYS). The networking module is currently called
"slirp_new", since the "slirp" backend module still exists.

TODO list:
  - MSVC support (requires container_of() macro replacement)
  - apply fixes and improvements from recent Qemu releases
  - use our TFTP implementation to reduce code duplication
  - check if we can share ARP and DHCP support with "vnet"
  - add SMB support on Linux
  - finally remove the slirp backend module support
2014-02-16 13:31:53 +00:00
Volker Ruppert
7ec9adbb2d Switch to Winsock2 library for all Windows cases 2014-02-15 12:18:15 +00:00
Volker Ruppert
67b5ed240b Enabled linking with wsock32.dll for all Windows again. Cygwin doesn't complain
when we use -lwsock32, but don't include it's header if __CYGWIN__ is defined.
Moved DEVICE_LINK_OPTS to a separate variable instead of appending options to
GUI_LINK_OPTS.
2014-01-26 22:11:31 +00:00
Stanislav Shwartsman
2379590dde do not compile AVX objects if AVX support is not enabled in configure 2014-01-26 19:20:44 +00:00
Volker Ruppert
23a2ded526 Fixed build process without libtool and plugins 2014-01-03 21:58:04 +00:00
Volker Ruppert
a767ec0b1b The plugin version now uses the native DLL handling code for all Windows ports.
Skip configure checks for libtool / ltdl and no longer link with mingwex.
2013-12-29 20:04:16 +00:00
Volker Ruppert
e3862e34e5 Fixed compilation with Cygwin
- reverted changes in SVN revision 10985 (-DWIN32 now works again with Cygwin)
- don't link Bochs.exe or RFB gui with wsock32.dll in the Cygwin case
- the win32 gui doesn't need to be linked wsock32.dll at all
2013-12-22 12:17:28 +00:00
Volker Ruppert
fb70da3e3e Added check for type ssize_t
List the supported ethernet modules
2013-12-04 17:04:15 +00:00
Stanislav Shwartsman
a421c921d0 fixed typo in configure script 2013-12-02 19:57:49 +00:00
Volker Ruppert
aa0554e5d9 - Build niclist.exe on Windows even if plugins are enabled
- Some fixes for the install_win32 target
- Documentation updates
2013-11-18 16:49:56 +00:00
Volker Ruppert
d281d743e9 Fixed plugins compilation with gcc 4.8.1 2013-11-10 17:00:21 +00:00
Volker Ruppert
9554a2133e Always enable the portable ISO image file support. The option --enable-cdrom now
only controls the presence of platform-specific code to access CDROM/DVD devices
2013-11-10 11:14:42 +00:00
Volker Ruppert
b1d4a96983 Rewrite of the lowlevel cdrom code
- class cdrom_base_c now provides portable ISO image access methods
- platform specific classes implement access to cdrom/dvd devices
2013-11-06 11:15:22 +00:00
Volker Ruppert
08b66534aa bximage fixes for compiling with VS2008Ex DLL plugins 2013-10-28 20:31:34 +00:00
Stanislav Shwartsman
494d0ac821 Remove obsolete configure check (cygwin does not have this problem anymore)
Also Bochs doesn't use the math library functions!
2013-10-21 19:26:07 +00:00
Stanislav Shwartsman
6f9400d4e8 TDM gcc under cygwin called x85_64_unknown-cygwin - fix configure script to support it 2013-10-20 14:48:38 +00:00
Volker Ruppert
3d91e86ac1 bximage_new: added MSVC nmake support, added to default build system (targets
'all' and 'clean'), minor code changes
TODO: floppy / hard disk image creation, add to VS2008 workspace
TODO: finally remove the legacy utilities bximage and bxcommit
2013-10-14 15:57:10 +00:00
Stanislav Shwartsman
9bed769cdd fixed typo in enable-evex option in configure script 2013-09-24 20:47:40 +00:00
Volker Ruppert
51688143aa Some work on the lowlevel sound support
- ALSA driver is now default on Linux (if present)
- SDL sound driver is now default if no platform-specific driver is available
  and the SDL gui is enabled
- soundlnx.cc: sendwavepacket() now exits with error if device is not opened
- soundmod.cc: exit beep loop if sendwavepacket() returns error
2013-08-04 14:35:06 +00:00
Stanislav Shwartsman
2dbe81db51 first infrastructure changes to support EVEX prefix and AVX-512 extensions recently published by Intel 2013-07-26 12:50:56 +00:00
Volker Ruppert
b84b0eed52 Moved ALSA sound support to a separate sound driver object
- ALSA stuff moved from soundlnx.* to new soundalsa.* files
- SB16 / ES1370: including specific sound driver headers not necessary
- updated dependencies
2013-07-14 15:14:53 +00:00
Volker Ruppert
21feca3767 Some work on the new 'vncsrv' gui
- use the CXXFLAGS and link options provided by the libvncserver-config script
- added Windows support for MinGW/MSYS (compiles fine, but crashes sometimes)
2013-05-31 16:46:15 +00:00
Volker Ruppert
17b7b87a61 Added new experimental gui 'vncsrv" using the LibVNCServer library. It supports
higher resolutions and > 8 bpp graphics modes. The RFB gui with limited
capabilities is still available.
TODO:
- fix random segfaults in dimension_update()
- Windows (MinGW) support
- fixes for clients not supporting 'rfbEncodingNewFBSize'
- fix cursor shape after dimension update()
2013-05-30 17:18:30 +00:00
Volker Ruppert
b04df59367 RFB code cleanup (no functional changes)
Updated version strings after release
TODO: implement new RFB(VNC) gui using LibVNCServer
2013-05-29 17:35:19 +00:00
Volker Ruppert
64190fea62 - preparing release 2.6.2 2013-05-26 07:17:33 +00:00
Volker Ruppert
96ae009372 updated version strings after release 2013-04-08 17:59:55 +00:00
Volker Ruppert
cb32223a6a preparing release 2.6.1 2013-04-07 15:27:37 +00:00
Stanislav Shwartsman
25733b4387 added scrollwin.o in configure scripts for mingw 2013-03-18 20:47:08 +00:00
Volker Ruppert
a4a275848f initial implementation of scrollable dialog items on WIN32
- scroll window has 16 visible items and the virtual size is not limited
- CPUID parameter list now using this feature
- FIXME #1: scroll window is not resized if browse button column is present
- FIXME #2: only one scroll window per dialog is supported
2013-03-18 19:08:26 +00:00
Stanislav Shwartsman
ce2751a13c move misaligned_sse from compile time to .bochsrc option 2012-12-20 19:43:11 +00:00
Volker Ruppert
46d09f3852 moved PCI framework to the common devices code
- PCI slot configuration, memory and i/o BAR registration, PCI i/o space
  handlers now present in devices.cc
- configure: E1000 emulation and USB support need PCI
- vga: fixes for the non-PCI case
2012-11-08 19:12:26 +00:00
Stanislav Shwartsman
110fd4b92a Fixed issue with configure script with debugger enabled.
I am copiling using Cygwin+mingw and cnfigure script by default doesn't find and GUI library and therefore I supply --with-win32.
But seems it is not enough to get GUI debugger compiled - Makefile was missing win32_enh_dbg_osdep.cc
2012-11-06 19:59:18 +00:00
Volker Ruppert
699eabbac8 Enable PCI support by default / better text formatting for 'configure --help'
and added default values
2012-10-25 16:02:03 +00:00
Stanislav Shwartsman
42a460638e don't allow voodoo configure with no PCI 2012-09-26 13:40:37 +00:00
Volker Ruppert
5f5d8e2c33 Applied initial version of the 3dfx Voodoo Graphics emulation. The Voodoo core
is based on a patch originally designed for DOSBox. Currently only the Voodoo1
adapter model can be emulation. The emulation is currently slow, but we intend
to clean up and optimize the code. Running the 3D engine in a separate thread
is also planned. To compile with Voodoo support the configure option
"--enable-voodoo" must be used. Then the device can be activated with
"plugin_ctrl: voodoo=1" in bochsrc or on the command line. The device will be
assigned automatically to a PCI slot unless you do that manually. A specific bochsrc
option to select the adapter model will be added when the code has support for it.
2012-09-14 21:50:50 +00:00
Stanislav Shwartsman
f151463f0f removed old deprecated options from the code 2012-09-14 13:32:54 +00:00
Volker Ruppert
c2560a8d44 - fpu directory is now a subdirectory in 'cpu' 2012-09-12 21:08:40 +00:00
Volker Ruppert
c340da84dd - moved the display adapter emulation to the new subdirectory iodev/display
- TODO #1: update MSVC workspace files
- TODO #2: add Voodoo Graphics emulation
2012-09-10 20:49:29 +00:00
Stanislav Shwartsman
90f544d307 after release 2.6 2012-09-02 18:43:27 +00:00
Volker Ruppert
39e41ac312 - preparing release 2.6 2012-09-02 11:11:00 +00:00
Volker Ruppert
fb0e05e36c - fixed compilation with large ramfile support present on MSVC 2012-08-26 14:43:14 +00:00
Volker Ruppert
3d7205116f - fixed link failures with wxGTK
- without both plugins and X11 configured, -lX11 is required for XStringToKeysym
  - GTK debugger must be enabled, although is not used yet
2012-08-26 07:17:43 +00:00
Stanislav Shwartsman
7a90d8e2dc enabled large ramfile support by default 2012-08-23 19:31:33 +00:00
Volker Ruppert
5df4f1b1a9 - bochs rpm spec: use %{_libdir} instead of /usr/lib for 32/64 bit compatiblity
- developer doc: always refer to release 2.5
- updated version number after pre-release
2012-08-21 16:21:55 +00:00
Volker Ruppert
187586f2d5 - preparing release 2.6.pre1 2012-08-20 08:50:50 +00:00
Volker Ruppert
5054b5f836 - generate parser / lexer files only if both flex and yacc are present and also
disable it if configuring for MSVC
2012-08-11 07:16:23 +00:00
Volker Ruppert
0f35b42429 - don't clean pcidev subdirectory if support is disabled
- check for flex presence and skip lexer.c generation if absent
2012-08-09 18:26:14 +00:00
Volker Ruppert
36f5fb309e - use old-style X detection code if pkg-config is not present 2012-08-07 18:28:00 +00:00
Volker Ruppert
90168f5dcd - moved the lowlevel cdrom and disk image stuff to the new subdirectory iodev/hdimage
- TODO: update MSVC workspace files
2012-08-05 18:13:38 +00:00
Volker Ruppert
53438e92c6 - fixes based on Debian patches by Guillem Jover
- set SHELL variable with configure script
  - add '--tag CXX' argument to libtool calls
2012-07-14 07:01:43 +00:00
Volker Ruppert
72d3b294d2 - added support for the gui debugger with sdl on Windows (required separate thread)
- enh_dbg: fixed defined-but-not-used warnings
- siminterface: renamed 'wx_debug_gui' to 'bx_debug_gui' and updated comments
- TODO: remove the wx debugger and use the enhanced gui debugger instead
2012-07-01 14:37:13 +00:00
Volker Ruppert
2c94cbb688 - link only needed libs (modified Debian patch by Guillem Jover) 2012-06-30 12:43:55 +00:00
Volker Ruppert
095fd7d18a - added SDL sound support (wave output only) 2012-06-09 10:12:05 +00:00
Stanislav Shwartsman
85e30bd410 remove unused configure check for struct timeval 2012-06-04 20:26:00 +00:00
Volker Ruppert
076c8ff966 - implemented pc speaker beep in the lowlevel sound module using pthreads
- TODO: win32 threads support
2012-05-20 17:22:50 +00:00
Volker Ruppert
fe37b61c18 - pcidev: enable support for Linux kernel 3.x (Debian patch by Guillem Jover)
- don't clean docbook directories if building documentation is disabled
2012-04-11 16:53:02 +00:00
Stanislav Shwartsman
e7a4a1bec8 surprisingly, opensuse 12.1 requre alignment check support in hardware so I can't disable it by default for all configurations.
but in case you want a few %% of extra emulation performance - it is still possible to disable it with configure option.
most guests I saw do not use it !
2012-03-26 19:33:38 +00:00
Stanislav Shwartsman
d4688e8b95 - Do not compile support for alignment check (#AC exception) by default
for CPU emulation performance reasons, the alignment check compilation
    still can be enabled using configure option --enable-alignment-check.

There is no software in the world which enable #AC exception checking, this
x86 feature is completely legacy but its emulation support costs up to 3-5%
emulation speed.

The checking for #AC exception enable still will be done, if

 CPL == 3, EFLAGS.AC = 1 and CR0.AM = 1

but the alignment check is not compiled in, the Bochs will PANIC with corresponding message.
You can press 'always continue' and ignore the PANIC, the simulation will continue as if alignment checking is not enabled.
2012-03-25 19:07:17 +00:00
Volker Ruppert
91fe8b99e6 - changed checks for MinGW target cases to '*-mingw32*' (should fix WIN64 build)
- skip libtool creation and several checks for the MSVC target
2012-02-20 14:27:45 +00:00
Stanislav Shwartsman
45b6eae291 updated fix for SF bug 3459998 2012-02-20 06:43:53 +00:00
Volker Ruppert
92bb663381 - don't compile library if subsystem is not enabled (network, sound, usb)
- fixed autoconf warnings
2012-02-17 19:08:58 +00:00
Volker Ruppert
ca2e44c0c4 - moved the pcivga code to vga.cc and removed the now obsolete plugin device 2012-01-26 16:35:38 +00:00
Alexander Krisak
4a146456c6 fixed compilation in cygwin
fixed rfb under windows
2012-01-16 15:39:43 +00:00
Volker Ruppert
c6bd3fb60c - moved the sound stuff to the new subdirectory iodev/sound
- TODO #1: update MSVC workspace files
- TODO #2: these 'device classes' could be moved to subdirectories, too:
  - pci (when we have more than one chipset)
  - display (when we have one more device and vga / cirrus cleaned up)
2012-01-15 07:52:04 +00:00
Volker Ruppert
50de0a12cd - moved the networking stuff to the new subdirectory iodev/network
- TODO: do the same with the sound code and update MSVC workspace files
2012-01-14 17:03:00 +00:00
Volker Ruppert
68b49ba42d - moved the USB stuff to the new subdirectory iodev/usb
- TODO #1: do the same with the network and sound code
- TODO #2: update MSVC workspace files
2012-01-14 12:36:32 +00:00
Stanislav Shwartsman
bb9a1f45da update version number in SVN to 2.5.1 2012-01-07 14:02:38 +00:00
Stanislav Shwartsman
dcfa57087f fixed typo in configure script 2011-12-28 12:20:49 +00:00
Stanislav Shwartsman
75bda1d5cd implemented SVM emulation support for Bochs (incomplete yet)
I am merging the code in order to start making shortcuts between VMX emulation and SVM emulation.
Of course SVM emulation is incomplete, completely untested and not expected to work.
But someone could already take a look one the code and give some suggestions.

Also looking for anybody with existing SVM kernels - as simple as possible - for testing.

Status:
 - exceptions intercept is not implemented yet
 - IO intercept is not implemented yet
 - MSR intercept is not implemented yet
 - virtual interrupts are not implemented yet
 - CPUID is not implemented yet

No advanced SVM featurez planned - I am implementing the very basic 'Pacifica' document from 2005 using QEMU code as reference.
2011-12-25 19:35:29 +00:00
Volker Ruppert
5045a241e8 - ported Intel(R) 82540EM Gigabit Ethernet adapter emulation from Qemu
- TODO: add save/restore support, use Bochs function for host to little endian
  data conversion, timers of networking modules 'vnet' and 'slirp' should use
  the device speed instead of fixed 10 MBit
2011-12-13 20:53:44 +00:00
Stanislav Shwartsman
f37ec997ba removed very old deprecated configure options from configure script - they are deprecated for more than 2 releases 2011-11-27 21:45:08 +00:00
Volker Ruppert
2a227f4381 - updated SVN release instructions and version strings 2011-11-27 20:27:45 +00:00
Volker Ruppert
9fd437d22c - preparing release 2.5 2011-11-27 15:55:49 +00:00
Stanislav Shwartsman
34130cc1ad clearify about deprecated configure option 2011-11-18 13:15:17 +00:00
Stanislav Shwartsman
23b7b23d63 automatically turn off handlers chaining if gdb-stub is compiled in at configure time 2011-11-10 19:27:29 +00:00
Volker Ruppert
7e253cf7b6 - excluding CVS files no longer required
- set SVN flags in version strings after release
2011-11-06 12:11:46 +00:00
Volker Ruppert
80be7ef9b1 - preparing Bochs 2.5.pre1 2011-11-06 09:00:41 +00:00
Stanislav Shwartsman
01f27e3a0c this should fix bug report 3422638 large ramfile support broken on anything but Linux 2011-10-15 19:29:42 +00:00
Volker Ruppert
515683a237 - moved OSX specific cdrom code to separate file 2011-10-10 17:32:53 +00:00
Volker Ruppert
972560b83c - renamed cdrom.cc to cdrom_misc.cc and created new file cdrom.cc that contains
shared code (create TOC from image, seek)
- TODO: create new file cdrom_osx.cc that contains the OSX stuff only
2011-10-03 07:23:44 +00:00
Stanislav Shwartsman
e4560dd814 some comments about usb xhci support 2011-09-29 22:51:33 +00:00
Volker Ruppert
0596437ce7 - moved lowlevel cdrom code for win32 to a separate file
- TODO #1: move shared stuff (e.g. creating TOC for image file) to the base class
  to fix the temporary code duplication
- TODO #2: remove ASPI code for raw cdrom access on Win 98/ME after release
2011-09-25 18:49:20 +00:00
Stanislav Shwartsman
d641efcb0b fixed last broken merge 2011-09-24 12:55:38 +00:00
Stanislav Shwartsman
89d2532b69 enable cpu with cpu-level=5 also: configure bug 2011-09-24 12:48:47 +00:00
Stanislav Shwartsman
1b9f286945 - New way of CPUs scheduling in SMP mode brings up to 50% speedup to the
SMP emulation. New implementation uses dynamic CPU quantum value and takes
   full advantage of the trace cache. Each emulated processor will execute
   the whole trace before switching to the next processor.
 * It is also safe to use large (up to 16 instructions) quantum values for
   the SMP emulation now and improve performance even further.

The same merge also completely fixes SF bug :
  [3312237] stepN command might be not working properly

Handlers chaining speedups are also supported with SMP emulation now.
2011-09-22 19:38:52 +00:00
Stanislav Shwartsman
cb261c45d3 removed non-working code for z-unodable and z-volatile images.
our priority is to implement support for std disk image formats (VMDK, VDI) instead.
2011-09-11 16:27:56 +00:00
Stanislav Shwartsman
c85da98ce5 fixed cpu:avx option crash. fixed handlers-chaining configure option name 2011-09-01 13:59:35 +00:00
Stanislav Shwartsman
67cbb2dac5 fixed typo 2011-08-27 14:29:11 +00:00
Stanislav Shwartsman
e907702b6e warn if configure avx w/o x86-64 2011-08-27 13:55:40 +00:00
Stanislav Shwartsman
0d15044913 fixed configure script bug 2011-08-26 19:08:37 +00:00
Stanislav Shwartsman
13feb0772a - 10% emulation speedup with handlers chaining optimization implemented. The
feature is enabled by default when configure with --enable-all-optimizations
    option, to disable handlers chaining speedups configure with
        --disable-handlers-chaining
2011-08-21 14:31:08 +00:00
Stanislav Shwartsman
b8b63ac6ea compile CPUDB to separate library
reduce compile-time dependencies
2011-08-18 18:55:22 +00:00
Stanislav Shwartsman
3018b08f59 clarify error message for pcidev 2011-08-17 18:27:49 +00:00
Volker Ruppert
592c3399eb - created separate plugin 'netmod' that contains the common networking code
and the supported ethernet modules
  - renamed eth.* files to netmod.*
  - pseudo-device plugin implementation similar to 'soundmod'
- TODO: move sound, net and usb stuff to a separate subdirectory of iodev
2011-08-16 17:27:27 +00:00
Stanislav Shwartsman
43e2a59e3e configure show-ips ON by default for all configurations 2011-08-13 19:44:24 +00:00
Stanislav Shwartsman
fb405ad39a Compile in MONITOR/MWAIT support by default for all cpu-level=6 configurations. 2011-08-02 19:52:24 +00:00
Stanislav Shwartsman
f8e4e7f16b clean up/fixed instrumentation examples + removed old 2-years old configure options check (deprecated) 2011-07-23 19:58:38 +00:00
Stanislav Shwartsman
d11114ac19 Patch for emulating target with larger memory than host has available by Gary Cameron.
The patch was posted in mailing list at Thu 6/16/2011.

Desription for CHANGES:

- Memory
  - Added new configure option which enables RAM file backing for large guest
    memory with a smaller amount host memory, without causing a panic when
    host memory is exhausted (patch by Gary Cameron). To enable configure with
        --enable-large-ramfile option.
2011-07-22 17:46:06 +00:00
Volker Ruppert
345d67c403 - removed BeOS support from sources and documentation 2011-07-11 17:36:10 +00:00
Volker Ruppert
6dd13e1f12 - some more work for USB xHCI support
- added new configure option (don't use it yet)
  - added header file usb_xhci.h
  - TODO: add main source file (update in progress)
2011-07-05 18:31:15 +00:00
Volker Ruppert
64cb427843 - define variable MSVC_TARGET that can be used to skip useless tests of the
environment. As a first step use it to skip some networking module tests.
- link BOCHS.EXE with MSVCRT if MSVC plugin support is enabled (building DLL
  plugins with nmake still not possible - VS2008Ex workspace package coming soon)
- updated some messages for NE2000, PCI and USB
2011-06-22 21:52:35 +00:00
Stanislav Shwartsman
94958f39de BUILTIN BSWAP is not supported for MSVC 2011-06-21 17:12:57 +00:00
Volker Ruppert
6a42228075 - first step for DLL plugin support with MSVC. Now the BOCHS.EXE with plugin
support compiles and links fine and the main object files for the plugin DLLs
  are created. Since the gui and iodev makefiles are not ready yet, the link
  stage must be done manually. Support for the search path defined in
  LTDL_LIBRARY_PATH should be added when the DLL plugins compile and work.
2011-06-15 17:24:32 +00:00
Stanislav Shwartsman
29e3f6e762 remove trace cache disabled mode from the code. next step going to be - introducing new optimization features based on trace cache 2011-06-01 20:34:04 +00:00
Stanislav Shwartsman
76c11e1a40 - Configure option --enable-acpi is deprecated and should not be used anymore.
The ACPI support is always automatically compiled in if PCI is compiled in.
    The ACPI still could be disabled using .bochsrc 'plugin_ctrl' option.

Updated CHANGES and docs as well.
2011-04-30 20:04:42 +00:00
Stanislav Shwartsman
c3a31d3cf0 applied patch bochs-110423-builtinbswap.patch 2011-04-25 15:20:27 +00:00
Stanislav Shwartsman
024a1ace38 move X2APIC to be .bochsrc option, rework of the cpuid code 2011-04-21 13:27:42 +00:00
Stanislav Shwartsman
fb802c8712 more mingw and cygwin builds cannot compile with -mno-cygwin.
remove this option from configure defaults and add to .conf.win32-cygwin script only.
2011-04-20 17:44:00 +00:00
Stanislav Shwartsman
c8577e77e1 merge patch Mac OS X audio missing framework dependency by Heikki Lindholm 2011-04-19 12:50:22 +00:00
Volker Ruppert
18d36edbf0 - temporary fix for the "*-apple-darwin*" case to use the MacOSX sound module
(some more changes to use latest version of the sound interface may be required)
2011-04-12 16:17:22 +00:00
Volker Ruppert
8de57f7c03 - CVS to SVN changes
- spelling fixes etc. (thanks to Ben Lunt)
2011-04-01 16:19:15 +00:00
Stanislav Shwartsman
803643d3d5 fix AVX configure sanitcheck 2011-03-19 20:12:28 +00:00
Stanislav Shwartsman
7ced718040 implemented AVX instructions support
many changes - some cleanup will follow
please report ay found bugs !
2011-03-19 20:09:34 +00:00
Volker Ruppert
e6d56f97ae - renamed bas class for lowlevel sound support to bx_sound_lowlevel_c
- define symbol BX_SUPPORT_SOUNDLOW to make the lowlevel sound modules
  independent from the presence of the SB16 emulation
2011-03-19 12:57:13 +00:00
Volker Ruppert
ae45908060 - ported ES1370 soundcard emulation from Qemu. For now, only sound output to
DAC2 is sent to the lowlevel sound module. DAC1 and sound input (ADC) are not
  yet supported. Also unsupported: CODEC (mixer), UART (MIDI) and legacy support.
  Sound module selection in configure script now no longer depends on SB16 and
  uses autodetection only.
- fixed segfault when saving bochsrc
2011-03-12 17:37:26 +00:00
Volker Ruppert
8c32359615 The VBE display extension is now a part of the Bochs core. The configure option
--enable-vbe is now deprecated and the symbols BX_SUPPORT_VBE and
BX_SUPPORT_PCIVGA have been removed. To enable VBE support, the bochsrc option
"vga: extension=" must be set to "vbe". If PCI is present, you can assign the
"pcivga" device to a PCI slot.
2011-03-07 19:01:22 +00:00
Stanislav Shwartsman
e2e0e176e4 fixed configure for M$
strtoull is widely used by Bochs but osdep.cc method is NOT working correctly for all cases 
I occasinally saw it with MSDEV. But MSDEV supports this function natively
TODO: replace osdep.cc function as well
2011-03-03 16:03:59 +00:00
Volker Ruppert
49f4a38c82 - applied user mode networking patch by Heikki Lindholm. It requires the most
recent version of Slirp with Debian patches applied. On a Linux host the
  guest OS can access the internet without running Bochs with root privileges.
  TODO:
  * rewrite the DHCP part of eth_vnet.cc that it can be used here, too
  * Slirp doesn't compile on 64-bit Linux with GCC 4.5
  * WIN32 is not supported yet
2011-02-27 08:08:12 +00:00
Volker Ruppert
7123451fc0 - cleaned up config.h symbols of networking modules. Updated missing files 2011-02-26 20:33:28 +00:00
Volker Ruppert
ac61b38825 - cleaned up config.h symbols of networking modules. Now always using name format
BX_NETMOD_xxx and set them in configure script
2011-02-26 20:10:06 +00:00
Stanislav Shwartsman
a2e2feced4 set propertities for more files 2011-02-25 15:32:08 +00:00
Stanislav Shwartsman
6c0c1fffee Continue development in SVN, change ver number in configure 2011-02-24 19:49:43 +00:00
Volker Ruppert
697928a33a - preparing release 2.4.6 2011-02-22 17:10:47 +00:00
Volker Ruppert
668cd80448 - plugin target changes based on Debian patches
- use system 'ltdl' library if present (otherwise use builtin ltdl stuff)
  - use plugin library extension '.so' on non-win32 platforms
2011-01-23 20:21:21 +00:00
Volker Ruppert
c214fffa5e - created a separate plugin that contains the USB devices, the devices init
code and the generic USB stuff. Up to now, in plugin mode each host controller
  staticly links all this stuff with the plugin library. So it existed twice and
  e.g. it wasn't possible to create a unique serial number for disks/cdroms
  connected to different HCs. Some other sanity checks could be added now, too.
- Added a register mechanism for the USB device init function in the main
  devices code.
- TODO: Some other device plugins could be fixed the same way: network devices
        (sharing ethernet modules), harddrive & usb_msd (sharing hdimage and
        cdrom)
2010-12-06 18:51:13 +00:00
Stanislav Shwartsman
8d46433679 compilation fixes for mingw64 gcc 2010-11-01 14:50:18 +00:00
Stanislav Shwartsman
d849cdf128 - Determine and select max physical address size automatically at
configure time:
    - 32-bit physical address for 386/486 guests
    - 36-bit physical address for PSE-36 enabled Pentium guest
    - 40-bit physical address for PAE enabled P6 or later guests
2010-05-12 14:55:12 +00:00
Stanislav Shwartsman
f2177071e2 after 2.4.5 release 2010-04-29 19:22:02 +00:00
Volker Ruppert
d260c84bd3 - preparing release 2.4.5 2010-04-25 07:57:19 +00:00
Stanislav Shwartsman
1c2fa8cd0c move 1G_pages support to runtime option 2010-04-24 09:36:04 +00:00
Stanislav Shwartsman
1c31d1e339 fix for configure script 2010-04-10 06:15:32 +00:00
Stanislav Shwartsman
6e1204cb84 Merged X2APIC + X2APIC virtualization 2010-04-08 15:50:39 +00:00
Stanislav Shwartsman
88fe93cdc7 VMXx2 require x86-64 2010-04-04 18:37:54 +00:00
Stanislav Shwartsman
7c42447c77 move secondary VMEXEC controls to -enable-vmx=2 option
EPT coming next
2010-04-03 07:30:23 +00:00
Stanislav Shwartsman
d06b3ffe13 compilation fix 2010-04-02 08:00:57 +00:00
Stanislav Shwartsman
d639cd88be report deprecated MMX option 2010-03-01 18:55:50 +00:00
Stanislav Shwartsman
01cfbdccbc Move MMX to be runtime option 2010-03-01 18:53:53 +00:00
Stanislav Shwartsman
e3a13a7a55 Make XAPIC runtime option as well 2010-02-28 14:52:17 +00:00
Stanislav Shwartsman
5b6a14656d Make XSAVE as runtime option 2010-02-26 22:53:43 +00:00