Commit Graph

7247 Commits

Author SHA1 Message Date
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
Stanislav Shwartsman
2bdc6ff231 insert updateFetchModeMask into handleCpuModeChange - avoid bugs in future 2009-03-10 22:28:08 +00:00
Stanislav Shwartsman
08de514d9c code cleanup for future optimization 2009-03-10 21:43:11 +00:00
Stanislav Shwartsman
07f811013c bugfixes 2009-03-10 20:01:56 +00:00
Volker Ruppert
1f1dc8c012 - regenerated after adding win32paramdlg files 2009-03-10 19:34:30 +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
51ea504442 Fixed compilation with debugger on 2009-03-10 17:02: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
8987188a8e - new method get_frame_remaining() calculates register value from the difference
between the current time and the "start-of-frame" time
- removed 1 usec interval timer
- simplified calculation of the PPCM reset value
2009-03-09 23:18:52 +00:00
Volker Ruppert
19139d3618 - broadcast packets to enabled ports only
- changed BX_PANIC to BX_DEBUG message
2009-03-09 18:28:17 +00:00
Volker Ruppert
d909d7a8dd - prepared USB cdrom support in the usb_set_connect_status() methods
- added 2 missing request types in the usb_msd code
2009-03-09 14:44:06 +00:00
Volker Ruppert
9549d7ece6 - preparing USB cdrom support (not yet complete)
* added cdrom support in the usb_msd code (already present in the SCSI code)
  * added code for deferring packets in usb_msd and the common USB code (TODO:
    cancel packets by the host controller)
  * added SCSI cdrom drive lock flag
- clean up SCSI request queues in destructor
- changed type of cdrom path/device parameter to const char
- moved the shared init device code to a common function
- reset hub count if the last external hub has been removed
2009-03-09 12:18:40 +00:00
Volker Ruppert
9024d7b202 - set only modified numeric and string parameters in runtime dialog 2009-03-08 22:10:16 +00:00
Stanislav Shwartsman
6fe0b40b44 move a20 handling into getHostAddr method of BX_MEM 2009-03-08 21:23:40 +00:00
Volker Ruppert
55d20d99ee - don't set TRACK0 status for non-existing drive 2009-03-08 08:22:23 +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
db2302d13d - regenerated after adding external USB hub 2009-03-07 16:58:38 +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
Volker Ruppert
4e33fbbd29 - changed USB HID version for mouse and tablet to 1.00 (was: 0.01 !) 2009-03-06 23:48:25 +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
82b9d9ec81 - ported packet broadcast mechanism from Qemu (required to support devices
connected to an external hub)
- accept empty strings for device disconnect in parameter handler
2009-03-05 21:35:00 +00:00
Volker Ruppert
1a3610dd32 - ported packet broadcast mechanism from Qemu (required to support devices
connected to an external hub)
- accept empty strings for device disconnect in parameter handler
2009-03-05 19:12:23 +00:00
Stanislav Shwartsman
43fc81651d Removed redundant code 2009-03-05 17:48:12 +00:00
Volker Ruppert
ad68d37b2a - small fixes to make devices connected to OHCI work with Linux guests
- changed some BX_INFO messages to BX_DEBUG
2009-03-05 17:29:09 +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
7a1236636a - improved mouse register mechanism for the default mouse selected with the
mouse type option and updated mouse devices to use it
- removed some stubs and stub functions from the devices code
2009-03-03 20:34:50 +00:00
Volker Ruppert
90aa30fde9 - added register/unregister methods for removable keyboard devices and updated
keyboard and usb_hid code to use them
- removed keyboard handling from the USB host controller code
- removed no longer needed USB stubs from the devices code
- converted removable mouse variables to a structure
2009-03-03 18:29:51 +00:00
Stanislav Shwartsman
72e2a2258f Fixed BSWAP in MOVBE instruction 2009-03-03 16:55:20 +00:00
Stanislav Shwartsman
4137ba4fc4 Give credit for recently fixed cpu bugs 2009-03-03 06:21:47 +00:00
Stanislav Shwartsman
56251925a3 Fixed typo in 64-bit BSWAP 2009-03-03 06:18:00 +00:00
Volker Ruppert
3c21d494cb - added register/unregister methods for removable mouse devices and updated
usb_hid code to use them
- removed mouse handling from the USB host controller code
- TODO: add similar code for keyboard devices
2009-03-02 21:21:16 +00:00
Volker Ruppert
7f9717dd10 - OHCI packet handling code rewritten (Win98 original now detects the mouse)
- moved usb_send_msg() to the common USB devices code
- simplified USB MSD devices handling
2009-03-01 19:29:36 +00:00
Volker Ruppert
69452184d8 - completed save/restore code
- CSC bit must be set on a connect change
- debug message fixed
2009-03-01 10:17:21 +00:00
Stanislav Shwartsman
6dac964b27 Two more prefix66 opcodes 2009-02-28 09:28:18 +00:00
Stanislav Shwartsman
bc8be4ed06 Fixed CR8 read 2009-02-27 20:00:02 +00:00
Volker Ruppert
4964cb7ba7 - add new method remove_device() for device cleanup
- initialize device pointers in init()
- don't delete connected devices in reset()
- update status if a device is connected during reset(), otherwise try to
  connect devices
