714 Commits

Author SHA1 Message Date
Stanislav Shwartsman
f5b54a4d33
Implemented MOVDIRI instruction (#129)
Co-authored-by: Stanislav Shwartsman <sshwarts@users.sourceforge.net>
2023-11-11 20:30:12 +02:00
Stanislav Shwartsman
620d091264 update CHANGES 2023-11-11 18:55:29 +02:00
Stanislav Shwartsman
676da2e587 update CHANGES 2023-11-09 23:14:01 +02:00
Shwartsman
f455fa87e4 update CHANGES with CD-ROM fix 2023-10-22 11:55:26 +03:00
Stanislav Shwartsman
873f62e298 update CHANGES 2023-10-20 21:03:04 +03:00
Benjamin David Lunt
0d1d6c671a
Ehci companion (#104)
This PR adds the ability to choose which companion controller the EHCI
uses.
`#usb_ehci: enabled=1, companion=uhci`
`#usb_ehci: enabled=1, companion=ohci`

UHCI is enabled by default:
`#usb_ehci: enabled=1`

This breaks up `usb_ohci.cc/h` into `usb_ohci.cc/h` and `ohci_core.cc/h`
to be like the existing `usb_uhci.cc/h` and `uhci_core.cc/h`.
This adds the ability to define a Port Routing string in the
`HcspPortRoute` register, and is optional via the `EHCI_PORT_ROUTE`
define.

Currently `EHCI_N_CC` and `EHCI_N_PCC` must remain as currently set (3
and 2 respectively), however with a little more work, I think these can
be modified and have up to 7 companion controllers with more ports per
companion, as long as the combined total is <= 15 total ports.

Please verify the `Makefile.in` changes. I do not use GCC and can not
verify it is correct.
2023-10-20 21:00:59 +03:00
Stanislav Shwartsman
8316d7698f
implemented Linear Address Separation extension (LASS) (#90)
Co-authored-by: Stanislav Shwartsman <sshwarts@users.sourceforge.net>
2023-10-15 14:32:01 +03:00
Benjamin David Lunt
b0dbbe884a
Misc uasp (#93)
Update the CHANGES file.
Syntax changes in uasp as requested a while back.
2023-10-15 10:26:43 +03:00
Stanislav Shwartsman
08d44208fc update and reorg CHANGES 2023-10-15 08:02:06 +03:00
Benjamin David Lunt
bcbe5da030
Usb compliance (#91)
Made all devices pass USB 2.0 Compliance on WinXP (old version of the
compliance test).
USB Hub still needs a little work to be in complete compliance.
Fixed potential bug in EHCI to UHCI hand-off.
Fixed compilation error with Floppy CB/CBI emulation.
Minor syntax fixes (tabulation, old irrelevant comments)
MSD serial numbers must be 12 chars.
Added to CHANGES file
2023-10-15 07:23:18 +03:00
Stanislav Shwartsman
ffa64461ab
implementation of AVX-NE-CONVERT ISA (#89)
Co-authored-by: Stanislav Shwartsman <sshwarts@users.sourceforge.net>
2023-10-14 14:55:12 +03:00
Stanislav Shwartsman
dd7d4dbd82 implement SERIALIZE instruction
enable CPUID reporting for all recently added ISA extensions
2023-10-12 14:46:27 +03:00
Stanislav Shwartsman
4a309478f9
SHA512 instructions implemented (#88)
Co-authored-by: Stanislav Shwartsman <sshwarts@users.sourceforge.net>
2023-10-10 21:33:16 +03:00
Stanislav Shwartsman
32b3f65d34 update CHANGES 2023-10-10 20:06:48 +03:00
Stanislav Shwartsman
4c9f637d49 updated CHANGES 2022-10-08 20:30:31 +03:00
Stanislav Shwartsman
5fab5364bc update CHANGES 2022-08-26 21:55:38 +03:00
Stanislav Shwartsman
1e4f1624c8 remove trailing whitespace from source files 2022-08-23 21:46:04 +03:00
Stanislav Shwartsman
f44f4ae753
MBE (Mode Based Execution Control) emulation (#22)
* MBE (Mode Based Execution Control) emulation
2022-07-30 15:26:47 +03:00
Volker Ruppert
eef679a8a4 Some documentation fixes. 2021-10-18 19:31:16 +00:00
Volker Ruppert
631e839046 Added changes after release. 2021-09-12 15:47:28 +00:00
Volker Ruppert
b924b92ecc Preparing final release 2.7. 2021-08-01 08:07:38 +00:00
Stanislav Shwartsman
da21b16d7f remove cpudb.h from bochs.h 2021-07-25 18:01:28 +00:00
Volker Ruppert
caf52aacac Added advanced PCI option 'noagp' for the i440BX chipset.
Since AGP support is incomplete, it may be useful to disable this subsystem.
2021-06-27 14:50:26 +00:00
Volker Ruppert
28b280c4bc Added display library option for disabling the Bochs gui console - using system
console / xterm instead (rfb, sdl, sdl2, vncsrv, x).
2021-06-11 14:46:38 +00:00
Volker Ruppert
98e55fe6b2 Fixed and extended summary of changes. 2021-06-05 05:22:11 +00:00
Volker Ruppert
9640d248d6 Adding summary of changes. 2021-06-04 15:49:32 +00:00
Volker Ruppert
ea389fe782 LGPL'd VGABIOS updated to version 0.8a. 2021-06-03 16:43:40 +00:00
Volker Ruppert
086e188e90 LGPL'd VGABIOS updated from SVN.
- Bochs VBE: implemented 'write character' support.
- Bochs VBE: save/restore code rewritten in assembler.
2021-05-28 20:13:22 +00:00
Volker Ruppert
431b3215fd LGPL'd VGABIOS updated from SVN.
- Bochs VBE: enable 32k bank granularity mode.
- Fixed general 'scroll down' bug in graphics modes.
- Code optimizations: some VBE and VGA functions rewritten in assembler.
2021-05-24 06:48:40 +00:00
Volker Ruppert
7b8f97b448 Updated LGPL'd VGABIOS from SVN.
- Added 'write character' support for Cirrus 8-bpp modes using bitblt engine.
- Some code optimizations.
2021-04-30 21:00:40 +00:00
Volker Ruppert
d53a068c5e Some updates after adding USB packet logging support in PCAP format.
- Updated MSVC workspace files.
- Documentation updates.
2021-04-18 15:26:26 +00:00
Volker Ruppert
faa11624e0 Updated LGPL'd VGABIOS from SVN.
- Added initial version of the VGABIOS for Voodoo Banshee adapters.
- Several code optimizations to reduce binary size.
NOTE #1: Banshee version has no VBE support yet.
NOTE #2: Banshee binary uses PCI ID for Banshee PCI and Bochs temporarily
         modifies the PCI data for Voodoo3 and AGP models.
2021-04-12 19:35:37 +00:00
Volker Ruppert
3fcc320897 Added new plugin type PLUGTYPE_CI for config interfaces. Updated related code
and documentation.
2021-03-27 17:23:31 +00:00
Stanislav Shwartsman
a2004dd0f0 update CHANGES 2021-03-11 21:26:01 +00:00
Volker Ruppert
442d7256bf Updated CHANGES. 2021-02-21 09:46:51 +00:00
Volker Ruppert
dcdceb96f6 Generate USB devices list from available USB plugins list and removed hardcoded
device handling. Added some code to handle plugins that provide more than one
device type (usb_hid, usb_msd) or with different name (usb_cbi). The device
type member is now only used by multi-function devices.
2021-02-17 16:22:55 +00:00
Volker Ruppert
368c83127e Some small changes in the USB devices configuration.
- Fixed USB devices list by adding a terminating NULL entry.
- Disable USB device options parameter if device is set to "none".
- Related documentation updates.
2021-02-15 19:55:53 +00:00
Stanislav Shwartsman
1bf18b8aae ! CPUID: Added TigerLake CPU definition (features CET and CLWB support)
- CPU code refactor, remove uses of bx_bool datatype and use C++ classic bool instead.
  This enable better compiler optimizations and reduce binary size
2021-01-30 08:35:35 +00:00
Volker Ruppert
3602ec1cd7 Added support for converting VDI images to another format with bximage. 2021-01-08 13:19:08 +00:00
Stanislav Shwartsman
11fd7a369c update CHANGES 2021-01-02 13:46:55 +00:00
Stanislav Shwartsman
2cbf3577ce update CHANGES 2021-01-02 12:33:04 +00:00
Volker Ruppert
250215b2f7 Added USB keyboard support as an extension to the numeric keypad.
TODO #1; Add some missing HID key codes.
TODO #2: Add key event queue to avoid losing events.
TODO #3: Unify keyboard and keypad code.
TODO #4: Support multiple non-modifier keys pressed at the same time.
TODO #5: Share keyboard indicators with the legacy PS/2 keyboard.
2020-12-14 16:33:20 +00:00
Volker Ruppert
c12c8324dc Added config parameter to set up advanced PCI options as comma-separated
values. Now it is possible to disable ACPI or HPET in case the i440FX chipset
is selected.
2020-12-04 17:04:40 +00:00
Volker Ruppert
aaf8c9d4e4 Removed "svga" display library designed for the obsolete Linux SVGALib.
The latest release is from 2001 and it will not work on modern Linux systems.
Parts of the SVGALib code have been moved to the Linux kernel and the X11 and
SDL libraries are using it as a video driver.
2020-11-25 07:56:32 +00:00
Volker Ruppert
b94fff0501 Implemented new text update API in the vncsrv gui and console cursor fix.
- Now the vncsrv gui supports the VGA features split screen and h/v pel panning.
- Fixed new API cursor blinking in the gui console.
2020-11-15 16:16:14 +00:00
Volker Ruppert
f8024d3819 Added win32 gui feature "autoscale" for the fullscreen mode, too (including
some fullscreen fixes and cleanups).
2020-10-25 16:23:42 +00:00
Volker Ruppert
bed49deb86 Added win32 display library option "autoscale" to scale a small simulation
window by 2, 4 or 8 depending in desktop window size (window mode only).
Modified special stretching case for the CO40 text mode.
2020-10-23 13:14:34 +00:00
Volker Ruppert
dffaa9794b Added support for saving text mode snapshot in BMP format if file extension is
set accordingly.
TODO #1: Text mode features split screen and h/v pel panning missing for now.
TODO #2: Show error messages related to dialogs in message boxes.
2020-10-16 17:25:50 +00:00
Volker Ruppert
938c5bd26c Implmented byte / word wizzling in Voodoo2 and Banshee bitblt code. 2020-10-08 17:22:25 +00:00
Volker Ruppert
d7d3d27f57 Some work on the Voodoo Banshee emulation.
- Implemented 2D command "Polygon Fill".
- Changed some log messages to BX_DEBUG.
2020-09-11 07:08:47 +00:00