Commit Graph

1499 Commits

Author SHA1 Message Date
Volker Ruppert
4538078abb - several fixes for "2nd run" support in wx (still incomplete)
- uninstall parameter handlers (floppy, keyboard)
  - unload plugin that cannot be removed automatically
- wx: removed "show keyboard" demo and some other cleanups
- TODO: remove wx debugger and make wx work with the enhanced gui debugger
2012-08-14 19:33:24 +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
3e34c136de - second try to fix duplicate resource id 2012-08-06 21:00:42 +00:00
Volker Ruppert
7c6f287fc7 - added VirtualPC image support, new disk image mode is called 'vpc'
- ported Qemu block driver (written by Alex Beregszaszi and Kevin Wolf)
  - added helper functions bx_read_image() and bx_write_image()
- TODO: use helper function for the other disk image modes
2012-08-05 09:33:33 +00:00
Stanislav Shwartsman
553d1bfb37 fixed SIGSEGV when cannot open file for text snapshot 2012-07-28 08:17:08 +00:00
Volker Ruppert
65b3567240 - enable mouse cursor on exit (fixes possible hang if captured) 2012-07-15 15:17:10 +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
db633275b0 - several improvements to the optional plugin control
- SIM->opt_plugin_ctrl() now can be used to verify the optional plugin
    configuration when using the plugin name "*". The 'load' value 1 makes
    sure that all plugins with the value 1 are loaded. The 'load' value 0
    unloads all plugin with the value 0 (marked for removal).
  - add the default set of plugins to the 'plugin_ctrl' list and load all these
    pre-defined optional plugins before parsing the configuration.
  - special wx case: verify plugin configuration before showing the plugin
    control dialog and before initialising hardware.
  - device plugins that have been loaded, but not configured now set their
    plugin control value to 0. Added the plugin unload check before signalling reset.
2012-07-06 17:19:32 +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
523ea27b4f - make 'enter' and 'tab' keys work again in wxMSW (wxPanel's default window
style wxTAB_TRAVERSAL is only okay if it is a member of a dialog box)
2012-06-29 16:30:18 +00:00
Volker Ruppert
1cd90a06c6 - implemented absolute x/y mouse position mode in the wx gui
- fixed cursor show / hide functions in wxMSW
2012-06-26 19:48:28 +00:00
Volker Ruppert
216ee2aa09 - implemented absolute x/y mouse position mode in the win32 gui 2012-06-25 20:08:52 +00:00
Volker Ruppert
b0ece1d1ea - implemented absolute x/y mouse position mode in the rfb gui
- sdl / x11: fixed calculation of absolute x/y values
- x11: update "warp home" position after resize
2012-06-25 17:26:36 +00:00
Stanislav Shwartsman
4c38969ef0 fixed uninitialized variables 2012-06-24 17:52:45 +00:00
Volker Ruppert
1de1f06952 - implemented absolute x/y mouse position mode in the SDL gui
- converted tabs to spaces and small cleanup
2012-06-24 10:38:46 +00:00
Volker Ruppert
aba8372a78 - function InitDebugDialog() is optimized out by GCC when compiling with plugins
enabled (not called internally). Added new gui method init_debug_dialog() and
  call it from there.
- fixed typo in enh_dbg.cc
2012-06-24 09:14:43 +00:00
Volker Ruppert
a9f27d029c - implemented absolute x/y mouse position mode in the X11 gui
- minor fixes in the USB tablet HID report descriptor
2012-06-24 07:43:36 +00:00
Stanislav Shwartsman
c6ea1482b0 added ifdef 2012-06-24 07:16:14 +00:00
Stanislav Shwartsman
60ceffc5d1 fixed SF bug [3537473] GUI debugger only shows 32-bit CRx registers in x86-64 mode 2012-06-24 07:06:31 +00:00
Volker Ruppert
9189105a0b - prepared support for sending absolute x/y values from the gui to the mouse emulation
- new gui method set_mouse_mode_absxy() should switch the gui to absolute
    x/y mode
  - new DEV_mouse_motion() argument 'absxy' indicates whether or not the gui
    sends absolute x/y values
  - USB tablet code prepared to use the new feature
  - TODO: implement this feature for each gui (sdl, win32, wx, x, ...)
2012-06-21 17:33:37 +00:00
Stanislav Shwartsman
7a02dd759d added PANIC in x.cc in case it can't open display 2012-06-04 19:03:05 +00:00
Stanislav Shwartsman
03162d86f5 LAPIC: fixed timer interrupts after reloading of LAPIC Timer Divide Configuration register 2012-05-12 11:52:29 +00:00
Volker Ruppert
a8f899b0a9 - attempt to fix unsafe sprintf() calls in the show_ips code (sdl, wx, x)
- implemented "hideIPS" option in sdl and wx
2012-05-11 16:17:59 +00:00
Stanislav Shwartsman
07a50eac31 closing SF bug #3518753: update dump after manual chages to memory contents 2012-04-17 14:32:57 +00:00
Stanislav Shwartsman
e12494bf7b fixed segfault when setting ESP/EIP in GUI debugger 2012-04-16 19:18:23 +00:00
Stanislav Shwartsman
077b691296 correctly fix SF #3516029 : bug stepping not working in debugger GUI in case of smp vm
reverted buggy SF patch #3502052: Added refresh of debugger gui when stepping

re-generated bx_debugger lex/yacc files
2012-04-10 12:44:06 +00:00
Volker Ruppert
70a38a8a3d - apply 'log actions by device' to the existing modules before editing them
in the config interface. Applied settings are marked as 'done' with the value
  -1 to avoid unwanted modification. NOTE: Not all Bochs modules exist when
  running the start menu / dialog.
