Commit Graph

201 Commits

Author SHA1 Message Date
Bryce Denney
692ee03065 - add "--export-all-symbols" to the dlltool line that produces bochs.def.
I believe that if we had correct BOCHSAPI macros on everything then it
  would not be necessary, and on my cygwin box it isn't necessary.  However
  it seems that on other versions of cygwin it is necessary.  The trouble with
  --export-all-symbols is that it's making bochs.exp much bigger so the binary
  grows by 900k, compared to exporting only the symbols that are marked.  If
  someone with that "other" version of cygwin can figure out where BOCHSAPI is
  needed, this can be removed.
2002-11-01 13:44:43 +00:00
Bryce Denney
a6aa9afd67 - rename "control" to "textconfig". It was named when we called it
a control panel, but now we're calling it a text configuration interface.

Modified:
    .bochsrc Makefile.in bochs.h main.cc cpu/Makefile.in
    debug/Makefile.in disasm/Makefile.in fpu/Makefile.in
    gui/Makefile.in iodev/Makefile.in memory/Makefile.in
2002-10-29 20:18:32 +00:00
Gregory Alexander
0201b362e1 Make the libtool --mode=link explicit for the main bochs link call.
This fixes a problem with linking under AIX.
2002-10-28 19:40:23 +00:00
Gregory Alexander
0987a6b2d8 bximage is a C program, not a C++ program.
Update Makefile.in to compile it that way.

This fixes a VisualAge problem which prevented bximage from compiling.


I still use the C++ linker for bximage since I don't think it
makes any difference.  If it does, that should be changed also.
2002-10-28 19:19:46 +00:00
Bryce Denney
fe7e2f5912 - add srcdir and VPATH 2002-10-28 08:42:28 +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
7f8b965243 ----------------------------------------------------------------------
Patch name: patch.macosx-console-launch-script
Author: Jeremy Parsons <brefin@mac.com>
Date: Wed Oct 16 2002

Detailed description:

Since the Carbon gui does not yet have a console window of its own, then it
can't be configured from the gui (only the command line) and stdout/stderr both
go to the console. As a shortcut, I offer this patch consisting of this file and

build/macosx/script.data
build/macosx/script.r
build/macosx/bochs.applescript

script.data and script.r are taken from a script compiled into an application.
Flattened out to be checked in. (osacompile can produce runnable scripts, but
wants to create them for the classic environment, so I use these files as part
of a workaround)

When bochs.app is built, it also builds bochs.scpt. To use bochs.scpt you put
both bochs.app and bochs.scpt into the directory with your bochsrc.txt.

bochs.scpt is an applescript that when run notes the current directory, then
tells the terminal application to open a window, cd to the current directory,
and run bochs from the commandline.
----------------------------------------------------------------------

Modified Files:
  Makefile.in
Added Files:
  build/macosx/bochs.applescript build/macosx/script.data
  build/macosx/script.r
2002-10-21 11:38:38 +00:00
Bryce Denney
37be797307 - bochsdbg is an OPTIONAL install target. I build a bochsdbg.exe manually
when making windows releases, and copy it into the build directory.
  However, since some make programs (e.g. freebsd)  are giving errors when
  bochsdbg is not found (in Linux it just gives a little warning), I have tried
  to do it in a more clean way.  I put bochsdbg into an "optional" install
  list, and put a minus before the line that installs optional files.  This
  should cause make to ignore any errors that occur while trying to install the
  optional ones.
2002-10-21 11:28:37 +00:00
Bryce Denney
f62c75ff5d - add GDB stub patch by Johan Rydberg 2002-10-03 05:23:20 +00:00
Bryce Denney
add4fbe892 - allow user to specify $WX_CONFIG variable before running configure, to
override default.  This is useful if you have more than one wx installation,
  for example debug and release libraries.
- modified: Makefile.in configure.in configure
2002-10-03 02:26:32 +00:00
Bryce Denney
e377b6dd5d - when building on for win32, add a "windres" command to build the
resources into wxbochs_resources.o, and link them in.
- modified: Makefile.in configure.in configure
2002-10-02 00:09:49 +00:00
Bryce Denney
4c9776fb96 - add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
  placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
  etc.
