Commit Graph

4795 Commits

Author SHA1 Message Date
Volker Ruppert
f7668681bd - SF patch for large disk support applied 2004-08-19 19:44:44 +00:00
Volker Ruppert
99a42a8dbc - applied SF patch #838601: support for > 2 GB disk size with MSVC++
- support for non-standard disk sizes 1.68 MB and 1.72 MB in bximage
- large disk support also works now if compiled in msys/mingw
2004-08-19 19:42:22 +00:00
Volker Ruppert
c57ffcb654 - a modified version of this patch is present in CVS now 2004-08-19 16:04:45 +00:00
Volker Ruppert
f9a7c1b6c2 - bximage on win32 now can create compressed flat hard drive image files up to
32GiB (NTFS only) - based on a patch from Hartmut Birr
2004-08-19 16:03:03 +00:00
Stanislav Shwartsman
fcc54c7f82 Add missed flags modification 2004-08-18 21:38:50 +00:00
Stanislav Shwartsman
1f5aa2696f Fix compilation errors ;) 2004-08-18 21:29:07 +00:00
Stanislav Shwartsman
8c618be951 Fix comments 2004-08-18 20:49:31 +00:00
Stanislav Shwartsman
b370a417a4 Optimize lazy-flags for ADC and SBB instructions 2004-08-18 20:47:35 +00:00
Stanislav Shwartsman
5268c1cd22 Update changes 2004-08-18 19:37:18 +00:00
Stanislav Shwartsman
729e0abd2a Fixed bug [ 912496 ] IDIV can cause simulator divide error 2004-08-18 19:27:52 +00:00
Volker Ruppert
91ac899439 - applied SF patch #867045 from m_suzu_abc@yahoo.co.jp
* fixed compiler errors to build on VC++
  * removed /GX from CXXFLAGS since C++ exception is not used