2009-02-26 22:46:37 +00:00
Stanislav Shwartsman
93f375dc42 regen dependencies 2009-02-26 22:02:00 +00:00
Stanislav Shwartsman
b9de22961c minimize SSE tables, minor speedup in SSE code 2009-02-26 21:57:01 +00:00
Volker Ruppert
15aec6efee - add new method remove_device() for device cleanup
- some more registers converted from struct to Bit16u / Bit32u
- some progress with save/restore support
- small interrupt handling rewrite
- report misaligned read/write access
2009-02-26 18:43:11 +00:00
Volker Ruppert
f8bceae4e9 - improved device cleanup in destructor
- initialize device pointers in init()
- only connect devices in reset() if not NULL
- don't delete devices in reset_hc() to avoid segfault (update connect status
  instead)
- fixed port number calculation in read handler
- fixed enabling interrupts
2009-02-25 18:18:57 +00:00
Stanislav Shwartsman
6b790b9069 Fixed compilation error with undefined _stricmp in MSDEV 2009-02-25 16:27:31 +00:00
Volker Ruppert
8cfd6b85aa - now using Bit32u values instead of structures for some registers
- interrupt handling rewritten based on the Qemu implementation
- HcRhPortStatus now belongs to the usb_port structure
- partial save/restore support
2009-02-24 17:15:27 +00:00
Volker Ruppert
fb2723d465 - added missing include 2009-02-24 08:08:20 +00:00
Volker Ruppert
f9124b8c99 - plugin 'harddrv' now depends on the ATA configuration (don't load it if no
channel is enabled)
- pluginIOAPIC points to the stub if plugin is not loaded
2009-02-23 18:38:25 +00:00
Stanislav Shwartsman
e6685b3557 Fixed comp err with APIC disabled 2009-02-23 17:09:39 +00:00
Volker Ruppert
9e3dd83e85 - reduce some more dependencies and related Makefile.in updates 2009-02-23 11:06:53 +00:00
Volker Ruppert
71db42376f - some fixes in debug output 2009-02-23 08:31:41 +00:00
Stanislav Shwartsman
f2878feb30 Fixed 64-bit VS2008 comp failures 2009-02-22 21:48:21 +00:00
Stanislav Shwartsman
43785db799 added implemented features to changes 2009-02-22 17:41:48 +00:00
Stanislav Shwartsman
30c63c773c apic.h is not needed for ioapic.cc 2009-02-22 17:37:09 +00:00
Volker Ruppert
29f5a696fc - improved config interface labels for the optional plugin control
- documentation updates
2009-02-22 17:05:40 +00:00
Volker Ruppert
790eec83ca - converted I/O APIC to a device plugin
- updated dependencies
2009-02-22 10:44:50 +00:00
Stanislav Shwartsman
08f9c8dceb Patch by Sebastian:
Fix parameter count for set_e820_range() in legacy bios.
It's called with too few parameters since rombios.c 1.224.
2009-02-21 21:45:34 +00:00
Volker Ruppert
66e2688645 - optional plugin control: added workaround for the compilation with plugins
disabled (bx_load_plugin() function not available in this case and we don't
  want to make plugin.cc device-dependant)