2012-04-06 13:15:27 +00:00
Volker Ruppert
e82fa719fb - at runtime the log options dialog starts up with "log options per device"
enabled
2012-04-02 21:30:37 +00:00
Volker Ruppert
5a983a3ea0 - disable the "close" button for the Bochs main window - only the "power" button
should be used to terminate Bochs
2012-04-01 16:50:42 +00:00
Volker Ruppert
601bb7e084 - only quit Bochs simulation after pressing the "Quit" button in the runtime
config dialog. Now the close button and the ESC key let the simulation
  continue in the runtime case (fixes SF bug #3510403).
2012-03-29 17:05:44 +00:00
Stanislav Shwartsman
1dd0500259 Merge SF patch 3505209 and update CHANGES 2012-03-15 19:34:13 +00:00
Stanislav Shwartsman
33fe397d22 Merge SF patch [3502052] Added refresh of debugger gui when stepping 2012-03-11 20:17:12 +00:00
Volker Ruppert
f6c2f45299 - fixed compilation with MSVC
- TODO #1: add instructions how to compile Bochs with SDL support on VS2008Ex to
           the user doc
- TODO #2: add MSVC nmake support
2012-03-04 21:37:49 +00:00
Volker Ruppert
9d42a3eca4 - removed x/y tile size parameters from specific_init() since the tile dimensions
are now members of the bx_gui_c class
2012-03-03 12:41:24 +00:00
Stanislav Shwartsman
572bd793fc fixed compilation warning 2012-03-03 08:24:30 +00:00
Volker Ruppert
796754e942 - wait until UI init is ready before starting simulation (fixes tool bar and
status bar if running multiple instances of Bochs)
2012-03-03 07:44:53 +00:00
Volker Ruppert
b45dbc15fc - fixed SDL fullscreen mode on Windows (part of SF bug report #2988910)
- fixed a warning on non-WIN32 platforms
2012-02-28 18:38:32 +00:00
Volker Ruppert
1425e2370c - fixes related to the wx 2nd run support (not yet complete)
- siminterface: don't create plugin parameter if it already exists
  - wx: make sure all plugins are loaded when creating plugin control dialog
  - USB HC's: fixed removal of parameters when unloading plugin
2012-02-23 21:26:13 +00:00
Volker Ruppert
d74762b984 - wx: use new log function name for the table of log modules
- added some more log function names
2012-02-23 17:16:35 +00:00
Volker Ruppert
9e084b8898 - use new log function name for the listbox contents and adjust listbox size 2012-02-21 19:50:56 +00:00
Volker Ruppert
b45077ac82 - moved optional plugin control item to the top of the list, since it's now
important for using network, sound and usb devices.
2012-02-21 16:15:39 +00:00
Volker Ruppert
e29c25d389 - implemented optional plugin control dialog 2012-02-21 12:00:54 +00:00
Volker Ruppert
d3a9768f14 - missing config dialog for CPUID options added
- prepared wx plugin control dialog
2012-02-18 16:25:10 +00:00
Volker Ruppert
6079d4b2c0 - implemented optional plugin control dialog (TODO: do the same for wx) 2012-02-17 17:23:57 +00:00
Volker Ruppert
e30e6a9808 - moved optional plugin load / unload code to the siminterface
- implemented optional plugin control in textconfig
- TODO: implement this feature in the win32 and wx gui configuration
2012-02-16 18:06:03 +00:00
Volker Ruppert
2f5be164d2 - reverted part of rev. 11031: for dependent lists the check 'param->get_parent() == this'
also works and no deplist trick is required
- bx_param_c destructor now deletes the dependent list if it exists (memory leak)
- bx_list_c::clear() only deletes the parameter if the list is it's parent
- added new method cleanup_save_restore() to free memory on simulator shutdown
2012-02-14 18:13:54 +00:00
Volker Ruppert
8bb206ccdf - added special flag for dependent lists
- bx_list_c: don't accept duplicate param names in list (except dependent lists
  and special menus)
- added BX_PANIC for malloc() failure
- harddrv: fixed wrong variable found with bx_list_c changes
2012-02-13 20:58:26 +00:00
Volker Ruppert
de94b08a1a - class bx_list_c now contains a chained list of parameters. Removed the now
obsolete maxsize parameter from all lists.
2012-02-12 18:43:20 +00:00
Stanislav Shwartsman
421170b2b9 applied SF patch 2012-02-10 15:15:31 +00:00
Volker Ruppert
a34cf1bcd5 - changes in the text update interface code
- changed argument for the text mode info structure to a pointer
  - added attribute controller palette to bx_vga_tminfo_t and removed the
    previous implementation
  - carbon.cc: attempt to fix the text mode colors (untested)
- x.cc: fixed warnings
2012-01-22 12:22:03 +00:00
Volker Ruppert
63ab13fe09 - store max. x / y resolution in the gui object and use it in win32.cc. Now it
no longer needs to incluse vga.h
2012-01-22 09:08:59 +00:00
Stanislav Shwartsman
795a21ec6d change type of the bx_list_c::choice var to Bit32u to make in compatible with ask_uint function 2012-01-21 20:54:55 +00:00
Stanislav Shwartsman
2e32bf2d84 for bx_list param - convert 'choise' variable to regular integer
also for textconfig - fix operation under cygwin
under cygwin it is not guaranteed that any printf is printed on the screen under you flush the FILE stream.
2012-01-21 20:36:32 +00:00
Volker Ruppert
500ad37191 - added arguments for x/y resolution to the gui init() and store x/y tilesize
in the gui object. Now the gui doesn't need to include vga.h.
- TODO #1: win32.cc also shouldn't include vga.h
- TODO #2: replace BX_MAX_XRES / BX_MAX_YRES by variables that can be set
  depending on the configuration
2012-01-21 12:15:10 +00:00
Volker Ruppert
3ec77e9372 - store config parameter values in local variables to avoid searching for
parameters at simulation time
2012-01-20 15:56:17 +00:00
Volker Ruppert
a700d33e9f - call functions for config and bochsrc parameter handling used by plugins
from the siminterface (required by MSVC and maybe others)
2012-01-16 17:11:16 +00:00
Alexander Krisak
4a146456c6 fixed compilation in cygwin
fixed rfb under windows
2012-01-16 15:39:43 +00:00
Stanislav Shwartsman
039326d0c9 always return const pointer from functions - these strings are not planned to be modified 2012-01-11 19:57:38 +00:00
Volker Ruppert
c98decb552 - fixed copy-and-paste bug in the status bar LED init code 2012-01-05 22:31:19 +00:00
Stanislav Shwartsman
0e17f8f195 implemented AMD APIC extensions for SVM support 2012-01-04 16:06:37 +00:00
Volker Ruppert
538ca63af4 - moved common status LED handling code to gui.cc and implemented new
gui-specific method statusbar_setitem_specific()
2012-01-03 20:11:12 +00:00
Volker Ruppert
223fe998b3 - code for setting up log actions by device rewritten
- unknown module names now cause a panic
- added log function names to some more devices
- TODO: find a way to configure log actions by device in the config interface
  start menu (most of the devices do not exist at this point)
2011-12-30 11:13:37 +00:00
Volker Ruppert
b130bf671b - initial "log action by device" implementation added (TODO: check for
invalid module names, save log actions to bochsrc)
- added new member 'name' to the logfunctions class for the case the prefix
  is too short. Added to some devices with longer names.
2011-12-29 19:51:54 +00:00
Volker Ruppert
32f53b5151 - performance fix for the new status LED code: only call the gui specific code
to update the status text if there is really a change
- changed the counter resolution to 5 (auto-off still happens after 0.5 seconds)
- the element value -1 is only used to reset the LEDs, so we have to ignore the
  status flags
2011-12-29 16:28:58 +00:00
Volker Ruppert
0b2bec6752 - implemented "auto-off" timer for the status bar LEDs that replaces the
existing "iolight timer" code in the hard drive code. If an LED is registered
  with the "auto-off" flag, the device only needs to turn on the LED to indicate
  data transfer. The LED timer in the gui code turns it off after 0.5 seconds if
  it is not actived by another transfer. Added this feature to all network
  devices.
- TODO #1: implement this feature in the USB host controllers
- TODO #2: the unused timer in the hard drive code could be used for the
  emulation of seek functions
2011-12-28 11:51:42 +00:00
Volker Ruppert
6df6f4ff76 - renamed 'user options' to 'addon options'. When a load option for optional
plugins is implemented in bochsrc, these functions can be used to install
  additional options from the devices code. Then the whole init / parse / save
  code for this device can be moved from config.cc to the device plugin.
2011-12-23 10:03:10 +00:00
Stanislav Shwartsman
117333ca8f fixed SF bug: Crash on WIN2K - ID: 3454214 2011-12-08 06:46:52 +00:00
Volker Ruppert
34644308f7 - added 'nokeyrepeat' option for the win32 gui 2011-12-04 21:15:35 +00:00
Volker Ruppert
eafa122339 - added 'nokeyrepeat' option for the SDL gui 2011-12-04 09:04:16 +00:00
Stanislav Shwartsman
21b96a5c8d fixed compilation err in win64 2011-10-20 19:10:06 +00:00
Volker Ruppert
e4b92b55bb - implemented tooltip feature in win32ParamDialog using the parameter description 2011-10-20 16:09:28 +00:00
Stanislav Shwartsman
2a31661d83 change beep messages to BX_DEBUG - it is flooding log too much when playing old MSDOS games 2011-10-09 08:20:32 +00:00
Volker Ruppert
822eed13fb - fixes related to the removal of the BX_PASS log level 2011-10-01 12:48:48 +00:00
Stanislav Shwartsman
f66830d77f fixed assertion failure in win32dialog when trying to set log options for a device 2011-10-01 07:24:18 +00:00
Stanislav Shwartsman
f425400af5 fixed warnings from compilation with mingw-gcc 4.6.1 2011-09-30 20:38:18 +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
Volker Ruppert
5e9b35994c - removed Windows font support for the text mode (was disabled by default)
- TODO: implement optional stretching of the Bochs display to double size if
  the desktop is big enough (e.g. HD display)
2011-08-22 10:25:29 +00:00
Stanislav Shwartsman
002e7a3818 MSR_TSC_AUX is not available without RDTSCP 2011-08-21 19:09:35 +00:00
Volker Ruppert
4b4f691a80 - don't include plugin.h in bochs.h to reduce dependencies 2011-08-17 22:41:03 +00:00
Stanislav Shwartsman
9de4164d1f remove double include 2011-08-16 20:07:08 +00:00
Stanislav Shwartsman
a03e0266fb added yonah CPUID to cpudb. remove bxversion.h from dep files 2011-08-16 19:58:56 +00:00
Stanislav Shwartsman
0bc93fdc59 added pentium mmx to cpudb. for now only can be enabled when cpu-level=5 2011-08-16 19:04:36 +00:00
Volker Ruppert
7bbfee58a2 - usually the realtime synchronization keeps the PIT-based system clock in sync
with the host time. After using a runtime config dialog or save and restore
  simulation, this behaviour makes the PIT clock and the VGA update timer
  running way too fast until it's back in sync. Now the elapsed time is stored
  in the variable 'real_time_delay' and it is used to let the PIT clock run at
  realtime speed, even if it is out of sync.
2011-08-15 10:37:41 +00:00
Stanislav Shwartsman
fb8d302f72 changed SHOW-IPS format for all GUIs 2011-08-14 20:21:07 +00:00
Volker Ruppert
7600c1bc60 - fixed dialog size if a 2-line label is used 2011-08-14 17:07:47 +00:00
Stanislav Shwartsman
43e2a59e3e configure show-ips ON by default for all configurations 2011-08-13 19:44:24 +00:00
Volker Ruppert
f9918d6317 - cleanups in X11 dialog code (control text and selection rectangle handling) 2011-08-12 21:50:32 +00:00
Volker Ruppert
c627270a86 - rewrite of the X11 dialog box code (implemented new class x11_dialog_c that handles the event loop) 2011-08-12 15:02:39 +00:00
Stanislav Shwartsman
9d2e601173 correctly handle SSE presence in GUI debugger 2011-08-11 18:43:13 +00:00
Stanislav Shwartsman
27df10acb6 fixed typo-like bug 2011-08-11 18:16:56 +00:00
Volker Ruppert
9416eaccc2 - added error handling for the case malloc() fails 2011-08-10 07:12:32 +00:00
Volker Ruppert
4743f2a503 - started rewrite of the X11 dialog implementation
- added a class for control elements with a proper init (fixes warnings)
  - TODO: add a class for the dialog itself
2011-08-09 14:28:25 +00:00
Volker Ruppert
9669929cbb - several fixes related to the graphics snapshot feature
- fixed size entries in bitmap file header for 8 bpp
  - bx_param_filename_c now uses the file extension from the initial value as
    the default (if present)
  - SIM->ask_filename() now uses the correct parameter type
  - win32paramdlg AskFilename(): added filter for BMP files
2011-08-09 09:56:00 +00:00
Volker Ruppert
bce6a17b98 - VBE specific case for graphics snapshot can be used for >= 8 bpp modes only
- palette data for snapshot is now dword aligned to simplify code
- prepared snapshot code to support 4 bpp EGA/VGA memory layout (not yet complete)
2011-08-06 13:08:31 +00:00
Volker Ruppert
c7f63fca93 - added palette for 8 bpp support
(TODO: support for standard VGA 4 bit mode - saving as 8 bpp BMP)
2011-08-05 15:47:33 +00:00
Volker Ruppert
b889e91898 - implemented graphics snapshot for 15, 16 and 32 bpp modes (using 24 bpp BMP format)
- TODO: add palette to support 8 bpp modes
2011-08-03 16:35:04 +00:00
Volker Ruppert
08e80d55e0 - implemented graphics snapshot in BMP format for 24 bpp modes
- TODO: color conversion for 15/16 and 32 bit modes, palette for 8 bpp modes
2011-08-02 20:08:34 +00:00
Volker Ruppert
828b52fc50 - prepared graphics snapshot feature for VBE and Cirrus modes (TODO: save data in BMP format) 2011-08-01 18:21:25 +00:00
Stanislav Shwartsman
1d89709e62 Added another CPU to CPUDB: p4_willamette (one more without x86-64 support).
Reimplemented CPUDB using pure C macros magic.
Fixed compilation errors when compiling with SMP on.
2011-07-31 18:43:46 +00:00
Volker Ruppert
bbb1586616 - added display library option to detect and turn off host keyboard repeat (X11 key repeat detection
grabbed from SDL 1.2)
- TODO: implement this feature in other display libraries and add a key repeat generator in the
  keyboard code that uses the typematic values from the guest.
2011-07-31 15:46:37 +00:00
Volker Ruppert
c35e385139 - removed 'text_snapshot_check' feature and related BX_PASS loglevel
- documentation updates
2011-07-31 14:38:03 +00:00
Stanislav Shwartsman
5e291e0860 Added Athlon64 Clawhammer CPUID to CPUDB 2011-07-30 21:28:16 +00:00
Volker Ruppert
488dd8a2a9 - added support for larger label text. The horizontal position of the controls for a parameter list
is now adjusted depending on the largest label text.
2011-07-30 17:32:40 +00:00
Stanislav Shwartsman
fefa4d5e5b added PIII Katmai to CPUDB 2011-07-30 14:30:35 +00:00
Stanislav Shwartsman
1a051f9f00 Added several predefined CPUs that can be selected from .bochsrc using new CPU::MODEL option.
Selecting CPU MODEL from .bochsrc automatically chooses real HW CPUID and also configures Bochs emulator to emulate this specific CPU including all its features only.
Supported CPUs to choose from:
	core2_extreme_x9770
	corei7_sandy_bridge_2600K
	p4_prescott_celeron_336
2011-07-29 15:03:54 +00:00
Volker Ruppert
c8d2f60225 - added runtime config handler for the ATAPI cdrom code. Now the media change is handled after both
parameters (path + status) have been set. TODO: implement this feature for the floppy, too.
- call update_drive_status_buttons() from update_runtime_options() to reduce the number of calls.
  Now call update_runtime_options() from the gui floppy / cdrom handlers after closing dialog.
2011-07-24 14:11:10 +00:00
Stanislav Shwartsman
5cadbdfeca small fixes for RFB GUI 2011-07-22 20:42:40 +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
e21e968b09 - added two alternative X keysyms used for shift key releases 2011-07-12 18:58:10 +00:00
Volker Ruppert
345d67c403 - removed BeOS support from sources and documentation 2011-07-11 17:36:10 +00:00
Volker Ruppert
988b6e4ac5 - don't include wxWidgets headers in dependencies (fixed comments)
- regenerated dependencies without removing wx stuff manually
2011-07-10 16:58:49 +00:00
Volker Ruppert
0b12794ef5 - moved vga font to gui/font 2011-07-10 14:00:58 +00:00
Volker Ruppert
7168212bbe - removed obsolete file 2011-07-10 13:56:30 +00:00
Stanislav Shwartsman
070a803a99 Ctrl-Break support for the Win32 gui 2011-06-21 17:10:40 +00:00
Volker Ruppert
48e8df25ff - fixed some MSVC warnings 2011-06-19 05:37:30 +00:00
Stanislav Shwartsman
48f5c3b794 merged patch: Ctrl-Break support for the X11 gui by Nikolay Nikolov 2011-06-15 15:35:22 +00:00
Volker Ruppert
d03db7f940 - several changes related to cdrom runtime configuration
* moved runtime handlers for cdrom from config.cc to the device object
  * cd media status variable is now always of type bx_bool
  * changed obsolete gui names like "cdromD" to "cdrom1"
  * TODO: implement new runtime config mechanism similar to USB
2011-06-13 09:32:39 +00:00
Volker Ruppert
cb8faeee52 - implemented new mechanism to update device config parameters that depend on
each other. Devices can register a handler to update it's state after runtime
  configuration. The new method update_runtime_options() executes all registered
  device handlers before the simulation continues.
- USB host controllers now using the new mechanism to handle the runtime device
  change (replaces the previous timer-based implementation). TODO: floppy and
  cdrom could use this feature, too)
