Commit Graph

661 Commits

Author SHA1 Message Date
Stanislav Shwartsman
d1dff34997 right fix for msvcpp problem 2009-10-02 16:11:06 +00:00
Stanislav Shwartsman
8a95120e12 deprecate --enable-vme option, now it will be supported iff CPU_LEVEL >= 5 (like in real life) 2009-08-10 15:44:50 +00:00
Stanislav Shwartsman
f29b5a97d6 fixes with long phy addr 2009-08-10 08:08:25 +00:00
Stanislav Shwartsman
670e2f4c11 fix typo 2009-07-21 11:38:24 +00:00
Stanislav Shwartsman
e15bfef9f7 remove --enable-daz option, it will be turned on by default iff SSE2 is supported (like in real hardware) 2009-07-08 14:02:42 +00:00
Stanislav Shwartsman
cd445195dd cleanup configure options. All paging related stuff is now automatically set/unset according to cpu-level option.
Related configure options (--enable-pae, --enable-mtrr, --enable-global-pages, --enable-large-pages) are deprecated.
Less configure options - less configure problems :)
2009-06-15 09:30:56 +00:00
Volker Ruppert
c165db8024 - updates after bugfix release 2.4.1 2009-06-07 09:47:33 +00:00
Stanislav Shwartsman
5ffbfd7e4b added comments 2009-05-19 18:07:42 +00:00
Stanislav Shwartsman
0a911dec81 removed some unused configure tests
- they not realy correct
 - they not needed and not used
 - I don't plan to use them as workaround for any stupid compiler
2009-05-07 17:57:31 +00:00
Stanislav Shwartsman
7c0e038cbc fixed obsolete hash_map in dbg symbols module (patch from SF) 2009-05-03 18:31:23 +00:00
Volker Ruppert
de12e8e903 - changed version strings after release 2009-05-03 08:43:40 +00:00
Volker Ruppert
4a6ae753fb - updates for release 2.4 2009-05-03 05:34:28 +00:00
Volker Ruppert
e4487f6ed3 - added new rule for the win32 version string 2009-04-30 17:58:05 +00:00
Stanislav Shwartsman
cb312c9470 make port_e9_hack runtime option (and not configure time)
clean-up a bit in bx_dbg struct in bochs.h
2009-04-23 18:28:17 +00:00
Volker Ruppert
11d87c351f - changed version information back to 'cvs' again 2009-04-21 07:20:25 +00:00
Volker Ruppert
283b1037af - updates for release 2.4.pre1 2009-04-18 07:51:03 +00:00
Stanislav Shwartsman
c1cdc59004 removed deprecated options 2009-04-14 11:05:55 +00:00
Stanislav Shwartsman
4fc66aab31 Fixes for compilation by Visual Studio 2008 2009-04-07 16:12:19 +00:00
Stanislav Shwartsman
4470c6a1c8 make ICACHE always enabled option and deprecate it in the configure script
Trace cache still can be turned off
2009-03-13 18:48:08 +00:00
Volker Ruppert
c82e57cb5f - implemented dynamic dialog box created from a parameter list (bx_list_c)
* ported the basic functionality of the wx ParamDialog to win32
  * moved AskFilename() function to the new file
  * win32ParamDialog() now used for the external USB hub (if present)
  * TODO: with some extensions it might be possible to use it for all runtime
    dialogs and to implement a gui replacement for the textconfig start menu
2009-03-10 19:33:03 +00:00
Stanislav Shwartsman
9e723a044f - Added configure option to enable/disable A20 pin support. Disabling the
A20 pin support slightly speeds up the emulation.

  - small code cleanup
2009-03-10 16:28:01 +00:00
Volker Ruppert
dee8eef320 - added external USB hub
* ported generic hub code from Qemu
  * devices can be connected at runtime only with textconfig
  * FIXME: wx ParamDialog doesn't like removing runtime parameters on disconnect
  * TODO #1: dynanamic runtime dialog for USB on Windows
  * TODO #2: code cleanup: USB code should have one static function only for
    most of the init_device() code
2009-03-07 16:57:17 +00:00
Stanislav Shwartsman
6fb60de2b2 cpu to see up to 40 bit physical addr space 2009-02-15 18:51:13 +00:00
Volker Ruppert
3a470c9d11 - names of bx_list_c members are now compared case insensitive
- added configure check and osdep code for the stricmp function
- minor changes in siminterface
2009-02-02 13:03:28 +00:00
Volker Ruppert
b7f10117a9 - fixed building of display libraries other than 'win32' with debugger support
on the Windows platform
2009-02-01 18:25:21 +00:00
Volker Ruppert
4f1684d07b - fixed GTK detection for wxGTK (enable GTK check only if wx gui is enabled)
- fixed GTK detection switch for the X11 gui
- enable GTK detection for the sdl gui on non-win32 platforms
2009-02-01 12:41:28 +00:00
Stanislav Shwartsman
f8185a6bc6 Added Intel VMX emulation to Bochs CPU 2009-01-31 10:43:24 +00:00
Stanislav Shwartsman
717f323722 Integrate GTK GUI debugger frontend module 2009-01-31 10:04:25 +00:00
Volker Ruppert
0b782cd749 - prepared USB OHCI support in build system and common devices code (OHCI patch
by Ben Lunt will be tested and merged soon)
- renamed specific pciusb stuff to 'usb_uhci' (files, objects)
- minor USB-related changes
- TODO: changes in siminterface and bochsrc options
2009-01-19 09:48:12 +00:00
Volker Ruppert
5ca97fb7e0 - moved common USB device code and USB definitons to separate files
- updated dependencies
- updated FSF address
2009-01-18 13:11:27 +00:00
Stanislav Shwartsman
e540ee75ca cleared external debugger configure stuff from configure script and makefile 2009-01-15 21:52:52 +00:00
Stanislav Shwartsman
93dd7bfccf Fixed compilation issues with GUI debugger enabled.
- Added configure option to compile in GUI frontend for Bochs internal
    debugger, to enable configure with --enable-debugger-gui option. The GUI
    debugger frontend is enabled by default with Bochs internal debugger.

If needed to compile without GUI debugger (in case of compilation issues) use --disable-debugger-gui
2009-01-12 19:15:35 +00:00
Stanislav Shwartsman
e182e74a4d Added ability to define user MSRs spec for emulated CPU 2008-12-28 20:30:48 +00:00
Stanislav Shwartsman
9b85851b12 Completely replace win32 enh debugger (GUI debugger frontend for Bochs internal dbg)
Used new code by bewing, converging to cross-platform GUI frontend
2008-12-27 12:06:39 +00:00
Stanislav Shwartsman
a2e07ff971 - Removed --enable-guest2hos-tlb configure option. The option will be
always enabled for any Bochs configuration.
2008-12-11 21:19:38 +00:00
Stanislav Shwartsman
69bd21bf1d 1G pages support for CPU 2008-12-11 21:00:01 +00:00
Stanislav Shwartsman
fd65bf9de0 - Added graphical Bochs debugger under Win32 host !
- Thanks for Chourdakis Michael and Bruce Ewing.
2008-10-21 13:45:03 +00:00
Stanislav Shwartsman
c009e87a81 Remove external debugger interface:
- it is closed source (!!!)
 - we have very nice replacement now
2008-10-01 09:44:40 +00:00
Stanislav Shwartsman
a8adb36dc2 Implemented MOVBE Intel Atom(R) instruction 2008-08-11 18:53:24 +00:00
Volker Ruppert
50ea5f5073 - added limited ALSA sound support on Linux (PCM output only)
* ALSA PCM support added in soundlnx.cc (OSS will be used if no ALSA present)
  * minor code cleanups and documentation updates
