Commit Graph

9668 Commits

Author SHA1 Message Date
Volker Ruppert
90168f5dcd - moved the lowlevel cdrom and disk image stuff to the new subdirectory iodev/hdimage
- TODO: update MSVC workspace files
2012-08-05 18:13:38 +00:00
Volker Ruppert
7bbc26c70f - redolog: skip bitmap update if extent_index is unchanged after lseek()
- more usage of helper functions bx_read_image() / bx_write_image()
- CHANGES update
2012-08-05 14:42:37 +00:00
Stanislav Shwartsman
cc694377b9 Standartization of Bochs instruction handlers.
Bochs instruction emulation handlers won't refer to direct fields of instructions like MODRM.NNN or MODRM.RM anymore.
Use generic source/destination indications like SRC1, SRC2 and DST.
All handlers are modified to support new notation. In addition fetchDecode module was modified to assign sources to instructions properly.

Immediate benefits:
- Removal of several duplicated handlers (FMA3 duplicated with FMA4 is a trivial example)
- Simpler to understand fetch-decode code

Future benefits:
- Integration of disassembler into Bochs CPU module, ability to disasm bx_instruction_c instance (planned)

Huge patch. Almost all source files wre modified.
2012-08-05 13:52:40 +00:00
Stanislav Shwartsman
0d7a18ed0d cleanup instrumentation stub 2012-08-05 13:40:32 +00:00
Volker Ruppert
7c6f287fc7 - added VirtualPC image support, new disk image mode is called 'vpc'
- ported Qemu block driver (written by Alex Beregszaszi and Kevin Wolf)
  - added helper functions bx_read_image() and bx_write_image()
- TODO: use helper function for the other disk image modes
2012-08-05 09:33:33 +00:00
Stanislav Shwartsman
4d03b57291 Allow larger quantum value for SMP simulations (up to 32)
Update CHANGES
2012-08-02 20:48:27 +00:00
Stanislav Shwartsman
d5c5c8e9e1 fixed bug produced by SVN commit rev11299 - missed case to clean 2012-08-02 20:43:14 +00:00
Stanislav Shwartsman
df3b61e3a9 typo fix 2012-08-02 14:37:17 +00:00
Stanislav Shwartsman
2e0f79d499 fixed compilation with AVX OFF but x86-64 on 2012-08-02 12:13:21 +00:00
Stanislav Shwartsman
abaad74fc9 trivial optimization - part of pacthes from Yeong-uk Jo 2012-08-01 16:11:20 +00:00
Stanislav Shwartsman
b43ac7358e fixed typo-like bug in smm.cc 2012-08-01 14:56:51 +00:00
Volker Ruppert
9cda22223c - documentation updates (vmware4 format, command line arguments) 2012-07-29 08:19:15 +00:00
Volker Ruppert
6daac95de0 - update "snapshot" docs 2012-07-28 16:43:19 +00:00
Stanislav Shwartsman
553d1bfb37 fixed SIGSEGV when cannot open file for text snapshot 2012-07-28 08:17:08 +00:00
Stanislav Shwartsman
a1ebdc41ac Fixed SF bug [3548109] VMX State Not Restored After Entering SMM on 32-bit Systems
Fixed .conf.nothing configure script

Fixed copyright for some files
2012-07-27 08:13:39 +00:00
Volker Ruppert
9a008c8e3c - use a constant for the maximum disk size calculated from max. cylinder bits
- increased maximum disk size to 8 TB (should work with growing and sparse disks)
2012-07-26 16:15:48 +00:00
Stanislav Shwartsman
e0729e32b8 fixed bug 3548108 VMEXIT instruction length Not always getting updated 2012-07-26 16:03:26 +00:00
Stanislav Shwartsman
a7c8d38871 Re-add lost comments in floppy_media_sense 2012-07-25 19:49:35 +00:00
Volker Ruppert
ab0300f6b2 - some work on the 'sparse' disk image mode
- fixed broken read support caused by wrong #if
  - when opening disk some info is printed to log file
  - coding style changes
2012-07-24 19:27:22 +00:00
Volker Ruppert
63ea597741 - fixed variable type for 'cyl' for > 2 TB support
- define symbols for the maximum hard disk size (still at 2 TB)
2012-07-24 19:15:00 +00:00
Stanislav Shwartsman
d9998269ef added branch_eip into near branch instructiontation callbacks 2012-07-24 15:32:55 +00:00
Stanislav Shwartsman
eb9616024f Use ASM comment marks 2012-07-23 16:11:24 +00:00
Volker Ruppert
a49c0746b4 - increased maximum disk image size to 2 TeraByte (tested with 'growing' image)
- TODO #1: tests with higher values
- TODO #2: tests 'sparse' image mode
2012-07-22 20:40:31 +00:00
Stanislav Shwartsman
cbfeaec11c fixed spelling in TODO file 2012-07-22 12:39:30 +00:00
Volker Ruppert
8d30a38f7e - undoable: added support for checking the modification time of the base disk
- store r/o disk timestamp in FAT format in reserved field of redolog header
  - use the VVFAT function fat_datetime() to convert the mtime value
  - update redolog header if timestamp is undefined (first usage)
  - Bochs now panics if the r/o disk has been modified after the first usage with
    the undoable disk image mode to avoid journal file corruption.
