Commit Graph

1657 Commits

Author SHA1 Message Date
Christophe Bothamy
5e15db2dcd - added port 0x8900 to enable bochs programmatic shutdown 2002-07-29 12:44:47 +00:00
Christophe Bothamy
52007ee6c7 - This patch enables the guest to programmatically stop bochs 2002-07-29 12:42:28 +00:00
Christophe Bothamy
9ab70dd560 - conditionnaly include <sys/mount.h> if BX_HAVE_BLKGETSIZE is defined
- updated for latest cvs code
2002-07-29 10:00:10 +00:00
Christophe Bothamy
6b22b92881 - removed #include <sys/mount.h>. This should only be defined if BX_HAVE_BLKGETSIZE is defined (see patch.blkgetsize). 2002-07-29 09:52:03 +00:00
Volker Ruppert
6420f04fe4 - fixed a typo in the example for the option "romimage" 2002-07-28 17:04:29 +00:00
Volker Ruppert
4dbd597456 - panic at READ CD replaced by a BX_ERROR. The harddisk controller
returns an error code until we are able to implement this feature.
2002-07-27 18:42:31 +00:00
Volker Ruppert
68d3969bc4 - floppy read and write function do not set the 'seek end' bit in status
register 0
2002-07-26 16:39:18 +00:00
Bryce Denney
1403a59ec4 - apply patch from Zwane Mwaikambo <zwane@linuxpower.ca> posted to
mailing list.
2002-07-25 13:30:07 +00:00
Volker Ruppert
c9420428f1 - calculation of the screen size for some graphics modes fixed
- use the start address when calculating the byte offset for standard EGA/VGA
  modes
2002-07-24 19:36:39 +00:00
Christophe Bothamy
92839ea2d1 - added options to use up to 4 optional romimages 2002-07-24 17:52:34 +00:00
Christophe Bothamy
8fc5ffd373 - added patch to enable the use of up to 4 optional romimages 2002-07-24 17:51:09 +00:00
Volker Ruppert
e46d56fad1 - jump to POST entry point must be a far jump (MS-DOS and Win95 reboots now)
- keyboard init: read output buffer and enable keyboard before self test
2002-07-23 18:46:17 +00:00
Bryce Denney
eb0974f0ce - if misaligned or wrong size write, print the address and length! 2002-07-23 15:32:14 +00:00
Jeroen Janssen
42bb859bff fix 800x600 tile problem as pointed out by Peter Tattam 2002-07-21 14:50:11 +00:00
Bryce Denney
7dd83e2140 - removed my antisocial asserts from the apic code, and changed them to
BX_PANICs.
2002-07-21 13:56:49 +00:00
Volker Ruppert
e5f8fc20f5 - byte offset for modeX fixed (use value of CRT register 0x13) 2002-07-21 11:03:43 +00:00
Bryce Denney
eaf037e658 - add Swedish keymap from Magnus 'Moggen' Öberg 2002-07-21 04:03:41 +00:00
Bryce Denney
ae30f4121e - Bernd Korz reports that sys/mount.h doesn't exist on Beos, so I added
an ifndef __BEOS__ around it.  Is this mount.h actually necessary?
2002-07-21 02:55:04 +00:00
Volker Ruppert
88f0e1b73f - init(): initialize media type for all 4 drives
- init(): set the initial status to BX_EJECTED if evaluate_media() fails
- don't modify the DOR when a drive > 1 is selected
- floppy command 'get status' now recognizes the head field
- floppy command 'recalibrate': don't set cylinder to 0 before completion
- floppy command 'sense interupt status' does not clear status register 0
- floppy command 'configure': more detailed BX_DEBUG messages
- floppy command 'read ID' does not modify status register 0
- floppy read/write commands: set the error bit in status register 0 if media
  is not present
- better detection of not existing drives in some commands: check the media type
  of the selected drive instead of the drive select value
- behaviour of floppy commands 'recalibrate' and 'seek' changed:
  * drive is busy in the execution phase, but not the controller
  * replaced the panic by setting the error status if drive is not existing