2008-07-12 15:21:36 +00:00
Stanislav Shwartsman
7e551996c1 Added "incomplete" tag to 3dnow option 2008-06-14 16:57:36 +00:00
Stanislav Shwartsman
d19dd8cf74 Added BX_ASSERT_ENABLE configure option to control BX_ASSERT code @configure time.
By default BX_ASSERT will be disabled 'cause it affects emulation performance
It will be ON by default when BX_DEBUGGER compiled in
2008-06-12 21:02:54 +00:00
Volker Ruppert
45c64ff16c - added release tag for 2.3.7 to user doc
- updated version number and strings after release
2008-06-08 10:33:59 +00:00
Volker Ruppert
a56f9baacf - updates for release 2.3.7 2008-06-03 16:11:20 +00:00
Stanislav Shwartsman
7494b8823b - Support of AES CPU extensions, to enable configure with
--enable-aes option
2008-05-30 20:35:08 +00:00
Stanislav Shwartsman
2a1e97b394 POPCNT option should be enabled by default when configured with SSE4_2 2008-04-21 19:57:07 +00:00
Stanislav Shwartsman
c8d8eb8e52 Remove eplicit machine:I386 flag for compilation with MSVCPP
it allows to build 64-bit native Bochs under Win64 and MSVCPP
2008-04-05 19:21:52 +00:00
Stanislav Shwartsman
b5d5e91ff7 Remove old deprecated options from configure 2008-04-04 21:12:51 +00:00
Stanislav Shwartsman
47936944a2 Remove Cirrus Logic PCI special define - it will be enabled by default when PCI is enabled. 2008-03-22 22:26:03 +00:00
Stanislav Shwartsman
8615022962 Added first stubs for XSAVE/XRESTOR implementation
Disassemble XSAVE/XRSTOR instructions (4 instructions)
Update CHANGES - a bit speculatively
2008-02-12 22:41:39 +00:00
Stanislav Shwartsman
7c97f38d59 Added Bochs version info for Win32 - patch from @SF tracker 2008-02-09 07:51:15 +00:00
Stanislav Shwartsman
55ad3e89b6 another whitespace cleanup by Sebastien 2008-02-05 22:57:43 +00:00
Stanislav Shwartsman
8aca8b4bd7 Merged @SF patch by Sebastian
1880755  Win32 version information for bochs.exe
2008-01-27 18:02:22 +00:00
Stanislav Shwartsman
192f398b46 removed --enable-magic-breakpoint configure option - it is enabled by default if Bochs internal debugger compiled in. Also it always possible to switch magic break off by .bochsrc option 2008-01-21 21:36:58 +00:00
Stanislav Shwartsman
4f7d5f5e28 Clean very old deprecated optionS 2008-01-21 21:03:34 +00:00
Volker Ruppert
040226d1d5 - added release tag for 2.3.6 to user doc
- updated version number and strings after release
2007-12-26 13:13:55 +00:00
Volker Ruppert
f937c4c076 - changes for release 2.3.6 2007-12-24 09:52:40 +00:00
Stanislav Shwartsman
adda3befd3 Trace cache optimization merged 2007-12-09 18:36:05 +00:00
Stanislav Shwartsman
7ca78b88e9 configure/compile changes + small optimizations 2007-12-01 16:45:17 +00:00
Stanislav Shwartsman
bb734a906c MWAIT/MONITOR support is still experimental
Ubunto 7.10 can't boot with MWAIT enabled ...
2007-11-26 20:38:39 +00:00
Stanislav Shwartsman
e0a3a844ad Enable alignment check by default for cpu-level >= 4 2007-11-23 12:47:13 +00:00
Stanislav Shwartsman
6d65c2701a Merged Intel Macintosh build patch 2007-11-18 19:53:43 +00:00
Stanislav Shwartsman
afdcadad73 Added ability to switch off bochs loging (BX_DEBUG/INFO/ERROR) 2007-10-30 18:57:46 +00:00
Stanislav Shwartsman
42fdd8a3a1 During Bochs benchmarking I figured out that hostasm actually slow down the emulation ... so remove this ugly code which also doesn't help :)
speedup flags update for some instructions - idea was taken from DT patch by h.johansson
2007-10-21 22:07:33 +00:00
Stanislav Shwartsman
8adbbcf17c Started first implementation of MONITOR/MWAIT 2007-10-11 21:29:01 +00:00
Stanislav Shwartsman
a206d3aef6 Enable MTRRs by default for P6 2007-10-08 19:46:37 +00:00
Stanislav Shwartsman
c6df131c0e Added save/restore to deprecated options in configure script. Removed very old (more than 2 years old) depracated options 2007-09-28 20:26:33 +00:00
Stanislav Shwartsman
071c5c1a26 A lot of changes but everything is really trivial.
Make save/restore default feature, the configure option for save/restore removed from configure script and save/restore made available forever. All code now assume it is exists. Bochs save/restore tree previosly called "save_restore" renamed to "bochs" tree and it will be havily used everywhere, starting from save/restore and ending by various bochs debugger functions. I am going to rework debugger code to get rid of debug CPU access functions and use this "bochs" param tree instead
2007-09-28 19:52:08 +00:00
Stanislav Shwartsman
91e6ca8d5c Implemented MTRR support
Fixes in #PF exception priority
2007-09-20 17:33:35 +00:00
Stanislav Shwartsman
0dc4badfbb Added SSE4A and SSE4_2 to disassembler
Implemented POPCNT instruction
2007-09-19 19:38:10 +00:00
Volker Ruppert
df53247fa8 - exclude statements must appear prior to the file list (expected by tar 1.15.1)
- added release tag for 2.3.5 to user doc
- updated version number and strings after release
2007-09-17 16:20:24 +00:00
Volker Ruppert
2fa8e4dce8 - updates for release 2.3.5 2007-09-16 07:53:00 +00:00
Stanislav Shwartsman
895891b673 Implemented #AC check under configure option
Fixes in misaligned SSE support
2007-07-31 20:25:52 +00:00
Stanislav Shwartsman
58a2595bca Misaligned SSE support 2007-07-15 19:03:39 +00:00
Stanislav Shwartsman
5189cfbf10 SSE4 support 2007-04-19 16:12:21 +00:00
Volker Ruppert
2a6200040e - removed configure option for the new PIT model from documentation and perl
build script
- added --enable-new-pit to the deprecated section of the configure script
- show DEPRECATED messages in configure script in uppercase letters (most of
  them should be removed before the next major release)
2007-04-09 08:46:24 +00:00
Stanislav Shwartsman
b6c8275cfd remove old PIT model and always use Greg Alexander's new one 2007-04-08 21:57:06 +00:00
Volker Ruppert
69e0110c7b - USB HID mouse support ported from Qemu to separate file and C++ object
* removed old-style mouse stuff
  * TODO: implement USB tablet from Qemu and re-implement Bochs USB keypad
- clear out USB hub structures in constructor to avoid segfault
- keyboard: mouse capture flag must affect all mouse types
2007-03-21 18:54:41 +00:00
Volker Ruppert
a70cc33578 - USB MSD support moved to separate files and C++ object
* partial rewrite of the USB device emulation code (TODO: mouse and keypad)
  * configure.in and iodev makefile updates
  * removed old-style data structure for the USB harddisk
  * TODO: save/restore support for removable devices