2009-02-21 16:08:02 +00:00
Volker Ruppert
cb430a4371 - added option to control the presence of optional plugins without a separate
option. By default all existing plugins are enabled.
2009-02-21 11:43:18 +00:00
Stanislav Shwartsman
3ce1d47fc5 Update CHANGES 2009-02-21 09:47:16 +00:00
Stanislav Shwartsman
9b3df76910 Fixed comp err 2009-02-20 23:01:09 +00:00
Stanislav Shwartsman
2304f2abf1 reduce dependencies from CPU/APIC.H 2009-02-20 22:00:42 +00:00
Stanislav Shwartsman
87268a1ba5 Fixed dfr register in apic 2009-02-20 20:44:20 +00:00
Stanislav Shwartsman
21d753c378 short cleanup 2009-02-20 17:35:55 +00:00
Stanislav Shwartsman
09489f968a cleanup APIC initialization and setting of APIC_ID 2009-02-20 17:26:01 +00:00
Stanislav Shwartsman
78590cc6f2 remove redundant cpu->name variable 2009-02-20 17:05:03 +00:00
Stanislav Shwartsman
11e8d090b6 moved def to config.h 2009-02-20 16:01:30 +00:00
Stanislav Shwartsman
876a410230 Only 15 CPUs maximum without XAPIC 2009-02-20 15:47:04 +00:00
Stanislav Shwartsman
5cbe27b04e Allow to configure up to 255 CPUs 2009-02-20 15:39:06 +00:00
Stanislav Shwartsman
c88886b4d2 Allow to configure up to 255 CPUs (and let's hope it will work :)) 2009-02-20 15:38:36 +00:00
Stanislav Shwartsman
36518ba6c6 Patch by Sebastian [Bochs-developers] [PATCH] rombios32: use cpuid info in mptable processor entry 2009-02-20 15:36:29 +00:00
Stanislav Shwartsman
d01725b1e9 Fixed compilation error on MAC 2009-02-20 08:12:51 +00:00
Stanislav Shwartsman
31a367283a small optimizations for apic code 2009-02-19 23:19:11 +00:00
Stanislav Shwartsman
7be90a7426 forgot to enable local_apic in init() 2009-02-18 22:38:58 +00:00
Stanislav Shwartsman
3564ef3162 small fixes 2009-02-18 22:33:06 +00:00
Stanislav Shwartsman
1b72e66bb3 support for apic global disable
separate between I/O apic and local apic
2009-02-18 22:25:04 +00:00
Stanislav Shwartsman
87b705d036 Changes in lapicbase msr 2009-02-17 19:44:02 +00:00
Stanislav Shwartsman
3a1852ea23 take local APIC read/write access into CPU class from BX_MEM (needed for APIC virtualization later) 2009-02-17 19:20:47 +00:00
Volker Ruppert
717c528cd6 - fix for USB drive on Win98SE 2009-02-17 16:43:51 +00:00
Stanislav Shwartsman
1e2fd1a737 Fixed compilation err 2009-02-16 18:27:50 +00:00
Stanislav Shwartsman
801484d877 mention > 32 bit phy addr feature 2009-02-15 19:00:03 +00:00
Stanislav Shwartsman
2ecd288f22 Fix closed bugs list 2009-02-15 18:54:14 +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
bf92a5ea04 - removed duplicate code from reset_hc(), since the init of connected devices
is already done in reset()
- init_device(): check for device connected to port before creating a new one
  (OHCI and UHCI)
- update irq level after clearing status and masking interrupt (same behaviour
  as the Qemu implementation)
2009-02-15 14:06:55 +00:00
Volker Ruppert
e11f9b6ce6 - small fixes to make the USB mouse work in Win98 and Linux
- now the USB UHCI controller can be assigned to a PCI slot (by default it's a
  part of the PIIX3 chipset)
2009-02-15 08:16:16 +00:00
Volker Ruppert
f10e0a08af - applied latest version of the USB OHCI support by Ben Lunt (WIN98SE can use
the USB mouse now)
- minor fixes in the USB common and devices code
2009-02-14 10:06:20 +00:00
Stanislav Shwartsman
e8e699245f fix code duplication in cpu.h for eflags accessors 2009-02-13 20:09:56 +00:00
Stanislav Shwartsman
f1eb1d00fd do not produce fpu2mmx transition if mem write faults 2009-02-13 10:15:16 +00:00
Stanislav Shwartsman
714dc45589 Fixed typo 2009-02-13 10:10:39 +00:00
Stanislav Shwartsman
a5badd3b83 - bugfixes 2009-02-13 09:51:57 +00:00
Stanislav Shwartsman
b47d9046ca puts is not always working, change to fputs back, keep stdout 2009-02-12 20:39:38 +00:00
Stanislav Shwartsman
03684932c1 send debugger output to stdout instead of stderr 2009-02-12 20:30:52 +00:00
Stanislav Shwartsman
6003f52704 Fixed compilation error + x86-64 correctness fix 2009-02-09 19:46:34 +00:00
Volker Ruppert
a1a4574074 - fixed PCI IRQ router check for legacy BIOS (checking vendor ID only) 2009-02-09 17:06:06 +00:00
Volker Ruppert
d0c3b1cb1c - initialize guest IP address with 255.255.255.255 (expected by Windows guests) 2009-02-09 17:04:30 +00:00
Volker Ruppert
91013a781d - some more FSF address updates 2009-02-09 10:35:55 +00:00
Volker Ruppert
fd68355c87 - patch updated 2009-02-09 10:17:21 +00:00
Stanislav Shwartsman
20d1ee5815 Fixed memory leak + some compilation warning 2009-02-08 18:52:06 +00:00
Stanislav Shwartsman
25b7227ef2 convert some BX_DEBUG prints to BX_ERROR
fixed boundary fetch fault bug in some stupid corner cases
2009-02-08 17:37:19 +00:00
Stanislav Shwartsman
77974ab952 - removed wrong character from FSF address (converted invisible and useless
2-byte character)
2009-02-08 17:29:34 +00:00
Volker Ruppert
e5eac65b59 - removed wrong character from FSF address (converted invisible and useless
2-byte character)
- updated FSF address in some files
- added license to some files
2009-02-08 09:05:52 +00:00
Stanislav Shwartsman
dd03e043a3 Updated FSF address 2009-02-07 21:05:31 +00:00
Stanislav Shwartsman
98b198b3fe not merged yet feature :) 2009-02-07 20:47:17 +00:00
Stanislav Shwartsman
66dc9b4cb1 - updated FSF address 2009-02-07 20:35:39 +00:00
Volker Ruppert
cb9990af95 - set hostname to NULL to avoid crash 2009-02-07 10:11:19 +00:00
Stanislav Shwartsman
aeaf51d33a FIxed #DB exception in 64-bit mode 2009-02-06 15:25:57 +00:00
Stanislav Shwartsman
21e2692997 Fixed bug in trace cache mode 2009-02-06 15:03:47 +00:00
Volker Ruppert
141d69eadf - applied current version of the USB OHCI support by Ben Lunt (communication
between guest OS and USB device still not working correctly)
2009-02-05 16:53:44 +00:00
Stanislav Shwartsman
7c0582e4ea Some fixes for X86-64 OFF mode 2009-02-04 16:05:47 +00:00
Stanislav Shwartsman
26fda0626d Added missed CR0 reserved bits #GP in long mode 2009-02-03 21:11:31 +00:00
Stanislav Shwartsman
7d5e058dfe write to apic must be 16-byte aligned 2009-02-03 20:42:15 +00:00
Volker Ruppert
8b608fe045 - confirm requested hostname 2009-02-03 20:04:20 +00:00
Stanislav Shwartsman
fdf4f25230 revert incorret merge 2009-02-03 19:28:22 +00:00
Stanislav Shwartsman
fbc6f04d8a correctly deliver INIT 2009-02-03 19:26:09 +00:00
Stanislav Shwartsman
4499ae8d02 more info abourt SIPI 2009-02-03 19:25:37 +00:00
Stanislav Shwartsman
592484408f Initial NMI virtualization for VMX, clean out CPU pins set/clear code 2009-02-03 19:17:15 +00:00
Stanislav Shwartsman
30fec77004 faster i/o apic write access 2009-02-03 19:12:00 +00:00
Volker Ruppert
1a5e565c0b - always set port speed depending on connected device (device speed is always
set in constructor, but for usb_msd devices the connected status set by a
  successful init)