- undoable: fixed r/o disk size check
2012-07-21 12:00:46 +00:00
Stanislav Shwartsman
b57ace2579 Merged a side note patch by Sebastian
[Bochs-developers] [Patch #3539228] Part 3

> Added dummy EOI handler and all unused IRQ vectors set to this.QEMM 97 does not crash any more.

Looks good. Those "SET_INT_VECTOR comments" should be removed.

Sebastian
2012-07-19 19:36:44 +00:00
Stanislav Shwartsman
e5f47fd86f fixed typo 2012-07-19 18:03:10 +00:00
Stanislav Shwartsman
5afe0cbb48 use constant instead of magic value 2012-07-17 19:58:00 +00:00
Volker Ruppert
65b3567240 - enable mouse cursor on exit (fixes possible hang if captured) 2012-07-15 15:17:10 +00:00
Volker Ruppert
9ad179f6e7 - removed outdated patch 2012-07-15 09:31:02 +00:00
Volker Ruppert
d15b8b113c - documentation updates / typo fixes 2012-07-15 08:14:43 +00:00
Volker Ruppert
adfec8454c - moved several related options to the new "keyboard" bochsrc option
- TODO: more documentation updates
2012-07-14 16:13:01 +00:00
Volker Ruppert
44098d90e6 - fixed location of optional plugin load / unload calls 2012-07-14 15:48:48 +00:00
Volker Ruppert
85a914c9e9 - implemented "fast-dma" support for 16 bit and in the SB16
- TODO: fix BX_DBG_DMA_REPORT
2012-07-14 14:20:36 +00:00
Stanislav Shwartsman
b225c158a9 fixed link error with no x86-64 2012-07-14 08:45:43 +00:00
Volker Ruppert
61292eb45b - missing SHELL fixes 2012-07-14 07:13:56 +00:00
Volker Ruppert
6edd2ba547 - regenerated after Debian fixes 2012-07-14 07:04:17 +00:00
Volker Ruppert
53438e92c6 - fixes based on Debian patches by Guillem Jover
- set SHELL variable with configure script
  - add '--tag CXX' argument to libtool calls
2012-07-14 07:01:43 +00:00
Volker Ruppert
c6a9f8eb0d - added the capability to transfer more then one byte per ISA DMA cycle.
- use this feature for floppy read and write operations. This does not mean that
  the floppy now works faster than realtime, but it reduces the number of DMA
  calls from the CPU.
- removed outdated file: patch.fast-dma-cbothamy
- TODO: implement this feature in the SB16 (8 and 16 bit)
2012-07-12 21:20:46 +00:00
Stanislav Shwartsman
5d66e8450e implemented ADCX/ADOX instructions from rev013 of arch extensions published by Intel 2012-07-12 14:51:54 +00:00
Volker Ruppert
82c65076cc - renamed PCI Pseudo NIC bochsrc option to "pcipnic" (temporary hack should
be removed after next Bochs release)
- documentation updates
2012-07-11 21:03:59 +00:00
Stanislav Shwartsman
24edf649eb added comments in BIOS code 2012-07-11 19:16:23 +00:00
Stanislav Shwartsman
bafde35c9c Intel Architecture
Instruction Set Extensions
Programming Reference
rev013

was published including RDSEED and ADCX/ADOX instructions

add CPUID bits and VMX controls mentioned in the document
2012-07-11 18:58:00 +00:00
Stanislav Shwartsman
ec06475dbf improve x86 hw breakpoint handling 2012-07-11 15:07:54 +00:00
Stanislav Shwartsman
fef13ddb95 update CHANGES 2012-07-10 20:21:54 +00:00
Volker Ruppert
3c707ee976 - recompiled after patch #5 2012-07-10 18:33:52 +00:00
Volker Ruppert
926900739f - rombios patch #5 by greatpsycho
- Changed memory reference functions argument order to suitable for use
    LDS/LES instructions.
2012-07-10 18:33:09 +00:00
Volker Ruppert
625991504b - recompiled after patch #4 2012-07-10 18:31:10 +00:00
Volker Ruppert
433fc25a88 - rombios patch #4 by greatpsycho
- Added SS based reference helper function and changed SS based refer to use
    this functions.
2012-07-10 18:30:17 +00:00
Volker Ruppert
f0c3b2ad90 - recompiled after patch #3 2012-07-10 18:28:56 +00:00