- improved USB device change messages
2011-06-11 19:38:52 +00:00
Stanislav Shwartsman
c3de861958 fixed gui debugger mode change display 2011-04-28 19:16:51 +00:00
Stanislav Shwartsman
024a1ace38 move X2APIC to be .bochsrc option, rework of the cpuid code 2011-04-21 13:27:42 +00:00
Volker Ruppert
c78026a9a2 - deleted executable properties from source files 2011-04-03 10:29:19 +00:00
Volker Ruppert
19ed9839b6 - fixed segfault if Xrandr extension is not installed. If not present, use
DisplayWidth()/-Height() xlib calls (SF patch #3267459 by Heikki Lindholm)
2011-04-01 15:52:13 +00:00
Volker Ruppert
b46be5ced3 - store mouse capture status in local variable instead of calling the parameter
interface periodicly
- minor code cleanups
2011-03-26 08:27:13 +00:00
Stanislav Shwartsman
af28ef231a storing list title in param is redundant, extra overhead 2011-03-19 21:40:07 +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
Stanislav Shwartsman
069a49c190 fixes for win64 compilation portability 2011-03-04 20:39:54 +00:00
Stanislav Shwartsman
2d1d41e731 CPUID is not available when cpu-level=3 2011-02-25 16:27:01 +00:00
Stanislav Shwartsman
00981cd7a6 Adding Id and Rev property to all files 2011-02-24 22:05:47 +00:00
Volker Ruppert
0c50875e7f - use default memory parameter tree in textconfig (with some changes to make
it usable there)
2011-02-12 17:50:48 +00:00
Volker Ruppert
4fe832af68 - added missing xpm library for the 'x' plugin 2011-02-12 13:16:19 +00:00
Stanislav Shwartsman
d137f6d7db Fixed compilation for win64 native 2011-02-11 14:23:30 +00:00
Volker Ruppert
613b146974 - fixed xpm-related warnings in 'x' and 'wx'
- use X desktop size for the maximum guest resulution
2011-02-10 23:00:56 +00:00
Volker Ruppert
dcd02695bb - set 'modified' flag when editing numeric value with updown control 2011-02-10 22:59:34 +00:00
Stanislav Shwartsman
800dcfe537 fixed compilation err under win32 2011-01-25 15:49:32 +00:00
Volker Ruppert
44ece7cf26 - including vga.h in iodev.h no longer necessary and symbol NO_DEVICE_INCLUDES
is useless then
- updated makefile dependenies
2011-01-24 20:35:51 +00:00
Volker Ruppert
1dd6a8b151 - fixed wrong background color of edit controls (WM_CTLCOLOREDIT returns HBRUSH)
- fixed an MSVC warning
2011-01-18 19:15:37 +00:00
Stanislav Shwartsman
c48f7b6828 _WIN32_IE for cygwin gcc for 64-bit should be higher 2011-01-12 18:18:48 +00:00
Volker Ruppert
341c764e1f - added initial 'virtual VFAT' image support (shadows a local directory)
* ported the read part of the Qemu vvfat block driver
  * added win32 specific directory functions (required for MSVC)
  * TODO: write support, FAT32 support, read MBR and boot sector from file
2010-12-23 16:17:12 +00:00
Volker Ruppert
29c8824bab - added support for HD image modes in usb_msd (TODO: specify journal file)
- siminterface: added helper method hdimage_get_mode()
- moved hdimage related stuff from harddrv.cc to the hdimage code
- changed hdimage related names
2010-12-10 17:02:18 +00:00
Stanislav Shwartsman
1047acb2cc rename SSE register param - prepare for wide SSE register (AVX) 2010-12-06 21:52:41 +00:00
Stanislav Shwartsman
9aa503cb9d fixed warnings for win64 compilation 2010-11-23 14:59:36 +00:00
Volker Ruppert
3d0a3a0c6e - removed debug output 2010-11-19 18:42:11 +00:00
Stanislav Shwartsman
e5bb07e366 a few more steps towards win64 compilation under windows 2010-11-13 13:00:26 +00:00
Stanislav Shwartsman
07d68e9222 fix for win64 compilation 2010-11-12 18:20:35 +00:00
Stanislav Shwartsman
4aef7661aa Fix buffer overflow 2010-11-03 21:46:09 +00:00
Stanislav Shwartsman
d9734249b9 compilation fixes for mingw64 gcc 2010-11-01 15:02:14 +00:00
Stanislav Shwartsman
024c0073fc fix for makefile 2010-10-25 21:05:44 +00:00
Stanislav Shwartsman
a6ad162346 separate param tree code out of rest of siminterface
create new module
2010-09-16 21:46:45 +00:00
Stanislav Shwartsman
273f256603 some changes in siminterface 2010-09-12 20:47:23 +00:00
Volker Ruppert
19398ed178 - added missing break statement 2010-08-02 19:26:13 +00:00
Volker Ruppert
8b46dcfc0b - added parameter to control the floppy media write protection. This is based on
the SF patch #1539417, but rewritten from scratch (patch too old). Differences
  to the original version:
  * internal parameter name "readonly"
  * update parameter if floppy image is readonly
  * wxWidgets support
  * documentation updates
  * no specific toolbar buttons
2010-07-03 05:34:27 +00:00
Stanislav Shwartsman
63a984bf71 typo fix 2010-06-18 18:47:21 +00:00
Volker Ruppert
e801f4a256 - removed floppy method get_media_status() (floppy media change handler already
updates the parameter)
2010-06-18 17:23:50 +00:00
Stanislav Shwartsman
b195cb7ccf bugfix in GUI dbg 2010-05-29 18:55:59 +00:00
Volker Ruppert
fb668371f4 - fixed mouse capture toggle with F12 on win32 (missing key release) 2010-05-24 22:06:17 +00:00
Stanislav Shwartsman
f7b79e0057 bugfix 2010-05-23 17:59:50 +00:00
Volker Ruppert
5471cfbc34 - mouse capture toggle option choice 'f12' replaces win32 'legacyF12' option
- implemented mouse capture toggle method option in RFB
- user documentation updates (mouse, usb)
2010-05-18 15:33:41 +00:00
Volker Ruppert
8a2a1dc04c - implemented mouse capture toggle method option in win32.cc
- updated mouse option description and added cpuid options section in the user docs
2010-05-16 20:44:08 +00:00
Volker Ruppert
84364ae889 - implemented mouse capture toggle method option in wxWidgets 2010-05-16 14:40:53 +00:00
Volker Ruppert
19ed74f642 - added new config option to select mouse capture toggle method. In addition to
the default Bochs method using the CTRL key and the middle mouse button there
  are now the choices CTRL+F10 (like DOSBox) and CTRL+ALT (like QEMU).
  * currently implemented in the X11 and SDL guis only
  * TODO: porting to wxWidgets and Win32, documentation updates
2010-05-16 09:01:36 +00:00
Stanislav Shwartsman
25b315bb8b fixes for compilation for win64 2010-04-22 17:30:11 +00:00
Volker Ruppert
62378ec5b9 - make CPUID options available in textconfig 2010-04-04 11:28:33 +00:00
Stanislav Shwartsman
13a602d069 fix undefined CPUID options when CPU_LEVEL is too small 2010-03-05 20:42:10 +00:00
Stanislav Shwartsman
105deb58bc typofix 2010-03-02 20:09:17 +00:00
Stanislav Shwartsman
da7812f90c long time goal: avoid using tmpcb variable! 2010-03-02 20:01:33 +00:00
Stanislav Shwartsman
9124f00645 Fixed format 2010-03-02 07:07:57 +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
Stanislav Shwartsman
5df864b1f1 Move param_names.h into bochs root folder 2010-02-26 14:18:19 +00:00
Stanislav Shwartsman
927c3594d6 enable compilation with CPU_LEVEL <= 6
converted SEP to runtime option as well
2010-02-26 11:44:50 +00:00
Stanislav Shwartsman
033a20b3b2 allow to configure CPU features at runtime - implemened on example of SSE/AES/MOVBE/POPCNT 2010-02-25 22:04:31 +00:00
Stanislav Shwartsman
84f8a49dca fixed gcc4 warnings 2010-01-24 12:46:42 +00:00
Stanislav Shwartsman
5fec008130 change copyright to bochs project 2009-12-04 20:02:12 +00:00
Stanislav Shwartsman
27e3f6fda0 implemented range watchpoints - GUI debugger still can only do 1-byte length watches 2009-11-20 12:02:57 +00:00
Stanislav Shwartsman
6601f15c2e first step for range watchpoints - code reorg 2009-11-19 21:28:25 +00:00
Stanislav Shwartsman
6d904d8dac small cleanup 2009-11-19 17:24:26 +00:00
Stanislav Shwartsman
08ad29e3f3 more stuff from siminterface.h
TODO: reduce complation dependencies (not everybody needs BXPN_ stuff)
2009-11-15 20:50:41 +00:00
Stanislav Shwartsman
6f336396a5 more correct var name 2009-11-15 20:38:17 +00:00
Stanislav Shwartsman
9017873120 indent + cleanup in rfb 2009-11-15 19:53:56 +00:00
Stanislav Shwartsman
71bb10f98c move ignore-bad-msrs to runtime option in ,bochsrc 2009-11-13 15:55:46 +00:00
Stanislav Shwartsman
2f56442d30 fixed warnings 2009-11-08 20:47:03 +00:00
Stanislav Shwartsman
4f3d6fedbb fixed gcc4 warning 2009-11-03 20:38:03 +00:00
Stanislav Shwartsman
ceb3d14a43 fixed GUI gdb 'info gdt' problem 2009-10-31 16:01:29 +00:00
Stanislav Shwartsman
98b51805d5 updates for Bochs debugger 2009-10-29 15:49:50 +00:00
Stanislav Shwartsman
85bf2cee79 fixed build failures if I have both X and SDL enabled. 2009-10-24 13:22:36 +00:00
Stanislav Shwartsman
f6bc8ec9d1 fixed memory leak in sdl.cc 2009-10-24 13:17:33 +00:00
Stanislav Shwartsman
37b19190b3 new .bochsrc memory option 2009-10-17 17:38:58 +00:00
Stanislav Shwartsman
da4722e257 optimize sr params 2009-10-16 18:29:45 +00:00
Stanislav Shwartsman
ffc9521d59 applied SF patch: Debugger gui maximize on startup 2009-09-27 06:19:23 +00:00
Stanislav Shwartsman
9687b0bf44 cleanup 2009-08-14 20:20:46 +00:00
Stanislav Shwartsman
e912b328c2 enhances to gui debugger and integrated debugger 2009-08-07 08:26:41 +00:00
Volker Ruppert
4b3103ba24 - fixed 2 critical bugs in the win32 gui
* gui deadlock if show-ips feature is enabled (SF bug #2799093)
  * gui hang after mouse buffer overflow (SF bug #2799121)
2009-06-06 07:44:16 +00:00
Volker Ruppert
e260f4c3cb - added keyboard mapping support for the rfb gui
- moved setting of log action for panics to "fatal" after loading keymap to give
  the user a chance to select "continue" on keymap panics
2009-06-03 17:05:22 +00:00
Volker Ruppert
c2975e5d3c - added support for resizable desktop (if support by client)
- partial indention cleanup
2009-05-23 07:31:54 +00:00
Volker Ruppert
e29ccd26ce - the 'show ips' feature now works in wx on win32 2009-05-14 09:01:00 +00:00
Volker Ruppert
3043e4f169 - removed conflicting win32-specific alarm() functions for the guis 'win32' and
'sdl'. Now both display libraries can be compiled together and used with the
  'show ips' feature. TODO: win32-specific 'show ips' timers for 'rfb' and 'wx'
2009-05-13 17:26:45 +00:00
Stanislav Shwartsman
78418c6a74 removed cr1 from cpu 2009-05-01 09:32:46 +00:00
Volker Ruppert
752c84ab9e - converted port 0xE9 hack option to a regular config parameter 2009-04-26 06:56:28 +00:00
Volker Ruppert
b0c26ef814 - replace NULL character by space to avoid cutting text at this point when
copying to clipboard
2009-04-20 18:11:13 +00:00
Volker Ruppert
255143fa87 - updated iodev and gui Makefile dependencies 2009-04-15 06:10:28 +00:00
Stanislav Shwartsman
b6731dd70c Fixed Gui debugger by patch from Ben Lunt ! 2009-04-12 05:52:38 +00:00
Volker Ruppert
15aadb8a19 - log options dialog: sort device prefixes in alphabetical order 2009-04-11 13:53:14 +00:00
Stanislav Shwartsman
bcf547f510 Memory bug pointed by MSDEV compiler (dest is too small) 2009-04-11 13:46:54 +00:00
Volker Ruppert
e4f0de41e3 - simplified setting device prefix for log functions
- implemented unique device prefix for lowlevel cdrom
- minor device prefix changes
- minor coding style changes in cdrom.cc
2009-04-10 08:15:25 +00:00
Stanislav Shwartsman
e7af76b1af fixed compilation in 64-bit native 2009-04-08 06:31:38 +00:00
Volker Ruppert
2152d1d034 - forgot to reset the changed flag after applying changed log options 2009-04-07 20:18:14 +00:00
Stanislav Shwartsman
4fc66aab31 Fixes for compilation by Visual Studio 2008 2009-04-07 16:12:19 +00:00
Volker Ruppert
0a37bcfbdc - added get/set methods for device pointers in bx_param_c. This makes it easier
to access non-static devices from static parameter handlers.
- removed USB hub register mechanism and use the new device pointer parameter
  methods instead
2009-04-06 10:38:57 +00:00
Volker Ruppert
e6c30344d3 - fixed unwanted side effect: disabling these parameters is no longer necessary
and it disabled media status selection
2009-04-05 19:06:11 +00:00
Volker Ruppert
82a81e45f8 - rewrite of ParamDialog method CopyGuiToParam() to support list size changes
when adding/removing the USB hub
- added support for wx configuration in the USB hub code
2009-04-05 08:33:27 +00:00
Stanislav Shwartsman
5894f106a9 Fixed max watchpoints hardcoded value 2009-04-03 17:45:01 +00:00
Stanislav Shwartsman
981c2e595d Improve internal debugger commands parsing.
Now possible to set read/write watchpoits using 'r' and 'w' shortcuts instead of full 'read' and 'write' words
2009-04-03 17:36:24 +00:00
Volker Ruppert
9716be2cbd - fixed runtime menu handling (non-runtime parameters must be handled like
disabled ones)
2009-04-02 17:38:01 +00:00
Volker Ruppert
c7e3604303 - added and updated comments 2009-03-30 20:42:06 +00:00
Volker Ruppert
26bb244bf0 - show a message box instead of an empty dialog if the parameter list is empty
- set keyboard focus depending on the Bochs start mode
- removed unused variable
2009-03-30 19:34:22 +00:00
Volker Ruppert
ee131a7471 - new implementation of the win32 runtime dialog based on the start menu dialog
* removed old win32 runtime config dialog since the property sheet isn't
    compatible with the win32 ParamDialog
  * reorganized runtime parameter lists (usb and cdrom setup in device init)
  * renamed win32 StartMenuDialog() to MainMenuDialog() and some related name
    changes
  * added runtime support to the MainMenuDialog
- win32 start/runtime menu: set keyboard focus to the start/continue button
- win32paramdlg: SetParamList() now checks for list size changes to avoid crash
2009-03-29 20:48:17 +00:00
Volker Ruppert
2b82260d5c - ParamDialog: added support for string parameter dependent lists 2009-03-29 13:26:07 +00:00
Volker Ruppert
8d92dbdee3 - implemented dependent list for string parameters (string length must be > 0
and value must be != "none" to enable dependents)
- set dependent list for floppy path (removed enable handler)
- win32paramdlg: added support for string parameter dependent lists
2009-03-29 11:13:49 +00:00
Volker Ruppert
96ebaa78c5 - fixed checks for return value of AskFilename()
- added hotkeys for the start menu dialog
2009-03-29 00:21:10 +00:00
Volker Ruppert
3337d7f83c - siminterface: bx_param_enum_c must have it's own set_enabled() method for
updating the dependents
- win32paramdlg: mark edit control as modified after browsing for file
2009-03-28 11:49:26 +00:00
Volker Ruppert
394881ead6 - new implementation of the FloppyConfigDialog based on ParamDialog
* floppy device type selection wasn't present in the old version
  * "Create Image" button for creating floppy image with selected name and type
  * after selecting image file with "Browse", the media type is set to "auto"
    and the status is "inserted".
2009-03-27 22:22:07 +00:00
Volker Ruppert
8da9dddb89 - AskFilename(): added new pointer argument 'buffer'. If not set to NULL, the
filename is read from and written to this buffer instead of using the get/set
  methods of the given parameter (now used by win32ParamDialog() and similar
  dialogs using the "Browse" button)
2009-03-26 17:57:20 +00:00
Stanislav Shwartsman
ca4166389b generic is keyword in recent M$ .NET compiler 2009-03-26 09:19:56 +00:00
Volker Ruppert
1dee09c468 - changed parameter type for floppy status (inserted/ejected) to bx_param_bool_c 2009-03-25 18:33:43 +00:00
Volker Ruppert
04990bb856 - created new config interface 'win32config' using the new start menu dialog and
the existing runtime dialog ('textconfig' is still available)
- removed notify callback redirection from sdl.cc and win32.cc
- removed win32 specific code from textconfig.cc
- fixed parent window for folder selection dialog
- minor size changes in start menu dialog
2009-03-24 16:28:03 +00:00
Volker Ruppert
af3dfa73d7 - presence of floppy drive now depends on the devtype parameter instead of a
non-empty path
- floppy devtype parameter now uses CMOS values and drive type names
- related changes in the floppy code
- simplified floppy parameter handlers
- some floppy parameter label changes
- added enable handler for the floppy path parameter
- update dependent params after setting the dependent bitmap of enum parameter
2009-03-23 19:05:16 +00:00
Volker Ruppert
49343852a3 - changed parameter type for cdrom status (inserted/ejected) to bx_param_bool_c
- win32paramdlg: fixed setting parameters at runtime
- fixed win32 ParamDialog return value for close/cancel
- runtime dialog for the first cdrom drive on win32 is now created as a win32
  ParamDialog (removed old cdrom1 dialog stuff)
- minor fixes in x11 string dialog for the cdrom path & status case
2009-03-22 20:18:17 +00:00
Volker Ruppert
8c05b177dd - added new start menu dialog for win32 (currently called from the textconfig
start menu
  * textconfig: added menu item for the win32 start menu dialog and removed
    direct calls to win32ParamDialog()
  * added support for Bochs config files in AskFilename()
  * moved log options handling to separate functions used both by the start menu
    log options dialog and the related property sheet page of the runtime dialog
2009-03-22 09:40:18 +00:00
Volker Ruppert
5620a0082e - rewrite of the dependent list handling based on the new win32 stuff
- removed no longer used methods
2009-03-20 16:23:46 +00:00
Volker Ruppert
4d29abf2d8 - simplified and improved processing of dependent lists (e.g. handle window
enable status changes only)
- added window procedure for hex input (for parameters with BASE_HEX selected)
2009-03-19 18:23:54 +00:00
Volker Ruppert
9e2fe690ba - implemented support for bx_param_enum_c dependencies and removed old code
- changed some tabs to spaces
2009-03-18 18:57:37 +00:00
Volker Ruppert
c77837bc47 - fixed and simplified disabling of parameters when creating the dialog
- fixed two warnings
2009-03-18 12:38:17 +00:00
Volker Ruppert
b2479d7d1a - SetParamList(): don't set values of disabled parameters
- EnableParam(): don't enable/disable items of child lists
2009-03-18 07:59:04 +00:00
Volker Ruppert
ea27f82023 - implemented support for bx_param_num_c dependencies
- changed some tabs to spaces
2009-03-18 06:07:53 +00:00
Volker Ruppert
9f27f61f34 - fixed compilation errors 2009-03-17 20:20:57 +00:00
Volker Ruppert
5913073a20 - win32 ParamDialog: full parameter dependency handling implemented (recursive
dependency list processing, enum parameter support)
- bx_param_enum_c: added argument for the default value of the dependent bitmaps
  to set_dependent_list()
- bx_param_num_c: dependent_list is now a protected member of the object to make
  it accessible for the enum specific dependency code
- config.cc: ata parameter dependency rewrite to avoid multiple dependencies
- config.cc: added missing dependency for SB16 parameter list
2009-03-17 19:37:20 +00:00
Volker Ruppert
d987b68127 - implemented dependent list support for enum parameters. Each enum value has a
Bit64u value with the "enable bitmap" (e. g. bit #0 is the enable value for
  the first item of the dependent list). TODO: use this feature in win32 and wx
  dialogs
- ata drive type and loader hack parameters now using the enum dependent list
- avoid multiple dependencies in the SB16 config menu
2009-03-16 21:07:44 +00:00
Volker Ruppert
8c605c029d - store options for all parameter types in a Bit32u value instead of bx_param_num_c
- added file extension support for bx_param_filname_c
- fixed showing of tab control child lists
- added special disk menu for the win32 ParamDialog
- on win32 use the ParamDialog instead of textconfig submenus (TODO: gui dialog
  replacement for the start menus
2009-03-15 21:16:17 +00:00
Volker Ruppert
e91c072359 - rewrite of the win32 ParamDialog code for child list support
* added dialog item list register mechanism
  * create controls for child list inside of group boxes or tab controls
  * TODO: re-implement support for multiple dependencies
- added support for the bx_param_num_c flag USE_SPIN_CONTROL
- fixed win32 dialog item ID list
2009-03-15 16:24:54 +00:00
Volker Ruppert
87c4564a98 - added handling for raw byte arrays and numeric hex values
- handle dependencies for numeric parameter, too
- fixed enable/disable of controls for parameters with multiple dependencies
2009-03-12 19:40:41 +00:00
Volker Ruppert
2d2c732882 - win32ParamDialog now called with the menu name as second argument
- implemented dependency handling for boolean items
- now show all items if not at runtime
- moved init code for checkbox and combobox controls to their create functions
- TODO: handle child lists, dependency handling for enum items, several options
  of the parameter types
2009-03-11 18:53:22 +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
Volker Ruppert
9024d7b202 - set only modified numeric and string parameters in runtime dialog 2009-03-08 22:10:16 +00:00
Volker Ruppert
f3d3857ce3 - added OHCI options to win32 runtime dialog
- enable USB options for present devices only
- TODO: implement dynamic runtime dialog for the first external USB hub
2009-03-07 20:02:49 +00:00
Volker Ruppert
87903bf0bf - don't delete bx_list_c items with different parent list 2009-03-06 16:07:56 +00:00
Volker Ruppert
de9f1dcce9 - rewrite of the USB runtime configuration code (for textconfig only)
* USB runtime options moved to a new dynamic menu
  * USB host controllers create own submenus in init()
  * USB runtime parameter handlers simplified
  * TODO: related changes in the wx and win32dialog code
2009-03-04 18:20:50 +00:00
Volker Ruppert
fb2723d465 - added missing include 2009-02-24 08:08:20 +00:00
Volker Ruppert
9e3dd83e85 - reduce some more dependencies and related Makefile.in updates 2009-02-23 11:06:53 +00:00
Stanislav Shwartsman
f2878feb30 Fixed 64-bit VS2008 comp failures 2009-02-22 21:48:21 +00:00