Commit Graph

3388 Commits

Author SHA1 Message Date
Stanislav Shwartsman
216124c6c3 Send #MF exception for MMX instructions if there is a pending FPU exception 2003-04-05 12:49:14 +00:00
Stanislav Shwartsman
1e71c9e56e Merged patch-unallowed-lock-cases patch.
According to the Intel manuals:

  The  LOCK  prefix  can be prepended only to the following instructions
  and  only  to  those  forms  of the instructions where the destination
  operand  is  a  memory operand: ADD, ADC, AND, BTC, BTR, BTS, CMPXCHG,
  CMPXCH8B,  DEC,  INC,  NEG, NOT, OR, SBB, SUB, XOR, XADD, and XCHG. If
  the  LOCK prefix is used with one of these instructions and the source
  operand  is a memory operand, an undefined opcode exception (#UD) will
  be  generated. An undefined opcode exception will also be generated if
  the  LOCK  prefix  is used with any instruction not in the above list.

 Checking of the LOCK prefix done in fetchDecode state and not overloads
 Bochs's execution.
2003-04-05 12:16:53 +00:00
Volker Ruppert
d3b76c1ef9 - fixed 4 warnings 2003-04-05 08:26:49 +00:00
Nicholai Benalal
99b24650b4 automatic disabling of mouse as bochs window goes inactive, a few other minor changes 2003-04-04 22:27:47 +00:00
Gregory Alexander
8b1d1b2668 Fixed pit_wrap and virt_timer to update timer on reads. 2003-04-03 21:59:20 +00:00
Volker Ruppert
6b184eb3b5 - better error handling in function load_ROM():
* cause a BX_PANIC if the path of the system BIOS or VGA BIOS is empty
  * open() and fstat() now cause a BX_ERROR if the rom image is optional
2003-04-02 17:03:34 +00:00
Volker Ruppert
d5234085df - fixed and improved descriptions of the romimage config options in the bochsrc
sample and the manpage of bochsrc
2003-04-01 17:37:29 +00:00
Stanislav Shwartsman
6448ca4259 Fixed bug #643296 lock prefix, unallowed cases
reported by Scott Duplichan
2003-03-28 22:43:44 +00:00
Stanislav Shwartsman
f134d7a75b Update instrumentation problems list 2003-03-28 18:04:53 +00:00
Christophe Bothamy
4b77344366 - add problem and fix for Network under WinNT4 guest 2003-03-27 15:17:40 +00:00
Stanislav Shwartsman
8193a710ad Changed MMX/SSE/SSE2 diagnostic messages to be more informative 2003-03-21 20:33:23 +00:00
Stanislav Shwartsman
1224c2d307 #UD exception should be generated when using MOV_SwEw opcode for
loading CS register
2003-03-21 13:34:24 +00:00
Christophe Bothamy
dd84e7d991 - add check for mkstemp. provide a replacement when not present
- add check for zlib in configure
2003-03-19 23:39:40 +00:00
Christophe Bothamy
4f8cc95dcb - add subtype in standard header
- add read-only disk image class
- add "z-undoable" (compressed flat image + undoable redolog file) mode
- add "z-volatile" (compressed flat image + volatile redolog file) mode
Warning: using compressed flat image is _very_ _very_ slow.
2003-03-18 23:01:23 +00:00
Christophe Bothamy
49f7e0b275 - fix bugs in redolog class
- add 'undoable' mode
- add 'volatile' mode
2003-03-17 23:48:33 +00:00
Bryce Denney
74a42dd454 - first draft patch to convert parameters into a tree structure. 2003-03-17 05:29:15 +00:00
Christophe Bothamy
1a518b81fe - add __attribute__((regparm(X))) performance trick with gcc on x86
on some cpu instructions (patch from Conn Clark)
- performance improvement is 1% on win95 boot
2003-03-17 00:41:01 +00:00
Christophe Bothamy
323e42255d - add new performance patch from Conn Clark
- speedup is about 1%
2003-03-17 00:37:53 +00:00
Christophe Bothamy
9fe7827bdb - implement redolog class
- implement growable class
- add growable image in bximage
2003-03-16 00:28:04 +00:00
Bryce Denney
5227262590 - commit my notes on reorganizing parameters into a tree 2003-03-15 17:51:36 +00:00
Peter Tattam
752caf8e21 x86-64 emulation
Fixed PUSHFW/POPFW for 64 bit mode. (was doing PUSHFQ/POPFQ)
2003-03-13 00:49:20 +00:00
Peter Tattam
2f9088a223 x86-64 emulation.
Fixed IRETD in 64 bit mode
2003-03-13 00:45:44 +00:00
Peter Tattam
530f482c79 x86-64 Update - Fixed bad JMP far indirect 2003-03-13 00:43:00 +00:00
Peter Tattam
cb492ae7b5 x86-64 emulation.
Perform Canonical Address Checking.

Only does basic checking (only offset, not offset+size-1)
2003-03-13 00:37:40 +00:00
Volker Ruppert
34df2239bc - BX_HAVE_REALTIME_USEC: replaced BX_WITH_WIN32 by the platform symbol WIN32 2003-03-11 19:45:34 +00:00
Volker Ruppert
7257ebe472 - replaced BX_WITH_WIN32 by the platform symbol WIN32 2003-03-11 17:30:20 +00:00
Christophe Bothamy
3bab9ebf1c - add explaination and examples for time0 2003-03-10 11:45:26 +00:00
Volker Ruppert
e5fc0292bc - fixed the usage of BX_CPP_AttrRegparmN() at the i/o write handler.
The floppy access should work again.
2003-03-09 14:03:32 +00:00
Christophe Bothamy
20091e7f3c - compile rombios.c rev 1.92 2003-03-08 23:01:07 +00:00
Christophe Bothamy
479fbe2a25 - apply patch "[ 682539 ] Fix CapsLock and NumLock behavior" from rock at gimp.org 2003-03-08 22:59:17 +00:00
Volker Ruppert
406bf99e91 - status updated 2003-03-05 18:24:40 +00:00
Christophe Bothamy
4c91b32b33 - fix non detection of hard drives by minix2.
The problem was submitted by Erik van Zijst on the ml.
2003-03-05 10:43:52 +00:00
Christophe Bothamy
4112bc75de - add fix for minix2 not detecting the hard drives.
Use this patch to revert to the previous state in case of trouble.
2003-03-05 10:42:06 +00:00
Christophe Bothamy
a8f7451fd9 - update bximage to handle sparse disk images 2003-03-05 00:31:07 +00:00
Christophe Bothamy
65fe6dbe6f - fix the header size of sparse disks to what it was before 2003-03-04 22:08:52 +00:00
Christophe Bothamy
b2d5fc3e66 - some of the __attribute__((regparm())) were missed in the fpu .c files
when converting to the BX_CPP_AttrRegparm macro.
  Update them.
2003-03-04 21:46:49 +00:00
Christophe Bothamy
39b4388384 - first revision of harddisk modes support. See patch content for details. 2003-03-04 21:08:39 +00:00
Christophe Bothamy
c34745014f - this patch is now in patch.harddisk-modes 2003-03-04 21:05:38 +00:00
Christophe Bothamy
11fc5c716c - update status 2003-03-03 21:56:48 +00:00
Christophe Bothamy
e24ea95e73 - clean up the messed file I checked in yesterday 2003-03-03 17:39:16 +00:00
Christophe Bothamy
50efc3b8c7 - apply Conn Clark's patch.perf-regparm-cclark :
- it works only on x86 with gcc2.95+
  - uses the GCC function atribute "regparm(n)" to declare that certain
    functions use the register calling convention
  - performance improvement is about 6%
2003-03-02 23:59:12 +00:00
Christophe Bothamy
d9ffcf9384 - update with ./configure option 2003-03-02 23:51:48 +00:00
Stanislav Shwartsman
8665979c87 * Fixed behavior of BX_INSTR_MEM_DATA callback for RMW memory accesses
See instrumentation.txt for details
2003-02-28 20:51:08 +00:00
Stanislav Shwartsman
40fb37670a Added known problems and to-do lists 2003-02-28 20:18:18 +00:00
Stanislav Shwartsman
73959bc9f5 Added instrumentation callbacks description file.
Somebody please check it for grammar, spelling and correspondence
with current instrumentation code.
2003-02-28 20:06:43 +00:00
Peter Tattam
94880d1412 Fix guest2host and related optimizations to work on 64 bit host.
1) fixed the type of "hostPageAddr" and associated typecasts.
2) fixed the type of "pages" and associated typecasts (overloaded variable)
3) patch to cpu.cc to calculate "eipPageBias" correctly in 64 bit mode
2003-02-28 02:37:18 +00:00
Christophe Bothamy
e6ed09aa3a - add SCO OpenServer install section, contributed by Carl Sopchak 2003-02-27 14:13:51 +00:00
Peter Tattam
11a12142bc x64-64 emulation updates.
1) fixed some errors running 32 bit compat mode.  IMPORTANT FIX.
2) added IST processing (uses IST1-IST7 in 64 bit TSS)
3) cosmetic - debugging stuff to console.
2003-02-26 02:48:12 +00:00
Peter Tattam
70d752c8c2 external debugger only: fixed ask() to be virtual to let a panic trap into external debugger 2003-02-26 02:41:30 +00:00
Peter Tattam
0c39404940 cosmetic - extra console debugging for 64 bit mode. 2003-02-26 02:37:08 +00:00
Peter Tattam
4cc7139c3a fix for BX_CPU_LEVEL < 4 2003-02-26 02:35:11 +00:00
Peter Tattam
3aa1b591c1 add some debugging info for 64 bit mode. 2003-02-26 02:24:15 +00:00
Peter Tattam
0f94706c80 minor tweak to 64 bit stack push to ignore segmentation checks. Not required in 64 bit mode so is
a minor optimization.  Also in transition from compat mode to 64 bit mode (e.g. interrupt to inner
privelege with mode change), SS may not be properly defined - this avoids other messiness.
2003-02-26 00:59:31 +00:00
Peter Tattam
131bbb54c5 When external debugger enabled, change INT1 to be
transparent (i.e. not call the guest int1 ISR)
2003-02-26 00:53:38 +00:00
Volker Ruppert
14ca0d2550 - added stubs for the SB16 gameport 2003-02-24 18:35:48 +00:00
Christophe Bothamy
86f5aeb877 - fix compiling if BX_SCHEDULED_DIE_TIME is defined 2003-02-23 22:55:50 +00:00
Christophe Bothamy
fd280a300a - autoconf'ed from configure.in rev1.201 2003-02-21 20:20:52 +00:00
Gregory Alexander
ef16df4f69 Fixed a few warnings. 2003-02-21 17:45:20 +00:00
Gregory Alexander
c96ae6360e Stupid overzealous copy-and-paste. 2003-02-21 17:37:55 +00:00
Gregory Alexander
1ea6ff74dd Return correct values from unregisterTimer. 2003-02-21 17:30:09 +00:00
Sigbjrrn Skjcret
c9afc1f65d Updated to latest changes... 2003-02-21 15:06:18 +00:00
Sigbjrrn Skjcret
7adae75957 Updated to latest changes... 2003-02-21 14:51:12 +00:00
Sigbjrrn Skjcret
dfd0aa9fd2 Fixed configure.in for AmigaOS/MorphOS, unfortunately, I don't have a working autoconf, can someone please regen configure? 2003-02-21 14:40:59 +00:00
Sigbjrrn Skjcret
e63746370a Updated to the latest config files to support more hosts/targets (including MorphOS). 2003-02-21 14:37:44 +00:00
Sigbjrrn Skjcret
ff1fad9da0 Some more options which makes sense for AmigaOS/MorphOS build. 2003-02-21 14:24:24 +00:00
Gregory Alexander
f195d3fa6d Oops, stupid debug thing. 2003-02-21 03:49:27 +00:00
Gregory Alexander
de1b90d978 pit_wrap.cc never uses the realtime stuff anymore. 2003-02-18 16:57:44 +00:00
Gregory Alexander
b77b477bfa The PIT is going to start using virtual timers instead
of having its own realtime mechanism.  The old PIT
realtime mechanism will be removed next.
2003-02-18 16:54:48 +00:00
Gregory Alexander
25fb7ad86e Linked virtual timer type to the realtime PIT option. 2003-02-18 16:52:40 +00:00
Gregory Alexander
4ea5f058f5 This is a hideously ugly hack that removes some of the
speed throddling.  However, it keep up with real time now.
2003-02-18 04:07:42 +00:00
Gregory Alexander
6946666f71 Added init for bx_virt_timer 2003-02-18 03:38:03 +00:00
Gregory Alexander
f844486d08 Fixed some basic runtime problems.
Stuff runs now, but I'm working on getting it to behave properly.
2003-02-18 03:36:01 +00:00
Volker Ruppert
7cdea60d53 - key event handling of the win32 gui fixed. Now the function
DEV_kbd_gen_scancode() is called instead of DEV_kbd_put_scancode(). This
  change enables the support for different scancode sets. The win32 scancodes
  are now converted to bx_key values.
