Volker Ruppert
976cec630d
- fixed uninitialized value found with valgrind
2009-05-10 07:57:26 +00:00
Volker Ruppert
6a1a080010
- override optional plugin control settings for 'acpi' and 'pci_ide' if PCI
...
support is disabled
2009-05-05 16:13:13 +00:00
Stanislav Shwartsman
fcd33dbdc5
SF patch IO Handler names are not compared properly
2009-05-01 09:12:07 +00:00
Stanislav Shwartsman
4c06bb8657
SFbugfix - "an integer overflow BUG of Bochs-2.3.7 source code"
2009-04-30 07:30:13 +00:00
Volker Ruppert
94a4710c5c
- fixed crossing of the 4k boundary (USB disk on OHCI now works in Win98SE)
2009-04-29 18:16:31 +00:00
Volker Ruppert
4d98a816ad
- for OUT transfers don't set the completion condition until all data is sent
...
to the device and process TD repeatedly until CC is modified (fixes MSD
connected to OHCI with Linux guest)
- fixed CBP calculation and split transfer to memory when crossing the 4k
boundary (makes 8k transfers work according to the specs: fixes Win98 guest crash)
- don't enable the status bar i/o indicator if it's ID is not valid (no space
left in status bar)
- minor debug message fixes
2009-04-28 22:57:06 +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
a1e65bae3a
- bx_dbg cleanup in the keyboard and harddrv code
...
- several other debug message cleanups
2009-04-25 08:06:32 +00:00
Volker Ruppert
3a3b3f5b07
- bx_dbg cleanup in the floppy and unmapped code (using BX_DEBUG now)
2009-04-24 14:57:25 +00:00
Stanislav Shwartsman
2a268ecd5b
small cleanup
2009-04-24 08:16:06 +00:00
Stanislav Shwartsman
cb312c9470
make port_e9_hack runtime option (and not configure time)
...
clean-up a bit in bx_dbg struct in bochs.h
2009-04-23 18:28:17 +00:00
Volker Ruppert
c85367fe80
- simplified PCI config space write debug messages for the current i/o length
...
- removed full device name from debug messages, since the device is specified
by it's prefix. Full name is only required in a BX_INFO() in init().
- removed BX_PANIC messages that will never happen
2009-04-23 15:52:53 +00:00
Stanislav Shwartsman
e52cff7da3
remove very ugly and unsafe code (string functions are evil!) - new code is also 10 times faster.
2009-04-22 19:11:01 +00:00
Volker Ruppert
6a78f0d769
- removed extended debug output in some PCI config space read handlers
...
- small changes in some debug messages to make the log better readable
2009-04-22 18:37:06 +00:00
Stanislav Shwartsman
eab5f0fe7d
some ifdefs
2009-04-21 20:32:20 +00:00
Stanislav Shwartsman
23326d86b6
fixed warning
...
unify names of debugger dump methods
2009-04-21 20:27:35 +00:00
Volker Ruppert
9408acde0d
- update
2009-04-21 19:10:13 +00:00
Volker Ruppert
def1553ab5
- removed a bunch of unnecessary io_len checks
2009-04-21 17:53:29 +00:00
Stanislav Shwartsman
79d45186fd
Docs about devices
2009-04-21 17:25:07 +00:00
Volker Ruppert
b6aa6b3f47
- fixed some warnings when compiling with VS2008Ex
...
* converted some functions to ISO-C syntax
* use Sleep() instead of _sleep()
* now using type Bit32u for cdrom LBA
2009-04-21 15:37:17 +00:00
Volker Ruppert
f751373219
- minor bugfix in the cdrom media change detection (ported from Qemu)
2009-04-21 10:18:42 +00:00
Volker Ruppert
bff8ea8831
- ported SCSI CD-ROM fixes/improvements from Qemu (patches for Qemu written by
...
Juergen Lock)
2009-04-19 19:25:50 +00:00
Volker Ruppert
ac1401a1cc
- now using function write_pktlog_txt() for all ethernet modules that support
...
ethernet packet logging in text format
2009-04-19 17:25:40 +00:00
Volker Ruppert
154e1c252e
- don't clear mouse button state when setting up USB packet (holding button
...
down has generated double-clicks)
- fixed some comments
2009-04-17 12:20:17 +00:00
Volker Ruppert
255143fa87
- updated iodev and gui Makefile dependencies
2009-04-15 06:10:28 +00:00
Volker Ruppert
84d5641e34
- lowlevel network drivers now using the log prefix of the network device it
...
belongs to. This is important when we want to implement other network devices
or add support for multiple devices of the same type.
- improved some info messages / removed references to ne2k
- code cleanup: removed unnecessary spaces, changed tabs to spaces
2009-04-13 13:33:11 +00:00
Volker Ruppert
99221c93b9
- changed hub type to support 64 byte max. packet size
...
- added BX_ERROR messages for unsupported setup features
- removed obsolete comment
2009-04-12 07:26:58 +00:00
Volker Ruppert
fd867bb311
- fixed counter programming behaviour (new value should be transferred to the
...
counter at the CLK pulse, not the next timer event)
- code cleanups
2009-04-11 07:04:52 +00:00
Volker Ruppert
a342f0bfe6
- usb_msd: return status packet after partial disk write (Win98SE needs this)
...
- usb_hub: removed unnecessary include
- don't accept IN and OUT packets if a device is stalled (SETUP packet clears
this mode)
2009-04-10 20:26:14 +00:00
Volker Ruppert
1020f9d9ea
- vbe_set_base_addr() fixed for win32 plugin support
2009-04-10 14:41:29 +00:00
Volker Ruppert
b6a2eca248
- implemented changeable VBE LFB base address (TODO: update PCIBIOS init)
2009-04-10 11:10:32 +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
Volker Ruppert
e7a4178b47
- USB HID descriptor for mouse, tablet and keypad added
...
- USB HID devices and hub: don't return status if device is not configured
2009-04-10 07:12:25 +00:00
Volker Ruppert
adb5243f25
- added unique serial number for the USB hub (multiple hubs now working on Win98)
2009-04-09 17:32:53 +00:00
Volker Ruppert
455e7730f0
- don't turn on status bar leds for empty packets
2009-04-07 10:56:19 +00:00
Volker Ruppert
11fa3b2c4a
- added runtime configuration parameters for USB cdrom drive
...
- scsi_device: changed some variable types
- usb_hub: removed unused method
2009-04-06 15:36:55 +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
b7842a169a
- the status bar indicators for the USB HCs now show the data transfer
2009-04-06 09:30:26 +00:00
Volker Ruppert
ccdd32c111
- prepared media change support in the SCSI cdrom code
2009-04-05 16:28:35 +00:00
Volker Ruppert
fab6f61199
- list option SERIES_ASK is required at runtime when using textconfig
2009-04-05 16:28:02 +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
Volker Ruppert
86f2615dc9
- fixed SCSI cdrom support (missing completion call) and enabled USB/SCSI cdrom
...
support in USB config
- added unique serial number for USB/SCSI drives
- fixed maximum LBA value
2009-04-03 16:42:56 +00:00
Volker Ruppert
2ef1be6284
- ported most of the SCSI disk changes from Qemu to Bochs
...
- minor changes in SCSI command 0x23 (this command is designed for USB floppy
support - we have to check if it is really needed for flash sticks and
external hard drives)
- usb_msd: fixed indention
2009-04-01 18:19:46 +00:00
Volker Ruppert
365fa7fa35
- another bugfix by Ben Lunt
2009-04-01 07:27:34 +00:00
Volker Ruppert
ef901c0b0d
- minor bugfixes
2009-03-31 20:05:30 +00:00
Volker Ruppert
c7ad2a9515
- implemented SCSI command 0x23
2009-03-31 20:04:56 +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
773b0ab8c2
- fixed debug output (max. 16 hex bytes per line)
2009-03-29 07:56:28 +00:00
Volker Ruppert
9081334b9e
- added stub for the verify command
2009-03-29 00:22:03 +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
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
8e92378b7b
- enable handlers for disk parameters are no longer needed, since the enable
...
behaviour is controlled by the new enum dependent list feature
- moved runtime parameter setup for cdrom drives to the harddrv code
2009-03-21 00:50:53 +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
2b6ba5e44c
- definition of the number of USB ports moved to bochs.h
...
- create config parameters for USB depending of the defined number of ports
- removed obsolete comment
- bx_param_num_c flag USE_SPIN_CONTROL now available for all config interfaces
2009-03-15 12:54:59 +00:00
Volker Ruppert
c0d9238170
- number of ports for the external hub can be configured with the device name
...
now. Valid values are 2 to 8 and the default is set to 4 ports (device name
"hub" uses the default, "hub:7" enables 7 ports.
2009-03-12 20:24:56 +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
55d20d99ee
- don't set TRACK0 status for non-existing drive
2009-03-08 08:22:23 +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
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
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
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
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
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
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
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
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
30c63c773c
apic.h is not needed for ioapic.cc
2009-02-22 17:37:09 +00:00
Volker Ruppert
790eec83ca
- converted I/O APIC to a device plugin
...
- updated dependencies
2009-02-22 10:44:50 +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
2304f2abf1
reduce dependencies from CPU/APIC.H
2009-02-20 22:00:42 +00:00
Stanislav Shwartsman
31a367283a
small optimizations for apic code
2009-02-19 23:19:11 +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
Volker Ruppert
717c528cd6
- fix for USB drive on Win98SE
2009-02-17 16:43:51 +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
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
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
Volker Ruppert
cb9990af95
- set hostname to NULL to avoid crash
2009-02-07 10:11:19 +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
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
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
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