- evaluate_media(): set the media type even if device/file is not present
2002-07-20 19:53:50 +00:00
Volker Ruppert
397043b5e9 - odd byte count error in init_send_atapi_command() fixed: a byte count of
0xffff must be decremeted to 0xfffe
- ATAPI command code added to odd byte count error message
2002-07-19 13:32:49 +00:00
Volker Ruppert
a51a7840e5 - floppy command 'read ID' now recognizes the head number bit
- always return the current head number in status register 0
2002-07-16 19:36:40 +00:00
Christophe Bothamy
bc6d07a2c9 - generated from configure.in r1.83 2002-07-16 12:10:05 +00:00
Christophe Bothamy
4cdb7bfda9 - added $Id cvs tag as AC_REVISION 2002-07-16 12:08:38 +00:00
Christophe Bothamy
11f74cb4ce - fixed "logprefix" output on non "gnu libc" systems 2002-07-16 12:04:46 +00:00
Volker Ruppert
e0b09bee95 - missing 'fclose(fd)' added in function parse_bochsrc() 2002-07-15 20:12:14 +00:00
Volker Ruppert
43f9f8287b - the skip flag (SK) in command 'read sector' is ignored now. The floppy
command codes 0x46 and 0xc6 are using the normal read function.
2002-07-15 20:11:33 +00:00
Volker Ruppert
53128ce079 - don't define ACT_ASK and ACT_FATAL with the same values if the control panel
is not compiled in
2002-07-14 13:23:10 +00:00
Volker Ruppert
3bbda3f82e - added a command line option '-f' to specify a config file when using the
'-nocp' option
- reverted latest changes in function bx_do_text_config_interface()
- removed unnecessary forward declaration of function bx_print_header()
- replace the loglevel ACT_ASK by ACT_FATAL only when compiled without control
  panel
