Commit Graph

544 Commits

Author SHA1 Message Date
Bryce Denney
19684ead48 - print the event type correctly in control panel (used to assume it was
a panic)
2001-06-11 14:07:54 +00:00
Bryce Denney
a56dedb386 - added a new log action "ask" which sends the log message to the control
panel.  It gives the user the option of continue this time, continue
  and never ask again for this type of log message, or die.
- the communication between control.cc and siminterface.cc is still
  somewhat crude.  I'm trying to implement it so that a network
  protocol based on this interface will be simple.  I'll get this cleaned
  up soon.
2001-06-11 14:03:35 +00:00
Bryce Denney
a97df5a8fa - add some #if's to compile the control panel stuff only when
BX_USE_CONTROL_PANEL is set.  I put the #if...#endif thing around
  the entire file in siminterface.cc and control.cc so that it's safe
  to compile them in either case.
2001-06-11 06:48:37 +00:00
Bryce Denney
b1161e3a6b - added BX_FLOPPY_LAST 2001-06-11 06:47:14 +00:00
Bryce Denney
985d4b7923 - implemented bx_write_configuration which, for the first time ever,
writes a bochsrc for you.
- since there were two options related to logging, I moved them both
  into a new struct called bx_log_options.  This follows the pattern
  used by other devices.
- in control.cc: removed option 1 from main menu, the one that said
  "Read options from bochsrc.txt."  This was identical to choosing
  the next option, "Read options from..." and only saved you one
  keystroke, so I removed it.
2001-06-11 06:35:18 +00:00
Bryce Denney
17f2be70b9 - removed LOG_THIS from header file, since it was already defined in the
.cc files
2001-06-11 06:21:07 +00:00
Gregory Alexander
3c2384b270 Include new PIT .h file. 2001-06-11 03:11:40 +00:00
Gregory Alexander
32f50ddc6d Added hooks for new PIT. Now compiles it into bochs binary
but doesn't use it yet.  Still needs improvement before it
becomes the default bochs PIT.
2001-06-11 03:09:40 +00:00
Gregory Alexander
3a58858042 Added a .h file for the pit. 2001-06-11 00:16:24 +00:00
Gregory Alexander
af1b064007 Added a few access functions to pit, also changed
the constructor to an init function so that it can
be called at any time.
2001-06-10 23:53:09 +00:00
Gregory Alexander
56b670a371 Added ssize_t to cygwin setup. Should compile out of
the box under cygwin.
2001-06-10 21:26:11 +00:00
m2calabr
56510e445d Updated docbook2html command in Makefile and added more FAQ enties in user.dbk 2001-06-10 06:50:01 +00:00
Bryce Denney
16af12a9b3 - a few revisions back, I somehow lost the BX_CPANEL_START_OPTS_DISK
section.  Now it is back.  (This fixes a segfault when you "Disk Options")
2001-06-10 05:30:27 +00:00
Gregory Alexander
34fd23a74f Changed behavior of snprintf under cygwin. 2001-06-10 04:00:06 +00:00
Gregory Alexander
43916eb6ad Added config.h and osdep.h to make this compile under cygwin. 2001-06-10 03:53:43 +00:00
Gregory Alexander
279acf5e46 Fixed a problem with some systems not having struct timeval.
This is a temporary fix, we really need something in autoconf.
2001-06-10 01:35:10 +00:00
Bryce Denney
dffe013ff8 - fix interface menu 2001-06-09 21:29:07 +00:00
Bryce Denney
8e7c2e42f3 - avoid crashes when rom path and vga rom path are null 2001-06-09 21:19:58 +00:00
Bryce Denney
af53a1158e - fixed boot menu in control panel 2001-06-09 21:12:16 +00:00
Bryce Denney
8b7fbca53e - more work on text-mode control panel. Now the control panel starts before
the simulation begins, to give you a chance to choose between bochsrcs,
  choose the boot disk, etc.
2001-06-09 20:01:12 +00:00
Bryce Denney
c8c5a94297 - added option of changing vga update interval on the fly. 2001-06-09 19:57:56 +00:00
m2calabr
de160ff62b First makefile for build the docbook manuals 2001-06-09 07:00:58 +00:00
m2calabr
be5ad6a7f4 First draft of the docbook manuals. 2001-06-09 06:02:39 +00:00
Bryce Denney
5e4265ba8a - applied patch.sb16-ftell. Instead of using fgetpos which returns
an fpos_t, use ftell which returns an int.  Without the patch,
  Bochs gets an fpos_t and assumes it is an integer type, but
  on some systems (like linux with newer glibc libraries) this
  assumption is wrong.  Malte Cornils <malte@cornils.net> first
  reported this bug, and he warned me that ftell may not be portable
  to some platforms which treat binary and ascii streams differently.
  I haven't found any alternative yet.
