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
- 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
* 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
- 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
- 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
* 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
* 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
* 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
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
- some more registers converted from struct to Bit16u / Bit32u
- some progress with save/restore support
- small interrupt handling rewrite
- report misaligned read/write access
- 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
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)