Commit Graph

2635 Commits

Author SHA1 Message Date
Bryce Denney
78bbc00d8c - remove tons of old comments with other configuration ideas
- leave just the two configurations that I plan to build binary RPMs with:
  one is conservative with just X11 and the options we used before,
  and the other includes plugins, lots of display libraries, etc.
2002-11-19 16:35:00 +00:00
Bryce Denney
c62dda51d3 Bug #640549: dbg fails if wx configured but not on.
- My previous rev to dbg_main.cc caused the debugger to fail when readline
  was disabled.  With these changes I have tested more thoroughly and it works
  with readline enabled or disabled, and with wxWindows enabled and disabled.
2002-11-19 16:19:20 +00:00
Bryce Denney
29c3ae28f4 - fix commented-out example lines for ata0-slave 2002-11-19 15:06:05 +00:00
David Guarneri
6006de74c5 Moved the SB16 section to a better location. 2002-11-19 14:33:26 +00:00
David Guarneri
e645e3269a Added information on SB16 classes from the old docs (sound.html). 2002-11-19 14:16:31 +00:00
David Guarneri
b0ec110bdc Moving the "classes" portion of SB16 emulation to the developer documentation. 2002-11-19 14:08:30 +00:00
Bryce Denney
eff7720ae7 This fixes bug #640549: dbg fails if wx configured but not on.
- The Bochs debugger uses BX_WITH_WX to decide to change to wxWindows debugger
  behavior: sending a synchronous message to the config interface to get a new
  command, sending all dbg_printf output to the config interface, deciding
  whether to trap control-C, etc.  But now that it's possible to compile with
  BX_WITH_WX and BX_WITH_other_things, this isn't quite right anymore.  With
  this change, we now use calls to a new method SIM->is_wx_selected() to decide
  which behavior to use.  This method is equivalent to checking if the display
  library variable is set to "wx", but it's implemented in such a way that it
  only has to check a boolean for each call to SIM->is_wx_selected().
- in siminterface.cc, init some local variables to 0 to avoid compile
  warnings.

Modified Files:
  debug/dbg_main.cc gui/siminterface.cc gui/siminterface.h
2002-11-19 09:27:39 +00:00
Bryce Denney
ab4fbffeeb - replace with lexer.c built on linux instead of cygwin. It didn't
rename yy_* symbols to bx_* symbols for some reason.
2002-11-19 09:25:20 +00:00
Bryce Denney
ccd006835b - always print header, not just if !wx 2002-11-19 08:54:32 +00:00
Bryce Denney
00ed14a272 - put #if BX_DEBUGGER...#endif around the whole file. I already modified
debug/lexer.l but I hadn't checked in the modified lexer.c until now.
2002-11-19 08:36:14 +00:00
Bryce Denney
044598dfa6 - VC++ didn't like the fact that we were deleting a const char*. So I
typecast it to a char* and THEN deleted it!
2002-11-19 05:54:25 +00:00
Bryce Denney
9b14101a05 - rewrite typecast of temp to Bit64u to keep VC++ happy. I don't really
know what it thought was wrong.
2002-11-19 05:53:47 +00:00
Bryce Denney
dcc6d6038a - we forgot to initialize trace_reg and kill_bochs_request to 0. 2002-11-19 05:52:52 +00:00
Bryce Denney
97f911d1fe - when VC++ sees local variables in a for statement, it doesn't think
that they go out of scope at the end, so it complains about duplicate
  definitions.