2001-06-09 01:30:20 +00:00
Bryce Denney
53a33ecfc6 - need public: before constructor 2001-06-08 18:02:54 +00:00
Bryce Denney
778697a788 - "dummy" is supposed to be the constructor, but when I renamed the
class I forgot to rename dummy.
2001-06-08 18:00:25 +00:00
Bryce Denney
f2af827a63 - add a layer of abstraction between the text-mode control panel in
gui/control.cc and the simulator.  Now all communication between
  the control panel and the rest of bochs goes through an object
  called bx_simulator_interface_c.
2001-06-08 07:20:07 +00:00
Bryce Denney
b26e2fb362 - even if panic is nonfatal, the exit button should still make it quit! 2001-06-08 03:07:51 +00:00
Bryce Denney
5b0481dd25 - use BX_ASSERT instead of assert 2001-06-07 20:52:26 +00:00
Bryce Denney
ebdfbbe36f - add first attempt at a text mode control panel 2001-06-07 20:42:00 +00:00
Bryce Denney
0cc0bb9c2c - add first attempt at a text mode control panel 2001-06-07 20:31:20 +00:00
Bryce Denney
f1be61c30b - compiled bioses for rombios.c revision 1.13 2001-06-07 18:08:52 +00:00
Bryce Denney
7f14cc625e - This should fix the bug
[ #430472 ] DOS HIMEM "A20 line" error
  All I've done is moved the call to print_bios_banner later in the
  boot process, and the A20 problem goes away.  I wanted it early so
  that it would get printed before any panic or halt could happen.
  Oh well.
2001-06-07 18:03:29 +00:00
Bryce Denney
c681b99d39 - remove --enable-external-device-models
- remove --enable-external-cpu-memory
- Neither of these options were compiling anymore, and Kevin suggested:
  > My advice would be to scrap both of these options.  I hadn't used
  > those in some time.  The way to implement 'external' devices
  > would be via a modular plugin architecture, which both bochs
  > and plex86 should implement.
2001-06-07 16:00:58 +00:00
Bryce Denney
8195f1d252 - added debugger command: show "vga" which forces a vga update.
I haven't yet seen a case where this makes a useful difference, but
  it doesn't cause problems either.
2001-06-07 15:40:11 +00:00
Bryce Denney
ef907186ef - add messages about external device models and external cpu memory,
no change of any substance here!
2001-06-07 14:11:58 +00:00
Bryce Denney
8ab8c40108 - fix bugs in SMP structure
- this file now corresponds with rombios.c version 1.12.
2001-06-07 13:35:42 +00:00
Bryce Denney
08fad0325e - fixed the entry count for 2 and 4 processor MP structure, and the
checksum.
- at the same time, I removed my initials from the OEM id field and changed
  it to "BOCHSCPU"  :)
2001-06-07 13:33:32 +00:00
Bryce Denney
981fb8f55b - fixed bug introduced in 1.6 which caused MP structures to be overwritten
by BCC generated data.  This was pointed out by Tom Lindström
  <tom@debet.shh.fi>, and I took his suggestion of moving the MP structures
  to the end of the file.
2001-06-07 12:29:22 +00:00
Bryce Denney
e8d89eb7eb - allow readline to be disabled if you want, as in
configure --enable-debugger --disable-readline
2001-06-07 02:51:20 +00:00
Bryce Denney
017691abdc - this is the equivalent of main.cc revision 1.34 2001-06-07 02:21:55 +00:00
Bryce Denney
c5f59a6c27 - don't specify the names of the man pages. This makes it simpler since
I don't have to list them, and also apparantly fixes a mysterious problem
  which occurred when Anders Nielsen was trying to build the RPM for
  PPC: his rpm appears to gzip the man pages automatically, and then
  complains that /usr/man/man1/bochs.1 is not found!