2004-08-18 11:52:25 +00:00
Volker Ruppert
0b31945d64 - enable/disable mouse capture fixed for a 2-button mouse (part #1 of SF patch #1005422)
- mouse messages for the status bar fixed
2004-08-18 09:03:48 +00:00
Volker Ruppert
f10bc6199a - changes already applied to main CVS 2004-08-18 08:09:15 +00:00
Volker Ruppert
338b7c5504 - this is not the behaviour of real hardware 2004-08-18 08:06:08 +00:00
Volker Ruppert
a83cb03fb3 - this patch would revert a bugfix, does not fix a bug 2004-08-18 08:03:49 +00:00
Volker Ruppert
f64a3b152b - very old patch - noone else reported this problem 2004-08-18 08:02:07 +00:00
Volker Ruppert
6cb7548bdc - patch applied to main CVS 2004-08-17 18:41:26 +00:00
Bryce Denney
3e7568da45 - fix typo, reported by Gabor Greif 2004-08-17 18:11:30 +00:00
Stanislav Shwartsman
571617bcda Optimize lazy flags for NEG instruction
Removed duplicate flags modification in CMPXCHG instruction
2004-08-17 17:34:47 +00:00
Stanislav Shwartsman
231cd533c6 1. Update changes
2. Fix lazy_flags duplicate instruction patterns
2004-08-16 20:18:01 +00:00
Volker Ruppert
f06b1bf577 - extended bitblt mode solidfill implemented
- svga_patterncopy() fixed
- svga_pitch change fixed
- forward write to MMIO address 0x13 to graphics controller register 0x2b
2004-08-16 15:23:19 +00:00
Volker Ruppert
45ccb97021 - CL-GD 54xx SVGA emulation added (SF patch #869822 from m_suzu_abc@yahoo.co.jp)
- changes to the original svga_cirrus patch:
  * PCI memory/mmio PnP support, some emulation and compile fixes
  * ported write mode 4 + 5 and some bufixes from cirrus vga in qemu
  * new graphics API, hardware cursor support, configure option added (Robin Kay)
  * partial support for transparent bitblt and bitblt write mask
2004-08-16 08:07:23 +00:00
Stanislav Shwartsman
c2b7f183af more correct implementation 2004-08-15 20:31:27 +00:00
Stanislav Shwartsman
eefdcece6f Speed-up BTC instruction
Speed-up SAR instruction with implementing lazy-flags for it
2004-08-15 20:12:05 +00:00
Volker Ruppert
98ef1412c3 - new graphics update API implemented (patch from Robin Kay)
Description from the author:
  This API allows framebuffer device plugins to draw directly on to the
  GUI's tile buffer and hence eliminates the need to memcpy(3C) tiles to
  an intermediate buffer. Functions like update_hardware_cursor function
  are rendered unnecessary as framebuffer device plugins can now draw the
  full range of host colours. svga_cirrus will fallback to calling
  graphics_tile_update without a hardware cursor if the GUI doesn't support
  the new API. This patch includes implementations of graphics_tile_info,
  graphics_tile_get, and graphics_tile_update_in_place (the new API) for SDL
  and X11.
- new graphics update API implemented in wx and rfb
- common update functions for guis without support for the new API added (should
  be removed after implementing the new API in all display libraries)
2004-08-15 19:27:15 +00:00
Stanislav Shwartsman
12b68ede54 XADD and ADD instructions have same flags modification rules - remove redundant switch case 2004-08-14 20:44:48 +00:00
Stanislav Shwartsman
88a19a8594 Speedup lazy-flags for NEG instruction 2004-08-14 20:09:22 +00:00
Stanislav Shwartsman
1b7b791493 Speedup lazy-flags for INC and DEC instructions 2004-08-14 20:00:24 +00:00
Stanislav Shwartsman
1732e54baa Fixed undocumented flags handling for some instructions.
Bugfix for CF flag handling for SHL64 instruction
2004-08-14 19:34:02 +00:00
Stanislav Shwartsman
a70ce6459f Update changes 2004-08-13 20:13:30 +00:00
Stanislav Shwartsman
a1f830d429 Implemented FAST lazy flags version for logic instructions.
Small code cleanup/simplification for others.
2004-08-13 20:00:03 +00:00
Volker Ruppert
b820eae6d0 - patch updated 2004-08-13 15:13:14 +00:00
Stanislav Shwartsman
5de51f67d9 Prepare lazy flags macroses for more efficient lazy flags handling 2004-08-11 21:26:23 +00:00
Volker Ruppert
1b9de4c7f2 - undocumented feature 'read all mask bits' added
- master/slave handling in read/write handlers simplified
2004-08-11 11:48:55 +00:00
Volker Ruppert
f6f6568adf - configure / compile fixes for Solaris SunPro (patch from Robin Kay) 2004-08-11 11:09:01 +00:00
Volker Ruppert
56d4df397e - patch updated (see description) 2004-08-11 10:35:33 +00:00
Volker Ruppert
21e03c2145 - patch updated 2004-08-10 09:02:38 +00:00
Stanislav Shwartsman
8f0cf91fff This commit is the first commit in long series of changes the have several purposes:
1. Review and commit patch

	[ 896733 ] Lazy flags, for more instructions, only 1 src op

   May be partially, but I hope to get all ideas from patch in

2. Get Bochs speedup after lazy flags optimization

3. Most important for me: improve correctness of emulation by handling several
   undocumented EFLAGS modifications. And finally pass

	UFLAGS - Undefined Flags Test v 3.0
	Copyright (C) Potemkin's Hackers Group (PHG) 1989,1995

   The test still fails on > 50% of its checks.
2004-08-09 21:28:47 +00:00
Volker Ruppert
d06c80cee3 - changed all iodev config macros to BX_SUPPORT_xxx
- removed incorrect SDL/ prefix from include paths (patch from Robin KAY)
2004-08-06 15:49:55 +00:00
Volker Ruppert
bf20e99f4c - remove only CR or LF from the end of a bochsrc line 2004-08-01 19:17:18 +00:00
Volker Ruppert
4fc67c3aac - patch updated 2004-08-01 08:25:26 +00:00
Stanislav Shwartsman
a7eef1d526 Significanly improve accuracy of FYL2X and FYL2XP1
Optimize FMUL instructions
2004-07-31 20:19:38 +00:00
Stanislav Shwartsman
789ed4da04 Removed debug print 2004-07-29 20:30:14 +00:00
Stanislav Shwartsman
f9bd2b74be 1. Fixed bug in FSUB instruction
2. Fixed bug

[ 989478 ] I-Cache and undefined Instruktions

The L4 microkernel uses an undefined instruction to
trap for a special requests into the kernel (LOCK NOP).
The handler fixes this up and gives the user a special
code page with syscall stubs. If you're not using the
I-Cache optimization everthing works find on bochs. But
if you enable the I-Cache (--enable-icache), then the
undefined opcode exception is thrown only once for ever
virtual address it occurs. See the demodisk of the
L4KA::pistachio
(http://www.l4ka.org/projects/pistachio/download.php).
In this case the pingpong benchmark of this demo is of
interest. Everything runs fine until the program tries
to spawn a new task for its measurements. This new task
shares the code of the creating program. But the new
task stops executing at the undefined instruction
explained above and no exception is thrown.
2004-07-29 20:15:19 +00:00
Volker Ruppert
f1a0f56d55 - support for serial port modes added. The mode defines what to do with the
data written to the port and where to get the data read from it. Available
  modes are 'null' (no input/output), 'file' (output to a file specified as
  the 'dev' parameter), 'term' (serial terminal) and 'raw' (use the real serial
  port - under construction for win32).
- descriptions for serial and parallel options in bochsrc sample updated
2004-07-28 19:36:42 +00:00
Stanislav Shwartsman
158ba92f2e Fixed MOV opcode 0xA3, had wrong operand size (h.johansson) - disasm 2004-07-28 19:02:40 +00:00
Volker Ruppert
1c3d8436c6 - compilation fixes for ne2k with pci disabled (patch from suzu) 2004-07-26 16:04:31 +00:00
Volker Ruppert
f735e74de4 - patch updated 2004-07-25 18:03:13 +00:00
Stanislav Shwartsman
8d1989fb25 Fix exceptions mismatch in FXTRACT instruction 2004-07-24 19:26:50 +00:00
Volker Ruppert
89f4d0b7d0 - 16-bit read access now enabled for the attribute controller
- vbe: setup of vga compatible registers modified: 2 CRTC registers removed (now
  done in LGPL'd VGABIOS) and 2 sequencer controller registers added
- obsolete comments removed
2004-07-24 18:12:00 +00:00