Commit Graph

7731 Commits

Author SHA1 Message Date
Bryce Denney
f278500be5 - check for null CPU pointer on exit 2001-05-29 14:28:38 +00:00
Bryce Denney
071589ab79 - now I/O writes to 0x400 (panic_port) actually cause a BX_PANIC message
- now the HALT macro in rombios.c writes to panic port but does not actually
  execute a "hlt" instruction.  This allows the .bochsrc to control
  whether the BIOS panic is fatal or not.
2001-05-29 14:28:14 +00:00
Bryce Denney
da7afca875 - include vga.pcf in the RPM distribution 2001-05-29 13:06:00 +00:00
Bryce Denney
43c79a0c07 - added missing BX_PCI_THIS in several places 2001-05-29 07:38:22 +00:00
Bryce Denney
fa6e0432a5 - fix link to 1.2.pre1 2001-05-29 04:36:32 +00:00
Bryce Denney
66571b538c - add missing LOG_THIS on main branch 2001-05-26 05:55:44 +00:00
Todd T.Fries
e291dd17d4 demote BX_INFO to BX_ERROR 2001-05-25 22:17:51 +00:00
Todd T.Fries
9ebd237408 more output cleanup 2001-05-25 18:44:38 +00:00
Bryce Denney
89d83d5b81 - release should really default to 1 2001-05-25 16:58:48 +00:00
Todd T.Fries
0b613932ac remove redundant 2001-05-25 15:06:45 +00:00
Todd T.Fries
34a4fa7c67 demote INFO/PANIC to DEBUG to silence a number of w98 verbosity by default 2001-05-25 14:25:25 +00:00
Todd T.Fries
622031500e reset callback now implemented 2001-05-25 14:21:46 +00:00
Bryce Denney
5f0e754abc - point to new ROM image 2001-05-25 14:03:10 +00:00
Bryce Denney
bf5a0bcef5 - updated for 1.2-pre1 2001-05-25 14:02:49 +00:00
Bryce Denney
aed721bc62 - update for 1.2-pre1 2001-05-25 14:02:16 +00:00
Bryce Denney
74db540eca - use defined labels for log actions, rather than hardcoded numbers 2001-05-25 14:01:28 +00:00
Bryce Denney
47c7a92efc *** empty log message *** 2001-05-25 13:59:01 +00:00
Bryce Denney
a26aef0735 - update version number and rom image name 2001-05-25 13:57:34 +00:00
Bryce Denney
b941aa0123 - update for version 1.2-pre1 2001-05-25 13:53:06 +00:00
Todd T.Fries
28d7dab1b8 better default example port value 2001-05-25 13:18:45 +00:00
Bryce Denney
8d3c28d3de - added comment clarifying that Greg wrote it, and that it's not linked
with the rest of Bochs yet.
2001-05-25 13:11:52 +00:00
Bryce Denney
5e2d6aba63 - leave optimization on for windows, but make it easy to switch to
debug version by uncommenting stuff.
2001-05-25 02:08:52 +00:00
Bryce Denney
8ee361fba6 - change fprinf(stderr...) and exit to BX_PANIC. This should be done
in a more systematic way.
2001-05-25 02:07:38 +00:00
Bryce Denney
ace5845554 - partially working code for windows to wait for ENTER before exiting.
This is to avoid the last message disappearing before it can be read.
  However, fgets isn't doing the trick.
2001-05-25 01:56:28 +00:00
Bryce Denney
e1e266f14d - applied patch.cliff-rombios in bios directory.
- something is strange about patch.cliff-rombios2.  It should be equivalent
  to the other but I've been unable to apply it at all.
2001-05-25 01:46:30 +00:00
Bryce Denney
7b66643379 - this BIOS was made after applying Cliff Hones' patches 2001-05-25 01:32:59 +00:00
Bryce Denney
c3f8c66649 - this version is directly from Cliff in an email. Is it the same? 2001-05-24 23:34:42 +00:00
Bryce Denney
a9260aae27 - applied Cliff Hones's bios patches <cliff@aonix.co.uk>
- Makefile simplified - no longer uses tools86, dataseghack or ld86.
    Also enables warnings (-w-) and checks for undefined labels (-u-).
