Commit Graph

83 Commits

Author SHA1 Message Date
Volker Ruppert
03440c201e - minor cleanups in the wx code 2012-08-15 12:47:08 +00:00
Volker Ruppert
4538078abb - several fixes for "2nd run" support in wx (still incomplete)
- uninstall parameter handlers (floppy, keyboard)
  - unload plugin that cannot be removed automatically
- wx: removed "show keyboard" demo and some other cleanups
- TODO: remove wx debugger and make wx work with the enhanced gui debugger
2012-08-14 19:33:24 +00:00
Volker Ruppert
e29c25d389 - implemented optional plugin control dialog 2012-02-21 12:00:54 +00:00
Volker Ruppert
822eed13fb - fixes related to the removal of the BX_PASS log level 2011-10-01 12:48:48 +00:00
Stanislav Shwartsman
00981cd7a6 Adding Id and Rev property to all files 2011-02-24 22:05:47 +00:00
Volker Ruppert
8b46dcfc0b - added parameter to control the floppy media write protection. This is based on
the SF patch #1539417, but rewritten from scratch (patch too old). Differences
  to the original version:
  * internal parameter name "readonly"
  * update parameter if floppy image is readonly
  * wxWidgets support
  * documentation updates
  * no specific toolbar buttons
2010-07-03 05:34:27 +00:00
Stanislav Shwartsman
5fec008130 change copyright to bochs project 2009-12-04 20:02:12 +00:00
Stanislav Shwartsman
78418c6a74 removed cr1 from cpu 2009-05-01 09:32:46 +00:00
Volker Ruppert
82a81e45f8 - rewrite of ParamDialog method CopyGuiToParam() to support list size changes
when adding/removing the USB hub
- added support for wx configuration in the USB hub code
2009-04-05 08:33:27 +00:00
Volker Ruppert
394881ead6 - new implementation of the FloppyConfigDialog based on ParamDialog
* floppy device type selection wasn't present in the old version
  * "Create Image" button for creating floppy image with selected name and type
  * after selecting image file with "Browse", the media type is set to "auto"
    and the status is "inserted".
2009-03-27 22:22:07 +00:00
Volker Ruppert
5620a0082e - rewrite of the dependent list handling based on the new win32 stuff
- removed no longer used methods
2009-03-20 16:23:46 +00:00
Volker Ruppert
ea27f82023 - implemented support for bx_param_num_c dependencies
- changed some tabs to spaces
2009-03-18 06:07:53 +00:00
Volker Ruppert
fefad06234 - compilation fixes for wxWidgets 2.8 2008-12-18 09:55:09 +00:00
Stanislav Shwartsman
55ad3e89b6 another whitespace cleanup by Sebastien 2008-02-05 22:57:43 +00:00
Volker Ruppert
018484006b - fixed compilation errors 2007-11-02 16:58:46 +00:00
Volker Ruppert
9c8b9eae6a - support for VMWare version 4 disk image format implemented (patch by Sharvil
Nanavati)
- siminterface + wx code cleanup (removed unused stuff and wx log messages,
  floppy media type name handling simplified)
2006-12-17 08:17:28 +00:00
Volker Ruppert
3a6c7b20ea - missing comma added in cpu registers list (DS and ES now visible in dialog)
- debug_get_next_command(): messages changed to BX_DEBUG
2006-12-10 13:03:25 +00:00
Volker Ruppert
8c82b3f937 - status change must be handled different if the simulation is stopped with the
menu item instead of the power button. TODO: The wxGTK port still hangs after
  pressing the power button before displaying the "Bochs stopped" message box
- wxMSW: don't wait for the enter key on the console window if the user quits
  Bochs by the menu item
- fixed 'ask' dialog text
2006-09-03 11:06:54 +00:00
Volker Ruppert
5afe0efe08 - wxMutexGuiEnter() / wxMutexGuiLeave() calls are required at status bar updates
(fixes gui display problems in the wxGTK port)
- fixed floppy dialog title and label
2006-09-03 05:52:53 +00:00
Volker Ruppert
6cbdf98b38 - header of log options table is now always visible
- removed unnecessary spaces after function names
2006-03-26 15:52:31 +00:00
Volker Ruppert
6048821249 - fixed a warning and some remaining unicode issues
- removed unnecessary spaces after function names
2006-03-19 15:35:20 +00:00
Volker Ruppert
6106f1c905 - some more fixes for unicode support (wxT("string") conversion) 2006-03-18 16:30:52 +00:00
Volker Ruppert
568b41c659 - re-implemented LogOptionsDialog based on ParamDialog 2006-03-11 10:00:56 +00:00
Volker Ruppert
5597fc9cf3 - fixed wx "Show CPU" dialog to make it work with the new parameter handling
- fixed CPU register names
- removed old parameter handling (bx_id, BXP_* symbols, param_registry, etc.)
2006-03-08 18:10:41 +00:00
Volker Ruppert
15efba10dd - ata/atapi options rewritten to a parameter tree
- siminterface get_param_*() methods num support a base parameter like the generic
  get_param() method
