Commit Graph

12661 Commits

Author SHA1 Message Date
Volker Ruppert 83ab74a0c4 Set executable flag for shortcut scripts. 2021-02-06 09:38:02 +00:00
Volker Ruppert 7ae0a21158 Some small changes after networking module handling rewrite.
- Make sure the 'null' module is on top of the list.
- Removed no longer required method.
2021-02-06 09:27:08 +00:00
Volker Ruppert 1fe24e32b0 Rewrite of the networking module handling similar to the hdimage module
handling. Networking module names are now stored as string constants instead of
hardcoded values. Available modules are detected at Bochs startup and stored in
a string array before initializing options. In the plugins case available
modules are read from the plugins list. If plugins are off, the eth_locator_c
registry is used. Related changes in all parts of Bochs that need the
networking stuff.
TODO #1: Sound drivers could be handled in a similar way.
2021-02-05 20:40:43 +00:00
Volker Ruppert 96193ed79c Finished bx_bool to bool type changes.
- Changes in the USB host controller code.
- Finally removed bx_bool type definition.
- NOTE: The Bochs BIOS still has it's own bx_bool definition.
2021-02-04 20:15:13 +00:00
Stanislav Shwartsman 908b798015 update bx_bool->bool in documentation 2021-02-04 19:21:47 +00:00
Stanislav Shwartsman f77303043f regenerate parser.cc after code changes 2021-02-04 18:29:59 +00:00
Stanislav Shwartsman 44d7906420 convert debugger command line parser YACC to generate C++ source instead of pure C
use bool instead of bx_bool in all bx_debug stuff (now possible when YACC script have generated C++ source)
2021-02-04 18:25:27 +00:00
Volker Ruppert 3cf2807dce Continued bx_bool to bool type changes.
- Changes in the VGA core and Voodoo code.
- Removed unnecessary typecasts in some devices.
- TODO: USB host controller code.
2021-02-03 18:08:04 +00:00
Volker Ruppert dce82d74e1 Changed bx_bool to bool type in some more devices.
TODO: parts of the display adapter and USB host controller code.
2021-02-01 20:39:33 +00:00
Volker Ruppert b2f0f74c6a Fixed USB floppy model selection. 2021-02-01 13:41:04 +00:00
Volker Ruppert 093b274b53 Changed bx_bool to bool type in some more device and the developer doc. 2021-02-01 12:42:12 +00:00
Volker Ruppert 45e03f9572 Changed bx_bool to bool type in the harddrv, cdrom, hdimage and sound code. 2021-01-31 15:44:39 +00:00
Stanislav Shwartsman 1765a06d01 move debug.h from bochs.h and include it only where required 2021-01-31 15:22:58 +00:00
Stanislav Shwartsman d103603452 some bx_bool -> bool in debugger code 2021-01-31 14:58:28 +00:00
Stanislav Shwartsman 5874c8e29f fix compilation with SMP enabled 2021-01-31 14:03:28 +00:00
Volker Ruppert e0142872e9 Changed bx_bool to bool type in a bunch of devices. 2021-01-31 10:50:53 +00:00
Volker Ruppert f9dfaf1cca Changed bx_bool to bool type in iodev.h and affected code. 2021-01-31 08:22:55 +00:00
Stanislav Shwartsman b4a031a70e convert bx_bool to bool in instrumentation stubs 2021-01-31 05:41:43 +00:00
Volker Ruppert 89522c30d8 Some more bx_bool to bool type changes.
- bx_shadow_bool_c: removed unused bitnum feature and changed data type.
- Changed return type of memory handlers to bool.
- Modified virtual timer, PIC and PIT code.
2021-01-30 23:55:24 +00:00
Volker Ruppert c8f4a6f260 Save/restore: now using the macro BXRS_PARAM_BOOL in all devices. 2021-01-30 21:59:15 +00:00
Volker Ruppert fcd7f3e6f8 Changed bx_bool to bool type in the paramtree code (except bx_shadow_bool_c).
TODO: Check whether or not the bx_shadow_bool_c bitnum handling is really used.
2021-01-30 20:44:53 +00:00
Stanislav Shwartsman fcb85bebe3 remove code duplication and extract all bswap functions from bochs.h to misc/bswap.h 2021-01-30 20:33:22 +00:00
Stanislav Shwartsman 7153228d48 fixed compilation without bochs debugger 2021-01-30 20:31:03 +00:00
Volker Ruppert 6cca254c9d Fixed compilation of wxdialog.cc. 2021-01-30 20:24:27 +00:00
Stanislav Shwartsman 8285b6b51b regen Makefile include dependencies for CPU and internal debugger 2021-01-30 20:17:15 +00:00
Stanislav Shwartsman 1089e470e9 remove bochs-memory.h from bochs.h and include it only where required 2021-01-30 20:13:34 +00:00
Stanislav Shwartsman 6d6ff0e06b regen Makefile include dependencies for CPU, MEMORY and internal debugger 2021-01-30 19:44:41 +00:00
Stanislav Shwartsman 7cc9cffeed remove siminterface.h from bochs.h and include it only where required 2021-01-30 19:40:18 +00:00
Volker Ruppert 3bc8cdc91a Fixed nogui compilation. 2021-01-30 19:20:45 +00:00
Stanislav Shwartsman 2999eab48c remove defines which belong to already removed feature. fix compilation with GUI debugger enabled 2021-01-30 19:07:56 +00:00
Stanislav Shwartsman 0b83259417 regen include dep lists for cpu and memory - need to regen for all others 2021-01-30 18:57:45 +00:00
Stanislav Shwartsman 7ad435831c move stuff from bochs.h to more appropriate include 2021-01-30 18:50:09 +00:00
Stanislav Shwartsman 99e7b71540 remove gui.h from bochs.h and include it only where required 2021-01-30 18:47:25 +00:00
Volker Ruppert a248bd375a Changed bx_bool to bool type in the gui component of Bochs. 2021-01-30 18:32:52 +00:00
Stanislav Shwartsman c878933057 remove pc_system.h from bochs.h and include it only where required
next step: same for gui.h
2021-01-30 18:29:28 +00:00
Stanislav Shwartsman a8013fdeba * convert bx_bool -> bool in pc_system.cc/pc_system.h
* extract logfunctions class definition to separate include logio.h to simplify the bochs.h reading

