Commit Graph

396 Commits

Author SHA1 Message Date
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
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
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
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
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
e2772fa94b - destructor restores original terminal settings only when serial port is enabled 2002-06-04 21:35:08 +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
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
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
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
Volker Ruppert
6e4e751bfb - fixed the function argument of insert_cdrom() for Amiga OS and MacOSX
(added function argument "char *dev", but the cdrom change support for
  these platforms is still to do)
2002-05-28 15:39:05 +00:00
Gregory Alexander
b30fdb2487 Fix problem with PIT when the machine is being really slow.
This means that the REALTIME_PIT now only works on machines
that are capable of sustaining 150000 IPS, in aggregate.  This
seems a reasonable requirement, as even my 200Mhz PPC with 16MB
of memory can sustain that.

This is now probably ready for primetime, so I need to get it
added to the configure options.
2002-05-21 15:07:45 +00:00
Gregory Alexander
e92fb8deff Updated realtime PIT code.
This seems to work, but I don't think it works on slow machines (like mine.)

At least, I'm getting fails with the dlxlinux image, but they're pretty
sporadic.  This code shouldn't cause any fails.
2002-05-20 21:53:26 +00:00
Volker Ruppert
61bd767b8c - access to unsupported extra page register issues a debug message, not an error
- read access to unsupported or not readable registers issues an error message,
  not a panic
2002-05-11 13:42:52 +00:00
Volker Ruppert
74faab3bff - ConfAddr register is readable (32 bit)
- header type register is readonly
- debug message fixed
2002-05-10 10:56:04 +00:00
Christophe Bothamy
b84c82e80c - changed the floppy_bootsig_check syntax to be more logical. the syntax is now :
floppy_bootsig_check: disabled=[0|1]. It is not disabled by default.
  Sorry for any inconvenience it could cause
- changed the default (if cmos reg is 0) behavior for the floppy boot signature
  check, so the new bios is compatible with older bochs binaries (useful if we
  want to use the new bios when we release 1.4.1) :
  1 : disabled
  0 : enabled
- added info at launch time about the boot device and the floppy boot signature
  check
- added a "LBA capable" flag in the ata controller
2002-05-04 16:00:40 +00:00
Christophe Bothamy
117b099b54 - fix to have Bochs not panic when Win95 tries to detect devices 2002-05-03 13:52:53 +00:00
Christophe Bothamy
a2fc610355 - included "patch.harddrv-sco-osr5" from Carl Sopchak 2002-05-03 08:17:18 +00:00
Christophe Bothamy
980364868d - added a script directive in ne2k options of .bochsrc
- added the script directive management for ne2k options
- added the execution of the script (if defined and not 'none') after init of the tun device
2002-05-02 07:54:22 +00:00
Christophe Bothamy
f331d20e55 - fixed compile problem
- fixed opened netdevice name (/dev/net/tun...)
- fixed test on iface name (tun instead of tap)
- cosmetic changes
- added example in .bochsrc
Much of these fixes have been contributed by Frederic Bothamy
2002-04-30 13:33:30 +00:00
Jeroen Janssen
42e40dd38a - applying hw scroll/multibuffering VBE patch (this func requires latest vgabios to work, but old bioses should still work due to backwards compatible interface) 2002-04-29 13:06:06 +00:00
Christophe Bothamy
719a6919fe - i forgot to keep the 0xfff0 port management for older bioses. fixed 2002-04-24 11:52:13 +00:00
Christophe Bothamy
2f37ec16ea - added a DEBUG port for rombios (0x0403) and vgabios (0x0503)
- added a INFO port for rombios (0x0402). Kept the legacy INFO port at 0xfff0 for now
2002-04-24 07:39:47 +00:00
Christophe Bothamy
cd50268e2f - added a floppy_bootsig_check option to .bochsrc that will be used to enable/disable the 0xaa55 signature check ONLY for floppy-boot
- stored the boot signature check flag in cmos reg 0x38
- the rombios that is able to handle that flag will be uploaded later
2002-04-23 07:44:34 +00:00
instinc
9520492a7c fixed the comment associated with the master IMR initialization 2002-04-20 16:21:51 +00:00
instinc
976ea3f67f as per the 82c59a datasheet from intel, the irq mask is now cleared on initialization 2002-04-20 16:19:42 +00:00
Volker Ruppert
462871fd3a - Improvements for dimension_update() in text mode and text_update()
- The emulated vga card issues a dimension_update() using the real
    screen dimensions and the real font height.

  - The gui selects a font with the requested height or it recalculates
    the screen height if the font height is not available.

  - The text_update() function uses a new variable 'ncols' instead of the
    fixed value of 80 for the number of text columns.

  I have tested the changes with X11/Linux, SDL, wxGTK and win32. The changes
  in the other guis are not tested yet.
