Commit Graph

122 Commits

Author SHA1 Message Date
Stanislav Shwartsman
b5a603c8c7 fixed %d->%u format found by cppcheck (patch by Maxim Derbasov) 2015-01-25 21:24:13 +00:00
Volker Ruppert
3d228c4f61 Fixed some other overlapping memcpy() issues. 2014-12-16 02:26:00 +00:00
Volker Ruppert
773ac518b3 Fixed broken MSVC plugins support (many CDECL additions required)
TODO: check for remaining CDECL issues (hdimage mode 'dll') and update project files
2014-06-08 08:40:08 +00:00
Volker Ruppert
7ec9adbb2d Switch to Winsock2 library for all Windows cases 2014-02-15 12:18:15 +00:00
Volker Ruppert
f5944a0b7c Another mouse detection fix: restart rx timer on detection request 2014-01-30 16:54:52 +00:00
Volker Ruppert
7475fbc4c9 Rewrite of the mouse data handling (similar to the bus / usb mouse code) 2014-01-26 13:48:10 +00:00
Volker Ruppert
e3574dabe0 Serial timer code rewritten (no functional changes)
Minor related cleanups
2014-01-25 21:05:49 +00:00
Volker Ruppert
29d40bf9fe Added an optional device-specific Bit8u parameter to the timer structure.
A device can set it with setTimerParam() and read it in the timer handled using
triggeredTimerParam(). Simplified some timer handler by using these methods.
TODO: implement HD / CD seek timer
2014-01-17 18:25:13 +00:00
Volker Ruppert
e141fbf848 Several parameter-related improvements in the serial and parallel code
- Open output file on demand (failure causes BX_ERROR)
- Simplified bochsrc options cleanup
- serial: improved parameter dependencies
2013-12-01 18:26:37 +00:00
Volker Ruppert
f8ea396a2c Several fixes for compiling Bochs successfully in Cygwin64 2013-11-01 18:19:52 +00:00
Volker Ruppert
5b9d937cc1 Make sure winsock.h is included in serial.cc and eth_win32.cc
Including winsock.h not needed in pc_system.cc
Don't specify architecture in gcc 4.7+ example
2013-11-01 16:26:59 +00:00
Stanislav Shwartsman
74c2cb0127 fixed compilation warning 2013-06-25 17:32:33 +00:00
Volker Ruppert
f1c6be0bc8 Serial mouse detection fixes (required for CTMOUSE.EXE)
- added support for 16 bit access to serial port registers
- fixed entering mouse detection mode with DTR/RTS
- report serial port mode in log file
2013-06-16 08:36:47 +00:00
Volker Ruppert
37b1f11fa6 cleaned up serial mode handling and some other minor changes 2013-02-23 15:15:59 +00:00
Volker Ruppert
2daadfcd85 parse serial, parallel and sound bochsrc options using the parameter list
- fixed small bug in the ne2k parser code
- added warnings to the new parser code
2013-01-26 18:17:23 +00:00
Volker Ruppert
34dbbe1c74 save the mouse, serial, parallel and ata resource options using the parameter tree 2013-01-19 22:37:15 +00:00
Volker Ruppert
a2dd985aef - remove registered device state in destructor (fixes crash on Bochs exit with
MSVC plugins)
2012-08-19 08:16:20 +00:00
Volker Ruppert
5994d0e100 - added 'gameport' and 'iodebug' to the default set of plugins (if present)
- use the "auto-unload" feature for 'serial' and 'parallel' plugins, too
- TODO: treat unknown bochsrc directive as plugin name and try to load it
2012-07-08 07:01:25 +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
d71ed03ba1 fixed buffer overflow in serial.cc 2012-04-21 18:13:10 +00:00
Volker Ruppert
99a31bd150 - devices 'parallel' and 'serial':
- added to optional plugin control
  - moved config parameter creation and bochsrc option parsing to the plugin
    device code
2012-04-16 19:17:10 +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
Volker Ruppert
47f2137edf - set device state structure to 0 with memset() for some devices
- cleaned up vga core init code after adding memset()
- floppy: removed structures that had been used for win95 direct access
2012-02-05 10:08:56 +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
Stanislav Shwartsman
01ba2ef2b0 recv can return -1 2011-04-30 18:47:04 +00:00
Stanislav Shwartsman
38ec72ece3 Merged serial port fix from [Bochs-developers] accessing COM1 via telnet.
Upon investigation the problem is easily fixed in bx_serial_c::rx_timer_handler():