2001-05-24 23:24:02 +00:00
Bryce Denney
2d399f2501 - applied Cliff Hones's bios patches <cliff@aonix.co.uk>
His change log says:
  - Makefile simplified - no longer uses tools86, dataseghack or ld86.
    Also enables warnings (-w-) and checks for undefined labels (-u-).
  - Macros used in place of multi-line #defines (so !!! conversion by
    tools86 not needed).
  - HALT() fixed [previously used ';' instead of '!!!'].  Needs port 400 to
    be added to iodev to be useful?
  - isru removed - doesn't seem to be needed now.
  - added UDIV16 (for use by bios_printf).
  - bios_printf %d implemented.
  - set_enable_a20 changed to use PS2 method, since bochs emulates this.
  - Keyboard intercept (int 15h/42h) fixed - should set CF, not assume that
    caller already has.  [The DOS keyb driver for example doesn't!]
  - Memory is scanned from C000 to F4000 for extension ROMs - this
    picks up VGA BIOS as before, and allows others to be included.
  - Comments improved for bios config table, and bit indicating RTC
    present is now set.
  - Int 9 (keyboard) now calls Int 15h/42h for key releases too.
    [Again, this is what the DOS keyb driver does.]
2001-05-24 22:27:44 +00:00
Bryce Denney
ccee158458 - changed format of log functions to use BX_ERROR instead of errmsg 2001-05-24 22:20:41 +00:00
Bryce Denney
eacb6e5ccb - this is Greg Alexander's PIT patch from sourceforge, from
2001-05-23 14:35  (maybe EDT?)
2001-05-24 21:44:14 +00:00
Bryce Denney
0ce9b00524 - got this from Kevin; it should fix lots of problems in rombios.
must be applied to 3/25/2000 version.
2001-05-24 21:41:15 +00:00
Bryce Denney
d9d312351e - forgot to add some returns last time 2001-05-24 18:50:59 +00:00
Bryce Denney
49664f7503 - parts of the SMP merge apparantly broke the debugger and this revision
tries to fix it.  The shortcuts to register names such as AX and DL are
  #defines in cpu/cpu.h, and they are defined in terms of BX_CPU_THIS_PTR.
  When BX_USE_CPU_SMF=1, this works fine.  (This is what bochs used for
  a long time, and nobody used the SMF=0 mode at all.)  To make SMP bochs
  work, I had to get SMF=0 mode working for the CPU so that there could
  be an array of cpus.

  When SMF=0 for the CPU, BX_CPU_THIS_PTR is defined to be "this->" which
  only works within methods of BX_CPU_C.  Code outside of BX_CPU_C must
  reference BX_CPU(num) instead.
- to try to enforce the correct use of AL/AX/DL/etc. shortcuts, they are
  now only #defined when "NEED_CPU_REG_SHORTCUTS" is #defined.  This is
  only done in the cpu/*.cc code.
2001-05-24 18:46:34 +00:00
Bryce Denney
5d77c96ef0 - added BX_DEBUG messages here and there to help debug the ne2k code 2001-05-24 18:31:36 +00:00
Bryce Denney
26cf93f455 - fixed stupid bug in my RDTSC code, which made the TSD bit
(time stamp disable) not work correctly
2001-05-24 18:03:14 +00:00
Todd T.Fries
c4b0977231 Kevin said to change to 'bochs' all things 'plex86'.. change this too. 2001-05-24 15:30:30 +00:00
Todd T.Fries
aa8081aff3 cleanup output more 2001-05-24 14:08:54 +00:00
Bryce Denney
5a962a9e9c - some more .bochsrc cleanup with suggestions from Chris Schmidt 2001-05-24 08:59:05 +00:00
Bryce Denney
6f844d8190 - in several cases in the log functions, va_end appeared before the
last use of the varargs variable, which is illegal!
2001-05-24 08:46:17 +00:00
Bryce Denney
db2dd4cbbd - n_logfn was getting used before it was initialized. This was bad because
it determined the index into logfn_list to write to!  Now it is zeroed
  before it can be used.
2001-05-24 07:59:08 +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
0368a3e9cf - imported Don Becker's Bochs-RFB version 0.04a 2001-05-24 00:39:34 +00:00
Bryce Denney
f904071622 - imported Don Becker's Bochs-RFB version 0.03a 2001-05-24 00:38:44 +00:00
Bryce Denney
baf7f19446 - imported Don Becker's Bochs-RFB version 0.02a 2001-05-24 00:37:43 +00:00
Bryce Denney
ebdae63e4d - imported Don Becker's Bochs-RFB version 0.01a 2001-05-24 00:36:27 +00:00
Todd T.Fries
c8ef550530 irq9, not irq10, thanks angelos@openbsd.org 2001-05-23 19:47:14 +00:00
Todd T.Fries
cd01453c9d cleanup output 2001-05-23 19:36:55 +00:00
Bryce Denney
a6b3ea4efb - disable cdrom by default
- some comment line used "*" instead of "#" and made the whole thing
  invalid.
2001-05-23 17:04:43 +00:00
Bryce Denney
3503104390 - configure turns on APIC when cpu level > 5
- now the APIC feature bit is really controlled by cpu level and
  BX_APIC_SUPPORT, so it won't go on at the wrong time.
2001-05-23 15:54:05 +00:00
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
Bryce Denney
8ca66fd51e - it still said "Bochs is commerical software". Changed to mention the
LGPL instead.
2001-05-09 00:25:47 +00:00
Bryce Denney
9689c0cb18 - remove Kevin's address and email so that he doesn't get lots of
bochs emails.
- point to new SourceForge site.
2001-05-09 00:25:01 +00:00
Bryce Denney
7b00c7e2b5 - change instructions to point to the new mailing list 2001-05-09 00:24:13 +00:00
Todd T.Fries
9709e481da temp fix for panic that causes OpenBSD to not boot 2001-05-08 21:19:57 +00:00
Bryce Denney
de9528e211 - give the GUI signal handler first priority (before, BX_SHOW_IPS took
precedence).  This allows GUIs which want to take over SIGALRM to do so.
  Presently, no GUI uses this.
2001-05-08 20:18:05 +00:00
Bryce Denney
e363f402ca - This implements a solution that lets any GUI take over handling of any
signal.  First, selection of the GUI should cause BX_GUI_SIGHANDLER to
  be defined in config.h.in.  Then, the GUI should define member functions
    Bit32u get_sighandler_mask ();
    void sighandler (int sig);
  The mask function returns a bitfield where one bit corresponds to each
  signal.  For any signal whose bit is set to 1 in the return value of
  get_sighandler_mask, the gui will control that signal.  When the signal
  arrives, bx_gui.sighandler(sig) will be called by bx_signal_handler,
  instead of the default behavior of that signal.
2001-05-08 20:18:04 +00:00
Bryce Denney
545355f9b4 - instead of complaining that "the grey delete is not on an 83-key keyboard",
just return the same scancode as the real delete key.
2001-05-08 20:04:13 +00:00
Bryce Denney
dfd58f5a0f - this change should not affect functionality at all. Make IDE_DISK the
default for diskd, but if a cdrom is present change to a cdrom.
2001-05-08 19:55:40 +00:00
Bryce Denney
debed8cc55 - for OpenBSD, remove extern "C" { } around the includes. Apparantly
that is no longer needed.
2001-05-08 19:51:46 +00:00
Bryce Denney
46bc87415a - added dumb debug printf to see when signal handler is set up. 2001-05-08 19:08:28 +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
d9af1b1eb9 - reset patch by Todd Fries 2001-05-08 17:59:38 +00:00
Bryce Denney
5482d42cdd - 2.88M floppy patch by Todd Fries 2001-05-08 17:45:44 +00:00
Bryce Denney
a7b7563e3c - add support for split hard disk image, so that it is possible to store
different partitions in separate files.
2001-05-07 05:47:59 +00:00
Bryce Denney
19f9bd3ffb - applied patch 5/3/2001 so no longer in patches 2001-05-06 05:18:56 +00:00
Bryce Denney
b20b03b1ca - since dataseghack was checked in with permission 664 (not executable),
run it using "csh dataseghack"
2001-05-04 07:02:04 +00:00
Bryce Denney
a092622712 - applied the patch, with a few changes, so it's no longer needed here. 2001-05-03 21:21:28 +00:00
Bryce Denney
2c60492524 - add comments that vga registers 0x3c7,0x3cb are read regularly by
OpenBSD.  Until I see some documentation, I'd rather not ignore the
  panics just yet.
2001-05-03 21:14:56 +00:00
Bryce Denney
328412aac8 - This revision makes the BIOS code understand that there can be either
1 or 2 hard disks.
- int13: check how many disks first, and only return an error if DL exceeds
  the number of disks (ignoring bit 7 of course)
- added drive number arg to get_hd_geometry, so that get_hd_geometry can
  retrieve the numbers corresponding to hard drive 0 or 1
- hard_drive_post will now set up the EBDA area for drive 0 if it exists,
  then for drive 1 if it exists.
2001-05-03 21:13:20 +00:00
Bryce Denney
ebc315500e - added code to fill in CMOS registers 0x24-0x2c when diskd is present.
- made the code that fills 0x1b-0x23 for diskc conditional on diskc being
  present; this was probably not necessary.
- added some code (still commented out) that will help in supporting a second
  IDE interface.
2001-05-03 21:08:42 +00:00
Bryce Denney
80a0130cd6 - diskd implemented now. Only panic if diskd and cdrom are used together,
since at present there's no way to actually manage this.  To use both,
  we will need to put the cdrom (or diskd) onto second ide controller with
  a different IRQ.
2001-05-03 20:59:38 +00:00
Bryce Denney
3a6b2e929e - fixed bug in panic which allowed it to fail to print the message if the
log file hadn't been opened yet.
2001-05-03 20:58:19 +00:00
Bryce Denney
10412cdf1e - why restrict when people read the sector count? This was causing
unnecessary panics on openbsd when sector count was read soon after a
  reset.
2001-05-03 20:40:08 +00:00
Bryce Denney
8e9caa8ddb - implement mouse command 0xf6 set defaults
- fix typo in printf message
2001-05-03 17:50:50 +00:00
Bryce Denney
596679b875 - applied patch.xwin-timing by Suboner@aol.com. His comments:
Basicly what it does is, it help VGA16 find the syncing, because of the
  technique it uses, bochs did not help it figure out the timing diffrences
  with its one size fits all timing.
2001-05-03 17:00:38 +00:00
Bryce Denney
ac331dcdb2 - patch that includes all of Goswin Brederlow's mods to the 3/25/2000
snapshot
2001-05-03 16:34:49 +00:00
Bryce Denney
ff450e8ddc - added Suboner@aol.com's xwindows timing patch to patches so I can try it 2001-05-03 16:31:26 +00:00
Bryce Denney
900edff605 - Farid Hajji's patch for 4meg pages. I copied from sourceforge patch
tracker to CVS to make it easier to install.
2001-05-03 16:21:30 +00:00
Bryce Denney
a4aa559789 - add yet another caveat 2001-05-03 16:01:44 +00:00
Bryce Denney
f90086b59f - first draft of patch for 2 hard disks, see description in the file 2001-05-03 15:51:17 +00:00
Bryce Denney
310f1ae948 - make it easy to enable mouse debug output again with macro 2001-05-03 00:42:29 +00:00
Bryce Denney
ad175e9aae - specify where on the hard drive it fails to read or write. 2001-05-03 00:41:36 +00:00
Bryce Denney
5be42586c5 - slap on a version number 0.3
- ask their name and the date
- reorder versions, add choice for CVS checkout
- ask what compiler they used
- add mouse on list of devices tested
2001-05-02 06:41:40 +00:00
Bryce Denney
8643d4fc9f - removed all patches that are already applied in bugfix2, and ones
that have been rejected.
2001-05-02 03:12:55 +00:00
Bryce Denney
5cd42037a1 - used to be specific to bugfix2; made it more generic 2001-05-02 03:11:58 +00:00
Bryce Denney
7027c2780d - if panic is non-fatal, we must return before calling bx_atexit.
This caused trouble when BX_PANIC_IS_FATAL was 0, and a panic occurred.
2001-05-02 02:39:23 +00:00
Bryce Denney
00efacbe13 - don't put each function in a separate file; put them all in osdep.cc. 2001-04-26 02:51:11 +00:00
Bryce Denney
dd5c449cbc - rough draft of testing form, which people can fill out to report
success or failure on different host OS/guest OS combinations.
2001-04-25 17:51:14 +00:00
Gregory Alexander
a9bcd531f2 Added bx_ types to allow compilation on systems that
already define u_char, etc.

This gets it compiling under AIX 4.3.1.
2001-04-11 14:31:45 +00:00
Gregory Alexander
4f381132e1 Added a config file for AIX 4.3.1.
This may not work for everyone, and probably will not work on AIX 4.3.3.
2001-04-11 09:07:55 +00:00
Bryce Denney
417e4c01ec - print which unknown hard drive command causes a panic 2001-04-10 02:33:27 +00:00
Bryce Denney
79bef1a5bf - include bug list for 4/9/2001 snapshot 2001-04-10 02:31:38 +00:00
Bryce Denney
3f7f880427 - set good defaults for win32-vcpp
#define BX_64BIT_CONSTANTS_USE_LL 0
    #define inline __inline
    #define BX_NO_EMPTY_STRUCTS 1
    #define BX_NO_ATTRIBUTES 1
    #define BX_HAVE_HASH_MAP 0
2001-04-10 02:31:24 +00:00
Bryce Denney
431b22c1e8 - from Don Becker: had to typecast &waveformat.wf to (LPWAVEFORMATEX) type 2001-04-10 02:29:45 +00:00
Bryce Denney
995f4878c9 - mistyped my own initials as "bad"! 2001-04-10 02:29:23 +00:00
Bryce Denney
2a1f066514 - include bug list for bugfix-20010406-beta release 2001-04-10 02:23:36 +00:00
Bryce Denney
b29f4c1c78 - added README for bugfix-20010406-beta release 2001-04-10 02:23:10 +00:00
Bryce Denney
d52221b57a - include patches that will be included in bugfix-20010406-beta release 2001-04-10 02:22:19 +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
cf780f13ce - applied patch from Don Becker. Bypass fstat when opening WIN32 raw
floppy disk.
2001-04-10 02:17:43 +00:00
Bryce Denney
955b0a924f - applied patch from Don Becker.
CDROM drive letter for WIN32 is no longer hardcoded.
2001-04-10 02:17:10 +00:00
Bryce Denney
add7fc9a4d - applied patch from Greg Alexander: implement VGA enable register at 0x3c3. 2001-04-10 02:16:18 +00:00
Bryce Denney
43894ea539 - Applied patch from Roland Mainz, 4/1/2001
Support Sun CDROM.
2001-04-10 02:15:31 +00:00
Bryce Denney
d12a76d30b - Applied patch: pit-panic.
The 82c54 model (pit.cc) implements timer modes 0, 2, and 3 in its handler
  functions, without caring which timer number is involved.  However, the
  I/O write code that sets the mode is inconsistent.
    Timer 0 can be set to modes 0,2,3 only.
    Timer 1 can be set to mode 2 only.
    Timer 2 can be set to mode 2,3 only.
  From a quick reading of an 8254 datasheet, I can't see any reason to
  restrict which timer can be in which mode, so I think it's correct to
  allow ALL timers to go into ALL modes that are implemented.
2001-04-10 02:14:37 +00:00
Bryce Denney
e2a0ce5c03 - Applied patch based on one by Roland Mainz, 4/1/2001.
Panic-is-fatal patch, allows user to choose whether to crash on bx_panic()
  or just print a warning.  The default behavior is still to crash.
2001-04-10 02:13:25 +00:00
Bryce Denney
55de7270df - Applied patch from Greg Alexander, 12/27/2000.
Enable writes to the mouse output buffer and enable mouse DATA_READ command.
2001-04-10 02:12:30 +00:00
Bryce Denney
fdac0b6e12 - for macos, strdup is not defined. force configure --with-macos to
define BX_HAVE_STRDUP=0.
2001-04-10 02:11:42 +00:00
Bryce Denney
4e04f4cb58 - change all inline declarations to one of two macros: BX_C_INLINE or
BX_CPP_INLINE.  Then in config.h.in you can define these two as you
  wish.
2001-04-10 02:10:09 +00:00
Bryce Denney
b05159c112 - Applied patch from Greg Alexander, 12/22/2000.
Implement aborts on a few SET FEATURE commands for ATA.
2001-04-10 02:09:09 +00:00
Bryce Denney
1f545e43d8 - The fpu code creates a static function called fabs, which
unfortunately is the same as the C library function fabs.  Many
  compilers seem to use the static one with no complaint, but others
  don't like it.  Just rename fabs, to eliminate the potential
  conflict.
2001-04-10 02:07:47 +00:00
Bryce Denney
a6ad4c3903 - Applied const64bit patch:
For compilers (such as Microsoft VC++) which don't allow "LL" after a
  constant to make it 64-bit, this patch declares all such constants as
  BX_CONST64(value).  Then in config.in, a switch called
  BX_64BIT_CONSTANTS_USE_LL controls whether the macro puts the
  LL's in or not.  Configure sets the macro, if you're on a platform
  that can run such things.
2001-04-10 02:06:10 +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
424233384f - added strdup replacement function to osdep
- use Bit64u and other compiler-independent types
- moved contents of macutils.* into osdep.*.
- now in osdep.h, I allow all code to use the real library function name.
  If that function is not available, #define it to point to the
  bx_* replacement function instead.  And cause the bx_* replacement
  function to be compiled in osdep.cc.
2001-04-10 02:02:05 +00:00
Bryce Denney
2289674627 - check for strdup; if found define BX_HAVE_STRDUP=1. 2001-04-10 01:59:07 +00:00
Bryce Denney
c90f74536d - added informative header 2001-04-10 01:58:07 +00:00
Bryce Denney
96174271f9 - change bx_snprintf back to normal name 2001-04-10 01:57:27 +00:00
Bryce Denney
cfbac2ee2c - change strtoull back to normal name 2001-04-10 01:57:02 +00:00
Bryce Denney
ba2bd6cff9 - forgot to use PTR2INT in reg_add_sub.c and reg_divide.c 2001-04-10 01:55:09 +00:00
Bryce Denney
5bc03e93c4 - include osdep.h 2001-04-10 01:53:28 +00:00
Bryce Denney
2abd482398 - add snprintf.cc and strtoull.cc, with definition of missing libc functions 2001-04-10 01:52:59 +00:00
Bryce Denney
b26bb9d5ec - add snprintf.o and strtoull.o 2001-04-10 01:51:50 +00:00
Bryce Denney
52f569be1c - moved snprintf and strtoull prototypes into osdep.h. See comments on
osdep.h for why they are in a separate file.
2001-04-10 01:51:16 +00:00
Bryce Denney
76bbd83325 - check for sizeof int*
- check for snprintf, strtoull
- check if empty structs allowed
- check for hash_map.h
- check for blank labels as in   void main () { int x=2; label: }
- if debugger, turn on disasm too
2001-04-10 01:50:00 +00:00
Bryce Denney
4534c19e9e - missing a comma! 2001-04-10 01:47:26 +00:00
Bryce Denney
c7d20d2a91 - call bx_strtoull instead of strtoull 2001-04-10 01:46:37 +00:00
Bryce Denney
91ec229216 - call bx_strtoull instead of strtoull. 2001-04-10 01:46:12 +00:00
Bryce Denney
ff34643472 - include osdep.h
- arg1 of bx_dbg_watch/unwatch is sent -1, 0, and 1 but was declared as
  a Boolean.
2001-04-10 01:45:37 +00:00
Bryce Denney
3adbd8f71b - in bx_dbg_print_string_command there was a zero-length array, which
didn't compile with some compiler.
- put conditional "#if BX_HAVE_HASH_MAP" around code that uses
  <hash_map.h>.
- replace calls to snprintf with bx_snprintf.
- arg1 of bx_dbg_watch is an int, not a Boolean.
2001-04-10 01:45:06 +00:00
Bryce Denney
f850a6df1f These changes are from "portable1" patch.
- put /*comments symbols*/ around any chars after #endif.  Other compilers
  do not get it.
- fix cases in which a pointer is cast to a 32-bit int, then back to a
  pointer.  This breaks on a machine with 64-bit pointers.  Examples:
  FPU_sub arg 2 and FPU_div arg 2.  The int->ptr->int conversions are
  now done more safely by macros REGNO2PTR and PTR2INT.
- use GCC_ATTRIBUTE macro instead of __attribute__.  For compilers that
  do not support __attribute__, the macro can be defined to be nothing.
- in fpu_entry.c, arg1 of FPU_load_int32 is (s32*), but the calls to
  it cast their data to (u32*).
- if compiler does NOT inline functions in poly.h, the "extern inline"
  setting caused duplicate symbols to be created.  Changed them to
  "static inline" so that the mul_32_32 from different .c files do not
  conflict.
- implemented setcc so that it doesn't use curly brackets inside parens
- comment out sigcontext structure definition, which conflicts with
  non-linux or non-intel operating systems.  It's not used by bochs anyway.
2001-04-10 01:43:09 +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