2009-02-03 18:21:21 +00:00
Stanislav Shwartsman
b60aee3891 Added defines for STRICMP/STRCASECMP 2009-02-02 19:10:13 +00:00
Stanislav Shwartsman
f6cb9e529f Fixes for VMX emulation 2009-02-02 18:59:44 +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
Stanislav Shwartsman
3a918d21f7 VMENTER with pending dbg exceptions 2009-02-01 22:23:33 +00:00
Stanislav Shwartsman
3b799101f4 Optimize debugger stepN when single processor mode 2009-02-01 22:20:04 +00:00
Stanislav Shwartsman
2378d31998 Fixes for DR6 handling 2009-02-01 20:47:06 +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
Volker Ruppert
882269acaa - fixed win32 compilation 2009-02-01 10:30:47 +00:00
Volker Ruppert
bfedc33c09 - fixed some more GCC4 warnings 2009-02-01 08:08:20 +00:00
Stanislav Shwartsman
c801545c0b added more knobs 2009-01-31 20:41:59 +00:00
Volker Ruppert
3e525af2ca - fixed order of the Bochs parameter tree
- fixed lots of warnings
2009-01-31 19:02:24 +00:00
Volker Ruppert
4820227ce7 - moved VBE state to a separate structure
- handle VBE error messages with BX_ERROR instead of BX_INFO
- several code cleanups in the object delaration and the init code
2009-01-31 18:13:17 +00:00
Volker Ruppert
bcefe1f799 - implemented support for the GTK-based gui debugger in sdl (WIN32 support
disabled, since it breaks runtime dialog support)
- fixed a warning
- updated FSF address
2009-01-31 18:11:13 +00:00
Stanislav Shwartsman
de5814a22d Fixed compilation err 2009-01-31 15:01:29 +00:00
Stanislav Shwartsman
6eb53b15ce Fixed some gcc4 warnings 2009-01-31 14:51:41 +00:00
Stanislav Shwartsman
9430c5cf95 INIT pin is blocked when CPU is waiting for SIPI 2009-01-31 11:53:57 +00:00
Stanislav Shwartsman
6b37de5c0d TESTFORM update 2009-01-31 11:50:28 +00:00
Stanislav Shwartsman
82969504d8 updated CPU TODO 2009-01-31 11:34:51 +00:00
Stanislav Shwartsman
d63044357f Bochs enhanced debugger user manual by Bruce Ewing 2009-01-31 11:30:29 +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
Stanislav Shwartsman
dd21ea963e New module for cross-platform GUI debugger frontend 2009-01-31 09:52:26 +00:00
Stanislav Shwartsman
b780068399 Fixed gcc4 warnings 2009-01-30 21:47:42 +00:00
Stanislav Shwartsman
368eb61eed Fixed gcc4 warning 2009-01-30 21:05:01 +00:00
Stanislav Shwartsman
a1c11c788b sepatate activity state from debug trap 2009-01-29 20:27:57 +00:00
Stanislav Shwartsman
aa982c27d8 move startup_SIPI code to CPU 2009-01-27 21:13:38 +00:00
Stanislav Shwartsman
4dcea7e888 Fixed pause instruction disasm 2009-01-27 21:01:21 +00:00
Stanislav Shwartsman
0325c120b2 Separate PAUSE instruction from regular NOP 2009-01-27 20:29:05 +00:00
Volker Ruppert
4b4f80e6cb - implemented MTRR support in the bios. This is a combination of the individual
patches from the kvm tree. The code was written by Avi Kivity and Alex
  Williamson. Sebastian Herbszt added checks for CPUID_MTRR and CPUID_MSR.
