Commit Graph

4427 Commits

Author SHA1 Message Date
Stanislav Shwartsman
6cdb42d909 Little bit optimize memory access functions. Now values are calculated only if they actually needed. 2004-09-13 20:48:11 +00:00
Volker Ruppert
6663dec9d1 - changes updated 2004-09-13 19:51:44 +00:00
Volker Ruppert
b3d0c18838 - int 15 / ah=87h should not clear cr0 when setting bit 0 (SF patch #969967
by Ben Lunt)
2004-09-13 17:54:53 +00:00
Volker Ruppert
ff1c5578a5 - pci irq routing: unregister the old IRQ before registering the new one
- lower the IRQ line before unregistering it
2004-09-12 18:04:18 +00:00
Volker Ruppert
5e47de7968 - missing extension ".exe" added for "make install" on cygwin
- compile niclist.exe on cygwin if networking is enabled
2004-09-12 11:25:01 +00:00
Volker Ruppert
1663f995e0 - support for GNU/kFreeBSD and GNU/kNetBSD added in lowlevel iodev code (cdrom,
ne2k, sb16, etc.) (SF patch #1021758 from Robert Millan)
2004-09-11 15:39:53 +00:00
Volker Ruppert
f1816bb226 - DHCP extcode BOOTPOPT_IP_ADDRESS_LEASE_TIME now supported
- DHCP reply parameter BOOTPOPT_ROUTER_OPTION implemented
- vnet host name for DHCP added
- more accurate send / receive timing
- improved error messages
- vnet description in bochsrc sample added (SF patch #888426)
2004-09-11 11:26:41 +00:00
Volker Ruppert
11c81a46eb - temporary PCI IRQ initialisation fixed (should be done by the PCI BIOS) 2004-09-10 11:54:46 +00:00
Volker Ruppert
88efb988ac - looks like <sys/io.h> isn't standardised. Now check for glibc-based systems
(info from Robert Millan)
2004-09-07 18:31:38 +00:00
Volker Ruppert
c516c8838f - patch applied to CVS 2004-09-07 18:06:43 +00:00
Volker Ruppert
0819a15cd4 - applied patch.guess-flp-img-size (SF patch #567595) by Tal Benavidor with some
changes (moved to config.cc, use stat(), support more types)
- bochs.h: unused floppy stuff removed
- bochsrc sample: updated 'floppya' description
2004-09-07 18:02:29 +00:00
Stanislav Shwartsman
fc631037ff remove obsolete comments from fetchdecode 2004-09-06 20:22:39 +00:00
Volker Ruppert
00bf370db2 - some compilation fixes for the raw serial support 2004-09-05 21:09:46 +00:00
Volker Ruppert
9956e47f3e - modified the bios / vgabios panic handling. BX_PANIC messages sent by the bios
now appear correctly as the Bochs panic message. Now we can get rid of messages
  with the line number in the source file.
- updated / fixed description in biosdev.cc
2004-09-05 17:57:22 +00:00
Volker Ruppert
8d585dc813 - removed lowlevel includes from iodev.h and device headers to reduce dependencies
- fixed some warnings
2004-09-05 10:30:19 +00:00
Stanislav Shwartsman
ce459276c3 Fixed problem in previous commit ... 2004-09-04 20:19:39 +00:00
Stanislav Shwartsman
3916754e30 speedup and cleanup 2004-09-04 19:37:37 +00:00
Stanislav Shwartsman
6dc8a1cafd Very small code cleanup 2004-09-04 18:22:22 +00:00
Stanislav Shwartsman
193c7332aa 1. Small optimization for lazy_flags.cc
2. Merge patch 1013516
Avoid invalidate_prefetch_q on enter, leave and cpuid
2004-09-04 10:21:28 +00:00
Volker Ruppert
defdbda939 - applied patch #690400 (GZIP variable in Makefile renamed)
- applied patch 1021767 (sb16ctrl.c now compiles on all unix platforms)
2004-09-04 08:24:40 +00:00
Volker Ruppert
e5761d230c - calculate checksum of expansion rom (must be 0) 2004-09-03 19:52:24 +00:00
Stanislav Shwartsman
929bfb9756 the patch already in CVS 2004-09-03 19:16:45 +00:00
Volker Ruppert
03b5797db9 - rom image size check (multiple 512) enabled again
- rom checksum test added (TODO: checksum test in rombios)
2004-09-02 18:24:50 +00:00
Volker Ruppert
c5ba313fd1 - changed the size of the vgabios files to exactly 32k with a checksum at the
last byte. This change is required for a correct checksum in the rom scan loop.
2004-09-02 17:14:34 +00:00
Volker Ruppert
9a6a7ec2fd - rom address space check added to avoid overlapping rom images
- vgaromimage option now compatible with the other rom options. Old style syntax
  (without 'file=...") is still supported.
- load order for the rom images fixed (system, vga, other)
- rom images sizes not multiple 512 cause a BX_INFO for now. The original check
  will be enabled after updating the vgabios files
- optromimage error messages fixed
- some updates of the bochsrc sample
2004-09-01 18:12:23 +00:00
Stanislav Shwartsman
75006eed8a Fix MUL/IMUL instructions flags handling 2004-08-31 19:43:58 +00:00
Stanislav Shwartsman
016207b222 Commented problematic check in misc_mem.cc
Implemnted lazy-flags and undocumented flags handling for IMUL instructions
2004-08-30 21:47:24 +00:00
Volker Ruppert
14d5b69d96 - win32dialog: set / restore cdrom path only if changed in the dialog
- insert cdrom now loads the media before trying to read a sector (Win NT/2k/XP)
2004-08-30 10:47:09 +00:00
Volker Ruppert
b82f00e1f2 - command line options for bximage added. Non-interactive mode can be enabled
now if all required parameters are present in the command line.
2004-08-29 19:31:09 +00:00
Volker Ruppert
a75d9f173d - mem_write: missing return statement added
- small fixes in bitblt functions (colorinvert, patterncopy)
2004-08-28 15:31:33 +00:00
Stanislav Shwartsman
77b3886f8b Cleanup and optimize 2004-08-28 08:41:46 +00:00
Stanislav Shwartsman
8953bfaffb Fixed flags handling for SHLD and rotate instrructions 2004-08-27 20:13:32 +00:00
Stanislav Shwartsman
27897c925e Fix undocumented flags handling for SHL instruction
remove invalidate_prefetch_q from CPUID
2004-08-27 18:43:23 +00:00
Volker Ruppert
12be3b4805 - receive timer added to simulate a delay between send and receive packets
- CVS ID line added
2004-08-27 08:23:50 +00:00
Stanislav Shwartsman
f2294e7c29 LAZY-FLAGS for MUL instructions
undocumented flags handling for MUL instructions
2004-08-26 20:37:50 +00:00
Volker Ruppert
986f879a85 - transparent colorexpand support improved (colorinvert, patterncopy)
- old-style update code no longer necessary
2004-08-26 16:20:50 +00:00
Volker Ruppert
1b2769e73a - added some sanity checks in function load_ROM()
- removed unused and obsolete stuff from the memory code
2004-08-26 07:58:33 +00:00
Volker Ruppert
11e46d89f7 - changes updated 2004-08-24 15:19:26 +00:00
Volker Ruppert
9a3a22b1ae - CDROM_MODE_SENSE now returns the medium type if a medium is present (patch from Ben Lunt) 2004-08-24 15:15:19 +00:00
Volker Ruppert
420bebc476 - converted GIF images to PNG format
- fixed URL
2004-08-24 12:23:35 +00:00
Volker Ruppert
157df28775 - fixed win32 version of bximage (was able to create flat hd's only)
- fixed summary information for compilation on msys/mingw and cygwin
2004-08-24 11:42:18 +00:00
Volker Ruppert
03b9d07d52 - unused vga function dump_status() rewritten for the use with the debugger ("info vga") 2004-08-24 10:15:56 +00:00
Volker Ruppert
09043def10 - fixed possible segfault if the LFB is accessed and VBE is disabled
- if USB is disabled in bochsrc the old VBE interface can be enabled, too
2004-08-23 18:47:25 +00:00
Volker Ruppert
8f15a12248 - extended read TOC support for WinXP (SF patch #961665 from Ben Lunt)
- return multisession info for image files on win32 (copied from harddrv.cc)
2004-08-23 09:39:45 +00:00
Volker Ruppert
6cd025da81 - the user documentation has replaced this file in release packages 2004-08-23 08:39:12 +00:00
Volker Ruppert
2d695b4d74 - variable bUseASPI must be a member of the cdrom object
- report WNASPI32.DLL version (some versions are not working properly)
- new variable isWindowsXP added (for future enhancements)
- PVR address in TOC for image files fixed (SF patch #977900 from Ben Lunt)
- converted tabs to spaces in modified sections
2004-08-22 16:23:35 +00:00
Volker Ruppert
0ae22a3daf - changes updated 2004-08-22 16:23:07 +00:00
Volker Ruppert
b5c7ab5880 - fixed BX_INFO for win32 specific options 2004-08-22 16:22:09 +00:00
Volker Ruppert
96632e9941 - patch applied to CVS 2004-08-21 13:36:41 +00:00
Volker Ruppert
b4fbbe3af1 - implement int15, ah=83 Start/Stop Wait Timer (patch.rombios.markevich from Kory Markevich)
- applied patch from sava (t.ebisawa / http://ebisa.hp.infoseek.co.jp/bochs/arcs/bochs-2.1.1-jpfix-20040214.zip)
  * int09_handler: pusha before int15, ah=4f
     (for "jis_a01" japanese keybord driver, which breaks some registers)
  * int15_function: add new functions int15_function32, int15_function_mouse
     (to avoid stack overflow ... DOS/Win9x works better)
  * int16, ah=00/01/10/11 ignore special key code (F0)
- set missing return value and flag for unimplemented EISA BIOS
2004-08-21 13:33:28 +00:00
Volker Ruppert
9e7f88e848 - changes updated 2004-08-21 08:16:42 +00:00
Volker Ruppert
5090dd444f - added stub for command 0xaf (get controller version) (patch from Ben Lunt) 2004-08-21 08:15:42 +00:00
Stanislav Shwartsman
77581c34d2 Update closed bugs list 2004-08-20 18:44:35 +00:00
Volker Ruppert
4130dae772 - Redhat 5.0 installation files are no longer necessary since booting from
cdrom works fine in the meantime
2004-08-20 16:55:04 +00:00
Volker Ruppert
31948c30e1 - Bochs doesn't support EISA, so I think it's okay to generate a debug message at this point. 2004-08-20 10:07:49 +00:00
Volker Ruppert
b203db61d1 - interrupt vector 0x79 is fixed now, the others changes were already present. 2004-08-20 10:05:18 +00:00
Volker Ruppert
40e576cbb3 - A20 gate control implemented (int 15h, ah = 24h)
- debug message for unsupported EISA bus features added (int 15h, ah = d8h)
- moving rom scan loop to a separate function saves space in the main post code
  (TODO: add code for rom checksum)
- interrupt vector 0x79 set to 0 (TODO: some other vectors seem to be 0, too)
2004-08-20 10:02:04 +00:00
Volker Ruppert
ca95fc885c - gate A20 control implemented (int 15h, ah = 24h)
- debug message for unsupported EISA bus features added (int 15h, ah = d8h)
- moving rom scan loop to a separate function saves space in the main post code
  (TODO: add code for rom checksum)
- interrupt vector 0x79 set to 0 (TODO: some other vectors seem to be 0, too)
2004-08-20 09:59:49 +00:00
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
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
Volker Ruppert
6784f00723 - VBE 4 bpp support added, VBE mode 0x0102 works much better now in WHATVGA 2004-07-21 20:39:54 +00:00
Volker Ruppert
f24f8a4c77 - VGA memory now registered using DEV_register_memory_handlers (static VGA
memory handling in memory.cc removed)
- CRTC write protection implemented
- 16-bit read access to some VGA registers added
- memory handler code now conciders the status of the A20 line
2004-07-18 19:40:51 +00:00
Volker Ruppert
6628e25371 - option 'newharddrivesupport' removed from configuration menus and bx_write_configuration() 2004-07-18 17:18:19 +00:00
Stanislav Shwartsman
35741f5cbd Fix configure script for Peter Tattam 2004-07-15 19:57:31 +00:00
Stanislav Shwartsman
50aaf8ec6f Implemented FFREEP 287+ compatability instruction 2004-07-15 19:45:33 +00:00
Volker Ruppert
1ae1930be2 - replaced old style i/o and irq register mechanism by the new one for pci devices 2004-07-13 17:45:34 +00:00
Stanislav Shwartsman
79b1cfdc1c removed unused code 2004-07-12 19:20:55 +00:00
Volker Ruppert
295dd25e10 - pci core: write access to base address registers disabled 2004-07-12 18:16:16 +00:00
Volker Ruppert
a17fb79623 - removed old style i/o and irq register mechanism
- i/o access mask fixed
2004-07-12 17:34:28 +00:00
Volker Ruppert
c9a113d623 - new functions for pci base address handling for memory and i/o space 2004-07-11 20:38:48 +00:00
Volker Ruppert
e7bb4ddead - new features added 2004-07-10 11:07:31 +00:00
Volker Ruppert
94a736e1dc - pci options now available in start menu
- removed unnecessary ne2k option handling
- names and lables for usb options improved
- don't allow editing of disabled options
2004-07-10 11:05:29 +00:00
Volker Ruppert
816795805e - wx: new dialog for the pci configuration added
- fixed dependencies between ne2k and pnic options
2004-07-09 21:40:49 +00:00
Volker Ruppert
f5225d7592 - check pci slot configuration at first reset() call 2004-07-09 16:25:42 +00:00
Stanislav Shwartsman
ddc6c33887 BX_PANIC replaced by BX_INFO 2004-07-08 20:15:23 +00:00
Volker Ruppert
4623108de3 - level sensitive irq mode implemented (update IRR after EOI) 2004-07-08 18:45:03 +00:00
Volker Ruppert
242b9a2c3a - level sensitive irq mode prepared
- pci reset mechanism implemented
- obsolete ResetSignal stuff removed
- ioapic: irq handling functions renamed to raise_irq/lower_irq
- pic: fixed two warnings
2004-07-06 19:59:10 +00:00
Volker Ruppert
0a5606bc84 - pci irq sharing with irq routing registers implemented (untested: two pci
devices with irq required)
2004-07-05 18:42:48 +00:00
Volker Ruppert
c6834907ad - pci irq routing fixed and initialization added (BUG: ne2k-pci only works with
irq 11 in Win95)
- bios: irq routing table fixed and updated for 5 slots
- ne2k: unnecessary reset call in init() removed
- usb: don't execute reset if disabled
2004-07-04 17:10:05 +00:00
Stanislav Shwartsman
02dec84af9 Fix FXSAVE/FXRSTOR instructions exceptions handling 2004-07-03 11:02:43 +00:00
Volker Ruppert
7e2af124bd - load ne2k plugin after pci plugins
- pci2isa is now a core plugin (if enabled)
- fixed double reset calls of optional device plugins (bx_reset_plugins() is
  already doing it)
2004-07-03 08:20:19 +00:00
Volker Ruppert
cd70a80644 - save new pci slot configuration option
- all parallel and serial options are saved now
2004-07-02 23:18:21 +00:00
Stanislav Shwartsman
cc61e5d5d5 Leave aligment in floatx80 reg to compiler.
CPU code no longer assume that floatx80 register is 16-byte aligned
2004-07-02 20:24:47 +00:00
Volker Ruppert
8edad22893 - pci irq routing implemented (used by ne2k-pci)
- ne2k: fixed word writes to page 0 reg 0x0f
2004-07-01 22:18:20 +00:00
Volker Ruppert
ae180cc46a - pci slot register mechanism added
* up to 5 slots can be specified with the 'i440fxsupport' config option
  * the pci slot number are hardwired to pci device numbers
  * the 'devfunc' value is returned the calling device (useful for multi-function
    devices)
  * the core of the i440FX chipset is hardwired to pci device 1 + 2; usb is still
    optional and appears at device 1, function 2
- ne2k: enable pci features if connected to a pci slot
- ne2k: asic data port supports 32-bit access if ne2k-pci is active
- pci2isa: improved error messages for ELCR1 and ELCR2
2004-06-29 19:24:34 +00:00
Volker Ruppert
2b16344b70 - NE2000 PCI support added (device appears as a RealTec 8029)
* PCI initialization and configuration space handling added
  * ASIC data port now supports 32-bit r/w if PCI is present
  * PCI device will be enabled if the requested base address is >= 0x1000
- ne2k: 8390 command register is now present on all pages
- ne2k: some panics changed to errors, debug messages improved
- PCI host bridge is now a core plugin (if enabled) and initialized earlier
2004-06-27 18:23:00 +00:00
Stanislav Shwartsman
26664e8044 optimize 2004-06-26 12:35:48 +00:00
Stanislav Shwartsman
4b4538619e Fix compilation error 2004-06-26 07:06:23 +00:00
Stanislav Shwartsman
becac7f01d Fixed denirmal arguments for FADD/FSUB instructions 2004-06-25 20:02:41 +00:00
Stanislav Shwartsman
2a0a361298 Implemented precision lost up indication in floating point status word 2004-06-25 18:51:28 +00:00
Stanislav Shwartsman
dfd17222b0 Changed MMX regs access macros to avoid code duplication in MMX register declaration 2004-06-23 21:59:24 +00:00
Volker Ruppert
24d1d540df - adding stanard IDE i/o ports in PCI configuration space not necessary
- behaviour of some PCI configuration registers fixed
2004-06-22 19:34:55 +00:00
Stanislav Shwartsman
1a1e237599 return back copyright info 2004-06-22 19:10:06 +00:00
Stanislav Shwartsman
afecedcb1b improve occuracy of FYL2XP1 instruction 2004-06-22 18:58:33 +00:00
Stanislav Shwartsman
a8353dd450 Fixed typo 2004-06-21 19:36:04 +00:00
Christophe Bothamy
28f70482f0 - fix for crash when PCINic is compiled in but no ne2k line present in conf file.
Thanks to Ari Entlich
2004-06-21 10:52:50 +00:00
Christophe Bothamy
b69d0f43e7 - apply patch by Newt : adds escaped characters to string tokens and
semicolon delimited commands to the debugger language
2004-06-21 10:45:38 +00:00
Christophe Bothamy
ba13a484b5 - replace ResetCpu and ResetSystem by Reset(BX_RESET_SOFTWARE) and Reset(BX_RESET_HARDWARE) 2004-06-21 10:39:24 +00:00
Volker Ruppert
a0704b481e - new features added 2004-06-20 18:30:18 +00:00
Volker Ruppert
1f33aa72b8 - APM and system shutdown support for 16-bit real mode and 32-bit protected mode
(patch from Fabrice Bellard)
2004-06-20 18:28:40 +00:00
Stanislav Shwartsman
a7cad86666 clean code 2004-06-19 19:16:02 +00:00
Stanislav Shwartsman
5873b26a82 Speed up compilation process.
bochs.h already not include iodev.h which reduces compilation dependences for almost all cpu and fpu files, now cpu files will not be recompiled if iodev includes was changed
2004-06-19 15:20:15 +00:00
Volker Ruppert
163a93b120 - fixes for MSVC (from suzu's svga_cirrus patch) 2004-06-19 11:13:21 +00:00
Stanislav Shwartsman
66904b7848 Fix typo 2004-06-18 18:11:42 +00:00
Stanislav Shwartsman
17e28e0f66 Fix merge error
Update CHANGES
2004-06-18 15:14:50 +00:00
Stanislav Shwartsman
cfa2da1ba7 Delete unused files 2004-06-18 14:21:25 +00:00
Stanislav Shwartsman
5c5b556f24 Merge softfloat-fpu-implementation_ver4_branch branch 2004-06-18 14:11:11 +00:00
Volker Ruppert
32a36a3ca7 - patch updated 2004-06-11 19:01:27 +00:00
Volker Ruppert
70d445111a - patch updated 2004-06-10 19:36:06 +00:00
Volker Ruppert
ef2922a702 - patch updated (see description) 2004-06-10 08:00:40 +00:00
Volker Ruppert
c8a57ae33c - pci_ide: fixed pointer to device object if SMF = 1
- pcivga: fixed memory access flag in PCI command register
2004-06-09 22:05:28 +00:00
Volker Ruppert
bf243f892a - added PCI IDE controller (dummy device - busmaster feature not present yet) 2004-06-09 20:55:58 +00:00
Volker Ruppert
36d7f60c21 - VBE LFB memory now registered using DEV_register_memory_handlers (static LFB
memory handling in memory.cc removed)
- type of memory handlers changed to bx_bool
- misc_mem.cc: fixed a warning
2004-06-06 17:01:19 +00:00
Volker Ruppert
0e76f1e21e - patch updated 2004-06-06 12:36:49 +00:00
Volker Ruppert
8d773cc9e2 - an implementation of PCI/ISA SVGA card 2004-06-05 16:57:57 +00:00
Volker Ruppert
1f9cedb44d - added new keysym for the right alt (AltGr) key (XFree86 4.3) 2004-06-05 15:45:05 +00:00
Volker Ruppert
30254dfa13 - behaviour of numlock and capslock key fixed
- fixed a warning
2004-06-05 12:16:33 +00:00
Volker Ruppert
7e8bfef3d6 - textconfig: runtime menu numbers replaced by enum symbols
- win32 runtime dialog: visibility of the SB16 dmatimer edit box fixed
- win32 runtime dialog: buttons 'continue' and 'quit' work again
2004-06-05 08:40:24 +00:00
Stanislav Shwartsman
47fd2820ae split main.cc to main.cc + config.cc 2004-06-04 22:06:55 +00:00
Volker Ruppert
4ee34fd354 - new feature and bugfixes added 2004-06-03 20:45:58 +00:00
Stanislav Shwartsman
e6991f043f pply patch
[ 924428 ] ET bit mismatch between CR0 and MSW
2004-06-03 17:57:29 +00:00
Christophe Bothamy
ea987f266c - remove "pc" platform check for enabling pcidev. Platform must
be linux still.
2004-06-01 07:30:34 +00:00
Volker Ruppert
9d01ce4bfc - raw floppy access now supported in Win 9x (patch from Ben Lunt) 2004-05-31 14:47:12 +00:00
Volker Ruppert
c757b06db8 - int13_cdrom / 32 bit register update fix (aka FreeBSD cdrom boot) (patch from
Fabrice Bellard found in LGPL'd VGABIOS patches section)
2004-05-31 13:13:58 +00:00
Volker Ruppert
b9d3ca2490 - Misc runtime options menu works now 2004-05-31 13:08:43 +00:00
Volker Ruppert
8f24ae2b4a - CHANGES updated 2004-05-31 09:03:15 +00:00
Stanislav Shwartsman
835bb8936a Fixed bug
[ 962919 ] Mac: iodev/cdrom.cc disordered
2004-05-30 19:20:53 +00:00
Volker Ruppert
8ba66c78a3 - sb16 options dmatimer and loglevel now present in the textconfig runtime options
- textconfig runtime menu: some options moved to submenu "Misc runtime options"
- bx_param_c: variable group_name and methods set_group() / get_group() added
- bx_list_c: new flag SHOW_GROUP_NAME added (used for SB16 options in runtime menu)
2004-05-30 08:28:52 +00:00
Christophe Bothamy
1ef2fe4764 - add Ben Lunt's mtools utilities 2004-05-27 08:58:24 +00:00
Volker Ruppert
98916b7710 - SB16 options dmatimer and loglevel now available at runtime (wx and win32)
- wxmain.cc: unused stuff removed
2004-05-23 10:47:00 +00:00
Volker Ruppert
25582ed29d - fixed cpu/Makefile.in after renaming file
- reg_ld_str.c: fixed regparm argument (bugfix found in SuSE 9.1 sources of Bochs 2.1.1)
2004-05-17 19:50:43 +00:00
Stanislav Shwartsman
14b70fa9ed rename fpu.cc in cpu folder
this fixed bug
[954751] Two FPU.CPP in project
2004-05-16 18:46:42 +00:00
Volker Ruppert
a2d6bfc786 - raw serial receive support for win32 added. It is disabled for now because it
doesn't work properly (lost data at 300 baud).
2004-05-13 16:23:15 +00:00
Stanislav Shwartsman
4eea772270 LOADALL for cpu-level=2 in fetchdecode 2004-05-11 16:44:58 +00:00
Stanislav Shwartsman
3274e0dd12 Commit patch
[ 950905 ] Do not PANIC on rare, bad input from user-mode
by h.johansson
with little changes and fixes
2004-05-10 21:05:51 +00:00
Volker Ruppert
7cd2f11e79 - VBE 8 bit DAC support added 2004-05-04 20:41:53 +00:00
Christophe Bothamy
6ed02bc1c1 - give credit on patches 2004-05-04 05:41:56 +00:00
Stanislav Shwartsman
caa39d2093 Latest changes 2004-05-03 20:22:21 +00:00
Stanislav Shwartsman
279d207d45 Fix fetchdecode bugs reported by Gilbert Netzer
(opcode patches for x86_64 cpu)
2004-05-03 17:58:36 +00:00
Christophe Bothamy
381d2ce460 - apply [ 903465 ] SEGV in iodev/ne2k.cc line 1211 on Alpha architecture by Christian Lestrade 2004-05-01 14:05:07 +00:00
Christophe Bothamy
12f4f45d9b - apply patch [ 903332 ] copy the bximage result to clipboard, etc by lukewarm 2004-04-30 17:26:38 +00:00
Christophe Bothamy
318cb5ade0 - add command to make a source tarball 2004-04-28 20:06:57 +00:00
Christophe Bothamy
f4dbefad66 - fix bug reported by Thomas Weidner [ 877510 ] amd64 fixes... 2004-04-28 19:57:37 +00:00
Christophe Bothamy
9d74ea2d63 - remove unnecessary code 2004-04-28 17:56:47 +00:00
Christophe Bothamy
2d8fc4f174 - update with latest changes 2004-04-28 17:47:13 +00:00
Christophe Bothamy
b663c5112f - remove old commented code 2004-04-28 16:59:52 +00:00
Volker Ruppert
02f326264e - charmap address for block numbers > 0 fixed
- some BX_INFO and BX_DEBUG messages changed
2004-04-25 07:16:09 +00:00
Stanislav Shwartsman
0c47a35c99 Change BX_PANIC to BX_INFO if the behaviour exactly matches Intel docs 2004-04-17 17:10:58 +00:00
Stanislav Shwartsman
c2c447d301 Change BX_PANIC to BX_INFO in BOUND instruction 2004-04-17 16:42:11 +00:00
Volker Ruppert
3243d37fb6 - new features added after Bochs 2.1 2004-04-14 17:46:52 +00:00
Volker Ruppert
7e63c5fa1b - 9 pixels character width support added
- limited dimension_update() support added (for char width 8/9)
- some variable types and names changed
- some comments updated
2004-04-13 19:07:36 +00:00
Volker Ruppert
0764b02ced - status bar with indicators for cdrom, floppy, harddisk and keyboard added (TODO: display text)
- function replace_bitmap() completed
- already present feature 'charmap change' removed from TODO list
2004-04-11 18:04:34 +00:00
Stanislav Shwartsman
6941b82357 correct configure checks 2004-04-11 13:14:54 +00:00
Volker Ruppert
654ad2db94 - text mode split screen feature now present in display library x
- variable 'dimension_y' now used to store the vertical vga screen size
- text_update(): changed some variable types and names
2004-04-11 10:58:09 +00:00
Volker Ruppert
9b70ffc9ac - text mode split screen feature now present in display library win32
- character height now used when copying the font bitmaps
- text_update(): changed some variable types and names
2004-04-11 08:01:22 +00:00
Volker Ruppert
699241040a - fixed possible crash if the cursor location is below the visible screen
- text_update(): variable renamed
2004-04-10 20:58:42 +00:00
Volker Ruppert
f674f73591 - calculation of the remaining rows in split screen mode fixed
- split in the first text row fixed
- text_update(): some variable types and names changed
2004-04-10 16:35:47 +00:00
Volker Ruppert
852c895452 - text mode split screen feature now present in display library wx 2004-04-10 13:40:01 +00:00
Volker Ruppert
1a637de59e - fixed possible destruction of the status bar if both split screen and vertical
pel panning are active
2004-04-09 17:54:20 +00:00
Stanislav Shwartsman
cf6d1b8bd9 port some changes from spftfloat-fpu branch to the MT 2004-04-09 15:34:59 +00:00
Volker Ruppert
ac6bed9a17 - vga code prepared for the split screen feature in text mode
- display library sdl: text mode split screen implemented
2004-04-09 15:04:54 +00:00
Stanislav Shwartsman
6de2dbeb49 these files should not be in MT 2004-04-09 14:27:06 +00:00
Stanislav Shwartsman
a8b57836a2 all these files should be in branch only for now 2004-04-09 12:52:49 +00:00
Stanislav Shwartsman
04124133c0 freeze softfloat-fpu-ver3 branhc and open it for free testing
I will continue the development in new softfloat-fpu-ver4 branch
Current version already implements ALL FPU instructions except
   FSIN, FCOS, FSINCOS, FPTAN, FPATAN, FYL2XP1, F2XM1, FYL2X
I think it solved all currently reported bugs and feature requests
related to FPU code.
Please write your own test programms and test the implemntation in all ways you can.
Thanks,
Stanislav
2004-04-09 12:29:50 +00:00
Stanislav Shwartsman
66f95e54c6 3dnow is not required for 64-bit architecture extensions 2004-04-09 11:52:45 +00:00
Volker Ruppert
f7e99553b5 - compile error on win32 fixed 2004-04-09 10:25:55 +00:00
Christophe Bothamy
fc36b6a314 - add reset through port 0X92 2004-04-08 21:26:15 +00:00
Christophe Bothamy
f9b37fac62 - implement cpu reset on write to bit0 of port 0x92 2004-04-08 21:23:41 +00:00
Christophe Bothamy
ed87e6aed1 - call bx_pc_system.ResetCpus on system reset (command 0xfe)
- implement reset through bx_pc_system.ResetCpus on write output port bit0
2004-04-08 21:21:22 +00:00
Christophe Bothamy
17328faa03 - triple fault now call bx_pc_system.ResetCpus 2004-04-08 20:57:33 +00:00
Christophe Bothamy
5b3100151a - add ResetCpus and ResetSystem methods 2004-04-08 20:56:36 +00:00
Volker Ruppert
3d85db14cc - width of X font bitmaps is always 9 2004-04-08 18:54:21 +00:00
Christophe Bothamy
3e71ae79fd - remove swap macros, use hton*, ntoh* instead
- define various rfbEncodings
- display and keep track of the rfbEncodings supported by the client
- add todo at start of file
- set sockets option (REUSE_ADDR), useful on solaris
2004-04-08 17:36:26 +00:00
Stanislav Shwartsman
33b50ec4c4 For spammers o 2004-04-08 17:17:47 +00:00
Stanislav Shwartsman
f2dc00dda3 merge patch
[ 904549 ] imul gives incorrect result in long mode
2004-04-07 19:46:13 +00:00
Stanislav Shwartsman
bb1271cab6 little bit clean 64b code 2004-04-07 19:23:06 +00:00
Volker Ruppert
b5ea41a349 - fixed a warning (too few arguments for format)
- removed "\n" from messages
2004-04-05 19:51:11 +00:00
Christophe Bothamy
8c4efa8d87 - remove GPL'd rfbproto.h
- add LGPL'd rfb protocol specification, thanks to Frederic Bothamy, rewrite based on the rfb protocol document.
- add specific rfb readme to warn about the color depth.

Still to do:
- BigEndian client support (I suspect the current implementation is not clean).
- depth > 8bpp support
- on-board vga card font support instead of vgafont.h
- dimension update support
- optional compression support
2004-04-05 12:09:25 +00:00
Stanislav Shwartsman
c8dcea759a fix especial characters in changes file 2004-03-28 19:43:00 +00:00
Volker Ruppert
e14918637a - serial_raw: return value of get_modem_status() changed
- serial_raw: data type of the receive function is now 'int' again (negative
  return values will be serial events)
2004-03-28 12:41:12 +00:00
Stanislav Shwartsman
ab8ffeeba0 correct list of bugs fixed in 2.1 2004-03-27 18:01:26 +00:00
Stanislav Shwartsman
cec0c74e16 update changes made from last release 2004-03-27 12:51:23 +00:00
Stanislav Shwartsman
9c4fd5ff36 clean soft_int code 2004-03-26 18:41:12 +00:00
Stanislav Shwartsman
6441d290f8 speedup and fix BCD instructions 2004-03-26 12:43:19 +00:00
Bryce Denney
c14123ee2c - remove link to very old OS2 sources. the link doesn't work anymore anyway. 2004-03-26 06:16:09 +00:00
Michael Brown
134c10635f Up to API version 1.1. IRQ support added. 2004-03-26 03:22:46 +00:00
Bryce Denney
ec9b230cef - add link to Al Woodhull's HOWTO for Minix 2004-03-25 05:38:20 +00:00
Michael Brown
a31026261b Correct PCI class to "Network Controller" 2004-03-24 18:16:27 +00:00
Christophe Bothamy
15ed3de506 - apply David Leinbach's unicode patch to niclist. From David :
I looked into the problem with running NICLIST.EXE with WinPCap 3.1beta
and deteremined that the problem resulted from the fact that in 3.1 the
PacketGetAdapterNames function returns the values in ASCII on Win
9x/NT/2K/XP while in previous version the values were returned in UNICODE
on NT/2K/XP.  I have attached a patch to check the version when deciding
whether to read the values as UNICODE or ASCII.
2004-03-20 21:26:08 +00:00
Stanislav Shwartsman
02d18a283f backport softfloat changes 2004-03-20 20:01:03 +00:00
Volker Ruppert
47a9c75235 - some data types changed 2004-03-20 12:42:13 +00:00
Stanislav Shwartsman
78a2976b49 backport some softfloat changes to CVS 2004-03-19 18:11:10 +00:00
Stanislav Shwartsman
b7b0b604ef implement undocumented flags modifications for BCD instructions 2004-03-18 21:43:18 +00:00
Volker Ruppert
33cb0be81f - log prefix for serial_raw fixed
- clear modem lines and break condition in constructor
- clear comm error and close event object after sending data
- ready_receive() now depends on the number of received bytes (receiver thread
  not present yet)
2004-03-17 17:08:57 +00:00
Christophe Bothamy
af33a50882 - commit long due "roadmap/todo", from my post and comments in the ml
and the irc chat.
2004-03-15 13:20:15 +00:00
Stanislav Shwartsman
cf1d0d0aaa add comments about undocumented flags modifications in BCD.CC
we are still need to study the flags modifications
2004-03-13 19:37:57 +00:00
Volker Ruppert
8a9b4a1429 - cleaned up rx_timer() (raw serial support doesn't need the select function 2004-03-13 17:17:16 +00:00
Stanislav Shwartsman
967297b8a4 new version of softfloat-fpu branch
currectly stable
2004-03-12 20:08:50 +00:00
Stanislav Shwartsman
7664560010 fix typo 2004-03-12 17:35:58 +00:00
Volker Ruppert
222cf871fd - serial_raw for win32: transmit data implemented 2004-03-12 14:33:22 +00:00
Stanislav Shwartsman
dfef46e311 removed unused variables 2004-03-10 20:39:47 +00:00
Stanislav Shwartsman
58a7652aea fixed problems in BCD instructions 2004-03-10 20:14:56 +00:00
Volker Ruppert
87853190b5 - bit number of the loopback switch fixed 2004-03-09 22:17:33 +00:00