2002-11-19 05:51:52 +00:00
Bryce Denney
ae2abb8c0d - this patch has been applied now, deleting 2002-11-19 05:48:18 +00:00
Bryce Denney
0a7cb3a43c - apply patch.ifdef-disabled-options. Comments from that patch are below:
For a whole lot of configure options, I put #if...#endif around code that
  is specific to the option, even in files which are normally only compiled
  when the option is on.  This allows me to create a MS Visual C++ 6.0
  workspace that supports many of these options.  The workspace will basically
  compile every file all the time, but the code for disabled options will
  be commented out by the #if...#endif.

  This may one day lead to simplification of the Makefiles and configure
  scripts, but for the moment I'm leaving Makefiles and configure scripts
  alone.

  Affected options:
    BX_SUPPORT_APIC (cpu/apic.cc)
    BX_SUPPORT_X86_64 (cpu/*64.cc)
    BX_DEBUGGER (debug/*)
    BX_DISASM (disasm/*)
    BX_WITH_nameofgui (gui/*)
    BX_SUPPORT_CDROM (iodev/cdrom.cc)
    BX_NE2K_SUPPORT (iodev/eth*.cc, iodev/ne2k.cc)
    BX_SUPPORT_APIC (iodev/ioapic.cc)
    BX_IODEBUG_SUPPORT (iodev/iodebug.cc)
    BX_PCI_SUPPORT (iodev/pci*.cc)
    BX_SUPPORT_SB16 (iodev/sb*.cc)

Modified Files:
  cpu/apic.cc cpu/arith64.cc cpu/ctrl_xfer64.cc
  cpu/data_xfer64.cc cpu/fetchdecode64.cc cpu/logical64.cc
  cpu/mult64.cc cpu/resolve64.cc cpu/shift64.cc cpu/stack64.cc
  debug/Makefile.in debug/crc.cc debug/dbg_main.cc debug/lexer.l
  debug/linux.cc debug/parser.c debug/parser.y
  disasm/dis_decode.cc disasm/dis_groups.cc gui/amigaos.cc
  gui/beos.cc gui/carbon.cc gui/macintosh.cc gui/rfb.cc
  gui/sdl.cc gui/term.cc gui/win32.cc gui/wx.cc gui/wxdialog.cc
  gui/wxmain.cc gui/x.cc iodev/cdrom.cc iodev/eth.cc
  iodev/eth_arpback.cc iodev/eth_fbsd.cc iodev/eth_linux.cc
  iodev/eth_null.cc iodev/eth_packetmaker.cc iodev/eth_tap.cc
  iodev/eth_tuntap.cc iodev/eth_win32.cc iodev/ioapic.cc
  iodev/iodebug.cc iodev/ne2k.cc iodev/pci.cc iodev/pci2isa.cc
  iodev/sb16.cc iodev/soundlnx.cc iodev/soundwin.cc
2002-11-19 05:47:45 +00:00
Bryce Denney
b9d6cb1aca - add various source files to the project so that it works with
".conf.everything"
2002-11-19 05:43:22 +00:00
Bryce Denney
37621495f8 - add a .conf file for testing, that enables just about every option 2002-11-19 04:55:32 +00:00
Bryce Denney
a3ad3c21e2 - if the font is already there, do not restart the font server. Shap says
reports that on some Linux systems, once you restart the font server
  you have to restart X as well.  At least with this change it only happens
  once, not every time you install.
2002-11-18 19:30:34 +00:00
Bryce Denney
90d42947e4 Detailed description:
For a whole lot of configure options, I put #if...#endif around code that
is specific to the option, even in files which are normally only compiled
when the option is on.  This allows me to create a MS Visual C++ 6.0
workspace that supports many of these options.  The workspace will basically
compile every file all the time, but the code for disabled options will
be commented out by the #if...#endif.

This may one day lead to simplification of the Makefiles and configure
scripts, but for the moment I'm leaving them alone.

More details inside the file itself.
2002-11-18 19:13:23 +00:00
Bryce Denney
d9eaf5c7d8 - eip is no longer in bx_cpu. Now we must call get_EIP() accessor instead. 2002-11-18 17:27:40 +00:00
Volker Ruppert
35c2be5518 - changed ne2k presence options from "valid" to "present" 2002-11-18 17:16:07 +00:00
Bryce Denney
c07684021c - fix obvious bug in macintosh gui code caused by search and replace
gone wrong.  It said "bx_amigaos_gui_c" instead of "bx_macintosh_gui_c".
  I wish somebody would test this!
2002-11-18 16:42:57 +00:00
David Guarneri
4a23c1b464 Added "Soundblaster 16 Emulation" from the sound.html file in the old docs. Made good use of emphasis tags and listitem tags. Also embedded sections (one level). It looks nice. Just need to add a couple of tables. 2002-11-18 07:40:50 +00:00
Bryce Denney
b161509c56 - put wxT() around every string constant that gets passed into wxWindows.
This turns the string into a multibyte char * if necessary.  It becomes
  important if wxWindows is compiled with unicode support.
2002-11-18 02:40:31 +00:00
Bryce Denney
ab6cb49693 - this fixes bug #638600: need default plugin search path
- configure script adds -DBX_PLUGIN_PATH="${plugdir}" to CFLAGS/CXXFLAGS
  in the Makefile.
- in main.cc, if plugins enabled and the environment variable LTDL_LIBRARY_PATH
  is not set, then it gets set to the value supplied by BX_PLUGIN_PATH.

Modified Files:
  main.cc Makefile.in configure.in config.h.in configure
2002-11-18 02:32:53 +00:00
Volker Ruppert
cde5737dc5 - the names of the object files for the lowlevel network support are now stored
in NETLOW_OBJS. The value of NE2K_OBJS is now 'ne2k.o' if ne2k support is
  enabled. These changes are necessary before converting the ne2k to a plugin.
2002-11-17 12:49:46 +00:00
Bryce Denney
70b69a2a64 - if cmd line is empty, don't touch array index 1 with "*(last_nonspace+1)"
- argc was returning the wrong number of args.  Now I treat null and space
  the same way, except that null causes the loop to exit.
- change "extern "C" int WinMain" to "int WINAPI WinMain".
- in WinMain pause for the user to read the screen before making it disappear.
  This is very useful when there was an error during startup because otherwise
  you can't read it.  However we'll probably want to disable it when the
  user actually asked for Bochs to quit.
2002-11-16 22:50:51 +00:00
Bryce Denney
3ad052c23a - minor fix to compile in VC++ 2002-11-16 22:44:09 +00:00
Bryce Denney
108d2c44b8 - in gui: change control.cpp to textconfig.cpp
- in cpu: add sse.cpp and sse2.cpp
- change settings to point to wxWindows 2.3.3 in preprocessor, linker, and
  resource settings.
2002-11-16 22:42:19 +00:00
Bryce Denney
d3c734f3be - apply patch from Volker, who says:
> Dlltool creates a useless file called 'mingwex'.
  > I think the first dlltool call should only contain bochs object files and
  > no link options or external libraries.
2002-11-16 17:56:05 +00:00
Bryce Denney
cb1d6121b2 - this should fix bug #635223: VGA tiles array access out of bounds.
For years we have been writing beyond the end of this array in the VGA code:
    bx_bool  vga_tile_updated[BX_NUM_X_TILES][BX_NUM_Y_TILES];
  and doing who-know-how-much damage to other memory structures in the process.
  I changed every reference to vga_tile_updated[][] into calls to two macros
  GET_TILE_UPDATED and SET_TILE_UPDATED, and defined the macros to check
  the bounds of the array before referencing it.  At first I used an
  assert, then a panic, then an error, and now I'm not printing any message
  at all because there were thousands and thousands of messages during
  a boot of win95 when it's updating the win95 logo screen.
- I couldn't resist cleaning up a few confusing-looking things like
  "if (condition) { // }".  There are no functional changes except for
  bounds checking on the vga_tile_updated array.
2002-11-16 15:43:13 +00:00
Bryce Denney
17e7f6c2eb - add configure test for -lmingwex, which is needed on newer cygwin systems
for opendir(), readdir() and closedir() used in ltdl.c.
2002-11-16 13:43:41 +00:00
Bryce Denney
53e9cc60e9 - remove GUI_LINK_OPTS from the dlltool line. The dlltool line only really
needs to include the .o's and .a's that are part of the Bochs source code
  so that it can create a list of Bochs symbols that need to be exported.
  I started out using the same list as the link line, but dlltool
  doesn't accept all the same options as the link such as -I and -L.
2002-11-16 12:55:09 +00:00
Volker Ruppert
68a7e67d1b - fixed the names of the gui dll plugins (bx_*.dll) 2002-11-16 10:44:27 +00:00
Volker Ruppert
26c9b55bc2 - the SB16 plugin dll needs the link option -lwinmm
- BX_PLUGGABLE must be defined in soundwin.cc
2002-11-16 10:29:57 +00:00
Bryce Denney
2b1982bb3a - fix yet another creative spelling of "library" 2002-11-15 22:56:37 +00:00
Christophe Bothamy
e8880cf9b3 - fix compiling with --enable-pci --enable-debugger 2002-11-15 22:11:24 +00:00
Bryce Denney
34f8d7e447 - there are 2 definitions of main. I moved the "normal" one to the top so that
it's easier to find.  The other one is for wxWindows on win32 only.
- for wxWindows on win32, I added a function called RedirectIOToConsole() from
  an article in the Windows Developers Journal that creates a console window
  and sets up stdin,stdout,stderr to operate on the console.  This works,
  except for a console freezing problem that I described on the mailing list
  earlier today.
- Once it is working better, we may want to use the WinMain definition for
  other types of compiles on win32, and maybe even for all win32 compiles.  In
  particular when we compile with SDL we should create a console window too.
- comment out some debug output from the command line parser, add \n's in
  a few places.  (I'm using stderr instead of BX_PANIC because I don't think
  the logging system is ready to be used at this early stage.)
2002-11-15 18:53:52 +00:00
Bryce Denney
515ffa8ecc - add BOCHSAPI_CYGONLY to insert DLL export tags in places that only Cygwin
wants them.
- modified: bochs.h config.h.in gui/siminterface.h
2002-11-15 18:31:55 +00:00
Bryce Denney
adb6e17ffa - after plugin conversion, the global variable "bx_sb16" doesn't exist
anymore.  Point to the new global symbol for the sb16.
2002-11-15 18:29:19 +00:00
Bryce Denney
a188b157de - change Bit64u sectors to a Bit64s, to avoid VC++ compile error.
It says it can't convert a 64 bit unsigned to a double.  Hmm.
2002-11-15 18:14:08 +00:00
Bryce Denney
add9107dae - add BOCHSAPI to bxICache_c 2002-11-15 18:12:04 +00:00
Bryce Denney
983b8f0962 - the #define of off_t to "long" was causing problems when compiling
textconfig.cc.  I can't quite explain why it wasn't a problem before,
  but it's certainly a problem now.  In fact VC++ does define off_t, so
  I removed the #define entirely.
2002-11-15 18:11:40 +00:00
Bryce Denney
5744c1cb90 - include "ltdl.h" with quotes, instead of <ltdl.h> with <>'s. It's
supposed to be a local header file, not a system header file.
2002-11-15 18:09:37 +00:00
Bryce Denney
94cf7eff9a - add --enable-optimizations, so that release binaries will be compiled
with Kevin's speedups
2002-11-15 18:07:54 +00:00
Bryce Denney
ea5472d7c8 - update VC++ workspace. renamed gui/control.cc to textconfig.cc,
added cpu/sse*.cc, etc.
2002-11-15 18:01:51 +00:00
Stanislav Shwartsman
3217759a75 Implemented
PSHUFLW_VqWqIb, PSHUFHW_VqWqIb instructions
2002-11-15 17:34:47 +00:00
Stanislav Shwartsman
da8a2a71b1 Fixed bug PSHUFW instruction 2002-11-15 17:02:06 +00:00
Bryce Denney
1ef126611f - update test form so that it mentions current versions! 2002-11-15 16:44:15 +00:00