Commit Graph

285 Commits

Author SHA1 Message Date
Volker Ruppert
52b0000db7 Applied two patches from Debian.
- Apply standard flags from environment everywhere (SF patch #546).
- Allow overriding ld and objcopy for building bios on non-x86 platforms.
2021-09-10 15:33:22 +00:00
Stanislav Shwartsman
214220763f remove cpudb.h from some Makefile dependencies. it should be only in cpu/init.cc and config.cc 2021-07-25 18:10:39 +00:00
Volker Ruppert
06894e5b5e Updates after pre-release, partly updated Bochs URL usage. 2021-06-13 08:02:33 +00:00
Volker Ruppert
df3b45edea Resource fixes for Windows ports.
- Bochs for wxMSW: fixed duplicate value caused by manifest.
- Bochs for wxMSW: fixed resource file dependencies.
- Include gui debugger resources only when enabled.
2021-03-22 08:50:55 +00:00
Volker Ruppert
4966843c90 Converted the textconfig module into a plugin, using PLUGTYPE_CORE for now.
It has been compiled and tested on Linux, with MinGW/MSYS and MSVC nmake.
TODO: Check whether or not the config interface choice "win32config" can be
a plugin, too. Possibly add a new plugin type for config interfaces.
2021-03-18 19:50:12 +00:00
Volker Ruppert
7a479ff4c9 Upgraded MSVC workspace files for VS2019 and fixed some MSVC warnings. 2021-02-21 08:08:06 +00:00
Volker Ruppert
ceb8462cc7 Updated main and usb Makefile dependencies. 2021-02-17 16:53:40 +00:00
Stanislav Shwartsman
41ea50ba22 complete transition to new disasm, remove old disasm from source code 2021-01-02 13:43:10 +00:00
Volker Ruppert
c99bd49f34 Some work on the hdimage plugin support.
- Renamed vpc-img.* files to vpc.* and removed hack for image mode name conversion.
- Added suffix "_img" to all disk image mode plugin base names. This is important
  for the future implementation of a plugin enumeration at Bochs startup.
2020-12-30 17:56:27 +00:00
Volker Ruppert
b0cee9a038 Added the sample config file for the 'vnet' networking module to install list. 2020-12-26 08:31:16 +00:00
Volker Ruppert
c05cb5e1d7 Removed legacy "load32bitOShack" feature. In the early days of Bochs some hacks
were required to load a 32 bit OS. In the meantime Bochs has been made capable
of loading 32 and 64 bit OS's without hacking.
2020-06-07 17:28:54 +00:00
Volker Ruppert
d69c7d14dc Two fixes for the bxhub utility.
- Makefile: added missing dependency.
- netutil.cc: removed duplicate include.
2020-05-23 09:04:35 +00:00
Volker Ruppert
fa0c6f4be8 Updates after release, added release tag to user doc, fixed BIOS install list 2020-01-05 12:58:25 +00:00
Volker Ruppert
34e475ec0a Updated SeaBIOS ROM image to current version and added SeaVGABIOS for Cirrus. 2019-12-29 07:20:50 +00:00
Volker Ruppert
f206839636 Some work on the Bochs version number strings.
- Get rid of VER_STRING since it's the same as VERSION
- Add new defines VER_MAJOR, VER_MINOR, VER_PATCH and VER_SVN and use them for
  the version number on Windows.
- TODO: Add the capability to detect installed version to the Windows installer.
2019-11-14 10:34:39 +00:00
Stanislav Shwartsman
5439647254 small change to extract ia_opcodes.h from instr.h to dedicated file. this would remove compilation dep of all files on ia_opcodes.h (now called ia_opcdes.def). regenerating dep ober all files in Makefiles.in 2017-10-19 21:27:25 +00:00
Volker Ruppert
0311f47bc3 Moved all Bochs event / wait functions required for multi-threading to a new
file called "bxthread.cc".
2017-09-14 16:18:12 +00:00
Volker Ruppert
8e0ea486c9 Reverted 'clean' target optimization. MinGW/MSYS uses targets without ".exe",
but for removing files the extension is required.
2017-03-18 09:27:48 +00:00
Volker Ruppert
8796abeea6 Some fixes in the build system.
- Makefile: cleanup of the 'clean' target (adds missing 'bxhub').
- configure script: create cpudb subdirectories if necessary for building
  outside of the source tree.
- cpudb Makefile: clean object files from new location.
2017-03-15 16:51:32 +00:00
Volker Ruppert
18e138b0b4 Fixes and improvements for the network plugins changes in previous commit.
- In "non-plugin" mode loading and unloading network module is not necessary.
  Now enabled loading for the plugin mode only and removed unloading function
  for that case. The "pseudo plugin" entries of the dummy entry points are
  necessary to make sure the self-registering network driver objects are not
  optimized out.
- slirp / vnet: Since the plugin init function is not called in non-plugin
  mode, revert the instance count init change.
- Fixed a makefile dependecy.
- TODO: Implement self-registering objects in the sound driver code.
2017-03-12 20:26:42 +00:00
Volker Ruppert
758f4de4d4 Rewrite of the network driver plugin code.
- Removed "pseudo device plugin" containing common code and specific drivers.
- Moved network module base classes and module handling to the Bochs core.
  Now loading network driver plugins in netmod.cc.
- Moved shared networking code used by the 'vnet' driver and 'bxhub' from
  netmod.cc/.h to new files netutil.cc/.h.
- Created separate plugins for each network driver implementation.
- Modified Bochs plugin system to support new plugin type PLUGTYPE_NETWORK.
2017-03-12 07:48:08 +00:00
Volker Ruppert
d6166344eb Added ethernet module 'socket'. designed to connect two Bochs instances with
external program 'bxhub' (simulating a two port ethernet hub). It is based on
an old SF patch and it has been updated and extended:
- Windows support (tested with MinGW/MSYS and MSVC nmake).
- Command line arguments for 'bxhub' (base port number, MAC address, TFTP).
- Added support for DHCP, TFTP, ARP and ICMP echo (ping). It uses parts of the
  code for the 'vnet' module with some additions from the former "slirp backend".
- TODO: code cleanup to reduce duplication, rewrite of the networking plugins
  stuff similar to the work done with the sound drivers.
2017-02-27 22:26:43 +00:00
Volker Ruppert
cd68194269 Added Android host platform support to Bochs based on SF patch #534.
- added Android case to the configure script.
- renamed file memory.h to memory-bochs.h to fix conflict with NDK.
- fixed Android issues in some files.
2016-08-12 17:06:14 +00:00
Stanislav Shwartsman
7a34f00f99 extracted fetchdecode into separated folder under cpu and also out of BX_CPU_C class into stand-alone module. Next step: wrap it up nicely and define clear interace to CPU model to minimize dependencies. Ideally I need fetchdecode to not include CPU at all 2016-06-12 21:23:48 +00:00
Volker Ruppert
3e54ff2e36 Added Oracle(tm) VM VirtualBox image support (VDI version 1.1). Patch written
by Ben Lunt plus some additions (bximage fixes, big endian support).
TODO: update MSVC workspace files.
2015-03-29 14:27:32 +00:00
Volker Ruppert
9e9bdeda48 Fixed possible failure when installing plugin libraries (patch by Dawn Teschendorf). 2014-11-13 18:18:38 +00:00
Volker Ruppert
494ed30e95 Some fixes for plugin support with VS2013Ex
- creating extra manifest for bochs.exe no longer needed
- cleaning up temporary manifest files no longer necessary
2014-07-26 06:54:34 +00:00
Volker Ruppert
59eac1f196 Moved AVX/EVEX stuff to a new cpu subfolder and updated build system
TODO: update MVSC workspace files
2014-07-25 08:35:06 +00:00
Volker Ruppert
4e0bde2c36 Added new standard workspace created with VS2013Ex
TODO: added plugins workspace, remove legacy VS2008Ex workspaces
2014-07-12 11:06:52 +00:00
Volker Ruppert
3c0ad43092 Continued preparing Bochs for SDL2 support
- added new symbol BX_WITH_SDL2 and prepared build system
- TODO #1: add new option --with-sdl2 to configure script
- TODO #2: add new file sdl2.cc (porting seems hard to do - writing from scratch
  might be better)