- PCI USB destructor now resets all runtime parameter handlers
- set log prefix for the SCSI device
- fixed a warning in the SCSI emulation code
2007-03-18 11:17:28 +00:00
Stanislav Shwartsman
f8003098b1 Rename SSE4 to SSE3E to match intel docs. SSE4 coming later ;)
Fixed "last prefix" for REX in 64-bit mode
2007-01-25 19:09:41 +00:00
Volker Ruppert
79afc6dd01 - enable VBE support by default in configure script
- removed unused configure symbol FPU_GLUE_OBJ
- updated configure shortcut scripts (cdrom and VBE support are enabled by default)
2006-11-20 18:55:16 +00:00
Volker Ruppert
bbc8ad0c49 - Bochs on Solaris 10 needs to be linked with libnsl 2006-11-06 17:00:53 +00:00
Volker Ruppert
f3bee13cad - Bochs on Solaris always needs to be linked with the socket library
- serial terminal support now enabled on Solaris
- only complain about the missing wxWidgets library if requested
2006-10-12 17:58:09 +00:00
Stanislav Shwartsman
64832bf866 Added enable-acpi configure option 2006-10-03 21:45:17 +00:00
Stanislav Shwartsman
f37b969d1e Enable save/restore feature by default 2006-09-24 17:15:02 +00:00
Volker Ruppert
2cdd6596f1 - implementation of the PIIX4 ACPI controller started. The code is not yet
enabled and the i/o handler only generate info messages.
2006-09-24 16:58:13 +00:00
Volker Ruppert
f84f45b51f - updated after release 2.3 2006-08-27 15:36:39 +00:00
Volker Ruppert
92002b5628 - updates for pre3 2006-08-06 07:41:40 +00:00
Volker Ruppert
13fb08efed - updates for release 2.3.pre2 2006-07-16 08:05:39 +00:00
Volker Ruppert
38c6120338 - updates for release 2.3.pre1 2006-06-25 17:50:30 +00:00
Stanislav Shwartsman
a48cd0c3d1 Implicitly specify deprecated options in configure script 2006-06-22 16:43:50 +00:00
Stanislav Shwartsman
8b0df8e99b Merge SAVE_RESTORE branch to CVS 2006-05-27 15:54:49 +00:00
Stanislav Shwartsman
26bb9e2716 Enable SEP by default for PII processor (P6+MMX) 2006-05-15 17:40:16 +00:00
Stanislav Shwartsman
e15980c348 Specify new depracated options in configure script 2006-04-06 19:14:34 +00:00
Stanislav Shwartsman
7cc921d1df Prepare configure support for SSE4 implemntation (coming soon)
Rename _GAME configure macro to _GAMEPORT
2006-04-05 18:49:35 +00:00
Volker Ruppert
7997876711 - implemented GTK2+ detection for wxGTK (patch by Guillem Jover <guillem@debian.org>)
- selection of required wx libraries to link only works with version 2.6.x
2006-03-13 17:18:33 +00:00
Volker Ruppert
9a1c64721e - fixed parameter check before calling the "Show CPU" dialog
- wxBochs needs to be linked with the wxWidgets core and base libraries
2006-03-12 15:11:54 +00:00
Stanislav Shwartsman
7cfa31492c Removed --enable-pni configure option, to compile with PNI use
--enable-sse=3 instead (Stanislav Shwartsman)
2006-02-20 19:28:57 +00:00
Volker Ruppert
ab5d2b5644 - version information updated after release 2.2.6 2006-02-04 09:23:59 +00:00
Stanislav Shwartsman
6ca296de8b Move --enable-reset-on-triple-fault option to runtime CPU::reste_on_triple-fault option in .bocshrc
Cleanup and optimize parser for debugger
2006-02-01 18:12:08 +00:00
Volker Ruppert
5ddfdbc068 - updates for 2.2.6 release 2006-01-29 08:48:50 +00:00
Stanislav Shwartsman
95a392eddc Enable VME by default for Pentium+ CPU 2006-01-27 21:45:50 +00:00
Stanislav Shwartsman
067f23e3da Fix set 'ah,bh,ch,dh' registers from debugger
Enable disasm by default - in adds some useful information to debug messages in log file
Remove defines for 8bit registers from cpu.h, the x86 arch defines not match defines used by set_reg and get_reg methods.
2006-01-27 19:50:00 +00:00
Stanislav Shwartsman
37eb82c69c Totally remove the cosimulation code from Bochs.
The Bochs anyway even doesn't compile if cosimulation configured enabled.
But in the same time the cosimulation code only disturbs to the future development of Bochs debugger, for example adding x86-64 functionality ...
For those of you who still may want to see the cosimulation code inside I put it in patch and upload it Bochs CVS patches folder. Read comments for the patch ! ----------------------------------------------------------------------
2006-01-25 22:20:00 +00:00
Stanislav Shwartsman
2c8f6f7720 Merged patch: determine number of processors to emulate through .bochsrc 2006-01-18 18:35:38 +00:00
Volker Ruppert
cab24c37b4 - version number and strings updated 2006-01-04 18:56:59 +00:00
Volker Ruppert
ab8b637508 - updates for release 2.2.5 2005-12-30 08:35:01 +00:00
Volker Ruppert
e09bf42881 - fixed compiling with configure option combination '--enable-sb16 --disable-gameport' 2005-12-13 20:54:21 +00:00
Volker Ruppert
e753570e1f - enable VDE networking module on Linux (same conditions as ethertap)
- eth_vde.cc compilation fix and TUN/TAP hack removed
- mentioned VDE and added example in documentation
2005-11-29 19:28:43 +00:00
Stanislav Shwartsman
8c91790680 Redefine registers accessors in cpu.h
Change BxSupportPAE and BxSupportGlobalPages macros to Bochs style names
Set bx_cpu_id in BX_CPU_C constructor (safe way)
Backup cpu-level check for paging features at compile time (already checked in configure)
Some warnings and indent fixes
speed up get_segment_base method for x86-64 case
2005-11-26 21:36:51 +00:00
Stanislav Shwartsman
ec4dcac4d4 Check cpu level for paging features at configure stage 2005-11-25 11:52:06 +00:00
Volker Ruppert
0bf7095fa9 - don't link twice with COMCTL32.DLL if win32 gui is enabled 2005-10-20 17:25:38 +00:00
Stanislav Shwartsman
670395f1be VME support - beta #1 2005-10-17 13:06:09 +00:00
Stanislav Shwartsman
e83c77db49 Preparing to VME implementation
DO NOT ENABLE VME option until the implementation will be completed !
2005-10-16 23:13:19 +00:00
Volker Ruppert
a03f249bea - fixed compilation with alternative gui enabled on win32 (Cygwin, MinGW/MSYS)
after changing runtime dialog to a property sheet
2005-10-09 10:34:43 +00:00
Volker Ruppert
cc59e24639 - removed BX_USE_CONFIG_INTERFACE stuff. A configuration interface is always
present and a quickstart option exists, too
- improved check for GTK 2.x (only needed if basename of wx is 'wx_gtk2')
- moved/added some deprecated configure options to the end of the script. These
  checks should force users and distrubutors to update their config options.