2003-02-17 19:08:12 +00:00
Gregory Alexander
2f451da125 Move configuration defines to .cc file instead of .h one. 2003-02-17 05:08:48 +00:00
Gregory Alexander
640ec800fb Fixed a few minor compile problems and updated initialization code. 2003-02-17 04:51:07 +00:00
Gregory Alexander
c0fa2db674 Add the virtual timers to the main compile. 2003-02-17 03:58:29 +00:00
Gregory Alexander
fa9b8fb363 Added a log option for the virtual timer. 2003-02-17 03:21:45 +00:00
Gregory Alexander
d9e1b2c8b7 Compiles now. I need to add some more stuff to test it. 2003-02-17 03:20:13 +00:00
Volker Ruppert
163c6be18d - fixed some warnings in the lowlevel networking code 2003-02-16 19:35:57 +00:00
Volker Ruppert
e26ceddd65 - patch updated and status line added 2003-02-16 18:08:28 +00:00
Volker Ruppert
aea91de8d3 - patch for win32 key handling 2003-02-16 12:10:32 +00:00
Gregory Alexander
a0070f6c69 Lots of updates. Doesn't sync with real time yet. 2003-02-16 04:58:43 +00:00
Gregory Alexander
b0e7f6d0c6 Working on timer part. 2003-02-15 23:39:41 +00:00
Gregory Alexander
c0d7138924 Working on a general-purpose virtual timer interface. This should allow
more consistent time interfaces once it's finished.
2003-02-14 21:05:36 +00:00
Gregory Alexander
f12a510b8b Added a strictly increasing timer.
This is only somewhat useful here, but will be more
useful when the general timer interface is available.
2003-02-14 04:22:16 +00:00
Stanislav Shwartsman
3d39bc3276 Fixed missed update 2003-02-13 15:53:21 +00:00
Stanislav Shwartsman
7fa75388a1 Added bx_cpuid value to the BX_CPU class to avoid any problems with BX_CPU_ID implementation 2003-02-13 15:51:22 +00:00
Stanislav Shwartsman
cdfc3cbce4 instrumentation enchancements:
* renamed CPU_ID to BX_CPU_ID.
  with this new name there is no possibility for name contentions and BX_CPU_ID
  definition could be moved out to NEED_CPU_REG_SHORTCUTS block