2009-01-26 09:21:38 +00:00
Volker Ruppert
4d661c8326 - VBE video memory increased to 16 MB (new version of the LGPL'd VGABIOS under
construction)
2009-01-25 09:09:49 +00:00
Stanislav Shwartsman
8c8ef5b869 Mask bit 11:8 of segment AR field 2009-01-23 21:28:01 +00:00
Stanislav Shwartsman
950db498c9 Fixed #DF error code 2009-01-23 18:19:57 +00:00
Stanislav Shwartsman
cd90782293 No need to save/restore EXT field 2009-01-23 17:48:38 +00:00
Stanislav Shwartsman
503cc4c836 merge fix 2009-01-23 09:33:11 +00:00
Stanislav Shwartsman
62005d4fd9 Minimize diff with VMX support branch 2009-01-23 09:26:24 +00:00
Volker Ruppert
809449c797 - stored LFB address in base address #0 (TODO: implement changeable LFB address;
VGABIOS should read LFB base from PCI)
2009-01-22 22:29:23 +00:00
Volker Ruppert
324fccd33c - moved include statement to reduce dependencies
- updated FSF address
2009-01-21 22:16:09 +00:00
Stanislav Shwartsman
29a252b26e final version of exceptions cleanups/interface changes 2009-01-21 22:09:59 +00:00
Stanislav Shwartsman
0b3c7262d4 Wrongly committed line 2009-01-20 21:34:59 +00:00
Stanislav Shwartsman
e7ac62ac82 extensions for exception type for future 2009-01-20 21:28:43 +00:00
Stanislav Shwartsman
74b885d74b Updated instrumentation
Simplified exception code
2009-01-20 19:34:16 +00:00
Stanislav Shwartsman
c93d13d37b small cleanups 2009-01-20 18:15:25 +00:00
Volker Ruppert
7d760b809e - updated MSVC workspace files after USB code changes 2009-01-20 16:29:13 +00:00
Volker Ruppert
fcedb1f823 - workaround for unusable VGA window size
* use default value for screen width if update() is called before VGABIOS init
  * set minimum value for vga_update_interval to 40000 (default value: 50000)
  * no longer accept ips values smaller than BX_MIN_IPS and default value
    changed to 4000000
2009-01-20 12:37:41 +00:00
Volker Ruppert
d0a0fbd9d3 - usb config subtree now belongs to serial/parallel again
- added USB to the menu item names
2009-01-20 09:26:26 +00:00
Volker Ruppert
cfa759cd57 - fixed parameter name for save/restore of connected devices
- moved configuration subtree 'usb' back to the 'ports' list to make it
  accessible again by the config interface