2014-06-23 19:37:58 +00:00
Volker Ruppert
c188a6ba5d Started preparing Bochs for SDL2 support. Set up GUI_LINK_OPTS_SDL in the
configure script (SDL2 uses 'sdl2-config' instead of 'sdl-config').
2014-06-21 08:22:22 +00:00
Volker Ruppert
318c0b45db Started removing legacy tools bxcommit and bximage_old
- removed from build and install system, docs and manual pages
- TODO: update MSVC workspaces and remove sources
2014-06-19 07:54:56 +00:00
Stanislav Shwartsman
b44b42c5aa add seabios readme file with credits, links and licence 2014-06-06 18:45:31 +00:00
Stanislav Shwartsman
9f2e88f1f7 include seabios in the install list 2014-06-05 10:41:33 +00:00
Volker Ruppert
b5c3869e41 Some fixes and updates after release
- TESTFORM.txt missing in target 'install_win32'
- developer doc: updated SVN release instructions
- user doc: added new release tag
- TODO: updated status
2014-06-03 17:24:00 +00:00
Volker Ruppert
7615e4e9c3 Final fixes before starting release process
- added slirp.conf to NSIS script
- NSIS script now using HTML documentation path from 'install_win32' target
- Makefile: DLX Linux config file renamed to 'bochsrc.bxrc' for win32
- config.cc: bochsrc option removed with coming version
2014-05-31 17:24:20 +00:00
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
1d41c1d970 Added slirp.conf sample to installable files list
Fixed uninstall target for the Cygwin case
2014-04-14 16:56:21 +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
Volker Ruppert
ed163dd846 The option -export-dynamic is not supported for PE targets 2014-01-07 16:52:03 +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
58019a1649 Renamed "ltdl.h" to "ltdl-bochs.h" to avoid conflicts with the include file
that is a part of the libtool package. Updated Makefile dependencies.
TODO: check if we can get rid of the ltdl*.* files (this would be possible if
the ltdl library is always available if libtool is present).
2013-12-17 19:57:40 +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
08b66534aa bximage fixes for compiling with VS2008Ex DLL plugins 2013-10-28 20:31:34 +00:00
Volker Ruppert
1fb469e77f Started user doc update for bximage
Added legacy bximage and manual page to installation
Fixed some warnings
2013-10-23 15:22:09 +00:00
Volker Ruppert
a70d507bd2 Rename legacy bximage utility to 'bximage_old' and the new one to 'bximage'
TODO #1: update MSVC workspaces and documentation
TODO #2: remove legacy utilities bximage_old and bxcommit after next release
2013-10-20 10:43:01 +00:00
Volker Ruppert
f923e5e4cf bximage_new on win32
- fixed link failure on MSVC
- added win32 specific code for flat image creation
2013-10-16 18:55:43 +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
Volker Ruppert
f622a042c4 Added initial version of a new bximage utility written in C++ for image
creation, conversion and rodolog commit. Image creation support is not
present yet and the executable has not been added to standard compile yet.
TODO #1: add floppy and hard disk image creation support (from bximage.c)
TODO #2: implement support for conversion to vmware and vpc formats
TODO #3: add MSVC (nmake and workspace) support
2013-10-13 20:30:51 +00:00