Commit Graph

230 Commits

Author SHA1 Message Date
Bryce Denney
38b35b9a48 - recompiled bios with new features (multiple hd, etc.) 2001-05-23 15:38:26 +00:00
Bryce Denney
892f04a2a3 - replaced all the "fprintf(stderr...); exit(1);" lines with BX_PANIC
and BX_INFO calls instead.
2001-05-23 15:13:05 +00:00
Bryce Denney
db2ae479cc - bug fix: zero length line could cause bochs to segfault. (Maybe it only
happened at the end.)
2001-05-23 15:00:10 +00:00
Todd T.Fries
70099281ff tweaks and if(bx_dbg.foo) BX_INFO -> BX_DEBUG .. 2001-05-23 14:31:21 +00:00
Bryce Denney
d9bcb50f94 - enable split hd support by default 2001-05-23 08:47:03 +00:00
Bryce Denney
9ed3cd690f - avoid "redefined AX" warning 2001-05-23 08:44:59 +00:00
Bryce Denney
6ed99e0e43 - fix typo (beward/beware) 2001-05-23 08:27:10 +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
564ca0a857 - within BX_MEM_C member functions, use reference to local data instead of
going out to BX_MEM to get it.
- outside of BX_CPU_C, use BX_CPU(n) instead of BX_CPU_THIS_PTR
- add memory-mapped I/O APIC and local APICs.
2001-05-23 08:02:15 +00:00
Bryce Denney
af4ccaae3e - added I/O APIC and local APICs
- for more details, see BRANCH-smp-bochs
2001-05-23 07:48:11 +00:00
Bryce Denney
17f0f589ba - branch .conf.x86 into .conf.linux-x86 2001-05-23 03:16:34 +00:00
Bryce Denney
68492e6573 - fixed stupid I/O bug 2001-05-23 02:45:43 +00:00
Bryce Denney
7f5f5e24ce - g++ gave warning about "class eth_pktmover_c has virtual functions but
a non-virtual destructor" so I gave it a virtual destructor which is
  empty!
2001-05-23 02:44:52 +00:00
Bryce Denney
42bc8f4f2c - extern not needed anymore 2001-05-23 02:42:55 +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
Todd T.Fries
12457577c1 ne2k from angelos@OpenBSD.org 2001-05-23 00:46:47 +00:00
Bryce Denney
2eafaa4d17 - use MAX_LOGLEV as array bounds for log_actions 2001-05-22 20:02:24 +00:00
Bryce Denney
a04c65e642 - new, partially implemented, lines in .bochsrc allow run-time choice of
what action to take on panic, error, info, and debug.  The lines don't
  have any effect quite yet because of an initialization order problem
  with the logfunctions.