- solve compile problems when building bximage, niclist, and any other
  console based program.  The compile flags returned by wx-config and
  sdl-config did strange things to these console programs, for example
  redefining main to SDL_main.  Because I wanted to use the
  configure-generated CFLAGS to compile the programs, but I wanted to
  avoid including GUI specific compile options, I split up the configure's
  @CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
  @CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@.  All programs in the
  Bochs binary will use both, but the console programs will just use
  @CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
  SDL_CFLAGS and WX_CXXFLAGS.  These values are included in CFLAGS and
  CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-01 23:37:50 +00:00
Bryce Denney
a96d0da728 - distinguish between $(srcdir)/build/macosx, where the source files
are found, and build/macosx, where the files created by configure are
  found.  Now VPATH build should work.
2002-09-23 03:58:25 +00:00
Bryce Denney
a6a63ce96c - macosx: add reference to new icons 2002-09-23 03:45:11 +00:00
Bryce Denney
90c4c03a7f - on make dist-clean, clean up the byproducts of rpm building 2002-09-22 23:42:35 +00:00
Bryce Denney
ec18d9b956 - add $(srcdir) in macosx install lines, so that it works in VPATH build 2002-09-22 17:43:38 +00:00
Bryce Denney
dc18466f15 - fix "fatal error U1083: target macro '' expands to nothing" that
Psyon reported
- clean up remnants of cpu64 merge in configure script, Makefile.in,
  and cpu/Makefile.in
2002-09-20 23:16:23 +00:00
Kevin Lawton
9b02229b84 Removed defunct options from configure.in (for dynamic translation
and old style fetchdecode cache).  Removed generations of
dynamic/Makefile.  Upgraded my autoconf to 2.50 to get rid
of those pesky "EOF" errors.
2002-09-20 15:34:51 +00:00
Kevin Lawton
846c50e635 Removed more references to cpu64 stuff in Makefile.in. 2002-09-16 20:41:11 +00:00
Kevin Lawton
5eb4e247bc Merged the final filed ("paging.cc") from Peter Tattam's x86-64
enhancement to bochs.  You can now configure with
--enable-guest2host-tlb.

Force the support of big pages (PSE) when x86-64 is configured.

Reverted back to only one kind of TLB entry style, since everything
is ported.

Fixed one bug in io.cc with as_64 and the index registers.
There are others, as noticed by Peter.
2002-09-16 20:23:38 +00:00
Kevin Lawton
80dd7a07ec Removed references to building libextdb.a. It doesn't seem to
be used at all, and Peter didn't want it.  "extdb.o" is compiled
into libcpu.a, if configured for it.

Removed a few #warnings for x86-64 compile, based on Peter's
line-item comments regarding the warnings I inserted during
the port/merge.
2002-09-15 15:10:21 +00:00
Kevin Lawton
aaeeab5850 Reverted back to using "ar" for making libraries. I had to
declare libs from cpu and cpu64 twice to make the linker
pick up all the symbols.
2002-09-14 05:46:57 +00:00
Kevin Lawton
4181e888e8 "make dist-clean" in top-level recurses to both cpu and cpu64
for cleanliness.
2002-09-13 05:31:28 +00:00
Kevin Lawton
c520824de5 Changed configure and the cpu + cpu64 dir Makefiles so it's easy
to incrementally merge files.  For a test, shift16.cc is always
compiled in the cpu/ directory regardless of 32/64-bit configure.
Ultimately, all files will migrate from cpu64 to cpu.
2002-09-13 02:56:14 +00:00
Kevin Lawton
6655634179 I merged the cpu/cpu.h and cpu64/cpu.h files as well as the
other header files.  There no longer are any *.h files in cpu64/.
Had to make some changes to the *.cc files for dealing with
accesses to eip.
2002-09-13 00:15:23 +00:00
Bryce Denney
0fdbbae45b - integrate Peter Tattam's x86-64 emulation code into the main branch!
This adds a whole new directory cpu64 with the new emulation code.
  Very few changes were necessary outside cpu64.  To try it, configure
  with --enable-x86-64 and make.
- also this adds Peter Tattam's external debugger interface.
- modified files: Makefile.in bochs.h config.h.in configure.in
  load32bitOShack.cc logio.cc cpu/Makefile.in cpu/cpu.cc debug/dbg_main.cc