- new parameter lists now also have a generated id
- test function print_tree() now handles enum parameters correctly
- proposed parameter tree updated
2006-02-26 19:11:20 +00:00
Volker Ruppert
a4f412d3e8 - boot and loader options rewritten to a parameter tree
- wx: ParamDialog method EnableParam can now handle new-style parameters
- saving of pcidev options fixed
2006-02-23 22:48:57 +00:00
Volker Ruppert
4cece81589 - started implementation of the parameter tree based on patch.param-tree
* memory parameter handling rewritten (not yet complete)
  * new reset() method for bx_list_c for recursive reset of all list members
  * memory options in wx now handled in a ParamDialog (ConfigMemoryDialog removed)
  * removed obsolete BXP_* constants in siminterface.h
  * updated proposed parameter tree
- constant BX_N_OPTRAM_IMAGES for optional RAM images limit added
2006-02-16 21:44:17 +00:00
Volker Ruppert
d62e775d5e - capacity choice should not change to "auto" when typing a filename
- added floppy media change hint
- removed wx console log message that appeared very often
- converted tabs to spaces
2005-11-25 16:24:47 +00:00
Volker Ruppert
dfbf7c7238 - enable button "Create Image" only if a valid capacity is selected
- radio button "Not present" is not valid at runtime
- select capacity autodetection after browsing for an image
- set valid wildcard for file browser
2005-11-24 18:51:55 +00:00
Volker Ruppert
53d8ec7959 - fixed type problem in method OnTimer() (found with wxGTK 2.5.2)
- replaced obsolete method ConvertToBitmap() by wxBitmap(wxImage) constructor
- PCI config dialog must be disabled at runtime
- wxWindows has been renamed to wxWidgets, source files updated (TODO: update docs)
2004-10-03 09:11:28 +00:00
Volker Ruppert
a08289a7fa - button "Advanced" removed and description changed 2003-09-09 16:41:25 +00:00
Volker Ruppert
84c1e3ed15 - bx_param_num_c: new flag USE_SPIN_CONTROL controls whether a spin control should
be used instead of a simple text control (implemented in wx)
- the new flag USE_SPIN_CONTROL is used by the memory size and the irq parameters
- special bx_list_c for the "Other options" menu in the wx configuration added
2003-09-05 22:07:54 +00:00
Volker Ruppert
3d341c9776 - MemoryConfigDialog replaced by a new one based on ParamDialog
- ParamDialog: border size of all dialog items set to 2
- labels for the memory parameters added
2003-09-04 16:58:27 +00:00
Volker Ruppert
e7e5f1b518 - bx_param_c: formerly unused member 'runtime_param' now indicates parameters
available at runtime
- wx: 'runtime' flag added to ParamDialog. If this flag is set, all options
  with the flag 'runtime_param' clear will be disabled.
- only the runtime options for cdrom's are now enabled in the ATA dialogs at runtime
- the options 'keyboard paste delay', 'mouse' and 'vga update interval' are now
  available at runtime
- wxdialog.h: unnecessary comments removed
2003-09-02 19:34:48 +00:00
Volker Ruppert
ca60988fd9 - wx: NetConfigDialog replaced by a new version using ParamDialog
- parameter for the ethernet module must be of type bx_param_enum_c, since we
  have a list of valid modules
2003-08-25 16:46:18 +00:00
Volker Ruppert
b78c910e8f - obsolete harddisk and cdrom dialogs removed
- wx.cc must not include wxdialog.h
2003-08-23 17:53:27 +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
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
Christophe Bothamy
c360ec907d - add debugger log output configuration to wxwindows interface.
this closes [ 629068 ] make a way to log debug output to file
2002-12-07 16:52:09 +00:00
Bryce Denney
5e520261db Add plugin support to Bochs by merging all the changes from the
BRANCH_PLUGINS branch!

Authors:
  Bryce Denney
  Christophe Bothamy
  Kevin Lawton (we grabbed a lot of plugin code from plex86)
