Commit Graph

41 Commits

Author SHA1 Message Date
Volker Ruppert
190b9391cf - delete the device object in the plugin_fini() function of each plugin device
(TODO: find a way to call plugin_fini() for non-core devices if plugins are
   disabled)
- set the device pointers back to stubs after unloading plugins
- added debug message "Exit" in all device plugin destructors
2006-09-10 17:18:44 +00:00
Volker Ruppert
1fdd8e9116 - added comment from Ben Lunt 2006-08-20 09:19:59 +00:00
Stanislav Shwartsman
fee48d74e0 Avoid doing strdup for param name field - most of the strdups elliminated ! 2006-05-29 22:33:38 +00:00
Stanislav Shwartsman
8b0df8e99b Merge SAVE_RESTORE branch to CVS 2006-05-27 15:54:49 +00:00
Volker Ruppert
2e144d5862 - changed some function argument and return types from char * to const char *
(grabbed from patch included in FC5 Bochs package for wxWidgets 2.6.x)
2006-03-13 18:55:53 +00:00
Stanislav Shwartsman
77653bcf3d More indent and C++ style changes (explicitly write virtual before virtual desctructors).
The PCI read/write handlers written in new C++ - more flexible and easy-to-understand
2006-03-07 21:11:20 +00:00
Stanislav Shwartsman
242c2fa51c Style and indent changes 2006-03-07 18:16:41 +00:00
Stanislav Shwartsman
c0aeb1b073 Substitute NULL to BX_CPU_C parameter instead of BX_CPU(0) for memory ops originated by devices 2006-03-06 19:23:13 +00:00
Volker Ruppert
154702eaca - serial, parallel and usb options rewritten to a parameter tree
- bx_init_options(): local variables cleanup
- hide floppy devtype parameter (floppy media type change support not yet complete)
- wx: menu order changed
- keyboard.cc: removed obsolete FIXME
- proposed parameter tree updated
2006-03-01 17:14:36 +00:00
Volker Ruppert
c47508bdb1 - keyboard and mouse options rewritten to a parameter tree
- siminterface method ask_param() can now handle new-style parameters
- proposed parameter tree updated
2006-02-22 19:18:29 +00:00
Volker Ruppert
e939a43b3d - invalid read/write operations now cause an error instead of a panic
- byte reads from port registers now supported
- report USB revision 1.0
2006-01-11 21:39:34 +00:00
Volker Ruppert
f92a666e70 - minor USB updates from Ben Lunt 2005-11-30 18:34:59 +00:00
Volker Ruppert
c227c822b8 - USB runtime parameter handling prepared in the device code 2005-11-29 20:46:17 +00:00
Volker Ruppert
fa996ca9de - don't register i/o and memory address ranges during PCI probe
- PCI devices now report real base address changes only
- writes to the high word of i/o base addresses now permitted (for PCI probe)
2005-11-15 17:19:28 +00:00
Volker Ruppert
611acd047c - some more usb fixes by Ben Lunt
- small hack for debug messages from the start added (disabled by default)
2005-11-08 18:49:45 +00:00
Volker Ruppert
9934d3b46b - prepared USB flash stick implementation (patch by Ben Lunt - not yet complete) 2005-11-07 19:06:05 +00:00
Volker Ruppert
82d009c632 - some more usb fixes by Ben Lunt
- missing interrupt on resume added
2005-11-05 12:57:18 +00:00
Volker Ruppert
afd665f369 - some more usb fixes by Ben Lunt 2005-10-30 10:02:51 +00:00
Volker Ruppert
0784eac61c - some fixes to usb support from SF patch #1340111 by Ben Lunt 2005-10-29 09:12:39 +00:00
Volker Ruppert
a434503a02 - PCI command register behaviour fixes in some devices 2005-09-23 19:31:12 +00:00
Volker Ruppert
ae3621fb5f - removed temporary PCI base address initialization in the reset() functions
- removed obsolete parameters for usb1 and pnic (now assigned by the PCI BIOS)
- PCI base address register mechanism now leaves the flags untouched
- missing reset of pnic options added
2005-09-22 21:12:26 +00:00
Volker Ruppert
8d2d2bd83b - redirect mouse data to USB only when an USB mouse is connected
- connect USB mouse only when the mouse type is set to 'usb'
2005-01-21 16:07:38 +00:00
Volker Ruppert
2c001794a2 - USB keypad now supported (patch from Ben Lunt)
- USB port config option now handled in the pciusb code (the devices "mouse" and
  "keypad" are currently supported)