- added files: cpu/extdb.cc cpu/extdb.h and cpu64/*
2002-09-12 07:16:37 +00:00
Bryce Denney
892eaab88c - in wxwindows compile, only include the wxwindows cflags on the few
files that need them.  This is more in line with the other gui libraries,
  and the compile line is easier to read.
- modified: Makefile.in configure.in configure gui/Makefile.in
2002-09-05 15:12:13 +00:00
Bryce Denney
f4157cad97 - the BIOS and other files have migrated to /usr/share/bochs, so now
"make unpack_dlx" needs to fix up the pathnames appropriately.
2002-09-04 21:13:21 +00:00
Bryce Denney
f78b7ca3b4 - update makefile dependencies 2002-08-28 03:02:56 +00:00
Volker Ruppert
d064db05b9 - 'make uninstall' now removes the 'bochs-docs' script too 2002-07-04 19:01:14 +00:00
Volker Ruppert
2ede8d7075 - manpage of bochsrc belongs to section 5. The file is renamed and the
references in the other manpages are updated.
- the version placeholder is now written in lowercase. This prevents the
  modification of the sed argument by 'configure'
- install/uninstall commands for the manpages in Makefile.in modified to make
  the changes obove work.
- header and footer of the manpages fixed
- pathnames of installed files updated (FHS compatibility)
- "parport1" section in the bochsrc manpage added
- new option "cdrom" in the "boot" section of the bochsrc manpage added
2002-06-29 18:35:32 +00:00
Christophe Bothamy
a7a6df9a1b - included patch.fhs. Detailed description:
see patch [ 551811 ]
   Location of some files on Bochs installation breaks the
   Filesystem Hierrachy Standard, to be found at:

   http://www.pathname.com/fhs/

   It is important to comply with FHS because most
   distributions require it in order to accept packages.
2002-06-25 07:30:44 +00:00
Bryce Denney
2bb90eae56 - don't panic if mkdir fails. Probably the dir already existed. 2002-06-19 15:15:59 +00:00
Bryce Denney
30aaf4088e - commit patch.wxwindows.gz in the main branch. Now you can try out
the wxwindows interface by just "configure --with-wx; make"

  Modified Files:
    Makefile.in bochs.h config.h.in configure configure.in
    load32bitOShack.cc logio.cc main.cc cpu/cpu.cc cpu/cpu.h
    debug/dbg_main.cc gui/Makefile.in gui/control.cc gui/gui.cc
    gui/siminterface.cc gui/siminterface.h gui/x.cc iodev/cdrom.cc
    iodev/keyboard.cc memory/misc_mem.cc
  Added Files:
    README-wxWindows wxbochs.rc gui/wx.cc gui/wxmain.cc
    gui/wxmain.h gui/bitmaps/cdromd.xpm
    gui/bitmaps/configbutton.xpm gui/bitmaps/copy.xpm
    gui/bitmaps/floppya.xpm gui/bitmaps/floppyb.xpm
    gui/bitmaps/mouse.xpm gui/bitmaps/paste.xpm
    gui/bitmaps/power.xpm gui/bitmaps/reset.xpm
    gui/bitmaps/snapshot.xpm
  Removed Files:
    patches/patch.wxwindows.gz
2002-04-18 00:22:20 +00:00
Bryce Denney
6df7ca4ff8 - for win32 install target, added cmd to copy obj-debug/*.exe into
current directory before install.
2002-03-28 00:28:41 +00:00
Bryce Denney
6c06a1bcb4 - I'm updating dlxlinux to add keyboard mapping by default, so that paste
will work.  Now download dlxlinux3.tar.gz instead of #2.
- in win32 install, create keymaps directory and copy the maps in
2002-03-11 16:59:58 +00:00
Christophe Bothamy
dcfccb02de - fixed the keymap directory problem. 2002-03-11 08:35:55 +00:00
Christophe Bothamy
014c365b05 - fixed keymap install problem. Only for unix 2002-03-10 23:58:30 +00:00
instinc
70055903ed Added SDL libraries 2002-02-05 17:37:11 +00:00
Bryce Denney
1fcf556297 - include niclist and bochsdbg (debug enabled version) 2001-12-10 21:31:20 +00:00
Bryce Denney
761a5c16a3 - move all RPM build code into a script instead of the makefile. This is
an improvement because you have to do a configure before using any makefile.
  It used to be "configure; make rpm" and now it's just
  "./build/redhat/make-rpm".
2001-12-08 15:59:50 +00:00
Bryce Denney
d87b47b0df - fix rpm build so that it uses buildroot again. The trick was to separate
the dlx linux install into 1) unpack and configure, and 2) copy into place.
  Because they are separate, we can unpack and configure with prefix=/usr
  and then copy into place with prefix=$BUILDROOT/dlxlinux.
2001-12-08 05:35:57 +00:00
Bryce Denney
d2bf9cb219 - add support for raw CDROM under MacOS X, from
Scott Brumbaugh <scottcb@gte.net>
2001-12-07 21:56:15 +00:00
Bryce Denney
dd1b64b5cb - don't make all on install_win32 target, since the makefile is built for
nmake and the install_win32 target is intended for cygwin.
- work around some bug with unix2dos that doesn't let it read from
  absolute path (?)
2001-11-18 02:32:59 +00:00
Bryce Denney
9293dc29b8 - don't give up if install_fonts fails. It can fail just because you
aren't root.
2001-11-10 04:00:52 +00:00
Bryce Denney
5d13ab349c - don't do chown in install process because it prevents normal users from
installing it in their own dir
2001-11-10 04:00:10 +00:00
Bryce Denney
473e3f1c88 - I have tried to make the --prefix argument to configure control
everything about the installation path.  There should be no more
  hardcoded references to /usr/local/bochs.  Instead, there are
  references to @prefix@ which get replaced by the configure script
  with the real prefix.
2001-11-10 03:48:22 +00:00
Bryce Denney
e1968fb8e3 - put RCD Id on bxversion.
- in bochs-docs, bochs-dlx replace /usr/local with the $(prefix) so that
  the scripts can work wherever they are installed
2001-11-10 01:35:58 +00:00
Bryce Denney
0a5e2d6d1d - gzip the DLX hard disk image when you install
- set safe permissions on dlxlinux files and directory when you install
2001-11-10 01:04:39 +00:00
Bryce Denney
590eca9438 - oops, the niclist target was compiling bximage instead. Now it should
really compile niclist.
2001-11-04 06:33:19 +00:00
Bryce Denney
70069a4ad8 - also compile niclist when NE2000 is enabled 2001-10-09 13:41:01 +00:00
Bryce Denney
27042d347c - add niclist to workspace 2001-10-09 04:39:52 +00:00
Bryce Denney
4b684ce261 - only one workspace file is needed, bochs.dsw 2001-10-07 23:36:11 +00:00
Bryce Denney
c99f9aa8ef - use @CPP_SUFFIX@ substitution to get the dependencies right for nmake too 2001-10-07 20:19:04 +00:00
Bryce Denney
6a50756472 - I thought I did this in rev 1.42 but I guess I missed it...make win32_snap
should not have to re-run the .conf.win32-vcpp script.
2001-10-07 13:29:53 +00:00
Bryce Denney
8a21b1a9d6 - apply patches/patch.add-makefile-deps. I have added dependencies
which were generated with gcc -MM to the end of each Makefile.in
  so that make understands which files depend on which.  Basically,
  everything depends on bochs.h, which depends on everything, which
  is not ideal.
2001-10-07 00:33:21 +00:00
Bryce Denney
5d129b827e - dlx linux installation tweaks 2001-10-06 04:55:24 +00:00
Bryce Denney
311755270f - add missing semicolon 2001-10-06 04:46:26 +00:00
Bryce Denney
302d79eadb - in install_bin target deal with some files being in $(srcdir) and
others in current dir.
2001-10-06 04:45:24 +00:00
Bryce Denney
dcaae518c9 - make win32_snap no longer runs the .conf script, because in fact you have
to run the conf script in order to even have a Makefile.  Instead, I just
  added some instructions that tell you to run the .conf.win32-vcpp script
  yourself and then do "make win32_snap" to unzip the workspace files and
  zip up the whole source package.
2001-10-05 13:40:34 +00:00
Bryce Denney
cf014f2669 - fix it up so that it works when configuring from another dir 2001-10-05 06:39:09 +00:00
Bryce Denney
918a4cd46f - add make target for win32, which can be run from cygwin 2001-10-05 06:03:41 +00:00
Todd T.Fries
319cbff42e revert. test failed. 2001-10-03 15:03:35 +00:00
Todd T.Fries
86eb9e1a3f testing $bochs$ 2001-10-03 15:02:51 +00:00
Bryce Denney
40ac2e6f89 - add make target "download_dlx" which runs wget to download the
DLXlinux tar file, unless it is already there.  Before, you had to
  download the 1meg+ tar file every single time you build the RPM, which
  was annoying.
2001-10-03 12:55:00 +00:00
Bryce Denney
591cac3518 - add VC++ project for bximage 2001-10-02 03:56:57 +00:00
Bryce Denney
2e3eead360 - install the new script "test-x11-fonts" 2001-09-30 14:56:48 +00:00
Bryce Denney
1f7ec590cf - add make target that builds the application bochs.app 2001-09-27 02:00:37 +00:00
Bryce Denney
52c1b297e6 - put a dummy filename in the rm line so that it doesn't crash if the
finds turn up nothing
2001-09-26 23:32:23 +00:00
Bryce Denney
382270fcb4 - add ZIP target. Now "make win32_snap" creates a zip instead of a tar. 2001-09-24 04:21:29 +00:00
Bryce Denney
f4e4cd84a1 - add make targets for easy building of win32 snapshots 2001-09-24 04:16:53 +00:00
Bryce Denney
f04e6fe346 - apply VPATH patch from Edouard G. Parmelan, posted to list on September 1 2001-09-14 04:19:08 +00:00
Bryce Denney
bf286c20ac - configure and makefile changes for AmigaOS port. Now configure
--with-amigaos is allowed and sets up the makefiles correctly.  It
  defines a symbol called BX_WITH_AMIGAOS, which should be used in
  #if..#endif constructs that are specific to amigaos.
- if --enable-cdrom is used with --with-amigaos, the cdrom_amigaos.o
  object file will be added to CDROM_OBJS in the iodev makefile.
2001-08-15 20:33:47 +00:00
Todd T.Fries
9b2060555e fwoop, forgot 2001-06-19 16:31:28 +00:00
Bryce Denney
85372121ac - moved spec file to redhat subdir 2001-06-12 12:46:05 +00:00
Bryce Denney
d282407d8c - I made some changes that improve the "make rpm" and install process
- start using autoconf/configure's standard of prefix, exec_prefix, bindir,
  mandir to control where make install puts things
- added script install-x11-fonts
- make install no longer tries to install DLXlinux (since not everyone will
  want it).  Now you must do make install_dlx if you want it.
- renamed erase_install to uninstall
- in RPM spec file:
  - run .conf.linux instead of .conf.linux-x86.  This is just a name change.
  - build directory hierarchy in the buildroot
  - patch up broken symbolic links in buildroot (ugly)
  - run font install script in  %post
  - clean up dlxlinux directory in %preun to avoid warning about not
    removing /usr/local/bochs/dlxlinux/bochsout.txt
  - remove /usr/local/bochs if nothing left in it
2001-06-06 13:57:24 +00:00
Bryce Denney
4b323cd40d - sync up with 1.2 branch (to 1.17.2.17) 2001-06-04 04:26:56 +00:00
Bryce Denney
93271443b7 - sync up with 1.2 branch (revs 1.17.2.7 to 1.17.2.11) 2001-06-02 07:37:38 +00:00
Bryce Denney
07b92bf6a5 - first test if -pthread arg to compiler causes pthread library to work.
If so, use it.  Otherwise, check if -lpthread works.  If so, us it.
  Otherwise, print an error and fail.
2001-06-02 03:07:28 +00:00
Bryce Denney
8c914f5c1f - fixed so that I could compile bximage.exe in win32 2001-06-01 05:58:46 +00:00
Bryce Denney
2ffb3b5d01 - compile bximage too 2001-06-01 05:21:25 +00:00
Bryce Denney
36d6a6527e - update bios again, but this time move to a standard filename
BIOS-bochs-latest.  Different versions of the BIOS can now be
  distinguished because they print the RCS ID into the log file
  using bios_printf.
2001-05-31 15:30:30 +00:00
Bryce Denney
3a4c16b2fe - point to rom image from 0529 2001-05-29 14:45:18 +00:00
Bryce Denney
da7afca875 - include vga.pcf in the RPM distribution 2001-05-29 13:06:00 +00:00
Bryce Denney
a26aef0735 - update version number and rom image name 2001-05-25 13:57:34 +00:00
Bryce Denney
d0365c816b - fix up makefile for VC++: use parens not brackets in variables:
$(VAR) instead of ${VAR}
2001-05-24 05:36:07 +00:00
Bryce Denney
97d681fb89 - integrated Don Becker's RFB gui, added it as a configure option,
and put it in the docs.
2001-05-24 01:07:09 +00:00
Bryce Denney
d72bdeb7b1 - leave version number unspecified until we are really building a particular
release.
2001-05-23 08:22:23 +00:00
Bryce Denney
e61d00351f - merged BRANCH-smp-bochs into main branch. For details see comments
in BRANCH-smp-bochs revisions.
- The general task was to make multiple CPU's which communicate
  through their APICs.  So instead of BX_CPU and BX_MEM, we now have
  BX_CPU(x) and BX_MEM(y).  For an SMP simulation you have several
  processors in a shared memory space, so there might be processors
  BX_CPU(0..3) but only one memory space BX_MEM(0).  For cosimulation,
  you could have BX_CPU(0) with BX_MEM(0), then BX_CPU(1) with
  BX_MEM(1).  WARNING: Cosimulation is almost certainly broken by the
  SMP changes.
- to simulate multiple CPUs, you have to give each CPU time to execute
  in turn.  This is currently implemented using debugger guards.  The
  cpu loop steps one CPU for a few instructions, then steps the
  next CPU for a few instructions, etc.
- there is some limited support in the debugger for two CPUs, for
  example printing information from each CPU when single stepping.
2001-05-23 08:16:07 +00:00
Bryce Denney
2afde23073 - don't print release info for CVS version 2001-05-23 02:40:31 +00:00
Bryce Denney
1981d8d5cd - change name of action "crash" to "fatal"
- change Makefile.in to "cvs-snapshot" information rather than printing
  the release number, since in fact it's not the same as the release anymore
- use #defines to give the actions names (ACT_IGNORE, ACT_REPORT, ACT_FATAL)
- register all logfunctions as they call setio, and keep a list so that
  we can change their settings more easily.  I admit I used a static-sized
  array to store them.  Sorry.
- instead of printing a prefix [GEN ] for generic messages, just leave the
  prefix blank [   ].  Otherwise you start wondering what does gen stand
  for.
- avoid reentry into fatal, since fatal can call BX_INFO and friends.
  This avoids a potential infinite recursion.
- now that files other than .bochsrc can be the rc file, print the
  actual name of the file in error messages.
2001-05-23 02:37:52 +00:00
Bryce Denney
3f702247d2 - add version information to the bochs binary for a banner message. 2001-05-22 18:49:11 +00:00
Bryce Denney
f089182db8 - add RPM make target 2001-05-22 17:20:45 +00:00
Bryce Denney
b03c2ef6a6 - add install target to make linux binary release 2001-05-22 16:12:01 +00:00
Todd T.Fries
bdb89cd364 merge in BRANCH-io-cleanup.
To see the commit logs for this use either cvsweb or
cvs update -r BRANCH-io-cleanup and then 'cvs log' the various files.

In general this provides a generic interface for logging.

logfunctions:: is a class that is inherited by some classes, and also
.   allocated as a standalone global called 'genlog'.  All logging uses
.   one of the ::info(), ::error(), ::ldebug(), ::panic() methods of this
.   class through 'BX_INFO(), BX_ERROR(), BX_DEBUG(), BX_PANIC()' macros
.   respectively.
.
.   An example usage:
.     BX_INFO(("Hello, World!\n"));

iofunctions:: is a class that is allocated once by default, and assigned
as the iofunction of each logfunctions instance.  It is this class that
maintains the file descriptor and other output related code, at this
point using vfprintf().  At some future point, someone may choose to
write a gui 'console' for bochs to which messages would be redirected
simply by assigning a different iofunction class to the various logfunctions
objects.

More cleanup is coming, but this works for now.  If you want to see alot
of debugging output, in main.cc, change onoff[LOGLEV_DEBUG]=0 to =1.

Comments, bugs, flames, to me: todd@fries.net
2001-05-15 14:49:57 +00:00
Bryce Denney
1191b8e28d - subdirectory make targets now use :: which causes them to run make in
every subdir every time.
2001-05-14 15:32:43 +00:00
Bryce Denney
d2203e662f - added most of Todd's "term mode" patch. I didn't apply all of the signal
handling part, so I need to figure out how control-C's and control-Z's
  will get mapped into keystrokes.
2001-05-08 19:07:26 +00:00
Bryce Denney
a6fef54678 - update copyright dates to 2001 for all mandrake headers
- for bochs files with other header, replaced with current mandrake header
2001-04-10 02:20:02 +00:00
Bryce Denney
9126941a36 - instead of putting each library function in a separate file (dumb),
combine them into osdep.cc.
2001-04-10 02:02:37 +00:00
Bryce Denney
b26bb9d5ec - add snprintf.o and strtoull.o 2001-04-10 01:51:50 +00:00
cvs
beff63eb32 - entered original Bochs snapshot bochs-2000_0325a.tar.gz from
ftp.bochs.com
2001-04-10 01:04:59 +00:00