- 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.
* 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
- CPU code refactor, remove uses of bx_bool datatype and use C++ classic bool instead.
This enable better compiler optimizations and reduce binary size
- 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.
- 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.
- 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.
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.
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).
- 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.
- 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).
- In case of cross compiling of the win32 gui, use the environment variable
WINDRES for the name of the resource compiler.
- Added example shortcut script for cross compiling on Linux for Windows.
- The selected / detected disk image mode is now stored as a string constant to
simplify code (same as Bochs core).
- Changed command line option to select operation mode to "-func=X" to avoid
confusion with disk image mode.
- Documentation updates.
- In plugin mode make sure all hdimage plugins are loaded for mode detection.
- Implemented image mode detection via hdimage_locator_c.
- TODO: use the new code for bximage, too.