2005-01-14 18:28:47 +00:00
Volker Ruppert
aa5fa1daf3 - prepared usb port configuration parameter and removed usb irq parameter
(assigned by BIOS)
- fixed some issues in bx_write_configuration()
- fixed bug in ne2k/pnic option parser (failed when disabling disabled device)
2004-12-30 14:50:37 +00:00
Volker Ruppert
e5c667a4a5 - fixed mouse pointer movement by using delayed one if no move is present
- fixed USB port numbers according to the specs
2004-12-26 09:28:35 +00:00
Volker Ruppert
3ee4cd39b4 - applied new pciusb patch by Ben Lunt that makes the USB mouse work on Linux 2004-12-24 21:38:01 +00:00
Volker Ruppert
5c2ccc7d90 - applied new pciusb patch by Ben Lunt
* re-insert usb mouse works now (Win98/Win98SE)
  * Win98 shutdown problem fixed
  * Linux HCRESET problem (device connection still fails)
  * USB keypad code added (not enabled yet)
2004-12-19 09:59:40 +00:00
Volker Ruppert
17b29a0b30 - applied a set of patches from SF patch #1083218 by Ben Lunt with some changes
- mouse type constants changed to enum values and related changes in config.cc
2004-12-16 19:05:01 +00:00
Volker Ruppert
78218d8b1b - implementation of bus mouse and usb mouse started - NOT YET COMPLETE !
(SF patch #1082584 by Ben Lunt)
2004-12-11 08:35:33 +00:00
Volker Ruppert
b5e4d0666b - temporary pci irq initialisation removed from pci devices (now done in the
PCI BIOS)
2004-09-25 22:15:02 +00:00
Volker Ruppert
c3cdd7ef21 - applied some changes from patch #966105 (bugfixes, message type changes)
- report irq line change similar to other pci devices
2004-09-16 18:34:10 +00:00
Volker Ruppert
d06c80cee3 - changed all iodev config macros to BX_SUPPORT_xxx
- removed incorrect SDL/ prefix from include paths (patch from Robin KAY)
2004-08-06 15:49:55 +00:00
Volker Ruppert
a17fb79623 - removed old style i/o and irq register mechanism
- i/o access mask fixed
2004-07-12 17:34:28 +00:00
Volker Ruppert
c9a113d623 - new functions for pci base address handling for memory and i/o space 2004-07-11 20:38:48 +00:00
Volker Ruppert
c6834907ad - pci irq routing fixed and initialization added (BUG: ne2k-pci only works with
irq 11 in Win95)
- bios: irq routing table fixed and updated for 5 slots
- ne2k: unnecessary reset call in init() removed
- usb: don't execute reset if disabled
2004-07-04 17:10:05 +00:00
Volker Ruppert
8edad22893 - pci irq routing implemented (used by ne2k-pci)
- ne2k: fixed word writes to page 0 reg 0x0f
2004-07-01 22:18:20 +00:00
Volker Ruppert
ae180cc46a - pci slot register mechanism added
* up to 5 slots can be specified with the 'i440fxsupport' config option
  * the pci slot number are hardwired to pci device numbers
  * the 'devfunc' value is returned the calling device (useful for multi-function
    devices)
  * the core of the i440FX chipset is hardwired to pci device 1 + 2; usb is still
    optional and appears at device 1, function 2
- ne2k: enable pci features if connected to a pci slot
- ne2k: asic data port supports 32-bit access if ne2k-pci is active
- pci2isa: improved error messages for ELCR1 and ELCR2
2004-06-29 19:24:34 +00:00
Stanislav Shwartsman
5873b26a82 Speed up compilation process.
bochs.h already not include iodev.h which reduces compilation dependences for almost all cpu and fpu files, now cpu files will not be recompiled if iodev includes was changed
2004-06-19 15:20:15 +00:00
Volker Ruppert
322b428cec - don't register i/o port address base+0x14 (comparison fixed) 2003-02-06 19:09:24 +00:00
Volker Ruppert
4e75ccea04 - moved declaration of variable 'i' to the top of the reset() function
(multiple usage of localized variables is okay for gcc, but not for MSVC)
2003-02-02 10:24:26 +00:00
Volker Ruppert
f25a3df39b - added minimal USB support (patch from Ben Lunt <fys@cybertrails.com>, updated
and improved by Christophe Bothamy and Volker Ruppert)

Comment from the author:

Attached is a "patch" file detailing what you need to do
to add USB support (UHCI only for now) to your existing
Bochs (2.0.xx) source code.

I use Win32 and VC++ but the source and modifications
should be platform and compiler independant.

Please let me know if this patch some how breaks the
build process of your compilation (Bochs 2.0.0 or above
only).

I would also like any feedback on how this code works
(or doesn't work) on your platform and within your
images. If you explain in as much detail as you can on
how it did or did not work, I will try to add to the source
to help it work on all platforms and images.
2003-01-28 16:58:10 +00:00