<snip>
   ssize_t bytes = read(socketid, &chbuf, 1);
#endif
   if (bytes)
   {
      BX_INFO((" -- COM %d : read byte [%d]", port+1, chbuf));
      data_ready = 1;
   }
<snip>

I think this means the extra check above will give no noticeable degradation of performance, so hopefully this can be applied to SVN.  It would avoid screwing up a running instance of Bochs when a remote network client unexpectedly disconnects from the COM1 tcp port.

Also some cleanup in serial.cc code.
2011-04-30 18:22:35 +00:00
Stanislav Shwartsman
1a7d38c28b bswap optimization patch by Heikki Lindholm + cleanup 2011-04-19 12:48:06 +00:00
Stanislav Shwartsman
00981cd7a6 Adding Id and Rev property to all files 2011-02-24 22:05:47 +00:00
Volker Ruppert
d2fa6b35e6 - MSVC warning fixed 2011-01-14 22:15:37 +00:00
Volker Ruppert
cdfedaa9bc - data type SOCKET doesn't exist on non-win32 platforms 2010-11-23 20:26:37 +00:00
Stanislav Shwartsman
9aa503cb9d fixed warnings for win64 compilation 2010-11-23 14:59:36 +00:00
Stanislav Shwartsman
153d43520d change copyright to bochs project 2009-12-04 19:50:29 +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
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
501952efdd - removed unused logfunctions member 'type' and related method 'settype()'
- updated FSF address in copyright
2009-01-10 11:30:20 +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
fd79c68d72 - fixed some warnings in iodev 2008-12-21 08:56:26 +00:00
Alexander Krisak
9e9ed42dbe fixed msvc 6.0 compilation 2008-08-22 07:58:20 +00:00
Stanislav Shwartsman
599a9b2e32 Fixed bug found by icc compiler 2008-06-18 16:33:44 +00:00
Volker Ruppert
966f2c8133 - added new serial modes based on SF patch #1928848 by Eugene Toder
* "pipe-server" (win32 only): It makes bochs a named pipe server so other
     application can communicate with it using pipes API. Useful e.g. for remote
     kernel debugging.
  * "pipe-client" (win32 only)
  * "socket-server": for the use with gdb
2008-05-22 08:13:22 +00:00
Stanislav Shwartsman
a459a64f3e whispace, tab2space, indent, dos2unix and other cleanups 2008-02-15 22:05:43 +00:00
Stanislav Shwartsman
ae35b0276e white space cleanups and coding style changes 2008-01-26 22:24:03 +00:00
Stanislav Shwartsman
1b8988f698 warnings fixed 2007-10-24 23:17:42 +00:00
Stanislav Shwartsman
071c5c1a26 A lot of changes but everything is really trivial.
Make save/restore default feature, the configure option for save/restore removed from configure script and save/restore made available forever. All code now assume it is exists. Bochs save/restore tree previosly called "save_restore" renamed to "bochs" tree and it will be havily used everywhere, starting from save/restore and ending by various bochs debugger functions. I am going to rework debugger code to get rid of debug CPU access functions and use this "bochs" param tree instead
2007-09-28 19:52:08 +00:00
Stanislav Shwartsman
9d907b5f65 Try to specify everywhere the list size in bx_list_c constructor 2007-04-03 22:38:49 +00:00
Volker Ruppert
d7c627fdc1 - added support for serial 3-button mouse with Mousesystems protocol 2006-12-31 11:56:14 +00:00
Volker Ruppert
f8f01db46a - replaced call of obsolete bcopy() by memcpy()
- the cfmakeraw() function is not available on all platforms (now using code
  that does the same job)
- removed useless strcpy() call
2006-10-08 10:59:21 +00:00
Volker Ruppert
4cf2f745d1 - some fixes to avoid segfaults after early panics
- fixed gameport log type
- wx: store mouse capture mode in the gui code (only access the mouse parameter
  when the capture mode changes)
- wx: don't initialize wxScreen if already done and clear screen on exit
2006-09-12 13:05:07 +00:00
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