Commit Graph

12154 Commits

Author SHA1 Message Date
Volker Ruppert
acac6ecf45 Fixed hdimage lock file handling in the USB MSD case.
- Store file name string instead of pointer to file name.
- Increased size of the info text to fix a warning,
2020-01-03 21:17:15 +00:00
Stanislav Shwartsman
694112732b use default base CPUID class method to detemine values of 0x80000008 leaf for IceLake CPUID 2020-01-03 19:53:20 +00:00
Stanislav Shwartsman
b69f2b052a extract calculation of MSR_IA32_XSS supported bits to a function 2020-01-03 19:33:16 +00:00
Stanislav Shwartsman
45a25a2b67 CET: make sure enbranch64 and enbranch32 do the right thing when mode mismatch 2020-01-03 18:55:17 +00:00
Stanislav Shwartsman
495206650b fixed CET wrmsr reserved bit checking 2020-01-03 18:44:15 +00:00
Stanislav Shwartsman
ea6b0c766c added more VMX reasons to enum according to Intel SDM 2020-01-03 17:35:02 +00:00
Volker Ruppert
bce3c28bb5 Temporary fix for Bochs BIOS not working with CPU level < 6. Compiled BIOS on
a 32-bit Linux inside of Bochs. Now only i386 fails, newer CPUs are okay.
2020-01-03 15:48:20 +00:00
Volker Ruppert
b23d52ad44 LGPL'd VGABIOS updated to version 0.7b 2020-01-03 09:29:54 +00:00
Stanislav Shwartsman
bac9104f73 fixed compilation of init.cc for old CPU models 2020-01-03 05:29:45 +00:00
Volker Ruppert
2d950105cb Fixed retrieving release timestamp from README file when compiling from outside
of the source tree.
2020-01-02 17:48:18 +00:00
Volker Ruppert
58ebb5819f Releases (SVN flaG 0) now use the timestamp from README file instead of the
compilation time of main.cc for console and log file output.
2020-01-02 16:19:02 +00:00
Volker Ruppert
5cb6392ca4 Added function bx_get_timestamp() to reduce code duplication.
TODO: Use special timestamp in the release case (similar to Bochs BIOS).
2020-01-02 09:41:58 +00:00
Volker Ruppert
3146b45f59 Regenerated configure script 2020-01-01 19:03:42 +00:00
Volker Ruppert
4031aea715 Two changes from Debian patches for 2.6.10.
- pcidev: added support for recent Linux kernels
- fixed bochsrc manual page table
2020-01-01 19:02:50 +00:00
Volker Ruppert
546b4a78e5 Setting default values for VCLK registers not necessary. They should be set up
by the VGABIOS. Happy new year!
2020-01-01 14:16:29 +00:00
Volker Ruppert
8b5586bb79 Small optimization in the TRANSPARENTCOMP code. 2019-12-30 21:40:40 +00:00
Volker Ruppert
b6c1a4a919 Regenerated configure script and recompiled BIOS images. 2019-12-30 13:18:39 +00:00
Volker Ruppert
49a04c1399 Bochs BIOS changes partly based on Debian patches.
- Use 'iasl' for building ACPI table if present.
- Use the release date from README file for the BIOS_BUILD_DATE.
- Added Bochs VERSION string to the BIOS banner.
- Fixed the rombios32 delay loop for QEMU build.
- Improvement for rombios32.ld.
2019-12-30 13:16:18 +00:00
Volker Ruppert
30f0877ff8 Fixed compilation with PCI support disabled. 2019-12-30 07:16:46 +00:00
Volker Ruppert
f960acf028 Added missing Cirrus SVGA bitblt feature "tranparent color compare". 2019-12-29 21:38:05 +00:00
Stanislav Shwartsman
9a35c6de79 fix and simplify combined_access handling in EPT page walk 2019-12-29 21:00:35 +00:00
Stanislav Shwartsman
016aa349e5 handle supervisor-shadow-stack protection feature in the EPT 2019-12-29 20:40:18 +00:00
Volker Ruppert
74b9a0f6de Bochs BIOS fix and update.
- Added hack fix to make SeaVGABIOS work: init video mode if not done.
- Update rombios32 release date.
2019-12-29 19:40:42 +00:00
Volker Ruppert
f7629c3896 Bochs BIOS fix and update.
- Added hack fix to make SeaVGABIOS work: init video mode if not done.
- Update rombios32 release date.
2019-12-29 19:38:52 +00:00
Volker Ruppert
34e475ec0a Updated SeaBIOS ROM image to current version and added SeaVGABIOS for Cirrus. 2019-12-29 07:20:50 +00:00
Volker Ruppert
33d6956080 Added GLBCTL register read/write support (no function yet). 2019-12-28 21:04:53 +00:00
Stanislav Shwartsman
4f7aa4bd76 fixed compilation issue 2019-12-28 15:20:38 +00:00
Stanislav Shwartsman
f56e1aab86 VMX: save CET state to VMCS only if CET is supported 2019-12-28 15:18:55 +00:00
Stanislav Shwartsman
bcafd5bb7a fix non-printable characters and add more verbose error messages 2019-12-28 15:08:53 +00:00
Stanislav Shwartsman
d091e3bda6 simplify XRSTOR* code 2019-12-28 14:03:54 +00:00
Stanislav Shwartsman
126ae0d0b4 more verbose debug print 2019-12-28 13:36:43 +00:00
Stanislav Shwartsman
9458e25486 reverting commit 13737 and doing correct fix 2019-12-28 13:11:13 +00:00
Stanislav Shwartsman
5d7c6d46b0 fixed compilation after prev commit 2019-12-28 13:02:02 +00:00
Stanislav Shwartsman
7f72252223 fixes in XSAVE/XRSTOR handling 2019-12-28 12:57:31 +00:00
Volker Ruppert
295336adfb Fixed VESA BIOS function 0x4F15 (get EDID) for both the VBE and Cirrus version. 2019-12-27 19:56:37 +00:00
Stanislav Shwartsman
b09126aa34 use enums for assign_srcs error output - help with debugging unexpected #UD cases 2019-12-27 19:34:32 +00:00
Stanislav Shwartsman
6879feebf5 SHA: SHA instructions in 128-bit memory operand require to be explicitly aligned 2019-12-27 14:24:43 +00:00
Stanislav Shwartsman
5c45f6b324 AVX512: EVEX.Z is forbidden for any vector instruction using opmask as source or destination (should cause #UD) 2019-12-27 14:23:53 +00:00
Stanislav Shwartsman
8bd5272591 correctly handle CET Enbranch override prefix 0x3E in 64-bit mode 2019-12-27 13:44:57 +00:00
Stanislav Shwartsman
596c197cea fix decoder: SHA1RNDS4 instruction should be with no SSE prefix 2019-12-27 13:08:20 +00:00
Stanislav Shwartsman
a2be16873c VMX: save guest CET state to VMCS on vmexit 2019-12-27 13:02:30 +00:00
Stanislav Shwartsman
8e2391c44b fixed compilation when compiling without EVEX 2019-12-26 20:12:40 +00:00
Volker Ruppert
70691fa532 Some fixes in the build system based on Debian patches for 2.6.10.
- The pthread library is not needed at all by the Windows ports.
- Link the ALSA and SDL sound modules only with required library.
- Fixed curses cross-compilation issue found by Debian.
- slirp/cksum.cc: NOTE for Debian.
2019-12-26 19:17:47 +00:00
Stanislav Shwartsman
ff167d0f65 change a bit more defines to const with type 2019-12-26 16:48:33 +00:00
Volker Ruppert
955a466df0 BX_KEY_* defines replaced by enum list. 2019-12-26 16:14:31 +00:00
Volker Ruppert
0bcc86716d Operational registers can be accessed as dwords only (from a patch by Ben Lunt). 2019-12-25 09:07:12 +00:00
Stanislav Shwartsman
d6c3dcf033 revert for full vector read until figured out the right behavior for VPSHUFBITQMB 2019-12-24 20:08:33 +00:00
Stanislav Shwartsman
edcdce927c added ability to configure hidden VMCS field mapping through CPUID 2019-12-22 18:53:07 +00:00
Stanislav Shwartsman
fc1dbe68bc update dependencies in Mafefile.in 2019-12-21 21:42:35 +00:00
Stanislav Shwartsman
e593bb0084 CPUDB: Allow Icelake-U CPU model to exists without EVEX 2019-12-21 21:06:34 +00:00