543 Commits

Author SHA1 Message Date
Volker Ruppert
49fcc6a9c7 - text_update(): calculation of visible text columns fixed
- text_update(): font bitmap update optimized
2003-05-13 20:38:35 +00:00
Volker Ruppert
2e9f9f4929 - char width switch feature (8 / 9 pixels) implemented in display library win32.
If the font height is smaller than 14, a Windows font with a fixed width of
  8 is used (minimum height 12).
2003-05-13 18:44:23 +00:00
Volker Ruppert
1db6fa2367 - function text_update() of the display library win32 rewritten and
line offset feature implemented
2003-05-12 19:53:22 +00:00
Volker Ruppert
3a788ddcf4 - char width switch feature (8 / 9 pixels) prepared for all display libraries
and implemented in SDL
  * sequencer controller register 0x01 bit 0 controls the width of the characters.
    This value is used to calculate the screen width.
  * attribute controller register 0x10 bit 2 controls the appearance of graphics
    characters (ASCII 0xC0 - 0cDF). A change of this value forces a charmap update
    to rebuild the font bitmaps.
  * the SDL display library uses the new feature described above
  * the other display libraries recalculate the screen width, since they are using
    a fixed font width of 8 for now.
- VGA: attribute controller register 0x10 bit 2 (enable_line_graphics) does not
  switch the palatte in CGA mode
2003-05-11 15:07:54 +00:00
Volker Ruppert
846ffa3dba - function text_update() of the display libraries wx and x rewritten and
line offset feature implemented
2003-05-11 08:29:23 +00:00
Volker Ruppert
b9a25b15e1 - horizontal and vertical pel panning in text mode implemented
- line offset handling simplified
- calculate textres_x and textres_y after changing the font dimensions
- unnecessary size check in function dimension_update() removed
2003-05-10 17:03:36 +00:00
Volker Ruppert
febaa1c589 - in function text_update():
* line offset support added
  * background color fixed
  * removed unnecessary variables cs_start and cs_end
2003-05-09 16:26:03 +00:00
Volker Ruppert
5ab9786871 - function text_update() prepared for new features. New structure
'bx_vga_tminfo_t' replaces variable 'cursor_state'.
2003-05-07 19:15:47 +00:00
Volker Ruppert
475a5af179 - disable IME for the simulation window (needed the Japanese versions of Windows)
- vertical stretching feature removed (replaced by the VGA doublescan feature).
  Horizontal stretching is still required for the text mode 40x25
2003-05-04 16:03:23 +00:00
Christophe Bothamy
f43d2fe3e9 - backport of the BRANCH_HARDDISK_MODES to the main branch.
You can now choose for each disk on the ata interfaces the
  disk mode, between :
    - flat : one file flat layout
    - concat : multiple files layout
    - external : developer's specific, through a C++ class
    - dll : developer's specific, through a DLL
    - sparse : stackable, commitable, rollbackable
    - vmware3 : vmware3 disk support
    - undoable : flat file with commitable redolog
    - growable : growing file
    - volatile : flat file with volatile redolog
    - z-undoable : gziped flat file with commitable redolog
    - z-volatile : gziped flat file with volatile redolog
  A new "bxcommit" utility can merge commitable redologs to
  flat images.
2003-05-03 16:37:18 +00:00
Volker Ruppert
f37b0e734a - new Belgian keymap from Wouter Verhelst 2003-05-02 22:19:05 +00:00
Christophe Bothamy
c315867248 - fix black stripes on partial exposes
- headerbar redraw optimizations
  (both changes by Dirk Thierbach)
2003-04-28 12:28:08 +00:00
Nicholai Benalal
41e6bdd214 forgot to free some stuff in set_clipboard_text 2003-04-08 17:56:45 +00:00
Nicholai Benalal
e42668916f stupid bug 2003-04-08 17:53:12 +00:00
Nicholai Benalal
14b3f4b7ec clipboard support 2003-04-06 15:48:58 +00:00
Nicholai Benalal
99b24650b4 automatic disabling of mouse as bochs window goes inactive, a few other minor changes 2003-04-04 22:27:47 +00:00
Sigbjrrn Skjcret
c9afc1f65d Updated to latest changes... 2003-02-21 15:06:18 +00:00
Volker Ruppert
7cdea60d53 - key event handling of the win32 gui fixed. Now the function
DEV_kbd_gen_scancode() is called instead of DEV_kbd_put_scancode(). This
  change enables the support for different scancode sets. The win32 scancodes
  are now converted to bx_key values.