2002-04-20 07:19:35 +00:00
Bryce Denney
6cc9369426 - netbsd patch for raw cdrom, from Christian <bloodjerk@gmx.net> 2002-04-18 18:17:45 +00:00
Bryce Denney
4a35f70850 - add tuntap interface 2002-04-18 00:59:58 +00:00
Bryce Denney
2f69a74616 - commit TUN/TAP patch, though I can't really test it. I can verify that if
you don't have if_tun.h the configure script does not enable TUN/TAP.
2002-04-18 00:59:20 +00:00
Bryce Denney
2bac9a8f0e - remove dependency on /usr/include/math.h which is platform dependent.
This keeps sneaking back in somehow.
2002-04-18 00:46:38 +00:00
Bryce Denney
d85b0c113f - apply Peter Tattam's patch to fix a DMA bug. 2002-04-18 00:37:09 +00:00
Bryce Denney
91cc6590b2 - apply Peter Tattam's patch that makes win32 pad packets up to 60 bytes 2002-04-18 00:33:58 +00:00
Bryce Denney
30aaf4088e - commit patch.wxwindows.gz in the main branch. Now you can try out
the wxwindows interface by just "configure --with-wx; make"

  Modified Files:
    Makefile.in bochs.h config.h.in configure configure.in
    load32bitOShack.cc logio.cc main.cc cpu/cpu.cc cpu/cpu.h
    debug/dbg_main.cc gui/Makefile.in gui/control.cc gui/gui.cc
    gui/siminterface.cc gui/siminterface.h gui/x.cc iodev/cdrom.cc
    iodev/keyboard.cc memory/misc_mem.cc
  Added Files:
    README-wxWindows wxbochs.rc gui/wx.cc gui/wxmain.cc
    gui/wxmain.h gui/bitmaps/cdromd.xpm
    gui/bitmaps/configbutton.xpm gui/bitmaps/copy.xpm
    gui/bitmaps/floppya.xpm gui/bitmaps/floppyb.xpm
    gui/bitmaps/mouse.xpm gui/bitmaps/paste.xpm
    gui/bitmaps/power.xpm gui/bitmaps/reset.xpm
    gui/bitmaps/snapshot.xpm
  Removed Files:
    patches/patch.wxwindows.gz
2002-04-18 00:22:20 +00:00
Volker Ruppert
ebe5f626f4 - CRTC write: only the changes of the start address, the cursor position or
cursor size issue a screen update request
- reading an invalid CRTC register returns 0 / writing is ignored
- bit 7 of CRTC address register is always 0
- debug messages for CRTC registers updated / panics removed
- use the number of visible columns in text mode when calculating the screen
  width and the cursor position
2002-04-14 08:57:24 +00:00
instinc
a6320ce597 Implemented register 3F3, see comments 2002-04-11 02:21:59 +00:00
instinc
24ac18f04d temporary drive_select handling for >1 panics 2002-04-11 01:07:34 +00:00
instinc
86ed327ec9 added keyboard command 0xd2 as well as 0xdd and 0xdf 2002-04-11 00:28:55 +00:00
Bryce Denney
f56b1c7335 - move declaration of stat_buf to avoid some warning 2002-04-10 05:38:34 +00:00
Bryce Denney
dcc6df2f1e - fixed several instances where we had "delete array" but we needed
"delete [] array".  This led to memory leaks.  Thanks, valgrind.
2002-04-09 20:12:39 +00:00
Jeroen Janssen
c67a497100 - adding default constructor after code addition 2002-04-09 16:53:15 +00:00
Bryce Denney
7306746f0b - fd was never initialized, then the close() method read it. Thanks
valgrind.
2002-04-09 15:52:02 +00:00
Jeroen Janssen
d2ef229050 - VBE fixing out of memory read (now redhat6 image can use fbcon vga=771) 2002-04-07 21:32:42 +00:00
Jeroen Janssen
8cfa8a3bba - applying patches/patch.vbe-lfb to bochs cvs tree 2002-04-03 16:48:15 +00:00
Bryce Denney
da684a72fb - check in something similar to Stefan Görling's patch #536844.
I went ahead and made all the register/unregister functions in iodev.h
  return a boolean.
2002-04-03 01:56:26 +00:00
Christophe Bothamy
24e2d109da - changed copyright strings 2002-04-01 22:43:01 +00:00
Christophe Bothamy
60c930a782 - Removed the unnecessary BX_BIOS_MESSAGE_SIZE 2002-04-01 21:57:51 +00:00
Christophe Bothamy
d1ef29dc6e - Added a biosdev "pseudo device" to handle the log output of the rombios and vgabios :
. ports 0x0400 0x0401 and 0xfff0 : rombios
  . ports 0x0500 0x0501 and 0x0502 : vgabios
  The rombios log output was previously handled by the unmmapped device
2002-04-01 21:53:23 +00:00