- delete s.scsi_dev only if not NULL
2009-01-19 21:39:03 +00:00
Volker Ruppert
d3533d9fcc - the config interface should not access devices directly, using siminterface
method for VGA refresh
2009-01-19 20:37:40 +00:00
Stanislav Shwartsman
db098a1205 Fix dependencies of CPU code from disasm library
Regent Makefile.in for CPU
2009-01-19 19:01:03 +00:00
Stanislav Shwartsman
ef5df7c4a8 make functions from rdmsr and wrmsr - they will be reused in VMX 2009-01-19 18:08:38 +00:00
Stanislav Shwartsman
cc60240dc1 cleanup RDMSR 2009-01-19 17:43:54 +00:00
Volker Ruppert
b5aabf8848 - applied patch for initial USB OHCI support written by Ben Lunt (Win98 detects
the controller, connecting devices is not implemented yet)
2009-01-19 17:18:57 +00:00
Stanislav Shwartsman
637630435e Fixed typo 2009-01-19 16:45:54 +00:00
Volker Ruppert
891cc05477 - prepared siminterface and bochsrc options for USB OHCI support
* 'usb_uhci' bochsrc option replaces 'usb1'
  * minor changes in the USB code
  * removed old VBE i/o port registration (they were incompatible with USB)
  * updated FSF address
- fixed saving user plugin options
2009-01-19 13:13:32 +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
Stanislav Shwartsman
c8fa6f6b90 Added CR4 fields 2009-01-18 21:25:49 +00:00
Volker Ruppert
ef83d97f3e - updated after adding usb_common.* files 2009-01-18 13:12:52 +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
a396c8a1ce Rework SMM mess 2009-01-17 22:35:45 +00:00
Stanislav Shwartsman
cd367becd7 remove duplicate function 2009-01-17 18:56:25 +00:00
Stanislav Shwartsman
eaa00237c1 Notify debugger about MWAIT executed 2009-01-17 16:55:13 +00:00
Stanislav Shwartsman
9929e6ed78 - updated FSF address 2009-01-16 18:18:59 +00:00
Volker Ruppert
34d767f938 - moved mouse buffer size definition to iodev.h
- reduce dependencies (TODO: update Makefile.in)
- removed unused defines from iodev.h
- updated FSF address
2009-01-16 11:53:38 +00:00
Volker Ruppert
3c82e7983c - compilation fix for plugins on win32
- updated FSF address
2009-01-16 10:53:58 +00:00
Stanislav Shwartsman
e540ee75ca cleared external debugger configure stuff from configure script and makefile 2009-01-15 21:52:52 +00:00
Volker Ruppert
ae54b59cd0 - preparing "plugin-disable" feature for optional plugins not controlled by a
bochsrc option (e.g. biosdev, speaker, gameport)
  * the "unmapped device" is now an optional plugin, the builtin default handlers
    no longer cause panics
  * speaker stub calls the related gui methods for beep on/off
  * load all optional plugins before starting init of core plugins
2009-01-15 17:34:20 +00:00
Stanislav Shwartsman
8af7eff93f Oops, remove future stuff 2009-01-15 17:12:18 +00:00
Stanislav Shwartsman
0836545037 Merge io.cc and io_pro.cc (required for future VMX use) 2009-01-15 16:53:08 +00:00
Stanislav Shwartsman
aee488ea3a Fixed dbg print 2009-01-13 22:54:49 +00:00
Stanislav Shwartsman
5cc5781a20 Fixed memory corruption inside disasm module ! 2009-01-13 22:40:16 +00:00
Volker Ruppert
0ec93b8586 - moved common mouse handling code to devices.cc
- moved mouse capture control code back to config.cc
- related changes in the USB keyboard and mouse interface
2009-01-13 19:01:19 +00:00
Stanislav Shwartsman
d4611072f4 Some small updates 2009-01-13 19:00:30 +00:00
Stanislav Shwartsman
bfcd242a2f Fixed compilation 2009-01-13 18:56:35 +00:00
Stanislav Shwartsman
da511513b3 make displ field of instruction signed 2009-01-12 20:14:37 +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
817bbc6435 [Bochs-developers] [PATCH] rombios32: fix SMBIOS end address range reporting
The -1 seems to be in the wrong place here.

Patch by Alex Williamson from the kvm tree [1].

[1] http://git.kernel.org/?p=virt/kvm/kvm-userspace.git;a=commitdiff;h=dd0f27d08ce415da6a5215f0901e7d98ab084f79