- detection of the config file fixed - fopen returns NULL if the function fails
2002-07-14 13:22:38 +00:00
Volker Ruppert
2e2e8efd68 - function bx_do_text_config_interface() is not used by the WX gui, so we don't
need #if BX_WITH_WX here
2002-07-14 11:42:51 +00:00
Christophe Bothamy
43f7efce45 - 32bits access flag for atapi devices (word 48 of identify packet device)
- fixed io_len check on port != 0x1f0 : must be 1 byte
2002-07-11 07:44:32 +00:00
Volker Ruppert
acba77dbf2 - cursor size feature simplified
- cursor hide feature works now
- don't handle the text cursor in graphics mode
2002-07-09 18:30:57 +00:00
Volker Ruppert
42c391cf9d - patch updated for current CVS version
- cursor size feature added for the BeOS gui
2002-07-08 20:11:12 +00:00
Christophe Bothamy
749c920c61 - moved "SIM->set_ini_done(1)" after device initialization.
(fixes a core dumped when the debugger is enabled)
2002-07-08 11:49:47 +00:00
Volker Ruppert
6aa5eed1ec - panic at MODE SENSE (curr) replaced by a BX_ERROR. The harddisk controller
returns an error code until we are able to implement this features.
2002-07-07 18:51:49 +00:00
Volker Ruppert
d8454f31de - this file is no longer needed 2002-07-06 15:24:01 +00:00
Volker Ruppert
ccbb98f04e - rules modified to use the FHS compatible directories (untested) 2002-07-06 15:23:04 +00:00
Volker Ruppert
27fedb5aba - AAM can generate an exception (divide by 0)
- AAM: modification of flags depends on AL, not AX
- AAM always clears CF and AF
- AAD can also modify AF, CF and OF
- DAA can also clear the CF
2002-07-06 11:02:35 +00:00
Volker Ruppert
70eb02913b - trailing comma removed after the last item of enum {} bx_string_opt_bits 2002-07-04 19:24:30 +00:00
Volker Ruppert
d064db05b9 - 'make uninstall' now removes the 'bochs-docs' script too 2002-07-04 19:01:14 +00:00
Christophe Bothamy
3088768f88 - added a configure check for BLKGETSIZE ioctl support. The patch should not cause any more problems on other systems 2002-07-04 10:40:10 +00:00
Volker Ruppert
636027845c - this patch doesn't fix the fprem bug. 2002-07-03 20:16:48 +00:00
Volker Ruppert
f249d2f78d - bugfix in rem_kernel(): the second and third stage of the calculation
modifies only the msw of variable "x".
2002-07-03 20:13:31 +00:00
Volker Ruppert
eb47a62435 - the link to "Bug Reports" can be found under "Feedback", not "Features" 2002-07-03 20:12:15 +00:00
Mike Lerwill
b941089156 Minor change to allow load to be called with an empty path (and do nothing) 2002-07-03 17:13:29 +00:00
Volker Ruppert
9b6f0f6b3e - in function mouse_motion(): added parentheses to fix compilation problems
with MSVC (SF bug #575301)
- fixed a warning in function periodic(): type of variable 'count_before_paste'
  is now 'unsigned'
2002-06-30 18:08:02 +00:00
Volker Ruppert
2ede8d7075 - manpage of bochsrc belongs to section 5. The file is renamed and the
references in the other manpages are updated.
- the version placeholder is now written in lowercase. This prevents the
  modification of the sed argument by 'configure'
- install/uninstall commands for the manpages in Makefile.in modified to make
  the changes obove work.
- header and footer of the manpages fixed
- pathnames of installed files updated (FHS compatibility)
- "parport1" section in the bochsrc manpage added
- new option "cdrom" in the "boot" section of the bochsrc manpage added
2002-06-29 18:35:32 +00:00
Volker Ruppert
afca461cf3 - reading port 0x01f0 with drq==0 causes a BX_ERROR, not a BX_PANIC. The return
value after the error is set to 0. This fixes the problem with the netbsd 1.5
  rescue disk (SF bug #419415)
2002-06-29 08:54:11 +00:00
Christophe Bothamy
17fe31ad4d - reverted to before patch.blkdevsize inclusion, because compilation fails on WIN32.
It will be included back when we know which platforms handle the GETBLKSIZE ioctl right
2002-06-28 21:34:30 +00:00
Christophe Bothamy
383ff23866 - cleaned up the logprefix code 2002-06-28 14:03:47 +00:00
Christophe Bothamy
5f44c98412 - this patch adds sysenter/sysexit functions support for CPU_LEVEL >= 6 2002-06-27 21:47:44 +00:00
Christophe Bothamy
cba611f25b - updated with latest version found on sf patches page 2002-06-27 19:38:39 +00:00
Volker Ruppert
888ef120f8 - changes in file bochs-dlx.in added 2002-06-27 15:36:27 +00:00
Christophe Bothamy
c6f9ce353a - removing patch.fetchdecode-cache as it is included in the main branch, and does not apply cleanly anymore 2002-06-27 14:39:03 +00:00
Christophe Bothamy
badef8cec8 - included instinc's patch.stack-return-from-v86 2002-06-27 13:31:54 +00:00
Volker Ruppert
c410659a92 - modified DLX path to make this file work with the FHS compatible directories 2002-06-26 19:13:46 +00:00
Volker Ruppert
589f26ef16 - exclude directories named "CVS" when preparing the source package for RPM 2002-06-26 18:20:21 +00:00
Volker Ruppert
44a71e4127 - modified paths to make this file work with the FHS compatible directories 2002-06-26 17:10:36 +00:00
Volker Ruppert
4d9c62b001 - added some more files that need to be changed 2002-06-26 17:08:55 +00:00
Christophe Bothamy
fcc5bd67cb - added patch for block device size detection from Ph. Marek
- included it in the main branch as it is only active with block devices
2002-06-26 16:45:27 +00:00
Christophe Bothamy
a926744628 I reworked and included Carl's patch to have a new bochsrc directive
to describe the format of the log prefix. This option can be any string
with special tokens being replaced at run time :
  #   %t : 11 decimal digits timer tick
  #   %i : 8 hexadecimal digits of cpu0 current eip
  #   %e : 1 character event type ('i'nfo, 'd'ebug, 'p'anic, 'e'rror)
  #   %d : 5 characters string of the device, between brackets
the default is "%t%i%d", so the logprefix is the same as before.

New tokens can be easily added or changed if needed.


Modified Files:
  .bochsrc bochs.h logio.cc main.cc gui/control.cc
  gui/siminterface.h gui/siminterface.cc
  patches/patch.logfilefmteip
2002-06-26 14:42:35 +00:00
Christophe Bothamy
5d84b38abd - added tha 1.4.1 release informations 2002-06-25 22:55:58 +00:00
Christophe Bothamy
368a58ef97 - removing patch as it has been included in the main branch long ago. 2002-06-25 07:35:41 +00:00
Christophe Bothamy
a7a6df9a1b - included patch.fhs. Detailed description:
see patch [ 551811 ]
   Location of some files on Bochs installation breaks the
   Filesystem Hierrachy Standard, to be found at:

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

   It is important to comply with FHS because most
   distributions require it in order to accept packages.
2002-06-25 07:30:44 +00:00
Volker Ruppert
76a5271232 - in function floppy_command(): added parentheses at the head number check
(fixes SF bug #572177)
2002-06-23 18:04:07 +00:00
Volker Ruppert
109007dd82 - in function init(): declaration of variables i and j moved to the start of
the function (fixes SF bug #572177)
2002-06-23 18:03:37 +00:00
Volker Ruppert
b9822b6f1c - in function bx_list_c::text_print() added parentheses (fixes SF bug #572177) 2002-06-23 18:02:55 +00:00
Bryce Denney
c337f3715f - This patch creates one copy of the FPU registers and state for every CPU
in a multiprocessor simulation.  Imagine that!  Without the patch, there is
  just one FPU for all the processors, which is clearly wrong.
  See bug [ 461762 ] multiple processors but only one FPU
2002-06-23 00:35:19 +00:00
Bryce Denney
5744357ffe - I should not have used BX_CPU_THIS_PTR to address the kill_bochs_request
field in the cpu object; it should only be used within cpu methods.
  Instead, use BX_CPU(0)->kill_bochs_request.
2002-06-23 00:01:01 +00:00
Volker Ruppert
54a5e86cc6 - real mode PCI BIOS functions rewritten in assembler
- new real mode PCI BIOS functions: find device, read/write byte/dword
- C code for PCI BIOS handles errors and prints messages only
- function setPCIaddr() no longer needed
- functions inw() and outw() no longer used by the PCI BIOS
- BIOS32 checksum calculation rewriten to prevent errors
- labels of protected mode PCI BIOS renamed
2002-06-22 15:23:05 +00:00
Gregory Alexander
18ca414cc0 Oops! 2002-06-20 17:59:26 +00:00
Gregory Alexander
401b990cb9 Added comment about nocp option to config menu. 2002-06-20 15:43:09 +00:00
Volker Ruppert
147657781b - the changes are present in CVS now. 2002-06-19 18:27:00 +00:00
Bryce Denney
7e04c23d2f - check in Mike Reiker's 4meg page code from a patch that he submitted last
November 17.
2002-06-19 15:49:07 +00:00
Bryce Denney
2bb90eae56 - don't panic if mkdir fails. Probably the dir already existed. 2002-06-19 15:15:59 +00:00
Volker Ruppert
c7c9cc2430 - DMA register and unregister functions for DMA channels added and macros for
DMA functions defined. Most of the changes are based on the "bochs sync"
   version of plex86. Here is the list of changes:

  * register/unregister functions for DMA channels added. The DMA controller
    can use the DMA read/write handlers of registered devices directly.
  * "hardwired" code in dma.cc removed
  * all DMA related code in devices.cc and iodev.h removed
  * DMA related code in pc_system.* removed except HRQ handling
  * macros for DMA functions defined in bochs.h
  * floppy and SB16 code modified to use the changes described above
2002-06-16 15:02:28 +00:00
Volker Ruppert
506d6ce6d9 - the patch file is no longer needed 2002-06-14 16:32:10 +00:00
Gregory Alexander
5d7c6627fd I botched the linked list implementation pretty badly.
Kudos to TLD for fixing it for me.
2002-06-06 23:03:09 +00:00
Christophe Bothamy
0fc3304a35 - cdrom is enabled by default
- added a --enable-fetchdecode-cache option
2002-06-06 15:42:11 +00:00
Gregory Alexander
1be5b1d46c Added a linked list to further speed up icache invalidates.
These should be pretty snappy now.  It's time to generate
some actual statistics.

 Modified Files:
 	cpu/cpu.cc cpu/cpu.h cpu/init.cc memory/memory.cc
2002-06-05 21:51:30 +00:00
Gregory Alexander
c41505e342 Added a RPN directory for the cache to help make invalidates
faster.  Hopefully this won't slow things down too much.

 	config.h.in cpu/cpu.cc cpu/cpu.h memory/memory.cc
2002-06-05 03:59:31 +00:00
Volker Ruppert
e2772fa94b - destructor restores original terminal settings only when serial port is enabled 2002-06-04 21:35:08 +00:00
Volker Ruppert
260ab478d7 - this patch adds register and unregister functions for DMA channels and
defines macros for DMA functions.
2002-06-04 18:31:27 +00:00
Volker Ruppert
0ef68e47ad - the changes are present in CVS now 2002-06-04 18:30:24 +00:00
Volker Ruppert
aa57c0e171 - most important functions of the protected mode PCI BIOS added.
Linux (kernel 2.2.18) is able to use the new features.
  Here is the list of changes:

  * BIOS32 data structure added
  * BIOS32 and protected mode PCI BIOS functions added. The BIOS32 function
    returns a pointer to the PCI BIOS entry point when the service $PCI is
    requested and the PCI hardware is present.
  * Supported 32 bit functions: installation check, find pci device,
    read configuration byte/word/dword, write configuration byte/word/dword
  * real mode PCI BIOS installation check rewritten in assembler to use 32 bit
    registers for the protected mode entry point and the 'PCI ' signature.

  TODO:

  * add missing functions of the PCI BIOS (if necessary)
  * add missing features of the i440FX PCI bridge
  * implement the other parts of the i440FX chipset (PCI-to-ISA bridge,
    PCI IDE controller, USB controller)
2002-06-04 17:44:02 +00:00
Gregory Alexander
fda1b874e9 Check in FETCHDECODE Caching, with changes.
Specific changes from the patch:

1.) renamed fdcache_eip to fdcache_ip, as it is using
the RIP instead of the EIP.

2.) added a Boolean array fdcache_is32 which uses is32
to determine icache hits.  Otherwise we could run 32-bit
code as 16-bit or vice versa.


 Modified Files:
 	config.h.in cpu/cpu.cc cpu/cpu.h memory/memory.cc
2002-06-03 22:39:11 +00:00
Christophe Bothamy
75247ef0a4 - 3rd version of tld's fetchdecode cache 2002-06-03 20:34:31 +00:00
Volker Ruppert
b88ac96c35 - added a short description how to toggle the mouse state at runtime
- fixed a typo
2002-06-02 18:34:41 +00:00
Volker Ruppert
058fceb3be - keyboard and mouse definitions removed (still present in keyboard.h) 2002-06-02 11:53:49 +00:00
Volker Ruppert
43daf31782 - initialize DMA controller before floppy and SB16 2002-06-02 11:53:19 +00:00
Volker Ruppert
16966b066e - the changes are present in CVS now 2002-06-01 21:35:43 +00:00
Volker Ruppert
53acc7b2d7 - "ask" dialog implemented (a part of this changes comes from the old version
of wx.cc)
2002-06-01 15:44:54 +00:00
Volker Ruppert
4425a91b5a - update the vga screen in the ask() function before executing the dialog
- added break statement in the ask() function after fatal() (necessary for
  wxWindows)
2002-06-01 07:39:19 +00:00
Volker Ruppert
5a9dcef1e4 - include statement <linux/fs.h> seems to be unnecessary, cdrom support should
compile now on mips and m68k (untested)
- added cdrom support on GNU (untested)
- fixed a warning
2002-05-31 09:56:58 +00:00
Volker Ruppert
b32f75e048 - fixed a few "@prefix@" statements 2002-05-31 07:57:37 +00:00
Volker Ruppert
01d65a0d41 - fixed the URL 2002-05-31 07:56:59 +00:00
Volker Ruppert
52bf2216ca - enable serial port for GNU and GNU/Linux
- use the same port name as in the configuration for BX_INFO ("com1")
2002-05-31 06:54:34 +00:00
Christophe Bothamy
c04d7cd10a This a patch found on sf bug list from mrieker :
fixed some stuff in apic code:
  - interprocessor nmi's
  - lowest priority
  - fixed ppr
  - can write task_priority
  - scan priorities from high to low
2002-05-30 12:15:16 +00:00
Volker Ruppert
1bd3646867 - implementation of the PCI device register mechanism
The new function register_pci_handlers() is similar to the register functions
  for i/o addresses. A PCI device can register the read/write handlers for it's
  private PCI configuration space. The i/o mapped registers of the host bridge
  control the access to the configuration registers of each PCI device. You can
  select the bus, device, function and register address with the confAddr
  register. The confData register is a window to the configuration space of the
  selected device.
- reset sets the values of the i/o mapped registers to 0
- changed some BX_INFO messages to BX_DEBUG
2002-05-30 07:33:48 +00:00
Christophe Bothamy
d5e43f24b4 - updated the patch from tld. 2002-05-29 21:52:36 +00:00
Christophe Bothamy
d78e428169 - added fetchdecode-cache patch from tld 2002-05-29 09:02:40 +00:00