2003-02-17 19:08:12 +00:00
Volker Ruppert
b716dafbcc - user_shortcut feature: new key name "bksp" (backspace) added
- function userbutton_handler(): stop parsing the shortcut string if the
  key name is invalid
- function userbutton_handler(): incrementing variable 'len' simplified
- function snapshot_checker(): fixed a warning
2003-02-09 18:59:19 +00:00
Christophe Bothamy
579f3c0539 - apply Ben Lunt's 160k, 180k, 320k floppy patch 2003-02-06 23:16:56 +00:00
Volker Ruppert
7911dd0c4f - background color changed from white to "none" (button color is used now) 2003-02-03 18:42:56 +00:00
Christophe Bothamy
7ebce64e8d - exit method does nothing unless specific_init was done 2003-01-30 18:41:00 +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
Volker Ruppert
6ff44748da - font size hack in function dimension_update() removed. The X11 window now
appears with the right dimensions. Font sizes other than 16 are working now.
  The maximum font height in text mode is 32.
- the text mode cursor is now drawn with the right colors
2003-01-18 12:05:46 +00:00
Christophe Bothamy
8904c62b90 - add vga charmap change support 2003-01-17 18:16:02 +00:00
Christophe Bothamy
090fb80a35 - apply patch.x11-internal-vgafont
We don't need the vga.pcf font anymore.
  This will save some install troubles to many users.
2003-01-16 21:14:11 +00:00
Volker Ruppert
9b57ad6ca8 - fixed segfault in log action dialogs - the new log type "pass" was missing 2003-01-04 11:47:00 +00:00
Volker Ruppert
31a4a389a1 - dimension_update(): the toolbar window must be resized too (important for
SVGA and VBE graphics modes)
2003-01-02 09:49:48 +00:00
Volker Ruppert
96c03a93ca - only enabled ATA channels with a cdrom connected are available in the "Edit"
menu at runtime
2002-12-30 17:04:43 +00:00
Volker Ruppert
b78b65b845 - new application icon for the X11 gui using 'icon_bochs.xpm' 2002-12-30 13:17:39 +00:00
Volker Ruppert
4078aba5f0 - replaced window register call RegisterClassEx() by RegisterClass(). This fixes
the icon problem on Win2000. RegisterClassEx() would be required if we want
  to specify a special mini icon.
- the win32 gui now uses the new function/macro DEV_vga_actl_pal_idx() to
  determine the text mode colors.
2002-12-29 18:39:21 +00:00
Volker Ruppert
51c9c6c83a - bugfix for the textmode colors: the color value is not an index to the DAC
palette - it's an index to the attribute controller palette index.
  The new function get_actl_palette_idx() now returns the real DAC index.
  The guis sdl, wx and x11 are using the new function. TODO: Fix this bug in
  all other guis.
2002-12-28 11:49:17 +00:00
Volker Ruppert
ef8a7b1dc6 - new application icon for the win32 gui using 'bochs.ico' 2002-12-26 18:24:41 +00:00
Volker Ruppert
9f8e541a4f - new application icon for wxMSW using 'bochs.ico'
- new application icon for wxGTK using new icon 'icon_bochs.xpm' (converted from 'bochs.ico')
2002-12-25 17:13:45 +00:00
Bryce Denney
6a44ca37ed Patch name: patch.carbon-startup
Authors: Br'fin, Bryce

- for MacOSX/Carbon, if you start the app by double clicking in the finder,
  there is no text console.  So in logfunctions::fatal(), display the
  final message in a Carbon dialog instead of using fprintf.
- in the text-mode config interface, return an error code if the
  user tries to use the text menus when there's no text console.
  Back in bxmain() this error code causes a panic
  "Bochs needed the text console, but it was not usable"
- if a config file was not found, normally we turn off quick start
  and drop into the text menus.  However in the no-console case the
  text menus won't work, so we added a panic: Unable to start Bochs
  without a bochsrc.txt and without a text console.  This is a much
  more useful error than the generic one above.
- removed ensure_text_console() which was making matters worse instead
  of better.

Modified Files:
  logio.cc main.cc gui/siminterface.cc gui/siminterface.h gui/textconfig.cc