- Sebastian
2009-01-11 19:52:36 +00:00
Volker Ruppert
1e578b3b28 - converted device PIT 82C54 to a plugin (internal / virtual timers remain in
Bochs core)
- removed obsolete and unused PIT methods
- updated FSF address
2009-01-11 18:46:01 +00:00
Volker Ruppert
2b61cf3b41 - clean up common device macros 2009-01-11 08:48:47 +00:00
Stanislav Shwartsman
19072fb5ce Fix for [ 2426271 ] cannot get correcet symbol entry 2009-01-10 21:38:36 +00:00
Stanislav Shwartsman
0ff68a2aa2 Fixed XSAVE decode in x86-64 mode 2009-01-10 16:01:55 +00:00
Volker Ruppert
8f156c435d - update after logio change 2009-01-10 11:56:07 +00:00
Volker Ruppert
7df4044762 - forgot to update declaration 2009-01-10 11:47:10 +00:00
Volker Ruppert
501952efdd - removed unused logfunctions member 'type' and related method 'settype()'
- updated FSF address in copyright
2009-01-10 11:30:20 +00:00
Stanislav Shwartsman
06e90a9304 Deduplicate INT 15h, AX=E820h code by removing some identical parts.
- Sebastian
2009-01-10 10:50:07 +00:00
Stanislav Shwartsman
6451356d2b make function to calculate allowed bits in cr4 2009-01-10 10:37:23 +00:00
Stanislav Shwartsman
836e9649d8 modify set cr0 functionality 2009-01-10 10:07:57 +00:00
Stanislav Shwartsman
4369152c70 - Make CS segment always writeable in real mode 2009-01-10 09:36:44 +00:00
Stanislav Shwartsman
4b4b901436 put bugfix for text split screen mode back 2009-01-09 17:16:03 +00:00
Stanislav Shwartsman
8b99d7abfc clean up some dependencies for enh_dbg 2009-01-09 16:51:06 +00:00
Stanislav Shwartsman
4f95336b64 some small cleanup 2009-01-09 14:57:30 +00:00
Stanislav Shwartsman
0c79f11259 More fixes toward multiplatform GUI Bochs debugger 2009-01-09 14:53:38 +00:00
Stanislav Shwartsman
6ea14b747c Fixed SEGFAULT with configurable MSRS
fixed osdep issue in win32 enhanced debugger module
2009-01-08 18:07:44 +00:00
Volker Ruppert
6071b4c239 - minor updates 2009-01-08 17:24:05 +00:00
Volker Ruppert
65eacd8063 - unlimited number of user options after rewrite (now using a chain similar to
the plugin device code)
- minor updates
2009-01-06 20:35:39 +00:00
Volker Ruppert
ee1e10ab73 - store user-defined option data in a struct 2009-01-05 21:15:17 +00:00
Volker Ruppert
6fd3cf2ecf - updated sample code for user plugins 2009-01-05 17:02:25 +00:00
Volker Ruppert
8aa8b1a3db - rewrite for user plugin support with user-defined options
* initialize plugin system before parsing bochsrc and command line
  * pass previous value to bx_param_string_c handler
  * load / unload plugin in bx_param_string_handler()
  * handle user plugins after optional ones in plugin device init, reset and
    save/restore functions
  * added new siminterface method unregister_user_option()
  * removed first version of config option handling for user plugins
  * added new parameter subtree for user-defined options
  * added new bx_list_c method remove()
  * removed unused bx_devmodel_c method init_mem()
2009-01-04 21:46:20 +00:00
Stanislav Shwartsman
69153fc532 added enum for memory types 2009-01-03 20:04:03 +00:00
Volker Ruppert
4757acfeaf - added sample code for user plugins (see patch description) 2009-01-03 11:50:29 +00:00
Volker Ruppert
cbefde3a43 - update all dependencies 2009-01-03 10:04:01 +00:00
Volker Ruppert
e12b21e647 - update all dependencies 2009-01-03 09:54:10 +00:00
Volker Ruppert
00d404809b - reduce some more dependencies
- iodev.h already includes bochs.h
2009-01-03 08:55:00 +00:00
Volker Ruppert
504688cbca - fixed issue with bx_param_string_c found with valgrind
* set initial value for MAC address after setting RAW_BYTES option (no space
    for trailing null byte when using strncpy)
  * length of initial string should not be larger than maxsize
  * reset() method now uses set(initial_val)