Testing help from:
  Volker Ruppert
  Don Becker (Psyon)
  Jeremy Parsons (Br'fin)

The change log is too long to paste in here.  To read the change log, do
  cvs log patches/patch.final-from-BRANCH_PLUGINS.gz

All the changes and a detailed description are contained in a patch
called patch.final-from-BRANCH_PLUGINS.gz.  To look at the complete
patch, do
  cvs upd -r1.1 patches/patch.final-from-BRANCH_PLUGINS.gz

Then you will have a local copy of the patch, which you can gunzip and
play with however you want.

Modified Files:
    .bochsrc Makefile.in aclocal.m4 bochs.h config.h.in configure
    configure.in gdbstub.cc logio.cc main.cc pc_system.cc
    pc_system.h state_file.h bios/Makefile.in bios/rombios.c
    cpu/Makefile.in cpu/access.cc cpu/apic.cc cpu/arith16.cc
    cpu/arith32.cc cpu/arith8.cc cpu/cpu.cc cpu/cpu.h
    cpu/ctrl_xfer32.cc cpu/exception.cc cpu/fetchdecode.cc
    cpu/fetchdecode64.cc cpu/flag_ctrl.cc cpu/flag_ctrl_pro.cc
    cpu/init.cc cpu/io.cc cpu/logical16.cc cpu/logical32.cc
    cpu/logical8.cc cpu/paging.cc cpu/proc_ctrl.cc
    cpu/protect_ctrl.cc cpu/segment_ctrl_pro.cc cpu/shift16.cc
    cpu/shift32.cc cpu/stack64.cc cpu/string.cc cpu/tasking.cc
    debug/Makefile.in debug/dbg_main.cc disasm/Makefile.in
    doc/docbook/user/user.dbk dynamic/Makefile.in fpu/Makefile.in
    gui/Makefile.in gui/amigaos.cc gui/beos.cc gui/carbon.cc
    gui/control.cc gui/control.h gui/gui.cc gui/gui.h
    gui/keymap.cc gui/keymap.h gui/macintosh.cc gui/nogui.cc
    gui/rfb.cc gui/sdl.cc gui/sdlkeys.h gui/siminterface.cc
    gui/siminterface.h gui/term.cc gui/win32.cc gui/wx.cc
    gui/wxdialog.cc gui/wxdialog.h gui/wxmain.cc gui/wxmain.h
    gui/x.cc gui/keymaps/sdl-pc-de.map gui/keymaps/sdl-pc-us.map
    gui/keymaps/x11-pc-de.map instrument/example0/instrument.h
    instrument/example1/instrument.h
    instrument/stubs/instrument.cc instrument/stubs/instrument.h
    iodev/Makefile.in iodev/biosdev.cc iodev/biosdev.h
    iodev/cdrom.cc iodev/cmos.cc iodev/cmos.h iodev/devices.cc
    iodev/dma.cc iodev/dma.h iodev/eth_fbsd.cc iodev/eth_linux.cc
    iodev/eth_null.cc iodev/eth_tap.cc iodev/floppy.cc
    iodev/floppy.h iodev/guest2host.cc iodev/guest2host.h
    iodev/harddrv.cc iodev/harddrv.h iodev/iodebug.cc
    iodev/iodebug.h iodev/iodev.h iodev/keyboard.cc
    iodev/keyboard.h iodev/ne2k.cc iodev/ne2k.h iodev/parallel.cc
    iodev/parallel.h iodev/pci.cc iodev/pci.h iodev/pci2isa.cc
    iodev/pci2isa.h iodev/pic.cc iodev/pic.h iodev/pit.cc
    iodev/pit.h iodev/pit_wrap.cc iodev/pit_wrap.h iodev/sb16.cc
    iodev/sb16.h iodev/scancodes.cc iodev/scancodes.h
    iodev/serial.cc iodev/serial.h iodev/slowdown_timer.cc
    iodev/slowdown_timer.h iodev/unmapped.cc iodev/unmapped.h
    iodev/vga.cc iodev/vga.h memory/Makefile.in memory/memory.cc
    memory/memory.h memory/misc_mem.cc misc/bximage.c
    misc/niclist.c
Added Files:
    README-plugins extplugin.h ltdl.c ltdl.h ltdlconf.h.in
    ltmain.sh plugin.cc plugin.h
2002-10-24 21:07:56 +00:00
Bryce Denney
4fc294ce2b - I was having compile problems because when BX_DEBUGGER==0 the declaration
of the DebugLogDialog class was turned off by an #if.  Now the methods are
  turned off by the same condition.
2002-10-16 20:39:43 +00:00
Bryce Denney
346e2747d3 - fixed up ParamDialog to correctly handle "trees" of parameters. A
bx_list_c can now be displayed as either a wxStaticBox with the
  child parameters inside, or as a wxNotebook with each child
  parameter in a separate tab.  (The children can also be lists of
  course.)  The default display is the wxStaticBox type, but if you
  set the option bit bx_list_c::USE_TAB_WINDOW in the list,
  ParamDialog will use the wxNotebook display instead.
- to get the param trees working, I created a new struct
  AddParamContext, which is passed to AddParam().  This struct is
  critical when AddParam calls itself recursively to display lists
  within lists.
- use the wxNotebook display feature for the ATA0,1,2,3 controller
  dialog box.  Now instead of being hundreds of pixels tall, it is
  reasonable height with three different tabs.  This fixed bug
  #619074: "wx: ATA interface editor too tall" and was the whole
  reason I started messing with this at all.

plus some minor cleanups
- when I added the enum constant bx_list_c::USE_TAB_WINDOW, I also
  removed the BX_ prefix from all the other enum constants that are
  used in parameter options in siminterface.cc.  Since these constants
  are enums within a class, there is no possibility of namespace
  conflicts so the prefix is not needed.
- added wxADJUST_MINSIZE to all wxChoice controls, since that tells
  wxWindows to adjust its size to the length of the longest string.
- instead of calling SetSize or SetSizeHints on every textcontrol with
  a hardcoded width, I am using just two wxSize specifications for
  everything: either normalTextSize or longTextSize.
- edit names of a few menus and params.  For example now instead of
  the tab saying "Master ATA device on channel 0" it will say
  "First HD/CD on channel 0".

Modified Files:
  main.cc gui/control.cc gui/gui.cc gui/siminterface.cc gui/siminterface.h
  gui/wxdialog.cc gui/wxdialog.h gui/wxmain.cc
2002-10-06 02:37:28 +00:00
Bryce Denney
56b58e6226 - remove "Create Image" button for cdrom from the sketch 2002-09-25 21:28:49 +00:00
Christophe Bothamy
440dffc803 - applied patch.4ata-channels and patch.4ata-channels.bbd
- Features :
 . number of active channels defined at boot-time config
 . new options in bochsrc
 . up to 8 devices support (disks or cdroms)
 . up to 4 cdrom devices can be changed at runtime config
 . wxwindows config interface
2002-09-22 20:56:12 +00:00
Bryce Denney
c382348cbf - add CopyParamToGui() to DebugLogDialog, which is empty for now. 2002-09-22 04:52:55 +00:00
Bryce Denney
38ad31fd4b - add Greg's suggestions for dialog box to configure time options, from an
email
2002-09-22 02:42:07 +00:00
Bryce Denney
375fcf648b - plug up some memory leaks in wxWindows code, with help from Valgrind
- MyPanel::blankCursor
  - MyFrame::panel
  - AdvancedLogOptions::action (2d array of wxChoice *'s)
  - ParamDialog::idHash, ParamDialog::paramHash, and ParamStructs
  - file dialog in BrowseTextCtrl
- fix illegal use of a wxObject.  I had been clearing the ParamStruct
  with memset(), but I forgot that ParamStruct was a subclass of wxObject
  so I was trashing the wxObject fields too!  Instead I created a
  ParamStruct constructor that clears the pointers to NULL.
- comment out debug output from AdvancedLogOptionsDialog::SetAction
- modified files: gui/wx.cc gui/wxdialog.cc gui/wxdialog.h
  gui/wxmain.cc gui/wxmain.h
2002-09-20 21:25:09 +00:00
Bryce Denney
a33f144f6c - implement behavior of the AdvancedLogOptionsDialog
- LogOptionsDialog: show the "no change" option.  When options other than
  "no change" are selected, set both the default log action and the
  specific log action for all devices.
- AdvancedLogOptionsDialog: store the wxChoice*'s in a 2d array since I
  have to refer to them later.
- since both the log options and advanced log options dialogs needed to
  create many wxChoices using similar rules, I moved the creation code
  into a utility function makeLogOptionChoiceBox.
- I finally discovered the wxADJUST_MINSIZE option to wxSizer::Add(),
  which solves some layout problems that I was having with wxChoices.
  With this setting, the wxChoice will automatically grow to the size of
  the largest string that can be selected.
- improve sizing of the scrollWin according to the desired size of the panel
  that contains all the wxChoices.
- add sketches for proposed dialog that combines both LogOptionsDialog and
  AdvancedLogOptionsDialog using tabs
2002-09-20 17:53:14 +00:00
Bryce Denney
452f65235b - rename Refresh to CopyParamToGui
- rename CommitChanges to CopyGuiToParam
2002-09-20 12:40:13 +00:00
Bryce Denney
d8c27b4f83 - add AdvancedLogOptionsDialog. It's not connected to actual parameters
yet, since I've been just working on the layout at first.  The main
  challenge has been getting the scrollbar set up right.
2002-09-19 04:52:03 +00:00