Stanislav Shwartsman
e50a3f8169
fixup code duplication in apic code
2020-05-17 19:32:14 +00:00
Stanislav Shwartsman
f97b20ddce
deactivate apic timer when globally disabled
2020-05-17 19:03:39 +00:00
Stanislav Shwartsman
da169c0044
when apic is globally disabled - reset some fields to defaults
2020-05-17 18:57:27 +00:00
Stanislav Shwartsman
7a5fef764b
fix for effcetive TSC compute when TSC multiplier is enabled
2020-05-17 18:39:52 +00:00
Stanislav Shwartsman
6ae26b39b3
fixed Sub-Page-Protection EPT violation (was triggered exactly opposite that excpected due to typo)
2020-05-17 14:12:29 +00:00
Stanislav Shwartsman
8e4a29fb0e
reorg vmcs fields enabling based on their numeric order
2020-05-15 19:27:45 +00:00
Stanislav Shwartsman
499b138227
enable access to XSS_EXITING_BITMAP VMCS field
2020-05-15 19:05:41 +00:00
Volker Ruppert
9c3a99856e
Added basic TCP handling and FTP server stub for testing.
...
- Partly re-implemented host_to_guest methods from legacy eth_vnet.cc.
- Added two dynamic packet buffers for vnet server replies.
- TFTP and FTP servers are only available if root directory is configured.
- Added TCP port handler methods similar to the UDP ones.
- Added basic TCP connection management and 3-way handshake.
- Added FTP server stub for testing TCP (only login/logout for now).
2020-05-12 20:51:26 +00:00
Volker Ruppert
1b0845b48a
Slirp: Added support for logging packets in text format (disabled by default).
2020-05-07 15:49:54 +00:00
Volker Ruppert
df2dd670d8
Extended Italian keymap (patch by Michele Giacomone).
2020-05-06 11:47:41 +00:00
Volker Ruppert
f9da9f9249
Fixed possible buffer overflow (patch by Randy Sommerfeld).
2020-05-06 11:17:34 +00:00
Volker Ruppert
a7325c3a40
Fixed SVN ID tag.
...
M keymaps/x11-pc-sg.map
2020-05-05 18:37:45 +00:00
Volker Ruppert
cdde4dae46
Added Swiss-German keymap (patch by Michele Giacomone).
2020-05-05 18:34:06 +00:00
Volker Ruppert
780517aeca
Added TCP stub to vnet server - returning "Connection refused" for now.
2020-05-03 11:38:16 +00:00
Volker Ruppert
9b844fc341
Some changes in the 'vnet' networking module.
...
- Enable packet logging in text format if file name is specified with the
"script" parameter.
- Don't start RX timer if vnet server returns 0.
- Added TCP header structure for future extensions.
2020-05-02 21:21:53 +00:00
Volker Ruppert
d30dcfdd3c
Added log file support to the 'bxhub' utility. Log output can be sent to file
...
specified with command line option, otherwise stderr is used.
2020-04-13 19:35:56 +00:00
Volker Ruppert
455c28b3da
Fixed compilation error on MSVC (bxhub.exe).
2020-04-12 15:47:11 +00:00
Volker Ruppert
451b60b8a2
Rewrite of the 'vnet' server code used by the vnet networking mode and the bxhub
...
utility to get rid of code duplication. New class vnet_server_c now contains all
of the network emulation including the DNS code from bxhub.cc.
2020-04-12 09:14:01 +00:00
Volker Ruppert
f587ef549f
Added missing Bochs command line in documentation.
2020-04-04 21:41:59 +00:00
Stanislav Shwartsman
355c06e396
add defines for CPUID bits recently announced
2020-04-01 06:15:54 +00:00
Volker Ruppert
48de31f169
If the UHCI controller is in reset mode, all reads are undefined and all writes
...
are invalid, except clearing the reset bit (patch by Ben Lunt).
2020-03-30 17:31:35 +00:00
Stanislav Shwartsman
81edc636d4
remove duplicate opcodes from decoder definitions
2020-03-28 14:36:27 +00:00
Stanislav Shwartsman
b686c8d423
add into ia_opcodes.def disasm field for every instruction
2020-03-28 14:23:54 +00:00
Volker Ruppert
e36217533a
Added support for 256-byte EDID file (e.g. QEMU monitor).
2020-03-25 16:54:50 +00:00
Volker Ruppert
ed223c6499
DDC: changed the "off" case to Bochs default name "disabled" and updated docs.
2020-03-22 12:31:34 +00:00
Volker Ruppert
e23a930864
Added "ddc" parameter to the "vga" option to make it possible either to disable
...
the DDC feature or to read the monitor EDID from file. By the default the
builtin "Bochs Screen" EDID is used.
2020-03-21 18:00:02 +00:00
Volker Ruppert
3626b75791
Added "multiple NICs" documentation to user doc and bochsrc manual page.
2020-03-12 19:45:40 +00:00
Volker Ruppert
324b511862
Started adding documentation for the "multiple NICs" support.
2020-03-09 20:19:30 +00:00
Stanislav Shwartsman
e8bc5ac024
commit small fixes from patch by Ben
2020-03-09 07:27:55 +00:00
Volker Ruppert
762d2a35af
Some work on the "multiple NICs" support.
...
- Added support for the E1000 network card similar to ne2k implementation.
- Define BX_NE2K_MAX_DEVS to make the maximum number of devices variable.
2020-03-08 16:45:52 +00:00
Volker Ruppert
d51f6480a0
Some fixes for the "multiple NICs" support.
...
- Fixed ne2k parameter save function.
- For backward compatibility, card #0 defaults to PCI if the ne2k is assigned
to at least one PCI slot.
- The "bootrom" parameter is only valid for the PCI card type.
2020-03-04 17:37:34 +00:00
Volker Ruppert
835a745215
Added experimental "multiple NICs" support (currently NE2000 only). Unlike the
...
old SF patches this solution is compatible with the plugin architecture. The
ne2k plugin is loaded only once and a new ne2k_main_c object creates up to 4
ne2k device objects depending on the config. The new ne2k parameter "card"
specifies the zero-based card number to configure. If not given, the default
is card #0 for compatibility. The new ne2k parameter "type" specifies the bus
it is connected to ("isa" or "pci"). Card #0 defaults to PCI, the others to
ISA. In the PCI slot configuration the ne2k device can be used multiple times
if more than one card is configured.
Related changes:
- removed SMF stuff for ne2k
- always convert device prefix to uppercase (ne2k uses NE2K0 ... NE2K3)
- removed unused BXPN values
- TODO: add multiple NICs support for the E1000
2020-03-02 22:04:10 +00:00
Stanislav Shwartsman
b63f3b36dc
fixed Erroneous limits calculation in function bx_dbg_get_laddr issue
2020-02-28 18:06:39 +00:00
Stanislav Shwartsman
7d989b34a3
fixed recent segoverride assignment bug in SVN
2020-02-28 15:03:52 +00:00
Stanislav Shwartsman
6e2541daa6
CET: DS Seg override is kept for CET Endranch suppress hint even if overridden by other prefixes later
2020-02-21 19:38:23 +00:00
Stanislav Shwartsman
fb0dafa06c
update CHNAGES post 2.6.11 release
2020-02-21 19:20:04 +00:00
Stanislav Shwartsman
c61d595106
add symbolic info for branch target disasm when available
2020-02-21 19:08:25 +00:00
Stanislav Shwartsman
086f2779f5
fixed compilation with avx but without EVEX
2020-02-20 05:29:13 +00:00
Volker Ruppert
9eb1cf233c
Fixes for compiling on MacOS (bxhub and eth_socket / patch by Yasser Rathore).
2020-02-17 20:49:10 +00:00
Volker Ruppert
185fbd7287
Adding option -march=i386 to GCC32 switches makes BIOS-bochs-latest compiled
...
with gcc 7.5.0 work with Bochs compiled for cpu level 5.
2020-02-16 09:19:01 +00:00
Volker Ruppert
a1b44c72b8
In the plugins case, don't use vncsrv link options for bochs.exe.
...
Removed unused GUI_LINK_OPTS from gui Makefile.
2020-02-07 23:32:27 +00:00
Volker Ruppert
9131b0dfb1
Fixed some more gcc warnings (strncpy() usage in wx gui).
2020-02-07 15:10:55 +00:00
Volker Ruppert
d9297100b1
Fixed some more gcc warnings (SDL and win32 gui debugger).
2020-02-06 21:42:08 +00:00
Volker Ruppert
d1822224a9
Fixed some gcc 9.2 warnings on Windows.
2020-02-06 17:13:01 +00:00
Stanislav Shwartsman
1b208b0e93
fixed compilation under Visual Studio
2020-02-02 07:25:00 +00:00
Volker Ruppert
a6329d4a3e
Some fixes in the build system.
...
- Fixed target name for 32-bit MSVC
- Don't probe for audio conversion libraries when configuring for MSVC
2020-02-01 18:05:54 +00:00
Volker Ruppert
7dd471210f
Configure script fixes for the vncsrv gui.
...
- Added LibVNCServer detection in Cygwin when using --with-all-libs
- If pkg-config is installed, use it to set up variables for LibVNCServer
2020-02-01 15:07:56 +00:00
Volker Ruppert
260d1f68d4
Some fixes for configuration and compilation with MSYS2.
...
- Added case for "*-msys" to the existing "*.mingw*" cases.
- Fixed $JADE value in case the program is not installed.
- Fixed RedirectIOToConsole() function for MSYS with 64-bit gcc 9.2.
2020-01-31 16:43:25 +00:00
Volker Ruppert
cc523e4034
Updated configure helper scripts from automake 1.16 (required for MSYS2).
2020-01-31 13:41:25 +00:00
Volker Ruppert
55ee6a4b85
Regenerated after docbook changes.
2020-01-27 18:23:01 +00:00
Volker Ruppert
79e1dfafcc
Added support for using jade directly if docbook2html is not installed (based
...
on Debian patch). Removed outdated jade specific Makefile.
2020-01-27 18:22:12 +00:00
Volker Ruppert
21e035957d
Don't force a gui display update in bx_vgacore_c::after_restore_state() since it
...
makes trouble with SDL / SDL2. The first timer-based update after restore should
draw the screen correctly.
2020-01-24 19:42:52 +00:00
Volker Ruppert
a088949447
Save / restore fixes
...
- Don't set up and load pre-defined optional plugins in restore mode.
- Remove the save/restore registration in Voodoo destructors.
- TODO: Fix frozen SDL/SDL2 display after restore.
2020-01-24 16:01:00 +00:00
Volker Ruppert
512d54cc5d
Moved internal debugger sections to a new chapter with two main sections:
...
command line debugger and debugger gui. Improved gui debugger section a
little bit. TODO: use some parts of docs-html/enh_dbg_user_man.txt and
remove this file when ready.
2020-01-19 00:11:34 +00:00
Stanislav Shwartsman
6b691257dd
fixed compilation with VMX off
2020-01-17 11:55:59 +00:00
Volker Ruppert
38581dc7ed
Added new configure shortcut script for compiling Bochs WIN64 on MSVC.
2020-01-15 21:42:38 +00:00
Volker Ruppert
48e07bcf7b
Recompiled BIOS image for i586.
2020-01-15 17:55:14 +00:00
Stanislav Shwartsman
a24b562e32
now when bios knows to set msr ia32_feature_ctrl, no need to initialize from reset code
2020-01-15 17:18:10 +00:00
Volker Ruppert
8679542678
Set VMX and LOCK bit in IA32_FEATURE_CONTROL.
2020-01-15 17:06:10 +00:00
Volker Ruppert
23b442e80d
Updated LGPL'd VGABIOS from SVN (some fixes for Bochs VBE).
2020-01-13 20:38:00 +00:00
Stanislav Shwartsman
c4d0001229
Apply SF [patch:#549] Fix snapshot param overflowing 32-bit integers
...
This patch fixed an integer overflow issue when restoring a snapshot whose parameters that are larger than ULONG_MAX.
We run into this issue when restoring a Windows snapshot whose pc_system.ticksTotal exceeds ULONG_MAX, which caused the subsequent confusion in bx_virt_timer_c::timer_handler which relies on pc_system.ticksTotal to function correctly.
2020-01-13 05:23:24 +00:00
Volker Ruppert
c15d3a27ad
Reduce maximum screen height by the height of header bar and status bar.
2020-01-12 19:00:56 +00:00
Stanislav Shwartsman
5620a4968b
set msr IA32_FEATURE_CTRL lock bit to ensure VMX is enabled - normally this should be done in Bios but init.cc can w/a
2020-01-11 07:04:44 +00:00
Stanislav Shwartsman
902ff1ef52
Part of the SF patch #548 : Support Windows Hyper-V in Bochs by Xinyang
...
When BX_SUPPORT_SMP is not defined, clear the bit in CPUID.[EAX=1].Bit[28] to indicate Hyper-Threading is unavailable.
2020-01-11 06:18:13 +00:00
Volker Ruppert
d641af80bb
Removed lfb_enabled switch from Bochs VBE code. Now banked and LFB writes to
...
VRAM are possible at the same time without changing mode. This makes the GRUB
bootloader menu visible when using the Bochs VBE adapter instead of Cirrus.
2020-01-11 06:07:18 +00:00
Stanislav Shwartsman
50bde4a38c
flush TLBs on CR4.CET change
2020-01-10 20:04:22 +00:00
Volker Ruppert
24e3cda7c0
Fixed building ACPI table source with latest iasl version (Debian patch).
2020-01-08 18:15:01 +00:00
Stanislav Shwartsman
72dffd320d
fixed CET fault on task switch when SSP is not 8-byte aligned. Bochs did #GP whiel SDM says #TS
2020-01-07 18:17:34 +00:00
Stanislav Shwartsman
526a565602
fixed compitaion with SMP and debugger enabled (SF bug #1411 )
2020-01-06 13:41:46 +00:00
Volker Ruppert
ef88b43248
Configure script regenerated after release
2020-01-05 12:59:23 +00:00
Volker Ruppert
fa0c6f4be8
Updates after release, added release tag to user doc, fixed BIOS install list
2020-01-05 12:58:25 +00:00
Volker Ruppert
08928b8b0c
Regenerated for release
2020-01-05 07:37:34 +00:00
Volker Ruppert
fc5b1c6e50
Preparing release 2.6.11
2020-01-05 07:36:44 +00:00
Volker Ruppert
70ea45b83d
Moved and updated biossums.txt to the developer doc.
...
Small fix in biossums.c.
2020-01-04 22:46:00 +00:00
Volker Ruppert
ecba5b807e
CHANGES updated
2020-01-04 10:14:05 +00:00
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