2009-01-02 14:16:16 +00:00
Stanislav Shwartsman
87396f051a msr phy addr check use new function 2009-01-02 13:23:06 +00:00
Stanislav Shwartsman
3cd5ab1041 added phy addr check 2009-01-02 13:21:48 +00:00
Volker Ruppert
b23e7bf6a0 - added basic user plugin support (TODO: add sample code) 2009-01-02 11:51:03 +00:00
Stanislav Shwartsman
a46cbc6e67 Woraround for comp problem 2009-01-01 18:17:07 +00:00
Volker Ruppert
d65e860637 - some small progress for user plugin support
* the "init" and "fini" functions of different user plugins can always have
    the same name (tested on Linux and Windows)
  * make sure that a plugin cannot be loaded twice
  * fixed check for the presence of the "fini" function
  * TODO: configuration and load mechanism for user plugins
2009-01-01 12:06:31 +00:00
Stanislav Shwartsman
16275b5298 Fixed msrs.def parsing 2008-12-30 18:16:30 +00:00
Volker Ruppert
815dff019e - converted iodebug device to a plugin 2008-12-30 18:11:13 +00:00
Volker Ruppert
77ee99a7cd - reduce some more dependencies (rarely used options, no Makefile.in update
necessary)
2008-12-30 15:33:38 +00:00
Volker Ruppert
00f312ad6e - update dependencies 2008-12-30 09:37:15 +00:00
Volker Ruppert
618b8fe9b3 - reduce some more dependencies
- compilation fix in usb_msd code
2008-12-30 09:17:09 +00:00
Stanislav Shwartsman
d56c3a18aa reduce include dependencies in iodev.h
Makefile.in in iodev folder have to be regerated !
2008-12-29 20:16:08 +00:00
Stanislav Shwartsman
aff71784fc Fixed possible mmory bug 2008-12-29 19:18:21 +00:00
Stanislav Shwartsman
3fb9d7d712 clean duplicate instrumentation 2008-12-29 18:02:01 +00:00
Stanislav Shwartsman
6134ece1a2 hardware reset on triple fault 2008-12-29 17:46:42 +00:00
Stanislav Shwartsman
b7839dfcbe Optimize repeat I/O calls 2008-12-29 17:35:35 +00:00
Volker Ruppert
67da880ba7 - set up for split screen in text mode if visible only 2008-12-29 08:51:34 +00:00
Volker Ruppert
15ee364a93 - don't skip text update if character height is 1
- removed BX_MAX_TEXT_LINES hack; now check if text screen contents fit in memory
- simplified charmap update handling
2008-12-29 08:16:53 +00:00
Stanislav Shwartsman
5105cf28c4 Update PARAM_TREE.txt with new cpu params 2008-12-28 21:01:18 +00:00
Stanislav Shwartsman
ae2325cafd added msrs def example 2008-12-28 20:54:48 +00:00
Stanislav Shwartsman
9d1a6a8bc2 typo bugfix 2008-12-28 20:53:31 +00:00
Stanislav Shwartsman
6367d3c5d2 Update user docs 2008-12-28 20:49:03 +00:00
Stanislav Shwartsman
e182e74a4d Added ability to define user MSRs spec for emulated CPU 2008-12-28 20:30:48 +00:00
Volker Ruppert
0b7b330c34 - run acpi-dsdt.dsl through cpp before compiling with iasl (to support #ifdef and
maybe other preprocessor directives)
2008-12-27 17:23:23 +00:00
Stanislav Shwartsman
923ebb8864 Update CHANGES 2008-12-27 16:48:27 +00:00
Volker Ruppert
ab1da2f8f3 - the HPET merge from QEMU introduced new structures which need packing (Sebastian Herbszt) 2008-12-27 16:28:49 +00:00
Stanislav Shwartsman
fafe511180 Fixed dbg frontend call 2008-12-27 12:22:13 +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
Volker Ruppert
f2f5d5c915 - applied 3 patches from the Qemu project
* added support for memory above the PCI hole (Izik Eidus)
  * smp_probe: instead of timimg out, wait until all cpus are up (Avi Kivity)
  * Bochs BIOS changes to support HPET in Qemu (Beth Kon)
- added documentation about CMOS registers set by Qemu
2008-12-25 16:58:44 +00:00
Volker Ruppert
f310ea769b - rebuild after latest changes 2008-12-23 09:22:52 +00:00
Volker Ruppert
c3b6fc563f - use "__attribute__((__packed__))" instead of "#pragma pack" (Sebastian Herbszt) 2008-12-23 09:20:43 +00:00
Volker Ruppert
1060c19b04 - added support for booting from option ROM with BCV entry (Laurent Vivier) 2008-12-23 09:20:06 +00:00
Volker Ruppert
975419440c - simplified CMOS setup in floppy init code 2008-12-21 09:41:30 +00:00