* returned back `unsigned BX_CPU::which_cpu(void)` function

* added BX_CPU_ID parameter for
	BX_INSTR_PHY_READ(a20addr, len);
	BX_INSTR_PHY_WRITE(a20addr, len);
    now it will be
	BX_INSTR_PHY_READ(cpu_id, a20addr, len);
	BX_INSTR_PHY_WRITE(cpu_id, a20addr, len);
2003-02-13 15:04:11 +00:00
Christophe Bothamy
d4575083a7 - add performance patch contributed by Conn Clark.
It uses special gcc attribute regparm, available on gcc3.2 on x86.
  I get about 7% increase when booting windows 95.
  The patch still need some integration work before being included
  in the main code.
2003-02-13 01:31:38 +00:00
Volker Ruppert
b716dafbcc - user_shortcut feature: new key name "bksp" (backspace) added
- function userbutton_handler(): stop parsing the shortcut string if the
  key name is invalid
- function userbutton_handler(): incrementing variable 'len' simplified
- function snapshot_checker(): fixed a warning
2003-02-09 18:59:19 +00:00
Bryce Denney
7336c891ee - CPU_ID fix from Shai Fultheim, who writes:
> CPU_ID is defined as
  > #define CPU_ID (BX_CPU_THIS_PTR local_apic.get_id())
  > This is not true when the APIC name is changed (true in Linux). Please
  > change this to:
  > #define CPU_ID (BX_CPU_THIS - BX_CPU(0))