2002-12-17 05:58:45 +00:00
Gregory Alexander
78d0f43b94 Added mask support to snapshot code.
This makes it more versatile.
2002-12-17 05:17:41 +00:00
Gregory Alexander
d90c6636ff Added support for a PASS log level. This probably
isn't complete, but it hopefully will do the job.
2002-12-17 03:36:53 +00:00
Bryce Denney
6b21b27e60 - BX_EXIT(exitcode) is called in several places, but the exitcode has been
completely ignored and Bochs has always been returning 0.  Now Bochs should
  exit with the proper exit code.
- implementation: BX_EXIT(exitcode) calls SIM->quit_sim(exitcode).
  quit_sim stores the exit code in the SIM object, then uses longjmp
  to unwind the stack and return to main().  main() calls
  SIM->get_exit_code() to retrieve the exit code and returns it.
- If you are wondering why we don't just call exit(exitcode), it is
  because in the wxWindows interface all of the CPU simulation runs as one
  thread while the user interface runs as another thread.  With the longjmp
  technique the simulation thread ends cleanly and it is possible to
  start a new simulation thread without making a new process.
2002-12-16 06:43:02 +00:00
Gregory Alexander
b522c1dcf3 Enhanced support for text snapshot checking.
Now CR/LF creation is suppressed in win32 when text
snapshot checking is on.  This allows for creation of
generic text snapshots in win32.
2002-12-16 02:49:55 +00:00
Bryce Denney
8de8ca24b9 - when changing the physical cdrom at runtime, Bochs would eject, insert,
eject, insert, eject, etc. several extra times before allowing you to
  actually change the CD.  The extra insert/eject cycles were coming from the
  param handlers for cdrom status and for the cdrom pathname.  To fix this, I
  changed wxdialog.cc and textconfig.cc to only call set() on parameters if
  they are different from the original value.  Now it generally does what you
  would expect.
- to change physical CD: change the Bochs CD status to "ejected". On some OSes
  that will actually eject it, but on others it will simply close the file so
  that the eject button will actually work.  Then put the new CD into the
  drive, and change the Bochs CD status to "inserted".

Modified Files:
  main.cc gui/siminterface.cc gui/siminterface.h
  gui/textconfig.cc gui/wxdialog.cc
2002-12-12 18:31:20 +00:00
Bryce Denney
c1acbaea3a - avoid showing an empty dialog if there is no cdrom 2002-12-12 16:52:21 +00:00
Bryce Denney
6da847c3fb - fix cdrom toolbar button for wxWindows. Now it brings up the dialog for
the first cdrom.  Implemented by MyFrame::editFirstCdrom().
- eliminate OnOtherEvent and call OnEditATA directly from the event table.

Modified Files:
  gui/wxmain.cc gui/wxmain.h
2002-12-12 16:31:41 +00:00
Christophe Bothamy
16ebfdb9e1 - update for macos compile 2002-12-12 15:29:45 +00:00
Gregory Alexander
ffc8c18fcd Fix incorrect retrieval of text_snapshot_check option. 2002-12-12 06:51:19 +00:00
Gregory Alexander
44e58663bc Working on a testing framework for bochs.
Added an option to do a BX_PANIC when the display
matches a previously recorded text snapshot.
2002-12-12 06:21:43 +00:00
Gregory Alexander
32340d66cc make_text_snapshot returns a length value.
We now use that instead of calling strlen.
2002-12-12 03:41:51 +00:00
Bryce Denney
496fcb2212 - be a little more careful with thread checks in ToggleMouse to fix
bug [ 652358 ] wx: middle button before sim freezes
2002-12-11 22:55:18 +00:00
Bryce Denney
9e0aa82ec9 - make a new dialog Edit:Speed, which includes the IPS setting and
the enable for realtime pit.
- clean up some warnings in MyPanel::OnEdit

Modified Files:
  gui/wx.cc gui/wxmain.cc gui/wxmain.h
2002-12-11 22:35:46 +00:00
Bryce Denney
088f2acaa6 - UK keymap contributed by Denis Lenihan 2002-12-11 21:35:50 +00:00
Bryce Denney
74cc67753a - in the wxWindows debugger, truncate the text in the debug console when it
reaches a certain maximum length.  Otherwise the debug console grows and
  grows and never frees any memory.  The max length is defined as a constant
  in wxdialog.h.  The max length should be made into a variable some day.
- This fixes bug [ 624317 ] wx: debug console never discards lines.

Modified Files:
  gui/wxdialog.h gui/wxdialog.cc
2002-12-08 09:16:18 +00:00