2005-10-03 10:28:56 +00:00
Volker Ruppert
e450b1af53 - removed obsolete configure option --enable-time0. The 'clock' runtime option
is already doing the same.
- DCC oscillator disable support added
- fixed indent mode in modified sections
2005-09-10 16:40:59 +00:00
Volker Ruppert
2b52b52145 - detection of wget (or equivalent commands) added (based on SF patch #816979)
- fixed compilation with plugins or an alternative gui enabled on win32 (Cygwin,
  MinGW/MSYS) after adding serial mode 'socket'
2005-07-30 15:04:26 +00:00
Volker Ruppert
50d663dd6e - MSVC doesn't support the type socklen_t 2005-07-26 17:17:14 +00:00
Volker Ruppert
02dfaae349 - updates after release 2.2.1 2005-07-08 22:13:03 +00:00
Volker Ruppert
d4871e66a9 - fixes for Solaris 2.9 (tested with the compile farm)
* .conf.sparc fixed / cleaned up / new features added
  * flag _XOPEN_SOURCE is already defined
  * define BX_HAVE_NET_IF_H when <net/if.h> exists
2005-07-03 09:57:41 +00:00
Volker Ruppert
c541e1986e - the select() function is always present on win32 (wsock32.dll) 2005-07-03 07:38:13 +00:00
Volker Ruppert
785662517c - the option -export-dynamic is not needed for the win32 non-plugin version
(MSVC doesn't understand this argument)
- exporting dll symbols is only needed for the win32 plugin version
2005-06-13 20:28:38 +00:00
Volker Ruppert
3c331b1250 - fixes for compilation with NMAKE 2005-06-05 18:46:30 +00:00
Volker Ruppert
3eedbdb304 - fixed handling of the --enable-processors argument
- detect cpu feature conflicts (PNI needs SSE2 etc.)
- updated version number and strings
2005-06-03 15:56:20 +00:00
Volker Ruppert
12491e8b50 - some fixes for wxWidgets 2.6 compatiblity
* added hack to detect GTK 2 and set include path
  * don't use obsolete wxNotebookSizer
  * TODO: wxGTK version is still buggy (wrong dialogs when pressing toolbar buttons)
- updated version number and strings
2005-05-17 18:07:04 +00:00
Volker Ruppert
92ec453612 - updates for pre4 2005-05-15 07:20:13 +00:00
Volker Ruppert
4bbfdff51e - added bximage link options for MSVC, Cygwin and MinGW/MSYS
- compile niclist.exe on MinGW/MSYS if networking is enabled
2005-05-14 14:41:27 +00:00
Stanislav Shwartsman
7acffe7998 For 4CPU configuration set BSP=0 2005-05-04 15:57:42 +00:00
Stanislav Shwartsman
19750b0324 Fixed highest_priority_int calculation function
Fixed I/O APIC ID for 8CPU configuration to match BIOS tables
Remove I/O APIC initialization when INIT IPI received
2005-04-27 18:09:27 +00:00
Volker Ruppert
bf07db42e4 - improved help messages
- updated version number and strings
2005-04-21 19:07:22 +00:00
Stanislav Shwartsman
bce355172f More detailed explanation of configure options 2005-04-20 17:44:16 +00:00
Stanislav Shwartsman
8482511af3 Fix compilation errors
Add BX_INFO for writing to TSC_MSR (not implemented message)
2005-04-18 17:21:34 +00:00
Volker Ruppert
56102670fe - updates for 2.2.pre3 2005-04-16 07:34:07 +00:00
Volker Ruppert
c50c9b602e - the variable $cross_configure is now set to yes if $cross_compiling returns
"yes" or the target OS is "windows" (special case for MSVC)
- fixed typo in docbook2html check
2005-03-30 16:41:31 +00:00
Volker Ruppert
ed0669458c - removed obsolete configure option --with-win32-vcpp. The shortcut script
.conf.win32-vcpp already prepares the sources correctly for MSVC.
2005-03-28 10:26:14 +00:00
Volker Ruppert
dae15d95c0 - updated version number and changelog for 2.2.pre2 release 2005-03-25 09:36:23 +00:00
Volker Ruppert
a2945b42ec - detect possible conflicts when running configure (SF bug #1162983):
* SSE/SSE2 need CPU level 6
  * external debuggger supported on win32 only
  * docbook2html needed for building Docbook documentation
- missing result value for 3DNow! support added
- OSX sound support is used for MacOS 9, too
2005-03-21 19:17:00 +00:00
Volker Ruppert
1018486845 - added sb16 lowlevel support autodetection (old-style syntax still supported)
- updated Bochs version number / strings
2005-03-20 09:29:31 +00:00
Volker Ruppert
3a38b0e4a8 - updated version number for 2.2.pre1 release 2005-03-13 08:37:25 +00:00
Volker Ruppert
2b196e5c61 - removed useless VLB-IDE support (ISA and PCI IDE are working okay)
- removed dangerous options from the harddrive code
2005-02-15 20:48:14 +00:00
Volker Ruppert
0381ff52d3 - fixed VBE and GD54xx PCI checks (SF patch #1121164)
- fixed typo in compressed-hd message (SF patch #1121150)
2005-02-12 10:38:14 +00:00
Volker Ruppert
5e420c7172 - vga extension option now controls the presence of the Cirrus extension
- Cirrus and VBE support are no longer mutually exclusive
2005-02-09 22:01:19 +00:00
Volker Ruppert
da975f3edf - applied SF patch #1116663: temporary fix for vbe and cirrus support check
(the check can be removed when the vga extension option works completely)
2005-02-05 10:05:30 +00:00
Volker Ruppert
f98ecd09b1 - changed wxWindows to wxWidgets (includes SF patch #1094407 by Alexander Schuch) 2005-01-05 19:54:32 +00:00
Stanislav Shwartsman
14be5a7f01 Fix typo 2004-10-23 19:31:13 +00:00
Stanislav Shwartsman
b37ae8a969 added new option --enable-show-ips to configure -> allow to enable BX_SHOW_IPS through configure script
fixed print prefixes in disasm -> only LOCK, REP and REPNE prefixes printed
update changes
2004-10-16 21:17:44 +00:00
Volker Ruppert
f93b04df0b - the PCI Pseudo-NIC is now independent from the NE2000 NIC stuff. New symbol
BX_NETWORKING controls the presence of the lowlevel networking stuff.
- eth.cc: unused stuff removed
2004-10-03 20:06:12 +00:00
Stanislav Shwartsman
eb2b8a3afc Ability to enable PNI 2004-09-21 21:07:39 +00:00
Volker Ruppert
5e47de7968 - missing extension ".exe" added for "make install" on cygwin
- compile niclist.exe on cygwin if networking is enabled
2004-09-12 11:25:01 +00:00
Volker Ruppert
91ac899439 - applied SF patch #867045 from m_suzu_abc@yahoo.co.jp
* fixed compiler errors to build on VC++
  * removed /GX from CXXFLAGS since C++ exception is not used
2004-08-18 11:52:25 +00:00
Volker Ruppert
45ccb97021 - CL-GD 54xx SVGA emulation added (SF patch #869822 from m_suzu_abc@yahoo.co.jp)
- changes to the original svga_cirrus patch:
  * PCI memory/mmio PnP support, some emulation and compile fixes
  * ported write mode 4 + 5 and some bufixes from cirrus vga in qemu
  * new graphics API, hardware cursor support, configure option added (Robin Kay)
  * partial support for transparent bitblt and bitblt write mask
2004-08-16 08:07:23 +00:00
Volker Ruppert
f6f6568adf - configure / compile fixes for Solaris SunPro (patch from Robin Kay) 2004-08-11 11:09:01 +00:00
Volker Ruppert
d06c80cee3 - changed all iodev config macros to BX_SUPPORT_xxx
- removed incorrect SDL/ prefix from include paths (patch from Robin KAY)
2004-08-06 15:49:55 +00:00
Stanislav Shwartsman
f9bd2b74be 1. Fixed bug in FSUB instruction
2. Fixed bug

[ 989478 ] I-Cache and undefined Instruktions

The L4 microkernel uses an undefined instruction to
trap for a special requests into the kernel (LOCK NOP).
The handler fixes this up and gives the user a special
code page with syscall stubs. If you're not using the
I-Cache optimization everthing works find on bochs. But
if you enable the I-Cache (--enable-icache), then the
undefined opcode exception is thrown only once for ever
virtual address it occurs. See the demodisk of the
L4KA::pistachio
(http://www.l4ka.org/projects/pistachio/download.php).
In this case the pingpong benchmark of this demo is of
interest. Everything runs fine until the program tries
to spawn a new task for its measurements. This new task
shares the code of the creating program. But the new
task stops executing at the undefined instruction
explained above and no exception is thrown.
2004-07-29 20:15:19 +00:00
Stanislav Shwartsman
35741f5cbd Fix configure script for Peter Tattam 2004-07-15 19:57:31 +00:00
Volker Ruppert
bf243f892a - added PCI IDE controller (dummy device - busmaster feature not present yet) 2004-06-09 20:55:58 +00:00
Christophe Bothamy
ea987f266c - remove "pc" platform check for enabling pcidev. Platform must
be linux still.
2004-06-01 07:30:34 +00:00
Stanislav Shwartsman
66f95e54c6 3dnow is not required for 64-bit architecture extensions 2004-04-09 11:52:45 +00:00
Christophe Bothamy
cc396cf47a - fix typo 2004-02-16 22:42:38 +00:00
Christophe Bothamy
d23e36dc02 - update to 2.1.1 version 2004-02-15 14:21:19 +00:00
Volker Ruppert
199f6a72c1 - fixed default setting of BX_SUPPORT_MMX 2004-02-13 16:11:14 +00:00
Stanislav Shwartsman
0d74cc8973 * ignore-bad-msrs enabled by default because it essential for booting Windows
* -enable-mmx enabled by default only if cpu-level > 4
2004-02-13 12:21:47 +00:00
Daniel Gimpelevich
5366cc369e Added Brian Huffman's Sound for OSX code with a couple of tweaks. 2004-02-09 22:23:53 +00:00
Christophe Bothamy
c6d65e3694 - add check for vsnprintf availability and emulate with vsprintf if not found 2004-02-08 10:22:29 +00:00
Christophe Bothamy
8ad4cf6056 - add speaker log, pluginSpeaker, and beep_on/off methods in guis 2004-02-01 23:48:57 +00:00
Volker Ruppert
abfd6aef64 - set BX_USE_TEXTCONFIG to 0 if Bochs is compiled for wxWindows only 2004-01-29 19:28:46 +00:00
Michael Brown
d1922bc835 Changed #ifdef MAGIC_BREAKPOINT to #if BX_MAGIC_BREAKPOINT and added a
configure script option --enable-magic-breakpoints (enabled by default).

Documented the instruction required to trigger the magic breakpoint
(xchgw %bx,%bx).
2004-01-29 17:49:03 +00:00
Daniel Gimpelevich
5e48704ebb Added --enable-raw-serial. 2004-01-17 20:33:19 +00:00
Daniel Gimpelevich
63e4f9d270 Now allows compiling tuntap on MacOSX.
Couldn't configure the interface to work, though.
2004-01-17 11:47:12 +00:00
Daniel Gimpelevich
d0dae6dae1 Applied Russ Cox's tuntap patch and updated docs. 2004-01-17 02:13:37 +00:00
Daniel Gimpelevich
6c26e6a65f Introduced Frank Cornelis's PCIDEV patch. 2004-01-15 02:08:37 +00:00
Michael Brown
299947f64f Added the PCI Pseudo-NIC (pnic). Mainly useful for running Etherboot
inside Bochs.
2004-01-13 19:21:21 +00:00
Christophe Bothamy
a9bacb3c9e - update VERSION strings to something sensible for the HEAD branch 2004-01-12 01:17:21 +00:00
Christophe Bothamy
5032559153 - update for 2.1pre3 release 2004-01-01 23:27:29 +00:00
Volker Ruppert
0e1cac616d - missing defines BX_SUPPORT_GAME added 2003-12-26 14:18:06 +00:00
Volker Ruppert
6ba47a1d7a - gameport support is now disabled by default. It can be enabled with --enable-sb16=...
or the new option --enable-gameport.
- reading gameport with joystick not present now causes a BX_DEBUG message
2003-12-26 13:53:40 +00:00
Stanislav Shwartsman
4baec805fa Fixed:
[ 725796 ] configure script bug

configure script bug
Current CVS configure script enables MMX even if FPU
is disabled.
2003-12-25 21:46:07 +00:00
Christophe Bothamy
9bf270b1af - vcpp does not have hash_map.h : fixes a compilation problem with debugger enabled 2003-12-07 23:32:45 +00:00
Daniel Gimpelevich
fff74a6f83 Fixed incompatibility with gcc3.3, I think. 2003-11-28 15:07:29 +00:00
Christophe Bothamy
c95a329afb - preparing 2.1pre2 release 2003-11-27 01:36:55 +00:00
Daniel Gimpelevich
d0c10dd46b *** empty log message *** 2003-10-02 11:33:42 +00:00
Christophe Bothamy
e856e9c46e - fix utc time for bsd, that also works for linux.
Patch by Daniel Gimpelevich
2003-10-02 07:38:00 +00:00
Bryce Denney
a4a5b0f677 - bump up version number to 2.1.pre1 2003-10-01 02:11:40 +00:00
Bryce Denney
32a0e4ca6d - force BX_HAVE_USLEEP to 0 when cross compiling for VC++ 2003-10-01 02:01:33 +00:00
Christophe Bothamy
6a4e0e11ce - add checks for localtime(), timezone and daylight 2003-09-05 23:03:38 +00:00
Christophe Bothamy
5a944bc59b - add option to enable/disable reset on triple fault 2003-08-28 00:10:10 +00:00
Christophe Bothamy
8d8ae28b2f - avoid ethertap detection when compiling for win32 2003-08-22 00:57:31 +00:00
Christophe Bothamy
e555765d75 - add a "clock: sync=[none|slowdown|realtime], time0=[timeValue|local|utc]"
- pit: and time0: options are still supported but deprecated
- warn when parsing deprecated directives
- fix wrong number of ata_device_translation_names
- still to do:
  - setting time0 to utc is not yet supported
  - the man page, user guide and .bochsrc still need to be updated
    with the new options
2003-08-19 00:10:39 +00:00
Christophe Bothamy
fb171e482a - apply MartinS compile patch for missing function in curses 2003-08-17 23:40:39 +00:00
Volker Ruppert
d386471ac4 - new option allows the user to disable the check for XPM support (enabled by default) 2003-08-10 16:05:41 +00:00
Alexander Krisak
45df735c30 Apply Vitaly's Vorobyov debugger patch 2003-08-04 16:03:09 +00:00
Volker Ruppert
e895145ef8 - wx resource problem in plugin mode on win32 fixed. Windows supports only one
resource section and we had two binary resource files if both wx and win32
  are enabled. Now we have only one binary file with all resources.
2003-07-13 23:30:55 +00:00
Volker Ruppert
b0da735fd8 - check for socket() in wsock32 removed (it doesn't work this way) 2003-07-06 11:46:31 +00:00
Volker Ruppert
69d8b791f4 - detection of the socket function (used by RFB) fixed for the win32 target 2003-07-06 09:00:36 +00:00
Volker Ruppert
125e3479e6 - fixes for cross-compilation (building win32 binary on linux)
* configure.in: readline check is only necessary if the debugger is enabled
    (patch from Jeroen Janssen)
  * iodev/Makefile.in: dependencies updated after adding gameport device
2003-07-05 05:31:40 +00:00
Volker Ruppert
dd46d0ec71 - configure check for XPM support added
- x.cc uses the old monochrome icon if there's no XPM support present
2003-06-13 16:05:03 +00:00
Volker Ruppert
4d25b39655 - changes for better MSVC support based on patch #735990
* support for different resource compilers added (rc / windres)
  * bochs must be linked with advapi.lib for registry access
  * optimization flag changed to /Ox
  * symbols BX_HAVE_MKSTEMP, BX_HAVE_SYS_MMAN_H and HAVE_ETHERTAP must be set to 0
  * BX_HAVE_REALTIME_USEC definition fixed for MSVC
  * vmware3.h: definition of COW_Header fixed for MSVC
2003-06-06 19:57:25 +00:00
Stanislav Shwartsman
ccd40d8111 added --eanble-daz configure option 2003-05-30 08:57:25 +00:00
Volker Ruppert
4ccaddc32d - removed obsolete X11 VGA font and it's installation mechanism
* files font/vga.pcf, font/vga.bdf, font/hercules.bdf and font/README removed
  * files install-x11-fonts.in and test-x11-fonts removed
  * font installation mechanism removed from Makefile.in and build/debian/rules
  * configure script updated
2003-05-25 09:48:12 +00:00
Volker Ruppert
4f2af797b5 - library dependencies in the main bochs binary and the gui plugins fixed.
These changes are based on the SF patch #742670. It did not work with
  plugins disabled.

Here is the descriiption of patch #742670:

the library dependencies (see objdump -p file) in the
main bochs binary and the gui plugins are wrong:

- the gui plugins don't depend on their respective gui
libraries
- the main bochs binary depends on all the gui libraries

this doesn't seem much of a problem, since the needed
libraries are loaded anyway, but it's problematic when
building packages for binary distribution of bochs.

in Debian, the package building tools will set package
dependencies according to the library dependencies of
each file, so the result is:

- the main bochs package depends on all libraries. this
includes libwx, libsdl, libncurses and xlibs.
- the indivudual plugin packages don't depend on any
gui library

so when a user wants to run bochs with the curses gui
and installs the bochs-curses package, he/she will be
forced to install Xfree86, WxWindows and GTK+ on
his/her system.

the attached patch fixes the problem by moving the
linker flags related to GUI libraries to the right
makefile (gui/Makefile.in)
2003-05-24 17:09:26 +00:00
Volker Ruppert
c71fb2f25a - adding resources for Bochs with SDL on win32 makes the "ask" dialog work 2003-05-23 16:06:42 +00:00
Volker Ruppert
7edc0948b7 - "ask" dialogbox as an extension of the "textconfig" interface on the win32 platform added 2003-05-21 20:33:24 +00:00
Stanislav Shwartsman
6822fa35a3 regenerate configure script from new configure.in 2003-05-21 16:16:04 +00:00
Stanislav Shwartsman
777e0db06b Fixed cpu.cc compilation error with ICache disabled
Added --enable-3dnow configuration option
2003-05-21 15:48:55 +00:00
Christophe Bothamy
92c7e0e796 - add check for sys/mman.h 2003-05-06 20:15:31 +00:00
Christophe Bothamy
f4d1882c74 - fix double definition of eth_tap.o in iodev/Makefile
(this was reported by Volker, bug was introduced when
  tap support for FreeBSD was added)
2003-05-04 12:57:16 +00:00
Christophe Bothamy
f43d2fe3e9 - backport of the BRANCH_HARDDISK_MODES to the main branch.
You can now choose for each disk on the ata interfaces the
  disk mode, between :
    - flat : one file flat layout
    - concat : multiple files layout
    - external : developer's specific, through a C++ class
    - dll : developer's specific, through a DLL
    - sparse : stackable, commitable, rollbackable
    - vmware3 : vmware3 disk support
    - undoable : flat file with commitable redolog
    - growable : growing file
    - volatile : flat file with volatile redolog
    - z-undoable : gziped flat file with commitable redolog
    - z-volatile : gziped flat file with volatile redolog
  A new "bxcommit" utility can merge commitable redologs to
  flat images.
2003-05-03 16:37:18 +00:00
Christophe Bothamy
52eda3dbec - enable tap for FreeBSD (patch by Ronald Klop and Gen Otsuji) 2003-04-26 13:31:23 +00:00
Christophe Bothamy
50efc3b8c7 - apply Conn Clark's patch.perf-regparm-cclark :
- it works only on x86 with gcc2.95+
  - uses the GCC function atribute "regparm(n)" to declare that certain
    functions use the register calling convention
  - performance improvement is about 6%
2003-03-02 23:59:12 +00:00
Sigbjrrn Skjcret
dfd0aa9fd2 Fixed configure.in for AmigaOS/MorphOS, unfortunately, I don't have a working autoconf, can someone please regen configure? 2003-02-21 14:40:59 +00:00
Christophe Bothamy
a5081ba6d6 - macos does not have hashmaps 2003-01-30 18:37:05 +00:00
Volker Ruppert
f25a3df39b - added minimal USB support (patch from Ben Lunt <fys@cybertrails.com>, updated
and improved by Christophe Bothamy and Volker Ruppert)

Comment from the author:

Attached is a "patch" file detailing what you need to do
to add USB support (UHCI only for now) to your existing
Bochs (2.0.xx) source code.

I use Win32 and VC++ but the source and modifications
should be platform and compiler independant.

Please let me know if this patch some how breaks the
build process of your compilation (Bochs 2.0.0 or above
only).

I would also like any feedback on how this code works
(or doesn't work) on your platform and within your
images. If you explain in as much detail as you can on
how it did or did not work, I will try to add to the source
to help it work on all platforms and images.
2003-01-28 16:58:10 +00:00
Christophe Bothamy
939b558fdf - apply patch.sysenterexit-mrieker:
- adds sysenter/sysexit support for cpu-level>=6
  - enabled by ./configure --enable-sep
2003-01-20 20:10:31 +00:00
Christophe Bothamy
e6ff0a8560 - add check for strrev and implementation if not found 2003-01-10 22:32:46 +00:00
Bryce Denney
abdf3ef751 - show something reasonable in the version string, instead of showing 2.0.pre4. 2003-01-04 19:22:47 +00:00
Volker Ruppert
ef8a7b1dc6 - new application icon for the win32 gui using 'bochs.ico' 2002-12-26 18:24:41 +00:00
Bryce Denney
8bdffcbe46 - apply patch from Peter Tattam. x86-64 requires SSE2 or it fails without
any indiciation of what went wrong.
2002-12-21 16:36:07 +00:00
Bryce Denney
8bacd82133 - add BeOS target which builds the binary and then runs "copyattr"
to copy the resources into the binary
2002-12-21 14:31:30 +00:00
Bryce Denney
dc204f58c8 - update date for pre4 release 2002-12-14 21:26:44 +00:00
Bryce Denney
943586ad61 - bump up version number for 2.0.pre4...hopefully the last prerelease 2002-12-13 22:25:52 +00:00
Bryce Denney
8e512e5d4f - on MacOSX if you enable plugins, configure now checks to be sure that
you have dlcompat installed.  Without dlcompat, the configure/build works
  fine but the plugins cannot be loaded.  This new test prints a meaningful
  error message before you waste any time trying to build it and figure
  out why the plugins cannot be dlopened.
2002-12-13 22:02:05 +00:00
Bryce Denney
610116cf45 - if we're going to build docbook files, do it during make rather than
make install
2002-12-13 20:37:38 +00:00
Bryce Denney
4f4e6a2fa8 - add configure option --enable-docbook. If it is turned on, then during
make install it will build the docbook documentation and install it
  into $(prefix)/share/doc/bochs.  If it is not specified, then it will
  be enabled only if the program "docbook2html" is found in your path.
- this completes [ 652957 ] install docbook docs instead of HTML

Modified Files:
  Makefile.in configure configure.in doc/docbook/Makefile.in
2002-12-13 17:52:16 +00:00
Bryce Denney
16360cea0c - remove old option "--enable-control-panel". This has been replaced
by "--enable-config-interface".
2002-12-13 17:39:03 +00:00
Bryce Denney
f548660ca6 - see bug [ 652957 ] install docbook docs instead of HTML
- now configure script does substitutions in doc/docbook/Makefile.in
- add "make install_docbook" target in main makefile that runs make install
  in doc/docbook.  It will not be run unless you ask for it.

Modified Files:
  configure.in Makefile.in configure doc/docbook/Makefile.in
2002-12-13 16:21:04 +00:00
Volker Ruppert
e0d63bdf75 - don't use libtool when compiling with Cygwin (fixes linking failure with SDL
and without plugins on Cygwin)
2002-12-12 19:43:40 +00:00
Christophe Bothamy
90ea64ad9e - update to have macos compile.
- define default option for macos compile
2002-12-12 13:27:47 +00:00
Christophe Bothamy
53b83ef277 - begin porting changes for macos compile 2002-12-12 11:07:13 +00:00
Bryce Denney
54a0b5836d - get rid of --enable-realtime-pit configure option since it's now
enabled in bochsrc instead
2002-12-11 21:38:37 +00:00
Bryce Denney
1812808d82 - get rid of bochs-docs which didn't work anyway
- move DOC-linux.html into the docbook in a section called "Quick Start for
  Linux Users", and removed all references to the DOC-linux file that I could
  find.  Most of the text has been moved into the Linux RPM section.  Parts
  that did not fit into the docbook are now in doc/docbook/misc.txt.
- put vga.pcf into INSTALL_LIST_X11 so that it's only installed when
  you configure with --with-x11.
- transfer section on VGA font installation from docs-html into user guide
- remove RCS id from screen shots within user guide, since they are changed
  to the revision info of user.dbk.

Modified Files:
  Makefile.in configure configure.in build/linux/.cvsignore
  build/redhat/bochs.rpmspec.template doc/docbook/misc.txt
  doc/docbook/user/user.dbk doc/man/bochs-dlx.1 doc/man/bochs.1
  doc/man/bochsrc.5 doc/man/bximage.1 docs-html/install.html
Removed Files:
  build/linux/DOC-linux.html.in build/linux/bochs-docs.in
2002-12-11 19:16:20 +00:00
Bryce Denney
5024d92ecc - change version numbers for 2.0 pre3 2002-12-04 23:44:13 +00:00
Bryce Denney
ca6fdcc47a - change REL_STRING so that it explains that this isn't 2.0.pre2, it's
the CVS version.
2002-11-23 06:37:56 +00:00
Bryce Denney
c6674c7b67 - add -lm to LIBS, but only when it's needed to link math functions.
Some platforms don't need anything, and others add -lm automatically.
2002-11-23 00:29:43 +00:00
Bryce Denney
eaedb25694 - set INSTALL_TARGET to use install_macosx target, when carbon --with-carbon
is used
2002-11-22 06:44:44 +00:00
Bryce Denney
7382b84f8c - A new GUI is born!
add SVGALIB display library by Igor Popik <igipop@wsfiz.edu.pl>
  While it's running, you can press F12 to escape into the runtime config
  menu, and then you can change disks or quit or whatever.

  Better not try it with the bochs debugger...you could get stuck.

Modified Files:
  Makefile.in config.h.in configure configure.in main.cc
  plugin.h gui/Makefile.in
Added Files:
  gui/svga.cc
Removed Files:
  patches/patch.svgalib-gui patches/patch.svgalib-gui-f12
2002-11-21 19:26:07 +00:00
Bryce Denney
4098c5bed8 - in 1.173 I accidently checked in some pieces of the svgalib patch along
with the nsis installer stuff.  This reverts the svgalib part.  When
  we check in the svgalib patch, I want to do it all in one piece.
2002-11-21 17:40:17 +00:00
Bryce Denney
f21ab23c51 - add NSIS makefile 2002-11-21 03:50:59 +00:00
Bryce Denney
b2ec77815d - renamed bochs.nsi to bochs.nsi.in, added configure variables
- substitute version from configure script automatically

Modified Files:
  configure.in configure
Added Files:
  build/win32/nsis/bochs.nsi.in
Removed Files:
  build/win32/nsis/bochs.nsi
2002-11-21 03:43:04 +00:00
Bryce Denney
0ab5bfa1d2 - move "$(LIBTOOL) --mode=link" into the @LINK@ configure variable, so that
it doesn't show up in nmake makefiles
2002-11-20 20:42:40 +00:00
Bryce Denney
54cf0b4cf5 - set MAKE=nmake when configuring for VC++. untested. 2002-11-20 12:42:53 +00:00
Bryce Denney
c43b46c531 - check in some small compile patches from Martin Str|mberg <ams@ludd.luth.se>
to make Bochs compile on DJGPP.
  - put references to SIGSTOP and SIGTSTP in #ifdefs
  - add definition of BX_CD_FRAMESIZE and CD_FRAMESIZE
  - look for curses functions in -ldcurses

Modified Files:
  gui/term.cc iodev/cdrom.cc configure.in configure
2002-11-20 12:23:42 +00:00
Bryce Denney
7f596646c6 - bump up version number to 2.0.pre2 in preparation to start building
binaries
2002-11-19 16:36:17 +00:00
Bryce Denney
ab6cb49693 - this fixes bug #638600: need default plugin search path
- configure script adds -DBX_PLUGIN_PATH="${plugdir}" to CFLAGS/CXXFLAGS
  in the Makefile.
- in main.cc, if plugins enabled and the environment variable LTDL_LIBRARY_PATH
  is not set, then it gets set to the value supplied by BX_PLUGIN_PATH.

Modified Files:
  main.cc Makefile.in configure.in config.h.in configure
2002-11-18 02:32:53 +00:00
Volker Ruppert
cde5737dc5 - the names of the object files for the lowlevel network support are now stored
in NETLOW_OBJS. The value of NE2K_OBJS is now 'ne2k.o' if ne2k support is
  enabled. These changes are necessary before converting the ne2k to a plugin.
2002-11-17 12:49:46 +00:00
Bryce Denney
17e7f6c2eb - add configure test for -lmingwex, which is needed on newer cygwin systems
for opendir(), readdir() and closedir() used in ltdl.c.
2002-11-16 13:43:41 +00:00
Bryce Denney
1bd9a44a9e - plugins are now called libbx_NAME.so for unix and bx_NAME.dll for win32.
- plugins are installed into ${plugdir} which is defined to be
  ${libdir}/bochs-${VERSION}/plugins.

Modified Files:
  Makefile.in plugin.cc configure.in configure gui/Makefile.in
  iodev/Makefile.in
2002-11-14 18:45:49 +00:00
Bryce Denney
53642bd5dd - change version numbers to prepare for 2.0 prerelease #1. 2002-11-14 18:17:29 +00:00
Stanislav Shwartsman
5803e20240 Changed policy of SSE/SSE2 checking 2002-11-13 21:00:05 +00:00
Volker Ruppert
675f140e37 - the name of the object file for the lowlevel sound support is now stored in
SOUNDLOW_OBJS. The value of SB16_OBJS is now 'sb16.o' if SB16 support is
  enabled. These changes are necessary before converting the SB16 to a plugin.
2002-11-12 21:07:17 +00:00
Christophe Bothamy
81eca54b51 - fix [ 625696 ] text config menu: default can be wrong.
New behaviour is:
  . No command line arg (user want to load or create a new conf file)
    -> no .bochsrc is loaded
    -> defaults to "2. Read options from..."
  . command line arg -q (user want to quick start from .bochsrc)
    -> .bochsrc is loaded
      -> if found Run the simulation
      -> if not found defaults to "2. Read options from..."
  . command line arg -f (user want to edit a conf file)
    -> conf file is loaded
      -> if found defaults to "3. Edit options"
      -> if not found defaults to "2. Read options from..."
  . command line arg -qf (user want to quick start from a conf file)
    -> conf file is loaded
      -> if found Run the simulation
      -> if not found defaults to "2. Read options from..."
  . After selection of "2. Read options from..."
    -> defaults to "5. Begin simulation"
- fix "enable-control-panel" behaviour in configure.in.
- check if a romimage was supplied in the conf file.
  If not, print a hint about a missing/corrupt conf file.

  I hope I did not break anything, notably the Carbon gui
2002-11-09 14:12:10 +00:00
Christophe Bothamy
6504dd74b1 - add check for existence of sockaddr_in.sin_len in configure
- set sockaddr_in.sin_len in gdbstub.cc only if above check is ok
- change direct bx_vga object reference to DEV_vga_ in gdbstub.cc
2002-11-08 21:29:16 +00:00
Bryce Denney
0c734d9a4d - commit patch [ 629157 ] MacOSX Carbon Plugin Cleanup
by Jeremy Parsons <brefin@mac.com>
- modified: configure.in configure Makefile.in main.cc
2002-11-01 17:53:52 +00:00
Bryce Denney
428b686df6 - commit patch [ 630863 ] Fix and integrate MacOSX cdrom
by Jeremy Parsons <brefin@mac.com>
  http://sourceforge.net/tracker/index.php?func=detail&aid=630863&group_id=12580&atid=312580
- modified: iodev/cdrom.cc configure.in configure
- removed: iodev/cdrom_osx.cc
2002-11-01 16:36:27 +00:00
Bryce Denney
883442544c - we've been compiling a few extraneous plugins: wxdialog and wxmain.
These files are part of the wx plugin, and they should not be linked
  into a separate plugin.  I have changed gui/Makefile.in and configure.in
  to correct this.
- This fixes bug [ 628667 ] don't build plugin for wxdialog, wxmain
- modified: gui/Makefile.in configure.in configure
2002-10-28 05:49:42 +00:00
Bryce Denney
1dfbe73deb - let's try "bx_cdrom" instead of "bx_cdom" 2002-10-27 13:28:30 +00:00
Bryce Denney
ddd7d1c173 - there are three different actions related to cdrom. One for --enable-cdrom,
one for --disable-cdrom, and one for the defalt if it's not specified.  The
  enabled action and default are supposed to be the same, but they were
  slightly different, and Bochs on BeOS was able to compile with --enable-cdrom
  but not with the default action.  Solution: now the autoconf actions only
  sets bx_cdrom=0 or bx_cdrom=1.  Then afterward, it tests $bx_cdrom and does
  the enable or disable action.  This will be easier to maintain because there
  is just one copy of each action, instead of two copies that are supposed to
  be kept identical to each other.
2002-10-26 21:51:19 +00:00
Bryce Denney
441eb253f7 - remove references to obsolete hga. Now --enable-vga and --disable-vga
no longer exist.  I think configure will silently ignore them.
- modified:
    iodev/Makefile.in iodev/devices.cc iodev/iodev.h main.cc
    configure.in config.h.in configure build/batch-build.perl
2002-10-26 13:14:11 +00:00
Bryce Denney
5e520261db Add plugin support to Bochs by merging all the changes from the
BRANCH_PLUGINS branch!

Authors:
  Bryce Denney
  Christophe Bothamy
  Kevin Lawton (we grabbed a lot of plugin code from plex86)
Testing help from:
  Volker Ruppert
  Don Becker (Psyon)
  Jeremy Parsons (Br'fin)

The change log is too long to paste in here.  To read the change log, do
  cvs log patches/patch.final-from-BRANCH_PLUGINS.gz

All the changes and a detailed description are contained in a patch
called patch.final-from-BRANCH_PLUGINS.gz.  To look at the complete
patch, do
  cvs upd -r1.1 patches/patch.final-from-BRANCH_PLUGINS.gz

Then you will have a local copy of the patch, which you can gunzip and
play with however you want.

Modified Files:
    .bochsrc Makefile.in aclocal.m4 bochs.h config.h.in configure
    configure.in gdbstub.cc logio.cc main.cc pc_system.cc
    pc_system.h state_file.h bios/Makefile.in bios/rombios.c
    cpu/Makefile.in cpu/access.cc cpu/apic.cc cpu/arith16.cc
    cpu/arith32.cc cpu/arith8.cc cpu/cpu.cc cpu/cpu.h
    cpu/ctrl_xfer32.cc cpu/exception.cc cpu/fetchdecode.cc
    cpu/fetchdecode64.cc cpu/flag_ctrl.cc cpu/flag_ctrl_pro.cc
    cpu/init.cc cpu/io.cc cpu/logical16.cc cpu/logical32.cc
    cpu/logical8.cc cpu/paging.cc cpu/proc_ctrl.cc
    cpu/protect_ctrl.cc cpu/segment_ctrl_pro.cc cpu/shift16.cc
    cpu/shift32.cc cpu/stack64.cc cpu/string.cc cpu/tasking.cc
    debug/Makefile.in debug/dbg_main.cc disasm/Makefile.in
    doc/docbook/user/user.dbk dynamic/Makefile.in fpu/Makefile.in
    gui/Makefile.in gui/amigaos.cc gui/beos.cc gui/carbon.cc
    gui/control.cc gui/control.h gui/gui.cc gui/gui.h
    gui/keymap.cc gui/keymap.h gui/macintosh.cc gui/nogui.cc
    gui/rfb.cc gui/sdl.cc gui/sdlkeys.h gui/siminterface.cc
    gui/siminterface.h gui/term.cc gui/win32.cc gui/wx.cc
    gui/wxdialog.cc gui/wxdialog.h gui/wxmain.cc gui/wxmain.h
    gui/x.cc gui/keymaps/sdl-pc-de.map gui/keymaps/sdl-pc-us.map
    gui/keymaps/x11-pc-de.map instrument/example0/instrument.h
    instrument/example1/instrument.h
    instrument/stubs/instrument.cc instrument/stubs/instrument.h
    iodev/Makefile.in iodev/biosdev.cc iodev/biosdev.h
    iodev/cdrom.cc iodev/cmos.cc iodev/cmos.h iodev/devices.cc
    iodev/dma.cc iodev/dma.h iodev/eth_fbsd.cc iodev/eth_linux.cc
    iodev/eth_null.cc iodev/eth_tap.cc iodev/floppy.cc
    iodev/floppy.h iodev/guest2host.cc iodev/guest2host.h
    iodev/harddrv.cc iodev/harddrv.h iodev/iodebug.cc
    iodev/iodebug.h iodev/iodev.h iodev/keyboard.cc
    iodev/keyboard.h iodev/ne2k.cc iodev/ne2k.h iodev/parallel.cc
    iodev/parallel.h iodev/pci.cc iodev/pci.h iodev/pci2isa.cc
    iodev/pci2isa.h iodev/pic.cc iodev/pic.h iodev/pit.cc
    iodev/pit.h iodev/pit_wrap.cc iodev/pit_wrap.h iodev/sb16.cc
    iodev/sb16.h iodev/scancodes.cc iodev/scancodes.h
    iodev/serial.cc iodev/serial.h iodev/slowdown_timer.cc
    iodev/slowdown_timer.h iodev/unmapped.cc iodev/unmapped.h
    iodev/vga.cc iodev/vga.h memory/Makefile.in memory/memory.cc
    memory/memory.h memory/misc_mem.cc misc/bximage.c
    misc/niclist.c
Added Files:
    README-plugins extplugin.h ltdl.c ltdl.h ltdlconf.h.in
    ltmain.sh plugin.cc plugin.h
2002-10-24 21:07:56 +00:00
Bryce Denney
b33bd11321 - minor cleanup of output messages and help 2002-10-16 20:19:36 +00:00
Bryce Denney
9d44d4e473 - the check for wxWindows/debugger/readline is obsolete, so I removed it 2002-10-16 19:42:24 +00:00
Bryce Denney
909b3104d9 - replace autoconf standard AC_SYS_LARGEFILE with wxWindows's AC_SYS_LARGEFILE
that actually works.
- modified: configure.in configure
- added:: aclocal.m4
2002-10-11 13:21:15 +00:00
Kevin Lawton
3183ab7102 Added some preliminary configure and config.h stuff for
SSE/SSE2 for Stanislav.  Also, some method prototypes and
  skeletal functions in access.cc for read/write double quadword
  features.

Also cleaned up one warning in protect_ctrl.cc for non-64 bit compiles.
  There was an unused variable, only used for 64-bit.
2002-10-11 01:11:11 +00:00
Bryce Denney
4650017086 - remove AC_MSG_NOTICE([using $WX_CONFIG as ...]) because it looked like
an error message even though it was perfectly normal.
2002-10-05 12:07:51 +00:00
Bryce Denney
e44407be1d - give configure error if you try --enable-debugger and --enable-gdb-stub
at the same time.
2002-10-03 21:03:56 +00:00
Bryce Denney
f62c75ff5d - add GDB stub patch by Johan Rydberg 2002-10-03 05:23:20 +00:00
Bryce Denney
add4fbe892 - allow user to specify $WX_CONFIG variable before running configure, to
override default.  This is useful if you have more than one wx installation,
  for example debug and release libraries.
- modified: Makefile.in configure.in configure
2002-10-03 02:26:32 +00:00
Bryce Denney
698da0c303 - compile beos-specific cdrom file if $target says beos, rather than if
they used --with-beos.
2002-10-02 12:11:25 +00:00
Bryce Denney
2f502adc45 - add --subsystem,windows -mwindows to link line for win32 compile with
wxwindows
2002-10-02 00:53:20 +00:00
Bryce Denney
e377b6dd5d - when building on for win32, add a "windres" command to build the
resources into wxbochs_resources.o, and link them in.
- modified: Makefile.in configure.in configure
2002-10-02 00:09:49 +00:00
Bryce Denney
4c9776fb96 - add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
  placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
  etc.
- solve compile problems when building bximage, niclist, and any other
  console based program.  The compile flags returned by wx-config and
  sdl-config did strange things to these console programs, for example
  redefining main to SDL_main.  Because I wanted to use the
  configure-generated CFLAGS to compile the programs, but I wanted to
  avoid including GUI specific compile options, I split up the configure's
  @CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
  @CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@.  All programs in the
  Bochs binary will use both, but the console programs will just use
  @CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
  SDL_CFLAGS and WX_CXXFLAGS.  These values are included in CFLAGS and
  CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-01 23:37:50 +00:00
Bryce Denney
e093bec99c - Stu's test for ADD_FLAGS was not working quite right, because the []'s
were being removed by autoconf.  I changed it to use
     if test CONDITION; then ... fi
  instead of
     if [ CONDITION ]; then ... fi
2002-09-30 20:31:14 +00:00
Bryce Denney
63a7680b4c - add AC_SYS_LARGEFILE test
- also add note about the special largefiles test that wxwindows does
2002-09-30 16:24:25 +00:00
Bryce Denney
e658f463ab - remove pthread check for wxwindows. This used to be needed to add the
"-pthread" flag to the link line, but as of wxWindows 2.3.3 their
  wx-config script adds it for us.  Given the keyboard mapping improvements
  in wx 2.3.3, I don't expect to support any previous version.
2002-09-30 14:35:34 +00:00
Bryce Denney
1387109e7b From: Stu Grossman <grossman@juniper.net>
To: bochs-developers@lists.sourceforge.net
Subject: [Bochs-developers] Fix for configure.in bug

This patches fixes a bug in configure.in which prevents configure from setting
default values for CFLAGS and CXXFLAGS.  Normally, the way autoconf builds
configure, it will set default values for CFLAGS and CXXFLAGS of `-g -O2'.
But, if the user specified them (via the environment), it won't touch them.

The clause in configure.in that tries to set platform-specific flags breaks
this because it always assigns a value (usually blank for most platforms),
which fools the defaulting mechanism later on.
2002-09-30 14:11:21 +00:00
Kevin Lawton
00c14e4efe Added ./configure option --enable-all-optimizations which turns on
all available optimizations in one shot.

Finished one last case of an instruction which could but didn't use
  the Read-Modify-Write variants of access.cc functions.

Started going through the integer instructions, merging obvious cases
  where there are two "if (modrm==11b) {" clauses and very little
  action in between, and cleaning up the aweful indentation leftover
  from many years ago when those instructions were implemented using
  cut-and-paste.  We may get a little extra performance out of these
  mods, but they'll also be easier after I'm finished to enhance
  with asm() statements to knock out the lazy flags processing on x86.
2002-09-30 02:02:06 +00:00
Bryce Denney
2a0f6ccedb - add wxwindows CFLAGS and CXXFLAGS to the flags for all compiles, not
just the wxwindows ones.  This is required on cygwin, for example, because
  the CFLAGS and CXXFLAGS include gcc flags that change code generation:
  -fno-pcc-struct-return and -fvtable-thunks.  It is not safe to mix code
  compiled with these flags with code compiled without.  I learned this the
  hard way when I found that sometimes code that called a virtual member
  function was jumping to the WRONG member function.
2002-09-27 20:06:57 +00:00
Bryce Denney
ce8030585f - if cross configuring, don't insist on finding pthreads for the rfb and
wxWindows guis.
- if cross configuring, don't insist on finding curses library.
- on normal configures, when the target platform is win32 (windows, cygwin,
  mingw), don't insist on finding pthread either.

(I'm starting to wonder if when cross_configure=1 we shouldn't just skip over
ALL of the library and header checks.  When you're going to configure on one
platform and build on another, all that information is useless anyway.)
2002-09-26 18:23:34 +00:00
Bryce Denney
73681b3a53 - for term compile, search for a function called "color_set" and compile it
away if color_set doesn't exist on that platform.  On Solaris this was
  the only thing keeping term from compiling.  See this bug
  [ 613393 ] solaris: term compile missing color_set
  http://sourceforge.net/tracker/index.php?func=detail&aid=613393&group_id=12580&atid=112580
2002-09-26 02:36:04 +00:00
Bryce Denney
4be28bc5ed - RFB_LIBS was getting overwritten by pthread libs. arg! 2002-09-26 02:19:14 +00:00
Bryce Denney
2352bd4992 - oops, the substitution variable is RFB_LIBS 2002-09-26 02:15:20 +00:00
Bryce Denney
085ebec771 - rfb gui needs the socket function. on solaris, you need to link with
-lsocket to get it.
2002-09-26 01:45:10 +00:00
Bryce Denney
b99b6a157e - change the way x86-64 default options work to hopefully make them
smarter.  If you use --enable-x86-64, it has the following side
  effects on other options:
  - cpu level defaults to 6 instead of 5
  - ignore bad msr defaults to on (Peter T. requested this)
- if cpu level is 6 or greater, these options are enabled by default.
  - 4meg pages (PSE)
  - physical address extensions (PAE)
  - global pages (PGE)
  - apic support
2002-09-25 04:24:46 +00:00
Bryce Denney
4588c9b531 - when I added the realtime PIT option, I accidently enabled it by default.
It should be disabled by default.
2002-09-24 21:47:27 +00:00
Bryce Denney
d3802b9013 - add configure variable $cross_configure, which gets set if you are
configuring for a different machine.  This is used to short-circuit
  certain sanity checks, such as existence of certain required libraries.
- in --with-wx configuration, when $cross_configure=1, do not abort
  configure if library is not found.
- if wxWindows version not found, print "not_found" instead of nothing
2002-09-24 21:35:04 +00:00
Kevin Lawton
c3a74d4da0 Integrated patches/patch.promise-dc2300-vlbide from Christophe Bothamy.
From his patch file text:

  > This patch adds Promise DC2300 VLB IDE Support.
  > You may find msdos and win95 drivers on the net. Look for
  > P2300W95.ZIP and DC2300VLBIDEver260b.ZIP.
  >
  > The good news is that now win95 natively sees my cdrom,
  > and that the disks are not in msdos compatibility mode any more.
  >
  > The bad news is that it works only for the first ata interface.
  >
  > I tested that patch on msdos and win95 only.
  >
  > Some info on VLB IDE can be found at http://ryston.cz/petr/vlb/

I got Win95 running with 32-bit paging/filesystem using the
  recommended driver and these patches.  Since the patches did
  such a good job bracketing code modifications with a #define,
  they might as well become part of the current CVS code.
2002-09-24 20:02:00 +00:00
Bryce Denney
472202226d - add configure option for Greg's realtime pit.
- chose a creative name.... how about --enable-realtime-pit
2002-09-24 18:00:23 +00:00
Bryce Denney
3b011766fa - add --enable-ignore-bad-msr, which causes Bochs to NOT do a panic
or gpf when an unrecognized MSR is accessed.
2002-09-24 08:15:27 +00:00
Bryce Denney
6a0e1e94be - add configure test for usable wxWindows version 2002-09-23 21:41:35 +00:00
Kevin Lawton
91fd4b3745 Added new configure option --enable-host-specific-asms, so the
user can turn on/off use of native host specific inline asm
  statements.  By default, this option is enabled, so you only
  need it to disable inline asms in your compile for now.

Currently only on x86+GCC environments, will inline asm()
  statements be used.  Eventually, other platforms could specify
  some asm()s; probably for endian issues such as byte-swapping
  and unaligned memory accesses.  On x86, there are some inline
  asm()s which do the arithmetic EFLAGS processing so that the
  lazy flags handling is somewhat bypassed.  Eventually, I'll
  add more, at least for the more common instructions.  This
  adds a little extra performance.
2002-09-23 17:59:18 +00:00
Bryce Denney
169efc4cc5 - change help msgs to make it clear that we can support 8 processors, not
just 1,2,4.  Thanks to Ph. Marek for pointing this out.
2002-09-23 14:09:55 +00:00
Bryce Denney
08ff8df002 - add special condition for compiling --with-term in cygwin 2002-09-23 05:15:06 +00:00
Bryce Denney
14512ccced - substitute version number in build/macosx/Info.plist 2002-09-23 03:46:47 +00:00
Bryce Denney
e41655a78c - add configure test for BX_HAVE_GETTIMEOFDAY
- hardcode BX_HAVE_GETTIMEOFDAY=0 if cross compiling for VC++
  (this part hasn't been tested)
- modified files: configure configure.in config.h.in iodev/pit_wrap.cc
2002-09-22 01:56:18 +00:00
Bryce Denney
dc18466f15 - fix "fatal error U1083: target macro '' expands to nothing" that
Psyon reported
- clean up remnants of cpu64 merge in configure script, Makefile.in,
  and cpu/Makefile.in
2002-09-20 23:16:23 +00:00
Kevin Lawton
9b02229b84 Removed defunct options from configure.in (for dynamic translation
and old style fetchdecode cache).  Removed generations of
dynamic/Makefile.  Upgraded my autoconf to 2.50 to get rid
of those pesky "EOF" errors.
2002-09-20 15:34:51 +00:00
Bryce Denney
226fd0e2c0 - enable MMX by default 2002-09-20 15:12:25 +00:00
Kevin Lawton
0cd7346b9c - Added an instruction cache. Size is fixed for the moment,
but if you hand edit cpu/cpu.h, and change BxICacheEntries,
  you can try different sizes.  I'll make this more flexible
  with configure.  For now, use "--enable-icache" with no parameters.

- Modified fetchdecode.cc/fetchdecode64.cc just enough so that
  instructions which encode a direct address now use a memory
  resolution function which just sticks the immediate address
  into rm_addr.  With cached instructions we need this.
2002-09-19 19:17:20 +00:00
Bryce Denney
620b264889 - remove obsolete loader option 2002-09-17 21:45:51 +00:00
Kevin Lawton
2eb34d13a6 Added a configure option, "--enable-pae". The x86-64 enhancements
already had Physical Address Extensions support - we can now
compile for PAE support for x86-32 mode as well.
2002-09-16 21:55:57 +00:00