2003-02-09 13:30:39 +00:00
Volker Ruppert
e492acd792 - VBE 4 bpp modes are using the default vga read/write/update code (for VESA
mode 0x102 = SVGA mode 0x6a)
- function redraw_area() now uses the old screen dimensions for redrawing
2003-02-09 08:25:22 +00:00
Peter Tattam
22d855a6c0 Fixed wrong RETF instructions for 64 bit mode. 2003-02-08 05:51:38 +00:00
Peter Tattam
c4bf554432 Fixed wrong increment for enter where level > 0 2003-02-08 05:48:01 +00:00
Christophe Bothamy
f5fb4bb839 - add not about translation when using a block device as hard disk 2003-02-07 22:01:23 +00:00
Christophe Bothamy
dd2618a315 - compile rombios.c rev1.91 2003-02-06 23:19:23 +00:00
Christophe Bothamy
579f3c0539 - apply Ben Lunt's 160k, 180k, 320k floppy patch 2003-02-06 23:16:56 +00:00
Volker Ruppert
322b428cec - don't register i/o port address base+0x14 (comparison fixed) 2003-02-06 19:09:24 +00:00
Christophe Bothamy
efdefaec76 - upload 160k, 180k, 320k floppies patch from Ben Lunt 2003-02-06 18:02:12 +00:00
Christophe Bothamy
cc33fb689c - add status on patches 2003-02-06 17:28:22 +00:00
Christophe Bothamy
513e1dacd6 - add status 2003-02-05 18:22:30 +00:00
Christophe Bothamy
6db442d12a - add Status: line so we can track patch status (proposed change, applied to cvs) 2003-02-05 18:21:24 +00:00
Christophe Bothamy
ecbbd25411 - add to log file:
. Bochs version
  . System configuration
  . CPU configuration
  . Optimization configuration
