Commit Graph

1467 Commits

Author SHA1 Message Date
Volker Ruppert
ad27a15023 Enclose 2 string literals in wxT() macros to fix unicode version (SF bug #1351) 2014-07-27 14:47:55 +00:00
Volker Ruppert
494ed30e95 Some fixes for plugin support with VS2013Ex
- creating extra manifest for bochs.exe no longer needed
- cleaning up temporary manifest files no longer necessary
2014-07-26 06:54:34 +00:00
Volker Ruppert
afb771f08e Optimize drawing in some functions.
Mention SDL2 bug in fullscreen mode: surface dimensions not updated after
resolution change.
2014-07-14 07:58:42 +00:00
Volker Ruppert
e1fe9ee332 Determine display dimensions similar to other guis 2014-07-11 07:20:36 +00:00
Volker Ruppert
cf58d7ac2d Determine maximum host resolution (similar to sdl2 and win32 guis) 2014-07-10 10:31:51 +00:00
Stanislav Shwartsman
e2e549c675 fixed MSVCPP warning 2014-07-09 15:39:47 +00:00
Volker Ruppert
0e14966b06 Determine desktop dimensions in constructor (fixes maximum resolution of Bochs
VBE support).
2014-07-08 16:51:38 +00:00
Volker Ruppert
a565b67293 Moved SDL2 init to constructor to make sure 'sdl_maxres' is initialized before
calling get_capabilities() (fixes Bochs VBE support).
2014-07-08 15:46:46 +00:00
Volker Ruppert
894e66574a Rewrite of the userbutton shortcut handling: now parsing shortcut string in
gui init and string paramter handler. The shortcut keys are now stored in an
array of BX_KEY* values in the gui object.
siminterface.h: Fixed some default return values.
2014-07-08 14:30:27 +00:00
Volker Ruppert
cb8d81defd Added new user shortcut "scrlck" (SDL/SDL2 using "Scroll Lock" for fullscreen toggle).
Cleanups and improvements in the userbutton shortcut code.
Documentation update (mention SDL2, updated userbutton list)
2014-07-07 07:29:08 +00:00
Volker Ruppert
20cc91a7d8 Fixed SVN Id line 2014-07-06 18:30:24 +00:00
Volker Ruppert
df9cd2fdbb Added SVN Id and revision to keymap files 2014-07-06 18:29:06 +00:00
Volker Ruppert
0ddb6600c7 Added new keymaps for SDL2 (U.S. and German keyboard layout) 2014-07-06 18:17:05 +00:00
Volker Ruppert
04ae9e60aa Updated makefile dependencies after adding SDL2 gui 2014-07-06 17:13:53 +00:00
Volker Ruppert
edb3a8b936 SB_Edges array must be of type Bit32s (fixes status bar in Cygwin64) 2014-07-06 14:17:18 +00:00
Volker Ruppert
a1f7fe26ed SDL/SDL2 fullscreen mouse fixes
- SDL/SDL2: fixed mouse movement in absolute x/y mode
- SDL2: always capture mouse in fullscreen mode (like legacy SDL gui)
- SDL: don't handle headerbar click in fullscreen mode
- SDL/SDL2 code sync
2014-07-05 08:00:01 +00:00
Volker Ruppert
2bfd78fa45 SDL2: added experimental fullscreen mode support 2014-07-03 20:17:19 +00:00
Volker Ruppert
c7ae0310ac SDL2: fixed link failure caused by the SDL font usage in the 'rfb and 'vncsrv'' guis 2014-07-02 21:08:54 +00:00
Volker Ruppert
d9b3c3b91b Added simple 'ask' dialog box for the SDL2 gui on non-Windows platforms 2014-06-29 07:37:58 +00:00
Volker Ruppert
3e2acd21ac Fixes for the SDL2 gui on Windows 2014-06-28 23:49:10 +00:00
Volker Ruppert
a2ee3b4931 Some more work on the new SDL2 gui
- added keyboard mapping support (TODO: update keymap files)
- added simple application icon
- minor mouse handling fix
2014-06-28 13:25:52 +00:00
Volker Ruppert
36842943f5 Some work on the new SDL2 gui
- fixed compilation with gui debugger enabled
- added mouse wheel support
- added gui option "nokeyrepeat"
2014-06-28 08:18:26 +00:00
Volker Ruppert
a643105a9c Added initial SDL2 gui code, use --with-sdl2 to enable it.
TODO list:
- fullscreen mode, keyboard mapping, mouse wheel support
- take advantage of new SDL2 features
- Windows port not yet tested
2014-06-27 20:53:20 +00:00
Volker Ruppert
ccc66ad4d7 Cleaned up SDL gui code (no functional changes - SDL2 support will appear in
a separate file)
2014-06-27 20:26:03 +00:00
Volker Ruppert
3c0ad43092 Continued preparing Bochs for SDL2 support
- added new symbol BX_WITH_SDL2 and prepared build system
- TODO #1: add new option --with-sdl2 to configure script
- TODO #2: add new file sdl2.cc (porting seems hard to do - writing from scratch
  might be better)
2014-06-23 19:37:58 +00:00
Volker Ruppert
c188a6ba5d Started preparing Bochs for SDL2 support. Set up GUI_LINK_OPTS_SDL in the
configure script (SDL2 uses 'sdl2-config' instead of 'sdl-config').
2014-06-21 08:22:22 +00:00
Volker Ruppert
5602e1b676 Added new symbol BX_USE_WIN32CONFIG in config.h and cleaned up related code 2014-06-20 09:31:56 +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
4f2a23602b Fixed ugly side effect of the win32 fullscreen changes
- don't try to resize the simulation window if minimized (iconic)
- handle window size correction in the gui event handler and by calling
  resize_main_window(FALSE), since fullscreen mode is not always required
