- changed argument for the text mode info structure to a pointer
- added attribute controller palette to bx_vga_tminfo_t and removed the
previous implementation
- carbon.cc: attempt to fix the text mode colors (untested)
- x.cc: fixed warnings
to update the status text if there is really a change
- changed the counter resolution to 5 (auto-off still happens after 0.5 seconds)
- the element value -1 is only used to reset the LEDs, so we have to ignore the
status flags
existing "iolight timer" code in the hard drive code. If an LED is registered
with the "auto-off" flag, the device only needs to turn on the LED to indicate
data transfer. The LED timer in the gui code turns it off after 0.5 seconds if
it is not actived by another transfer. Added this feature to all network
devices.
- TODO #1: implement this feature in the USB host controllers
- TODO #2: the unused timer in the hard drive code could be used for the
emulation of seek functions
'sdl'. Now both display libraries can be compiled together and used with the
'show ips' feature. TODO: win32-specific 'show ips' timers for 'rfb' and 'wx'
the existing runtime dialog ('textconfig' is still available)
- removed notify callback redirection from sdl.cc and win32.cc
- removed win32 specific code from textconfig.cc
- fixed parent window for folder selection dialog
- minor size changes in start menu dialog
- Added configure option to compile in GUI frontend for Bochs internal
debugger, to enable configure with --enable-debugger-gui option. The GUI
debugger frontend is enabled by default with Bochs internal debugger.
If needed to compile without GUI debugger (in case of compilation issues) use --disable-debugger-gui
There is a trick in MSVC is to turn on the -Gr compiler switch which tells MSVC to compile all functions using fastcall calling convention. This way you don't have to edit each function declaration. But certain functions must NOT be fastcall, and those are callbacks from Windows which are defined either as cdecl or stdcall. The entry point main() also has to remain cdecl.
Patch by Darek Mihocka
* partial fix for bug #1549873 (SF patch #1766536)
* added keyword "print" to the userbutton shortcut table
* FIXME #1: CTRL+PRINT and ALT+PRINT not working in Win98 guest
* FIXME #2: win32 hosts do not generate the "make" code for "Print Screen"
equal to the Windows desktop size. The hotkey ALT+ENTER can be used to toggle
the window / fullscreen mode (initial SF patch item #1607793 by John Comeau)
- implemented get_capabilities() method (uses desktop size if valid)
- debug break support for "continue" and "step N" commands
- debugger message window shows the last 100 lines of debugger output
- FIXME: tabstops not working in modeless dialog
- FIXME: debugger window is always on top
- TODO: cpu register viewer similar to the wx implementation
- new display library option "windebug" enables the new feature
- simple dialog box with a command line and a multiline text viever
- TODO: implement modeless dialog with cpu registers and it should be possible
to interrupt "continue" and "step N" commands
- win32dialog: fixed function GetBochsWindow()
- textconfig: removed unused save/restore prompt
editing the userbutton shortcut before sending it
- simple userbutton shortcut dialog for the X11 gui implemented
- small fixes in the X11 "ask" dialog code
#1079240 by Ben Lunt. There are still some problems:
- PS/2 mouse is always present (some code to emulate a disconnected mouse needed)
- PS/2 wheel mouse doesn't work properly
- serial wheel mouse detected as a standard mouse and doesn't work at all
Description from the author:
This API allows framebuffer device plugins to draw directly on to the
GUI's tile buffer and hence eliminates the need to memcpy(3C) tiles to
an intermediate buffer. Functions like update_hardware_cursor function
are rendered unnecessary as framebuffer device plugins can now draw the
full range of host colours. svga_cirrus will fallback to calling
graphics_tile_update without a hardware cursor if the GUI doesn't support
the new API. This patch includes implementations of graphics_tile_info,
graphics_tile_get, and graphics_tile_update_in_place (the new API) for SDL
and X11.
- new graphics update API implemented in wx and rfb
- common update functions for guis without support for the new API added (should
be removed after implementing the new API in all display libraries)
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
(based on a patch from Christopher Nelson <paradox@BBHC.ORG>)
* the win32 gui changes the bitmap settings using the bpp argument
* added stubs for all guis except win32
* descriptions of function dimension_update() updated
font usage)
- horizontal and vertical pel panning in text mode implemented (without windows
fonts only)
- separate bitmap for the textmode cursor no longer necessary
- text_update(): unused variable new_start removed
compile time. The old version used this fonts for char heights smaller 14.
If the Windows fonts are enabled, the font heights 12, 14 and 16 are used.
These features are not available in that case:
* charmap change
* char width switch 8/9
* horizontal and vertical pel panning
If the Windows fonts are disabled, the changeable guest font is used and all
implemented features are available. This is the default setting.
TODO: implement horizontal and vertical pel panning
FIXME: Should we add a bochsrc option to control the font usage?
- invalidate character at previous and new cursor location before entering the
update loop
- cursor drawing moved into the update loop
- variables for previous cursor position renamed
in text mode. The new variables 'text_rows' and 'text_cols' are used in the
text_update() function.
- desriptions of the functions text_update() and dimension_update() updated