next step: try to minimize amount of includes in bochs.h as everyone in Bochs includes it
for example it includes pc_system.h which is not necessary required to be included in all CPU source files
2021-01-30 18:05:55 +00:00
Stanislav Shwartsman abac80801f more bx_bool -> bool also fixing bxhub.cc case where bx_bool were assigned integer -1 value 2021-01-30 17:37:42 +00:00
Stanislav Shwartsman 9314902a85 convert some defines to typed consts 2021-01-30 17:06:34 +00:00
Volker Ruppert 22fabb599a Started bx_bool to bool type changes in the Bochs core. 2021-01-30 15:16:00 +00:00
Stanislav Shwartsman bc680908ba fix compilation with debugger enabled 2021-01-30 08:58:42 +00:00
Stanislav Shwartsman f79d6df458 strip redundant info from tigerlake cpuid text file 2021-01-30 08:45:34 +00:00
Stanislav Shwartsman 1bf18b8aae ! CPUID: Added TigerLake CPU definition (features CET and CLWB support)
- CPU code refactor, remove uses of bx_bool datatype and use C++ classic bool instead.
  This enable better compiler optimizations and reduce binary size
2021-01-30 08:35:35 +00:00
Volker Ruppert 880ee1832a Some Bochs plugins support and VGA extension option changes.
- Changing VGA extension to "voodoo" did not work in the config interface.
  Moved plugin loading to the string parameter handler and added plugin
  unloading case.
- Unloading "voodoo" VGA plugin resets pluginVgaDevice to stubVga.
- pluginUnregisterDeviceDevmodel() now supports core plugins.
- Some other small plugin related changes.
2021-01-27 20:06:02 +00:00
Volker Ruppert d46c80562e Some wx gui related changes.
- Moved wx gui plugin entry point to wx.cc, so we can use the macro
  PLUGIN_ENTRY_FOR_GUI_MODULE to be compatible with the other guis.
- Updated gui Makefile dependencies.
2021-01-26 07:22:58 +00:00
Volker Ruppert 3f760e2900 Some work on the Bochs plugins support.
- Improved macro definitions for plugin entry points.
- Forward declarations of plugin entry points are only required when plugin
  support is off.
- Improved panic message for the case when plugin entry point is not found.
2021-01-24 19:47:04 +00:00
Volker Ruppert 74deb16b44 Since externally developed optional device plugins (AKA "user plugins") can be
loaded in bochsrc with "plugin_ctrl" or with their own name, the user plugin
option and the special cases for PLUGTYPE_USER are no longer needed. Updated
example patch to make it work with the latest SVN code.
2021-01-24 10:16:22 +00:00
Volker Ruppert 8db0a2b001 Replaced the plugin init / fini functions with one single function called
plugin_entry(). The additional boolean argument "init" is used to select the
requested action. The entry points still have unique names for compatibility
with the "non-plugin" compilation. Added macros for setting up these names
(e.g. PLUGIN_ENTRY_FOR_MODULE for device plugins).
2021-01-23 12:06:11 +00:00
Volker Ruppert e5c68dd4ac Rewrite of the optional plugin control feature.
- Now that we know about all available plugins at startup, the bx_list_c object
  "plugin_ctrl" contains a fixed number of bx_param_bool_c objects representing
  the requested status (1 = load). It is verified at simulation startup.
- The config interface creates two text lists (textconfig) or list boxes (win32,
  wx) from it to show the remaining available and the loaded plugins. Loading
  and unloading is performed immediately and plugins may install / uninstall
  options in other menus / dialogs.
- Modified the "non-plugin" code to make the optional plugin control work very
  similar in this mode.
2021-01-21 18:10:40 +00:00
Volker Ruppert 9e95491fb5 Some work on the Bochs plugin API.
- bx_load_plugin() now returns the status of the operation.
- Plugin load failures are now correctly handled by the plugin code (unloading
  if necessary, then panic).
2021-01-18 19:57:11 +00:00
Volker Ruppert 1733076e4f Fixed segfault in case Bochs app is terminated before starting simulation. 2021-01-17 17:33:49 +00:00