2001-06-06 22:46:42 +00:00
Bryce Denney
7ddd5677f5 - increase MAX_LOGFNS since we run out of them on an SMP simulation with
4 processors
2001-06-06 18:27:45 +00:00
Bryce Denney
228180c40b - sb16 patch that fixes
[ #425640 ] sb16 assumes fpos_t is long int
  needs to be tested still
2001-06-06 14:01:01 +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
d647c9fc10 - renamed to .conf.linux, since it can be used for other linux platforms 2001-06-06 13:40:48 +00:00
Bryce Denney
34222b4b3b - add $CONFIGURE_ARGS to the configure line so that you can request other
args to go there (used in RPM building)
2001-06-06 13:40:02 +00:00
Bryce Denney
565fa8ea8e - another speed boost: when not using SMP, use
BX_CPU_C bx_cpu;
     BX_MEM_C bx_mem;
  and when more than one processor, use
     BX_CPU_C    *bx_cpu_array[BX_SMP_PROCESSORS];
     BX_MEM_C    *bx_mem_array[BX_ADDRESS_SPACES];
  The changeover is controlled by BX_SMP_PROCESSORS, but there are only
  a few code changes since nearly all code uses the BX_CPU(n) and BX_MEM(n)
  macros.
- This turns out to make a 10% speed difference!  With this revision,
  the CVS version now gets 95% of the performance of the 3/25/2000
  snapshot, which I've been using as my baseline.
2001-06-05 17:35:08 +00:00
Bryce Denney
b01b9109a6 - the SMP merge has reduced performance of even one processor, so this
is the first attempt to regain the performance of pre-SMP bochs
  (1.1.2).  When simulating only one processor, stay in cpu_loop forever
  as pre-SMP versions did.  The overhead of returning from cpu_loop over
  and over was slowing us down.
2001-06-05 15:56:19 +00:00
Bryce Denney
63dab502f6 - add keyboard 2001-06-04 23:06:33 +00:00
Bryce Denney
6d9113d4e1 - add top level link to debugger and cosimulation 2001-06-04 23:02:36 +00:00
Bryce Denney
bf13589cb1 - replace broken link with good one 2001-06-04 23:02:20 +00:00
Bryce Denney
52e0d4178c - fix typo 2001-06-04 16:36:21 +00:00
Bryce Denney
477b71def7 - don't bother with $Id$ in the bximage output anymore, it's not that
important.
2001-06-04 04:28:16 +00:00
Bryce Denney
c9d5ee1dfc - final update for 1.2 branch 2001-06-04 04:27:22 +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
4fd165131b - sync up with 1.2 final 2001-06-04 04:23:39 +00:00
Bryce Denney
075bc4319b - replaced with 2.40 2001-06-04 03:56:26 +00:00
Bryce Denney
9bda2b4491 - just remove the $Id$ tag from the bximage output, because it will always
be changing, unless I figure out how to put -kb on it.
2001-06-04 03:44:45 +00:00
Bryce Denney
46f3c6ed68 - add man pages 2001-06-04 03:37:54 +00:00
Bryce Denney
8448f3cda1 - mention man pages too 2001-06-04 03:34:32 +00:00
Bryce Denney
8c57c0c6cf - disable mouse capture on startup, to avoid confusing the heck out of
new users.
2001-06-04 02:45:28 +00:00
Bryce Denney
f41b050fd9 - update for 1.2 release 2001-06-03 23:09:11 +00:00
Bryce Denney
d2a6e40367 - Bryce got picky about spaces here and there 2001-06-03 22:49:13 +00:00
Timothy R.Butler
aa982d8e7e Updated formatting to work better under man 2.3.0 (SuSE 7.1), and
hopefully other versions of man. I also added reference to Bryce's new
Linux getting started guide.
2001-06-03 22:35:07 +00:00
Bryce Denney
2c66148a10 - remove some windows references, put </a> at the end of anchor tags
such as <a name="bla">
2001-06-03 20:55:28 +00:00
Timothy R.Butler
91cdfc0c87 Simplified argument usage information, reformatted doc. 2001-06-03 19:50:33 +00:00
Bryce Denney
64ebca73f7 - don't report version number for bximage 2001-06-03 15:06:04 +00:00
Bryce Denney
cde6e5ba53 - mostly-minor tweaks by Bryce
- all bochsrc option names changed to lower case, since the uppercase
  versions will not be recognized.
- BIOS is now named BIOS-bochs-latest instead of by date.
2001-06-03 14:37:40 +00:00
Bryce Denney
949a8e6557 - Bochs man pages from Tim Butler 2001-06-03 13:18:20 +00:00
Bryce Denney
e056bfbc12 - first draft, based on win32 with changes to make it linux specific 2001-06-03 04:54:01 +00:00
Bryce Denney
81c433cb03 - move to CHANGES, to be consistent with README, COPYING 2001-06-02 08:20:55 +00:00
Bryce Denney
d06f61b197 - update message to point to DOC-win32.htm 2001-06-02 07:44:13 +00:00
Bryce Denney
a0924ee9e6 - should say 10 minutes, not 5 2001-06-02 07:43:25 +00:00
Bryce Denney
421d5f6845 - install bochs binary in /usr/local/bochs/@VERSION@ instead of bin
- add symlink "latest"
2001-06-02 07:42:37 +00:00
Bryce Denney
433f9c3d98 - leave @VERSION@ instead of an actual version number 2001-06-02 07:41:03 +00:00
Bryce Denney
27c0ac42ad - sync up with 1.2 branch 2001-06-02 07:40:06 +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
02bb79fe79 - no longer needed, RPM takes care of it 2001-06-02 04:10:14 +00:00
Bryce Denney
3c9067facf - crash configure if X windows gui selected but no X windows libraries
are found
2001-06-02 03:11:51 +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
86dc440418 - fixed type, BX_EROR -> BX_ERROR 2001-06-02 03:01:01 +00:00
Bryce Denney
8c538a62d2 - added missing LOG_THIS 2001-06-02 02:49:14 +00:00
Bryce Denney
ea4ac33e96 - cleaned up, added some more detail about tools 2001-06-02 00:45:13 +00:00
Bryce Denney
e6496cfce9 - typecast arg3 of pthread_create to the right kind of function pointer 2001-06-01 21:53:18 +00:00
Bryce Denney
834bcc25da - added linux mouse patches from "Robb Main" <genedyne@aci.on.ca>.
patch.linux-mouse can be applied to current CVS
  patch.linux-mouse-for-1.1.2 is what Robb sent originally, which can
    be applied to version 1.1.2 (bugfix3)
2001-06-01 18:53:17 +00:00
Bryce Denney
6f6f9d79f0 - added tons of content 2001-06-01 08:29:17 +00:00
Bryce Denney
4d3f592af4 - first draft of windows specific doc 2001-06-01 06:32:02 +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
522007e662 - I guess strcasecmp is specific to glib or something, it didn't work in
win32.
2001-06-01 05:45:55 +00:00
Bryce Denney
2ffb3b5d01 - compile bximage too 2001-06-01 05:21:25 +00:00
Bryce Denney
10ae93c1d6 - gcc -Wall made me a little more honest! Added missing includes,
removed unused variables, initialized things that I had missed before,
  added a missing arg to sprintf, and a return at the end of int main.
  That's all.
2001-06-01 05:11:45 +00:00
Bryce Denney
ad43b74b4a - change to $Id$ in the print_banner 2001-06-01 04:28:14 +00:00
Bryce Denney
ee4897e645 - fixed upper limit of hard disk size. the limit is cylinders<65536. 2001-06-01 04:24:12 +00:00
Bryce Denney
a6dd514493 - rename mkimg2 to bximage 2001-06-01 04:20:26 +00:00
Bryce Denney
cc9e6ee3bc - now it asks before trashing an old image file
- finished code that prints 1 dot per megabyte
- added rcs header
2001-06-01 04:07:21 +00:00
Bryce Denney
df86e3266d - partially complete tool for creating empty disk images of the right size 2001-06-01 03:30:40 +00:00
Bryce Denney
a134d9fb86 - print messages in log on boot failure 2001-05-31 20:37:03 +00:00
Bryce Denney
954e3377b4 - print messages on boot failure 2001-05-31 20:36:05 +00:00
Bryce Denney
144fb07742 - add diskd, commented out 2001-05-31 19:56:27 +00:00
Bryce Denney
78472700f1 - added note about just how old this doc really is 2001-05-31 18:41:45 +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
b198e58c72 - removed panic that I had used in debugging. Oops. 2001-05-31 15:23:10 +00:00
Bryce Denney
5ac0adc67d - do not HALT if hard drives cannot be found 2001-05-31 15:21:25 +00:00
Bryce Denney
4ffec74a29 - only attempt to compile eth_fbsd.o if net/bpf.h is found. 2001-05-31 15:19:32 +00:00
Bryce Denney
31d8997bf8 - applied extended keyboard patch by Dave Poirier <eks@void-core.2y.net> 2001-05-31 14:27:37 +00:00
Todd T.Fries
2bbb1ef8eb strip '\n' from BX_{INFO,DEBUG,ERROR,PANIC}
don't need it, moved the output of it into the general io functions.
saves space, as well as removes the confusing output if a '\n' is left off
2001-05-30 18:56:02 +00:00
Bryce Denney
dd3ec034c7 - updated instructions for compiling under win32 2001-05-30 18:24:48 +00:00
Bryce Denney
a765644750 - removed extra paren that caused SHOW_IPS to fail 2001-05-30 13:23:33 +00:00
Bryce Denney
3a4c16b2fe - point to rom image from 0529 2001-05-29 14:45:18 +00:00
Bryce Denney
a37950bf5a - clean up rombios.txt when done 2001-05-29 14:35:45 +00:00
Bryce Denney
77a528dbb6 - fixed bugs in HALT macro, so that now it triggers a BX_PANIC message
in iodev/unmapped.cc.
2001-05-29 14:33:51 +00:00
Bryce Denney
d3bc402352 - corresponds to rombios.c revision 1.7 (fixed up HALT macro) 2001-05-29 14:32:41 +00:00
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