2014-06-05 20:12:44 +00:00
Volker Ruppert
0c833ad58f Some changes in dimension_update()
- switching to a resolution > desktop size now causes a BX_ERROR
- stretch VBE demo mode 320x200 to double size
2014-05-30 10:12:13 +00:00
Volker Ruppert
42afaef2ba Load floppy plugin after the display plugin and simplified related init gui code. 2014-05-26 17:04:02 +00:00
Volker Ruppert
acea38455b Continued work on win32 fullscreen rewrite
- fixed screen flickering after entering fullscreen for the second time
- now using resize_main_window() directly for leaving fullscreen mode
- dimension_update() now only used for guest display mode change
- TODO: more testing to find cases that can make Bochs crash
2014-05-23 19:28:23 +00:00
Volker Ruppert
a15bc4acc4 Some more work on the win32 fullscreen mode
- moved fullscreen mode enable/disable stuff to a new function
- now only use dimension_update() for leaving fullscreen mode
- fixed fullscreen issues in text mode
- TODO: check if guest display is too large and add a proper handling for this case
2014-05-22 19:06:01 +00:00
Volker Ruppert
255198baa8 Added some workarounds for the win32 fullscreen mode
- changing from window mode to fullscreen and back now looks okay
- changing guest resolution in fullscreen mode now also works
- TODO #1: rewrite of the window / fullscreen code to avoid using dimension_update()
  to toggle the internal mode
- TODO #2: add size checks in dimension_update() to avoid crash. We could panic
  at this point or compress screen to desktop size.
2014-05-20 18:42:36 +00:00
Volker Ruppert
fdbbdf254f Initial win32 fullscreen fixes
- send lost ALT keyup event after closing notification message box
- disable border of simulation window in fullscreen mode
- TODO #1: fix window sizes after leaving fullscreen mode
- TODO #2: add screen size checks to avoid crash
2014-05-18 19:13:35 +00:00
Volker Ruppert
0a6274c2af Fixed bx_shadow_bool_c method set() to make it work with initial value "1".
This fixes the floppy malfunction after restore and maybe other issues. The
buggy code failed to clear the DMA controller mask bits and the floppy DMA
requests never arrived at the CPU.
2014-05-13 21:10:31 +00:00
Volker Ruppert
6616afa7a9 Fixes and improvements log options save/restore methods
- device prefix size needed update, but now using log function name instead
- don't use overlapping strcpy() (increment pointer and one single strcpy())
- now using get_logfn_id() to simplify code
TODO: fix floppy access failure after restore
2014-05-12 17:30:05 +00:00
Volker Ruppert
ed41df332a Support for compiling plugin version of Bochs with MSVC nmake now complete.
- embedding combined manifest makes BOCHS.EXE usable
- list of DLL plugins now depends on the pci and debugger options
- 'make clean' now removes the generated manifest files
- renamed variable for external rules
- documentation update
2014-05-03 10:58:10 +00:00
Volker Ruppert
bb8444fdb1 The ask() method now returns even in the "quit" case. The calling method then
terminates the simulation with fatal().
X11 ask dialog: increase string size for device prefix.
TODO: the "format string vulnerability" in fatal() is still not fixed.
2014-05-01 14:34:32 +00:00
Volker Ruppert
900c0fddc4 Temporarily added targets for MSVC nmake plugins in network, sound and usb
sections. A better solution must be found for the basic set of device plugins
in iodev that don't require special rules.
Switched back to the original gui macro naming for linking plugins.
2014-04-27 07:46:33 +00:00
Volker Ruppert
95346323af Added MSVC nmake support for the gui plugins nogui, rfb and win32.
Updated comments about DLL plugins in makefiles
2014-04-25 16:07:26 +00:00
Volker Ruppert
eb484919fe Next step for plugin support with MSVC nmake: device plugins that need special
rules can be built now (keyboard, pit, gameport, serial, vga, svga_cirrus,
hdimage, netmod, soundmod, usb_common). The generated DLLs are usable with the
BOCHS.EXE built with the IDE, but the nmake won't work at all yet.
2014-04-21 18:43:22 +00:00
Volker Ruppert
3273a24c1e Use realtime mode for the "LED auto-off" timer if enabled 2014-04-07 17:37:07 +00:00
Volker Ruppert
994f908438 Fixed memory leaks found with valgrind 2014-04-06 19:01:38 +00:00
Volker Ruppert
2777ac0dc5 Added separate target for MSVC plugins (causing an error for now) 2014-04-06 07:22:16 +00:00
Volker Ruppert
76a03aa1f0 Networking-related fixes
- bx_param_string_c method isempty() didn't work for raw byte strings. Now using
  it to check whether or not the current value matches the initial one. The
  parameter handling of the network adapters now use this method to check if
  the MAC address is already initialized to avoid incorrect BX_ERRORs.
- small documentation update
2014-03-10 19:05:46 +00:00
Volker Ruppert
7ec9adbb2d Switch to Winsock2 library for all Windows cases 2014-02-15 12:18:15 +00:00
Volker Ruppert
cf93269380 Define WIN32_LEAN_AND_MEAN to make using Winsock2 possible (for vncsrv and slirp).
TODO: change include statements to winsock2.h and link with ws2_32.dll.
2014-02-15 00:23:36 +00:00
Stanislav Shwartsman
09414f2f4b implemented access to opmask AVX-512 registers from debugger, fixed enhdbg buffer overflow with EVEX enabled 2014-02-11 20:51:18 +00:00
Volker Ruppert
63cb7f93bf Small bugfix for Windows: set / clear menu item check mark for log viewer 2014-01-13 22:04:39 +00:00