2001-05-22 20:01:40 +00:00
Bryce Denney
cbc8c960d2 - more stderr cleanup 2001-05-22 19:07:53 +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
d7d75a7bdc - changed some messages from BX_INFO to BX_DEBUG so that they wouldn't
show up by default.
2001-05-22 18:48:31 +00:00
Bryce Denney
36b2a8266b - clean up stderr output a lot
- give hints if they type "bochs" with no args and no .bochsrc is found
2001-05-22 18:47:30 +00:00
Bryce Denney
ed1f0c595d - still content free, but a little more descriptive 2001-05-22 17:46:07 +00:00
Bryce Denney
f089182db8 - add RPM make target 2001-05-22 17:20:45 +00:00
Bryce Denney
195e03130c - make an RPM spec template, with @VERSION@ where the version should go 2001-05-22 16:57:23 +00:00
Bryce Denney
6dc5a16f08 - this is the first rpmspec that actually worked 2001-05-22 16:50:15 +00:00
Bryce Denney
b03c2ef6a6 - add install target to make linux binary release 2001-05-22 16:12:01 +00:00
Bryce Denney
015a541daa - add build subdirectory for platform-specific stuff 2001-05-22 16:10:07 +00:00
Bryce Denney
a477f9bbf7 - I got diffs from 1/4/2000 snapshot to 3/15/2000 snapshot, so I filled
in the changelog.
2001-05-20 04:05:18 +00:00
Bryce Denney
a9b282ece5 - BX_WARN doesn't exist any more! Change them all to BX_INFO. 2001-05-20 03:27:05 +00:00
Bryce Denney
9f5d2075c1 - added missing LOG_THIS 2001-05-20 03:20:11 +00:00
Bryce Denney
dc95af092a - fixed missing close paren in BX_PANIC call 2001-05-20 03:18:10 +00:00
Bryce Denney
c32028ab09 - title of window used to have the old website name in it. 2001-05-18 05:45:01 +00:00
Bryce Denney
f4e8b6c43a - updated form to include v1.1.2 (bugfix3) as an option 2001-05-18 05:39:17 +00:00
Bryce Denney
ee7218cfb5 - in main branch, I moved these contents into CHANGES.txt 2001-05-18 05:36:47 +00:00
Bryce Denney
ece73db2dc - update 5/17 2001-05-17 22:06:39 +00:00
Bryce Denney
7fb2ddca97 - brought in from 1.1 branch 2001-05-17 21:55:42 +00:00
Bryce Denney
267d834580 - switch to new BIOS from 5/17/2001 2001-05-17 21:51:16 +00:00
Bryce Denney
d6bdcc3141 - this bios is from rev1.4 of rombios.c, which fixes
[ #424904 ] rombios bug: both hds claim same geometry
2001-05-17 21:50:02 +00:00
Bryce Denney
fbde69ffcc - fixed bug in int13 code that returned disk0's geometry for either disk.
This fixes [ #424904 ] rombios bug: both hds claim same geom
2001-05-17 21:47:14 +00:00
Bryce Denney
04d661f248 - I grabbed this patch from plex86. It appears to make bochs disks
support LBA.  This builds okay, but I want to find a way to actually see that
  it's making some difference before committing it.  Anyway have an OS or
  diagnostic program that tests if LBA is in use?  What would LBA allow me to
  do that I can't do without it, so that a test can be done?
2001-05-17 21:38:33 +00:00
Bryce Denney
db087c7f6a - try to avoid printing null pointers if midifil, wavefile, logfile
are not defined.  This happens if SB16 is configured but then does
  not appear in the .bochsrc.
2001-05-17 20:58:31 +00:00
Bryce Denney
770cf1e9e2 - changed order of hard drive stuff to make it more clear 2001-05-17 20:11:50 +00:00
Bryce Denney
86182ace3a - added note that you need newharddrivesupport=1 2001-05-17 20:10:41 +00:00
Bryce Denney
784001a79c - made newharddrivesupport on by default. 2001-05-17 20:07:36 +00:00
Bryce Denney
a9ab075cbd - I made newHardDriveSupport on by default 2001-05-17 20:06:31 +00:00
Bryce Denney
aab41a611e - SLDT in real mode produces undefined opcode exception. Changed BX_PANIC
to BX_ERROR under these circumstances.
2001-05-17 20:05:17 +00:00
Bryce Denney
2eba96ba3d - previous revision missed something quite important, # of cylinders! 2001-05-17 19:41:48 +00:00
Bryce Denney
b262c56f16 - added sizes of large hard disks up to 32gig 2001-05-17 19:34:38 +00:00
Bryce Denney
3ddb5b6f53 - applied FreeBSD patches that were appropriate. 2001-05-17 07:03:11 +00:00
Bryce Denney
9e36e4f524 - define STRTOUQ the same as STRTOULL. 2001-05-17 07:00:42 +00:00
Bryce Denney
b3ea58afd6 - add search for strtouq support 2001-05-17 06:59:23 +00:00
Bryce Denney
b49cb8b00a - search for strtouq lib function now too 2001-05-17 06:57:57 +00:00
Bryce Denney
416f52f3e8 - comment out 2 lines with IXOFF and TCSAFLUSH for FreeBSD, at request of
Maxim Sobolev who sent me patches.
2001-05-17 06:44:06 +00:00
Bryce Denney
8a015b3bdc - removed the extra #endif that prevented EVERYTHING from compiling. 2001-05-17 06:40:31 +00:00
Bryce Denney
3c849507dd - fix modification time 2001-05-17 01:57:44 +00:00
Todd T.Fries
a03763d6ec too many )'s 2001-05-16 17:58:30 +00:00
Bryce Denney
7c7f61e877 - define snprintf to _snprintf for win32 2001-05-16 17:55:29 +00:00
Todd T.Fries
6a958e88c5 typo, double parens 2001-05-16 17:51:56 +00:00
Todd T.Fries
7ad6e82e00 merge in submission from freebsd ports 2001-05-16 17:39:07 +00:00
Todd T.Fries
a628039f5f report undefined opcode if not implemented instead of panicing for RDTSC 2001-05-16 17:27:01 +00:00
Todd T.Fries
3c7414a418 error and undefined opcode + typo with BX_INFO in code only used on i386's 2001-05-16 16:50:04 +00:00
Bryce Denney
3eb493022d - patch from Maxim Sobolev <sobomax@FreeBSD.ORG> 2001-05-16 16:01:23 +00:00
Bryce Denney
cfd975d20c - wrote a good long README for version 1.1.2 2001-05-16 13:27:26 +00:00
Bryce Denney
536dc4c10e - fpu in by default 2001-05-16 08:30:55 +00:00
Bryce Denney
4e6bc5a605 - compile with FPU on by default 2001-05-16 08:00:43 +00:00
Bryce Denney
8c336a82b5 - now FPU defaults to on 2001-05-16 07:51:43 +00:00
Bryce Denney
d2d54d42af - add changelog for version 1.1.2 (bugfix3) to main branch 2001-05-16 07:30:16 +00:00
Bryce Denney
97777b2a81 - first draft, not really very good yet 2001-05-16 06:07:56 +00:00
Todd T.Fries
070bb94215 onoff moved into logfunctions 2001-05-15 20:00:32 +00:00
Todd T.Fries
bc0040367d distinguish panics 2001-05-15 16:32:41 +00:00
Todd T.Fries
87e75dca26 forgot a LOG_THIS 2001-05-15 16:09:51 +00:00
Bryce Denney
0811b08f4b - this was applied in the BRANCH-io-cleanup branch, and then that branch
was merged into the main branch.  The patch has (indirectly) made it
  into the main code, so I'm erasing it now.
2001-05-15 15:41:49 +00:00
Bryce Denney
1d2cd83408 - Double fault patch from Thomas Petazzoni <thomas.petazzoni@ifrance.com>,
sourceforge patch #423726.  He writes:
  > you'll find as attachment a little patch which make
  > bochs support the double fault. currently, when 2 pages
  > fault occur, bochs does not generate a double fault (as
  > the Intel documentation says) but do
  > generate a other page fault, which make a triple fault,
  > and bochs will exit.
  >
  > this very little patch make bochs support this double
  > fault, which is
  > used in our OS in order to dynamically increse kernel
  > level stacks.
2001-05-15 15:29:33 +00:00
Todd T.Fries
a3d6cc1941 have the memory show the sim_id in the prefix, instead of adding (0) to the
log
2001-05-15 15:21:19 +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
25af30b33d - patch that makes SMF=0 work for all but CPU. I didn't want to commit
it until we integrate Todd's I/O code.
2001-05-14 08:43:34 +00:00
Bryce Denney
13c4c0c3af *** empty log message *** 2001-05-14 06:28:44 +00:00
Bryce Denney
aa056d952c - updated Elpin VGA BIOS to version 2.40, same as plex86. Kevin wrote
to plex86 on 5/14/2001 and said that it was okay:
  > Yes, thanks to MandrakeSoft, the Elpin VGA BIOS 2.40 was licensed
  > for use in _both_ plex86 and bochs.  So you can distribute 2.40.
  >
  > Replace the text in 'bios/VGABIOS-elpin-LICENSE', with the
  > same file from the plex86 CVS tree.  Substitute bochs wherever
  > plex86 occurs.
2001-05-14 06:11:03 +00:00
Bryce Denney
64f2cf366b *** empty log message *** 2001-05-14 05:55:49 +00:00
Bryce Denney
801a07288f - remove -fno-builtin which is a gcc-only option. I was getting no
compile warnings with or without it on Linux, so it seems no longer
  necessary.  It may have been introduced to cope with the fabs symbol
  conflict, which was already removed in rev1.3 of fpu_etc.c.
2001-05-12 18:28:31 +00:00
Bryce Denney
331f04d575 - with egcs-2.91.66, bochs did not compile if CXX=egcs. It works fine
if CXX=c++ however.  Bug report at http://sourceforge.net/tracker/index.php?func=detail&aid=423515&group_id=12580&atid=112580
2001-05-12 05:14:13 +00:00
Bryce Denney
c5faabd6b5 - add description of active branches and when they will be merged. 2001-05-11 05:34:33 +00:00
Bryce Denney
091ec7abcc - added target="_top" to link to our home page so that it does not put
the home page into the lower "topper.pl" frame.
2001-05-10 06:18:49 +00:00
Bryce Denney
a2ad2edc83 - move CVS status page into separate file 2001-05-09 05:20:34 +00:00
Bryce Denney
03e27bb170 - add changelogs for bugfix1 and bugfix2 2001-05-09 05:08:08 +00:00
Bryce Denney
ae83d68182 - oops, I mistyped the year. This should be from the year 2001. 2001-05-09 04:52:47 +00:00
Bryce Denney
5b328f44b0 - add BIOS binary that supports 2 hard drive support 2001-05-09 04:51:50 +00:00
Bryce Denney
0966451c1d - add BIOS that supports 2 hard disks 2001-05-09 04:47:44 +00:00
Bryce Denney
bf6c90cb6a - fix links to GNU LGPL page 2001-05-09 01:44:39 +00:00
Bryce Denney
91ad3f3c0c - spell out all of LGPL 2001-05-09 01:38:32 +00:00
Bryce Denney
8b2d3ea550 - it's -> its 2001-05-09 01:36:02 +00:00
Bryce Denney
d6f0e11801 - minor updates to many configure operations, for example CDROM is now
supported on more than just linux.  Also since about half the options
  said "Don't use this" I put the more stable/usable options toward the
  top, and the rest in a separate table below.
2001-05-09 01:35:46 +00:00
Bryce Denney
52b8e150d9 - added note about David Batterham too busy, please volunteer
- added note about testing status page
- added rows to platforms table for Compaq Tru64 UNIX, LinuxPPC
2001-05-09 01:34:24 +00:00
Bryce Denney
eadf8d3a1d - ok, so there are no docs for installing DOS and Windows31. I'm not sure
where they went.
2001-05-09 00:46:32 +00:00
Bryce Denney
25b4f20ba6 - change references to new Sourceforge site 2001-05-09 00:43:07 +00:00
Bryce Denney
d6856713e5 - update FAQs on license, author, maintainers, performaance,
screen shots, cdrom, sound, network card
2001-05-09 00:33:03 +00:00