Commit Graph

1871 Commits

Author SHA1 Message Date
Bryce Denney
26385f2866 - I've added lots of comments in siminterface.h, and tried to clean up
the terminology a bit.  In particular, the term "gui" has started
  to mean different things in different contexts, so I've defined
  some more specific names for the parts of the user interface, and
  updated comments and some variable names to reflect it.  See
  siminterface.h for a more complete description of all of these.

    VGAW: VGA display window and toolbar buttons, the traditional Bochs
      display which is ported to X, win32, MacOS X, etc.  Implemented
      in gui/gui.* and platform dependent gui/*.cc files.
    CI: configuration interface that lets the user change settings such
      as floppy disk image, ne2k settings, log options.  The CI consists
      of two parts: configuration user interface (CUI) which does the
      actual rendering to the screen and handles key/mouse/menu events,
      and the siminterface object.
    CUI: configuration user interface.  This handles the user interactions
      that allow the user to configure Bochs.  To actually change any
      values it talks to the siminterface object.  One implementation of
      the CUI is the text-mode menus in gui/control.cc.  Another
      implementation is (will be) the wxWindows menus and dialogs in
      gui/wxmain.cc.
    siminterface: the glue between the CUI and the simulation code,
      accessible throughout the code by the global variable
        bx_simulator_interface_c *SIM;
      Among other things, siminterface methods allow the simulator to ask the
      CUI to display things or ask for user input, and allows the CUI
      to query and modify variables in the simulation code.


    GUI: Literally, "graphical user interface".  Until the configuration menus
      and wxWindows came along, everyone understood that "gui" referred to the
      VGA display window and the toolbar buttons because that's all there
      was.  Now that we have the wxWindows code, which implements both the VGAW
      and the CUI, while all other platforms implement only the VGAW, it's not
      so clear.  So, I'm trying to use VGAW, CI, and CUI consistently since
      they are more specific.
    control panel: This has been used as another name for the configuration
      interface.  "control panel" is also somewhat unspecific and it sounds
      like it would be graphical with buttons and sliders, but our text-mode
      thing is not graphical at all.  I've replaced "control panel" with
      "configuration interface" wherever I could find it.  In configure script,
      the --disable-control-panel option is still supported, but it politely
      suggests that you use --disable-config-interface instead.
- clean up comments in siminterface,wx* code
- add comments and examples for bx_param_* and BxEvents
- remove some obsolete stuff: notify_*_args,
  bx_simulator_interface_c::[sg]et_enabled() methods
- in siminterface.cc, move a few bx_real_sim_c methods to where they belong,
  with the rest of the methods.  No changes to the actual methods.
- remove some DOS ^M's which crept in and confused my editor.
2002-08-26 15:31:23 +00:00
Bryce Denney
f8df133a82 - SIM->get_enabled() SIM->set_enabled() were no longer useful, since they
mirrored the use of enable_control_panel exactly.  This should not cause
  any change in behavior, and it lets me eliminate these methods which
  don't make much sense anymore.
2002-08-26 11:37:55 +00:00
Volker Ruppert
026f0dcb8d - disable menu items "New Configuration" and "Read Configuration" when the
simulation thread starts
2002-08-25 20:35:19 +00:00
Volker Ruppert
6055c158e9 - wx gui menu functions "Read Configuration" and "Save Configuration" implemented
- loading default bochsrc for the wx gui no longer necessary
- the wx gui version of bochs now accepts the same command line arguments as
  the other guis
2002-08-25 15:51:46 +00:00
Volker Ruppert
dc07804616 - simple user shortcut dialog for wxWindows added
- floppya, floppyb and cdromd handlers: don't change anything when the user has
  cancelled the dialog
2002-08-25 12:32:54 +00:00
Volker Ruppert
4a58339cad - pass command line arguments to function bx_init_main() 2002-08-25 09:54:05 +00:00
Volker Ruppert
28e06c07a0 - the changes are present in CVS and these files are no longer needed 2002-08-25 09:12:55 +00:00
Volker Ruppert
95771fe0e5 - command line parameter --help added
- this changes also fix a carbon gui compile problem (SF bug #594718)
2002-08-25 08:31:16 +00:00
Bryce Denney
e352d0b871 - oops, I used BX_CPU_THIS_PTR outside of the cpu object. Changed the
reference to BX_CPU(0) which is legal even when BX_USE_CPU_SMF is off.
2002-08-25 05:21:16 +00:00
Bryce Denney
c81a354ebf - this adds a configure option --enable-external-debugger for use with
Peter Tattam's external debugger.  So far the external debugger only
  works on win32 platforms if you download Peter's DLL.
2002-08-25 05:02:38 +00:00
Volker Ruppert
db4c7ca718 - don't try to open a serial connection when the device string is empty
- do read/write operations only when tty_id is valid
2002-08-24 19:03:43 +00:00
Volker Ruppert
eda0dc5c7e - renamed serial and parallel options "Opresent" to "Oenabled" and "*_PRESENT"
to "*_ENABLED"
- bx_serial_options for all 4 ports moved into an array com[4]
- serial port com1 is enabled by default
- detection of com2, com3 and com4 config options disabled for now
- new parameter "enabled" added to the serial bochsrc options
- error handling for serial and parallel bochsrc options changed. The unhandled
  BX_PANICs are replaced by BX_ERRORs.
- new function bx_write_serial_options() added
- serial destructor restores original terminal settings only when serial port
  is enabled and the tty_id is valid
2002-08-24 17:11:33 +00:00
Volker Ruppert
ea1cec39a7 - added section SYNOPSIS and descriptions for the new command line options
-q and -qf
- the link to "Bug Reports" can be found under "Feedback", not "Features"
2002-08-24 12:18:07 +00:00
Volker Ruppert
56952f9132 - parport1 enable/disable support added. Now you can control the presence of
parport1 with the new option "enabled". The old option "enable" only
  controlled the output. The parport1 is enabled with no output by default.
  Changes:
  * bochrc option "enable" replaced by "enabled"
  * parport option "Oenable" replaced by "Opresent"
  * bx_parport_options par1 and par2 replaced by an array par[2]
  * initialize parport1 resources only when enabled
  * renamed variable "parport_init_list" to "par_ser_init_list" since it
    contains parport and serial options
  * documentation and bochsrc updates
- the parport variables "output" and "initmode" now belong to the bx_par_t
  structure
- TODO: add parport2 (disabled by default), parport detection in the bios
2002-08-24 10:20:35 +00:00
Volker Ruppert
eb0e95f54d - check for bx_options.sb16.Opresent added in init() and the destructor
(SB16 was always enabled before)
- call finishmidifile() and finishvocfile() in the destructor only if the
  files are vaild
2002-08-23 18:12:02 +00:00
Christophe Bothamy
b42c7228f0 - moved optrom[1-4] options to an array of 4 elements.
Option reading/writing should really be done in a for loop.
  This was just a test to check if the new ata options could
  be handled that way.
2002-08-22 22:38:40 +00:00
Christophe Bothamy
65b715a6ed - fixed test for NE2K_OBJ 2002-08-22 22:21:19 +00:00
Christophe Bothamy
5cd66320e1 - uploaded 64bits-registers-extension patch from Kevin 2002-08-20 10:54:25 +00:00
Christophe Bothamy
88cf989396 - recompiled from rombios-new-ata.c rev 1.3 2002-08-19 17:12:46 +00:00
Christophe Bothamy
c74ca2a66a - fixed bug reported by Volker.
- fixed bug reported by tld.
- changed sectors to spt to avoid confusion
- changed detected devices message
2002-08-19 17:08:09 +00:00
Volker Ruppert
c4e5d28ab6 - new bochsrc option '#include' added. Now you can store platform and
installation dependent values in a global configuration file. If you are
  including such a file, you only need to define the disk images and other
  guest OS dependent stuff.
- new command line option '-q' (quickstart) added (the same as '-nocp')
- new command line option '-qf' (quickstart + config file) added (the same as
  '-nocp -f')
- missing initialization of Ouser_shortcut in bx_options added
2002-08-18 16:59:26 +00:00
Volker Ruppert
86969b7892 - macro BX_PCI_MEM_READ() must be used in function dbg_fetch_mem() too 2002-08-18 08:53:26 +00:00
Volker Ruppert
29f5e855cf - mouse functions fixed:
* the captured mouse belongs to the simWnd
  * adding border and caption sizes is not necessary
2002-08-18 08:35:52 +00:00
Volker Ruppert
7433d1d293 - set the log action for the log level "panic" of all devices to "fatal" (doing
it for the gui isn't enough)
2002-08-17 14:01:07 +00:00
Volker Ruppert
18dc3833a9 - reverted a change in the 'else' section of the load_ROM() function 2002-08-17 09:46:27 +00:00
Volker Ruppert
46093f8a88 - i440fx structure is now a private member of bx_pci_c
- PCI configuration space of the host bridge renamed from array[] to pci_conf[]
- new functions load_ROM() and mem_read() for ROM access
- macros for PCI functions defined in bochs.h
2002-08-17 09:23:42 +00:00
Volker Ruppert
16f04b12f0 - this patch adds include support for config files 2002-08-16 07:17:50 +00:00
Volker Ruppert
a546102083 - the changes are present in CVS 2002-08-15 12:21:49 +00:00
Volker Ruppert
001f8003e9 - get_term_char(): replace the current character by a space when foreground
color and background color are the same
- shifted function keys added
2002-08-15 10:02:18 +00:00
Volker Ruppert
db5cd5162c - fixed a typo in the bochs-cvs mailing list section
- added CVS release tags for version 1.3, 1.4 and 1.4.1
2002-08-13 13:50:54 +00:00
Volker Ruppert
e33b16701f - the status of the 'disk changed' line depends on the selected drive.
The digital input register is now an array (DIR[4]).
2002-08-13 12:02:37 +00:00
Volker Ruppert
9b1b1ada1e - added a short description for the bochs-cvs mailing list
- bochs-announce archive URL updated
- added Minix to the list of guest operating systems
2002-08-13 10:31:51 +00:00
Bryce Denney
bd6fd791df - third and final try to make url correct despite topper.pl's mangling of
the punctuation.
2002-08-12 22:23:42 +00:00
Bryce Denney
97a58a61b7 - attempt to fix URL; since it uses topper.pl I had to use qmrk instead of ? 2002-08-12 22:19:34 +00:00
Bryce Denney
308b936eb1 - mention bochs cvs mailing list 2002-08-12 22:17:03 +00:00
Christophe Bothamy
6bbd601c83 - fixed offset in vbe. See patch [ 592081 ] Bug: typo in VBE code 2002-08-12 16:16:53 +00:00
Christophe Bothamy
872c0a1b20 - added patch [ 567606 ] make bochsrc more portable, from Tal Benavidor 2002-08-12 15:19:19 +00:00
Christophe Bothamy
92f2584beb - Added /etc/bochsrc in list of path searched for the configuration file
on unix-systems.  See patch [ 593018 ] from Bernhard Bablok
2002-08-12 14:55:21 +00:00
Christophe Bothamy
2a7bfa41de - patch from Bernhard Bablok to create a shell wrapper that eases Bochs launch. 2002-08-12 14:49:21 +00:00
Volker Ruppert
b50ce295da - DrawBitmap and DrawChar() now use the system color palette instead of fixed
RGB values
2002-08-12 14:41:42 +00:00
Christophe Bothamy
ebe47e8059 - added instructions RdDd(), DdRd(), RdTd(), TdRd() and Ms().
See patch [ 583002 ] from Luiz Henrique Shigunov
2002-08-12 14:39:40 +00:00
Volker Ruppert
da3a147ce2 - array 'colortbl' replaced by the 'curses_color' array using curses constants
(from plex86 curses.cc)
- set the log action for the log level "panic" to "fatal", because the "ask"
  menu causes trouble in the terminal
- logfile output to stderr not allowed
- handle_events(): type of variable 'character' must be 'int'
- two terminal chars added in function get_term_char()
- bit 7 of the vga attribute enables the A_REVERSE flag of the terminal char
  (from plex86 curses.cc)
- variable term_attr no longer necessary in function text_update()
2002-08-12 12:00:11 +00:00
Volker Ruppert
85f803d919 - support for color terminal implemented
- function keys are working now
- clear_screen() function works now
- a few special vga characters converted to terminal characters
- exit() now clears the screen and calls endwin()
- "[TERM]" removed from info/error messages
- debug messages changed to BX_DEBUG
2002-08-11 18:42:10 +00:00
Volker Ruppert
f49fb131b1 - InitCommonControls() must be called before creating the toolbar 2002-08-11 13:01:49 +00:00
Christophe Bothamy
099dad0041 - updated with patch from brad@openbsd.org. See bug [ 593340 ]. 2002-08-11 11:42:09 +00:00
Christophe Bothamy
c1b10f6847 - updated from pex86 Makefile.in. Uses bcc instead of bcc-cc1. 2002-08-10 21:30:41 +00:00
Volker Ruppert
112487f7b1 - standard headerbar replaced by a real win32 toolbar using the existing
bitmaps. The bochs window now consists of 3 windows: the main window and
  it's child windows simulation window and toolbar window.
  Changes:
  - new windows "mainWnd" and "simWnd" replace the old "hwnd"
  - moved the functions of the old window procedure to the new ones
  - toolbar functions added in create_bitmap(), headerbar_bitmap() and
    replace_bitmap()
  - function show_headerbar() no longer needed (must be present for
    compatibility)
  - a few variables for the headerbar changed or removed
  - bitmap and headerbar variables now initialized in specific_init()
2002-08-10 15:23:30 +00:00
Christophe Bothamy
17adce9633 - added MOV_CdRd in v8086 mode (from Martin Str|mberg) 2002-08-10 12:06:26 +00:00
Christophe Bothamy
ee085e1f55 - This patch adds MOV_CdRd in v8086 mode (from Martin Str|mberg) 2002-08-10 12:02:52 +00:00
Volker Ruppert
0d46cfdad9 - this patch replaces the standard headerbar by a win32 toolbar 2002-08-10 08:57:23 +00:00