This might be helpful information for bug reports
2003-02-05 18:19:03 +00:00
Volker Ruppert
7911dd0c4f - background color changed from white to "none" (button color is used now) 2003-02-03 18:42:56 +00:00
Christophe Bothamy
d03abccf6f - apply anonymous patch [ 678117 ] build fail due to bad SGML punctuation 2003-02-03 17:10:05 +00:00
Volker Ruppert
4e75ccea04 - moved declaration of variable 'i' to the top of the reset() function
(multiple usage of localized variables is okay for gcc, but not for MSVC)
2003-02-02 10:24:26 +00:00
Volker Ruppert
9f1464768c - simplified the port number search in the read and write handler
- fixed port adresses in BX_* messages
2003-02-01 12:21:43 +00:00
Volker Ruppert
ea2b756d43 - use the return value of ReadFile() to determine the presence of the cdrom media
- replaced tabs by spaces in this section
2003-01-30 20:44:32 +00:00
Christophe Bothamy
7ebce64e8d - exit method does nothing unless specific_init was done 2003-01-30 18:41:00 +00:00
Christophe Bothamy
a774fc7df5 - autoconf configure.in rev1.200 2003-01-30 18:38:41 +00:00
Christophe Bothamy
a5081ba6d6 - macos does not have hashmaps 2003-01-30 18:37:05 +00:00
Christophe Bothamy
9505a80b7e - add "sparse hard drive" patch by justinsb 2003-01-29 18:20:19 +00:00
Volker Ruppert
ed976e4728 - dependencies updated after adding the pciusb device 2003-01-29 17:27:51 +00:00
Christophe Bothamy
b2dbcdb993 - apply Zwane's patch.highmem patch
It can be easily removed if things go wrong on win32
2003-01-29 15:01:16 +00:00
Volker Ruppert
f25a3df39b - added minimal USB support (patch from Ben Lunt <fys@cybertrails.com>, updated
and improved by Christophe Bothamy and Volker Ruppert)

Comment from the author:

Attached is a "patch" file detailing what you need to do
to add USB support (UHCI only for now) to your existing
Bochs (2.0.xx) source code.

I use Win32 and VC++ but the source and modifications
should be platform and compiler independant.

Please let me know if this patch some how breaks the
build process of your compilation (Bochs 2.0.0 or above
only).

I would also like any feedback on how this code works
(or doesn't work) on your platform and within your
images. If you explain in as much detail as you can on
how it did or did not work, I will try to add to the source
to help it work on all platforms and images.
2003-01-28 16:58:10 +00:00
Christophe Bothamy
fbe235a904 - clear up the --enable-sb16 configure option 2003-01-28 00:37:11 +00:00
Christophe Bothamy
81c1268d75 - add MacOS-X DMG install guide, courtesy of Aard Vark 2003-01-27 23:56:34 +00:00
Volker Ruppert
35580e4539 - changed BX_USE_P2I_SMF to BX_USE_PCIVGA_SMF 2003-01-27 21:11:55 +00:00
Volker Ruppert
7d5716516a - patch updated for current CVS 2003-01-26 09:48:38 +00:00
Volker Ruppert
0fe3cabe10 - more PCI register behaviour fixes
- added "ioaddr" and "irq" to the "usb1" bochsrc option
- number of ports is limited to 2 for a USB UHCI root hub
- the PCI configuration space is now a part of the usb hub structure
2003-01-25 16:04:48 +00:00
Volker Ruppert
2a5b04afb5 - behaviour of some PCI registers fixed 2003-01-24 15:14:15 +00:00
Bryce Denney
558b0c3aa0 - copy latest 2.0.2 changes into cvs trunk 2003-01-24 14:53:34 +00:00
Volker Ruppert
3c178c951b - new version of the USB patch from Ben Lunt with updates from Christophe
Bothamy and Volker Ruppert.
2003-01-23 20:13:23 +00:00
Volker Ruppert
0e847ccd13 - new macro BX_PCI_DEV() for the PCI register function
- new symbol BX_USE_PCIVGA_SMF for the experimental PCI VGA device
- pcivga.cc: removed unnecessary include statement
- pcivga.cc: fixed two warnings
- pcivga.h: removed unnecessary symbol BX_IODEV_PCIVGA_H
2003-01-23 19:31:28 +00:00
Stanislav Shwartsman
5991599dca Added BX_INFO messages when execution FXSAVE/FXRSTOR instructions 2003-01-23 18:50:37 +00:00
Stanislav Shwartsman
5222261080 Save/Restore FPU TOP-OF-STACK in FXSAVE/FXRSTOR instructions 2003-01-23 18:33:35 +00:00
Stanislav Shwartsman
e1b8e5b9f9 Fixed FTW save/restore in FXSAVE/FXRSTOR opcodes 2003-01-23 17:53:11 +00:00
Christophe Bothamy
77e33ccf26 - fix a "too many arguments for format" warning 2003-01-22 21:43:34 +00:00
Christophe Bothamy
6972e8b965 - add usb patch from Ben Lunt, reworked a little bit 2003-01-22 18:29:23 +00:00
Bryce Denney
1801fe85f8 - remove sse2.cpp, add sse_move.cpp and sse_pfp.cpp in trunk 2003-01-22 13:09:22 +00:00
Christophe Bothamy
acd7f00b11 - fix Makefile so it renames index.html to book1.html, if necessary.
Some stylesheets create an index.html file, others a book1.html file.
  Debian default creates index.html.
2003-01-21 23:07:29 +00:00
Christophe Bothamy
f0f3707fae - update "Using Bochs internal debugger" section :
* explain the format of the argument of the "sb" and "sba" command
  * remove Resource file extensions
2003-01-21 22:59:35 +00:00
Christophe Bothamy
8d30d44ae1 - backport typo found by Stanislav to patch file 2003-01-21 20:22:03 +00:00
Volker Ruppert
047699cc6a - VBE: update the variables for the old screen dimensions after redrawing 2003-01-21 17:39:47 +00:00
Christophe Bothamy
c4782d5e9c - apply patches/patch.disasm-luizshiguno from Luiz Henrique Shigunov.
From the author:

  I've implemented functions ALOb(), ObAL(), YbAL(),
  ALXb() and eAXXv() from dis_groups.cc.

  I've also changed dis_decode.cc to print cmpsd if code
  is 32 bits and cmpsw if code is 16 bits. The same with
  stosd, lodsd and scasd.
2003-01-21 13:23:47 +00:00
Christophe Bothamy
dc01227a03 - update patch so it apply cleanly. I will commit it to the cvs,
so we can easily revert it.
2003-01-21 13:21:17 +00:00
Christophe Bothamy
c6abf1d0d1 - fix old #if BX_SUPPORT_SYSENTEREXIT found by Stanislav. The sysenter/exit code was not called at all! 2003-01-20 21:30:00 +00:00
Christophe Bothamy
e90aeaef08 - autoconfed from configure.in rev1.197 2003-01-20 20:12:59 +00:00
Christophe Bothamy
939b558fdf - apply patch.sysenterexit-mrieker:
- adds sysenter/sysexit support for cpu-level>=6
  - enabled by ./configure --enable-sep
2003-01-20 20:10:31 +00:00
Christophe Bothamy
298903fbed - update patch so it apply cleanly 2003-01-20 19:56:03 +00:00
Christophe Bothamy
44502c00dc - compile rombios.c rev1.90 2003-01-18 19:23:14 +00:00
Christophe Bothamy
5e509b80c9 - add int15 function 86 support 2003-01-18 19:20:52 +00:00
Volker Ruppert
6ff44748da - font size hack in function dimension_update() removed. The X11 window now
appears with the right dimensions. Font sizes other than 16 are working now.
  The maximum font height in text mode is 32.
- the text mode cursor is now drawn with the right colors
2003-01-18 12:05:46 +00:00
Christophe Bothamy
8904c62b90 - add vga charmap change support 2003-01-17 18:16:02 +00:00
Christophe Bothamy
eb56579a71 - add patch.x11-charmap in case we want to revert it 2003-01-17 18:15:18 +00:00
Christophe Bothamy
ed57d3d45d - add changes requested by ams, sgdt and sidt in v8086 mode 2003-01-17 18:08:13 +00:00
Christophe Bothamy
febe279bba - fix link to http://www.winimage.com 2003-01-17 10:02:18 +00:00
Christophe Bothamy
d6301eb0cc - add some information about cd boot error codes 2003-01-16 21:41:00 +00:00
Christophe Bothamy
090fb80a35 - apply patch.x11-internal-vgafont
We don't need the vga.pcf font anymore.
  This will save some install troubles to many users.
2003-01-16 21:14:11 +00:00
Christophe Bothamy
758258c3da - add patch that remove the need for an external X11 vgafont 2003-01-16 17:13:31 +00:00
Christophe Bothamy
2bf8c6ab80 - update with latest current-cvs version. It fixes, at least the WinNT4 install bug 2003-01-15 17:44:57 +00:00
Christophe Bothamy
cfdcae68ca - compile rombios.c rev 1.89 2003-01-14 18:06:59 +00:00
Christophe Bothamy
152900c758 - move the extended key check in int09, now int15/4f is empty.
I did not see any bug, but maybe some code hooking int15/4f could be
  disoriented when receiving extented E0 scancode.
2003-01-14 18:03:31 +00:00
Christophe Bothamy
e42eee68e5 - add support for ElTorito Harddisk emulation. Darwin iso boots now.
The Harddisk emulation still needs some polish though.
2003-01-14 17:59:52 +00:00
Stanislav Shwartsman
d1edcde9ed Cleanup Peter's change in MOVNTI instruction 2003-01-14 14:58:56 +00:00
Peter Tattam
24d4a5003c patches to CPUID required to get latest x86-64 linux kernel (2.4.20) to run.
I believe this patch is ok, however it should be regression tested to make sure
nothing is broken.
2003-01-14 07:46:05 +00:00
Peter Tattam
6e359d62ed disable calling external debugger when jumping in & out of 64 bit mode. 2003-01-14 07:40:21 +00:00
Peter Tattam
b2622c5d04 Temporary tweak to reinstate a change that disappeared when sse2.cc was removed.
The 64 bit variant of MOVNTI was not decoded.  The proper fix for this is to work on
fetchdecode64.cc to call a 64 bit variant of SSE instructions or fail it with a
invalid op.  A careful check needs to be done with the AMD manuals to determine if
there are any other SSE instructions that have a special 64 bit decoding.
2003-01-14 06:50:01 +00:00
Christophe Bothamy
04888a1039 - fix [ 661010 ] cannot override ata-settings from cmdline 2003-01-13 17:55:12 +00:00
Christophe Bothamy
d007a8e93b - compile rombios.c rev 1.87 2003-01-13 12:55:59 +00:00
Christophe Bothamy
04809a2258 - fix NetBSD not booting from cdrom. AH was not set to 0 after a
successful read through int13/AH=2 when emulation floppy from cdrom.
2003-01-13 12:51:17 +00:00
Christophe Bothamy
712af448b4 - add a default #else case when include system specific includes and defining BX_CD_FRAMESIZE.
This should fix the compile problems on Irix and Tru64.
  I'd like to backport those changes to 2.0.2, when I'll be confirmed it works ok.
2003-01-12 15:04:52 +00:00
Volker Ruppert
61f1fcd679 - fixed the behaviour of the vga emulation after changing a palette entry
* removed the unnecessary screen resize code (caused lots of resizes when
    booting the DLX linux demo)
  * force a redraw of the screen in text mode
2003-01-11 21:41:20 +00:00
Volker Ruppert
2c93eb7600 - port 0x03c7 returns the DAC state (read = 11b, write = 00b)
- pel data register returns 0x3f if the DAC is not in read mode
2003-01-11 11:18:04 +00:00
Christophe Bothamy
d18476b4ae - apply [ 661590 ] Fix read_toc() method in *BSD. Patch from Keith Matthew Jones 2003-01-10 22:59:44 +00:00
Christophe Bothamy
cfd2c2f923 - add experimental PCI VGA card (patch from Mike Nordell)
Modified Files:
 	bochs.h plugin.h iodev/Makefile.in iodev/devices.cc
 	iodev/iodev.h
 Added Files:
 	iodev/pcivga.cc iodev/pcivga.h
2003-01-10 22:43:54 +00:00
Christophe Bothamy
e6ff0a8560 - add check for strrev and implementation if not found 2003-01-10 22:32:46 +00:00
Volker Ruppert
5840618ceb - function parse_line_unformatted(): stop parsing at the comment sign (#) 2003-01-10 20:33:12 +00:00
Kevin Lawton
87d648682e Code cleanup. Moved the interrupt redirection instrumentation
into the host-specific files and wrapped access to them
  with atomic operations since that's a structure global to
  all the VMs.  I think all the other globals are SMP clean
  since they are only written once during module init time,
  and read thereafter my all VMs.
Renamed all host OS specific functions to hostOS*().  All host
  independent functions to host*().
I'd like to rename all monitor space functions to mon*() next.
2003-01-10 04:27:51 +00:00
Christophe Bothamy
6d58bed135 - apply [ 665198 ] corrected vga.pcf to work on Solaris 2003-01-09 22:10:14 +00:00
Christophe Bothamy
31628c80b3 - remove outdated patch.
bablokb says in [ 664926 ]
please remove the patch patches/patch.bochs.sh. This
patch was developed for 1.4.x and does not work
anymore with 2.0.x.
It has been superseded by bxtstart in Bochs-Tools (see
http://www.bablokb.de/bochs-tools/).
2003-01-09 21:55:48 +00:00
Volker Ruppert
366188e67a - more accurate emulation of port 0x61 bit #4. This bit toggles with every
refresh request (15 usec). This fixes SF bug #644042.
2003-01-09 20:43:32 +00:00
Volker Ruppert
8f88ab3b1b - plugin name for register function fixed 2003-01-09 17:14:20 +00:00
Bryce Denney
bb261822ec - change it to say version 2.0 instead of 2.0.pre4. 2003-01-09 05:36:47 +00:00
Stanislav Shwartsman
513db033ab fixed compilation error and a logic bug together 2003-01-09 05:21:22 +00:00
Kevin Lawton
c15abe90f2 Updated host-null (a stubs-only compilation test) to reflect
a few new callout functions.
2003-01-09 04:49:04 +00:00
Kevin Lawton
387dcf520f Modified to comply with new way of mapping user space pages
into the plex86 kernel module and VM.  mmap() is not used
  any more.
2003-01-09 04:03:36 +00:00
Kevin Lawton
f45a747e59 Got rid of use of mmap() altogether. User space (bochs) allocates
all the memory it needs, and the plex86 kernel module uses
  get_user_pages() from the Linux kernel to get at them and
  pin the few that are needed statically (and later up to
  a watermark of pages that are needed dynamically).
Guest physical memory pages are now dynamically pinned/unpinned.
  For now, I use a hard limit of 4Megs of pinned pages and
  a really primitive algorithm to decide which one to unpin
  when the limit is reached and one needs to be bumped.  Seems
  to work.  Though I haven't run into the limit yet since I'm using
  just a small test program.
2003-01-09 04:02:31 +00:00
Jeroen Janssen
c518ebe945 added extra note about LGPL'ed VGABIOS 2003-01-08 21:37:00 +00:00
Stanislav Shwartsman
e6eacd984f Implemented MOVD 64bit extensions 2003-01-08 20:33:28 +00:00
Kevin Lawton
3fdba77f4e Fixes these files to comply with the new method of getting
and pinning user pages from the plex86 kernel module.  The
  guest physical memory array is no longer mmap()'d from kernel
  space where it used to be allocated.
2003-01-08 17:22:07 +00:00
Kevin Lawton
6b2c7ef341 Changed over from allocating the the guest physical memory area
in the plex86 module and mmap()'ing it into user space (bochs),
  to letting bochs malloc() it normally and using the
  Linux kernel facility get_user_pages() to get the associated
  physical pages and pin them in memory.  I only have code for
  Linux kernel 2.4.20 and up, as that's the first version to
  export the get_user_pages() symbol so modules can use it.
2003-01-08 17:20:01 +00:00
Christophe Bothamy
d22c0f0764 - remove read handler, on Volker advice 2003-01-07 08:17:15 +00:00
Volker Ruppert
954cdeb6e0 - FPU error register stub removed. It is now handled by a separate device 2003-01-06 18:18:21 +00:00
Bryce Denney
a926cdfd54 - there are no longer any *.htm files, but the installer was still
expecting to find something.  Remove references to *.htm.
2003-01-06 03:26:55 +00:00
Bryce Denney
d4cb5060af - this info is out of date. Better to say nothing than give misleading
information at the top of a README file.
2003-01-06 03:17:56 +00:00
Christophe Bothamy
7648bd0f11 - add cvs tags for 2.0s versions 2003-01-06 02:49:45 +00:00
Christophe Bothamy
eb47a8bf01 - add msdos compatibility FPU exception support (irq 13). The IGNNE pin is no handled yet.
Modified Files:
 	bochs.h config.h.in plugin.h fpu/wmFPUemu_glue.cc
 	iodev/Makefile.in iodev/devices.cc iodev/iodev.h
 Added Files:
 	iodev/extfpuirq.cc iodev/extfpuirq.h
2003-01-06 02:20:47 +00:00
Christophe Bothamy
8b6b4db7cc - This patch adds msdos compatibility FPU exception support. (irq 13). The IGNNE pin is no handled yet. 2003-01-06 02:17:24 +00:00
Christophe Bothamy
56eb9dfe7a - compile from rombios rev1.86 2003-01-06 02:03:57 +00:00
Christophe Bothamy
fd02f4ac05 - create two new asm functions to send eoi to the master pic and to both pics
- add int75_handler, for msdos compatbility fpu exception
  This handler calls int 2 (nmi). The NMI handler should really be aware
  of this and should iret in case of FPU exception (to be implemented)
2003-01-06 02:02:46 +00:00
Volker Ruppert
3c604136a5 - removed unnecessary BX_INFOs 2003-01-05 21:40:07 +00:00
Volker Ruppert
946bd288f8 - fixed the conversion from bcd to binary values in function update_timeval() 2003-01-05 19:43:09 +00:00
Christophe Bothamy
f5ae12bfe8 - Update the mode sense command, cdrom capabillities.
This enables readinf some kind of cdroms.
  (patch from Hartmut Birr, bug submitted by Ben Lunt)
2003-01-05 03:22:03 +00:00
Christophe Bothamy
b4ba046f62 - add patch for CPUID function 0x80000001 for x86-64 emulation 2003-01-05 02:16:38 +00:00
Christophe Bothamy
c6d3735a47 - fix compile warnings (patch from HJ) 2003-01-05 01:37:21 +00:00
Christophe Bothamy
5edbc1ca0a - fix typo 2003-01-05 00:59:52 +00:00
Christophe Bothamy
3c7920ff31 - update Changes with 2.0.1 Changelog 2003-01-04 23:08:53 +00:00
Stanislav Shwartsman
36a39707be Removed the patch because it already in CVS 2003-01-04 19:42:48 +00:00
Bryce Denney
abdf3ef751 - show something reasonable in the version string, instead of showing 2.0.pre4. 2003-01-04 19:22:47 +00:00