Commit Graph

12781 Commits

Author SHA1 Message Date
Benjamin David Lunt
2314cbcfe1
wheel mouse button (#282)
If not in wheel-mouse mode, don't report the wheel button event
2024-03-13 21:14:05 +02:00
Volker Ruppert
7d037af569 Fixed compilation of USB debugger if the win32 gui is not present. 2024-03-13 17:03:21 +01:00
Stephen Kitt
fe7b4b4fcb
Stub the bxInstrument_c class too (#281)
The instrument stub needs this, otherwise

./configure --enable-instrumentation && make

fails because bxInstrument_c isn't declared.

Signed-off-by: Stephen Kitt <steve@sk2.org>
2024-03-13 06:53:35 +02:00
Volker Ruppert
667e885b2e Started updating the documentation after transition to GIT.
- Website repository is now GIT, but still hosted on SF.
- Creating SVN snapshot section is now obsolete.
- Prepared Makefile for compiling outside of the source tree.
2024-03-12 19:11:04 +01:00
Volker Ruppert
57ea1bad99 Fixed compilation outside of the source tree.
To implement this, softfloat3e needs a Makefile created by configure script
to set up the real SOURCE_DIR.
TODO: Fix compilation with MSVC nmake (Makefile line 278 fails).
2024-03-11 21:46:12 +01:00
Vort
4b07de86c7
Fix cross compilation (#279) 2024-03-11 10:09:51 +02:00
Stanislav Shwartsman
5a7224fc9f remove SOFTFLOAT_ROUND_ODD rounding mode which not needed for x86 emu 2024-03-10 20:36:38 +02:00
Vort
f31b115e20
Add static link support for bxhub and bximage (#277) 2024-03-10 17:23:13 +02:00
Stanislav Shwartsman
d350c008e2
add softfloat3e library to Bochs to replace old softfloat2 (to get fp… (#259)
…16 support)

with a lot of my updates, cleanups and extensions for x86 features like
denormal and/or undeflow/overflow handling

---------

Co-authored-by: Stanislav Shwartsman <sshwarts@users.sourceforge.net>
2024-03-10 17:10:55 +02:00
Stanislav Shwartsman
b80ddeebf6 fix CHANGES after 2.8 2024-03-10 16:46:27 +02:00
Benjamin David Lunt
557976bee1
Initial start of the USB Debugger (#165)
This is the start of the Experimental USB Debugger (currently for the
Windows platform only).

Currently only supports the UHCI and xHCI controllers. The remaining
function of these two controllers and the two remaining controllers are
in the works and will be added to when time allows.

The User.dbk has been updated with (temporary) html files at
https://www.fysnet.net/bochs/user/index.html showing the process to
invoke and use the USB debugger (Section 5.8).

In its completion, this debugger will allow you to view and modify most
aspects of the specified USB controller. For example, currently you can
view and modify a TRB listed in the xHCI's Command or Event Ring. Other
aspects will be added.

I do not use and am not fluent in the use of `configure`,
`configure.ac`, and associated configuration files. I also don't use the
`gui/Makefile.in` file.

Someone that is more fluent in the way these files work, please add the
necessary items to successfully compile this PR.

---------

Co-authored-by: Shwartsman <stanislav.shwartsman@intel.com>
2024-03-10 13:05:41 +02:00
Volker Ruppert
09778e275d Updated version number after release. 2024-03-10 09:45:03 +01:00
Volker Ruppert
9177c93e4e Preparing Bochs release 2.8. 2024-03-10 07:59:37 +01:00
Volker Ruppert
ead3c2e3f6 Renamed flag VER_SVN to VER_DEV and related changes. 2024-03-09 20:18:25 +01:00
Volker Ruppert
f34df21662 Remove the unwanted *.la files before building the file list.
RPM version >= 4.17 deletes those files so we have to make sure that they are
not in the list.
2024-03-09 17:45:24 +01:00
Volker Ruppert
3fbf474b9d Attempt to fix the libdir issue when compiling with plugins on Ubuntu.
This change may not fix the RPM build failure in release workflow.
2024-03-09 14:11:53 +01:00
Volker Ruppert
1307853e13 VVFAT: Fixed short name genaration in case base name length is > 8. 2024-03-06 17:09:34 +01:00
Volker Ruppert
2990c09fdc Updated LGPL'd VGABIOS to version 0.9a. 2024-03-03 19:51:23 +01:00
Volker Ruppert
a30d446d37 Reverted previous commit - release workflow still fails. 2024-03-02 09:04:05 +01:00
Volker Ruppert
348cb05b38 Temporarily disable plugins support for release build script testing. 2024-03-02 08:52:30 +01:00
Shwartsman
7b42a7848d update make_rpm script for configure.ac 2024-03-01 18:45:17 +02:00
Volker Ruppert
a92cbdd946 Banshee/Voodoo3: Lock buffer swapping while rendering screen.
This should fix issue #264.
2024-02-25 15:53:48 +01:00
Volker Ruppert
62fe299545 Update CHANGES. 2024-02-25 11:24:27 +01:00
Volker Ruppert
be3e664dff Allow setting disabled parameters in the bochsrc / command line stage.
Dependencies should work completely in the config interface stage and coherency
check should be done in device init. This change should make the oder of parameters
in bochsrc / command line less strict (issue #263).
2024-02-25 11:08:11 +01:00
Stanislav Shwartsman
3ff8fd5cd7 merge FCOMPP and FUCOMPP to same method to reduce code duplication 2024-02-20 07:22:58 +02:00
Volker Ruppert
e31e42a4c8 Update CHANGES. 2024-02-19 18:10:28 +01:00
Volker Ruppert
662fb097fe Erase BIOS flash space in case the specified image file is not found.
Disable loading flash data feature for the current Bochs BIOS.
2024-02-19 17:52:52 +01:00
Benjamin David Lunt
2c4fcc7981
Changed = to ==
Changed = to ==
I think this was a simple mistake and since there was no way to test it until now, it didn't show up.
2024-02-19 09:18:16 +02:00
Volker Ruppert
4455da0e1b Perform win32 gui internal palette swapping only in case of a bpp change. 2024-02-18 18:20:49 +01:00
Volker Ruppert
abdbc52f22 Finally enabled the VGA_MEM_FIX code.
The legacy code could be removed after release Bochs 2.8 if there are no issues.
2024-02-18 11:03:31 +01:00
Volker Ruppert
171697da03 Fixed save/restore with debugger enabled. 2024-02-17 09:23:39 +01:00
Volker Ruppert
cc162522bb Fixed compilation with VGA_MEM_FIX not set. 2024-02-17 08:59:00 +01:00
Volker Ruppert
9e6d839caa VGA_MEM_FIX: Force a refresh of the text buffer on mode change and restore. 2024-02-17 08:53:25 +01:00
Volker Ruppert
75d76db967 Cirrus: Added support for 4-bpp VBE modes with original VGABIOS. 2024-02-16 14:23:56 +01:00
Benjamin David Lunt
e4d8ca494f
Update usb_ehci.cc (#271)
No reason to stop executing the Async list simply because the driver
didn't clear the IAA bit in the Status register.

Normally, a driver should clear it, but there is no instruction in the
specification to stop the Async list simply because this bit isn't
cleared.

Debug log is still present to inform the user.

Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-02-15 16:53:29 +01:00
Volker Ruppert
1ff88fdd05 VGA_MEM_FIX: Added text buffer in legacy format to simplify text update.
Using character / attribute pairs expected by the gui text update makes the
update code simpler and faster.
TODO: If possible add a buffer for active text font data.
2024-02-13 17:38:52 +01:00
Shwartsman
7b5fb0b749 AVX-512 VREDUCE* should never raise #Denormal, #Overflow or #Underflow 2024-02-12 21:15:43 -06:00
Volker Ruppert
57d38ffb86 VGA_MEM_FIX: Added memory size mask to fix planar VGA modes. 2024-02-12 22:12:34 +01:00
Volker Ruppert
117f71a185 VGA_MEM_FIX: Some odd/even mode changes for correctness.
Offset must be shifted left by 2 instead of 1.
Even offset writes can go to plane 0 and 2, odd ones to plane 1 and 3.
2024-02-12 16:58:38 +01:00
Volker Ruppert
30c1e74627 VGA_MEM_FIX: Next attempt to fix odd/even mode related issues.
Now using the sequencer 'odd/even disable' switch to determine mode.
2024-02-11 17:11:48 +01:00
Volker Ruppert
549d052e34 VGA_MEM_FIX: Picked a better name for the sequencer odd/even disable switch. 2024-02-11 14:49:12 +01:00
Volker Ruppert
0e5800bf98 VGA_MEM_FIX: Fixed cursor address of the invisible cursor.
Now using the highest address of the default text mode buffer.
2024-02-11 13:40:02 +01:00
Volker Ruppert
39155bd3ae VGA_MEM_FIX: Temporary fix for special memory access mode in modeX.
In odd/even mode fall back to planar mode if "chain odd/even" bit is 0.
2024-02-11 09:37:06 +01:00
Volker Ruppert
945ee597f0 Added currently disabled set of fixes for the VGA memory management.
- Added disabled definition VGA_MEM_FIX in vgacore.h. The VGA core code works as
  usual unless you uncomment the define.
- Added correct implementation of the "chain four" and "odd/even" addressing mode.
  This should fix the Debian / GRUB boot issue (#257) with both Bochs VBE and Cirrus.
- Added some compatibility code to make the gui text update work as usual.
- Tested all VGA modes except 256-color word mode (no test case).
- Some more testing with old DOS games may be required before I enable it by default
  and finally remove the legacy code.
2024-02-10 17:30:24 +01:00
Volker Ruppert
fd68912dc7 Small cleanups in the VGA core code.
The text snapshot buffer is now allocated dynamicly.
2024-02-10 14:00:09 +01:00
Shwartsman
e7ef67f89b bugfix for float64_getmant 2024-02-10 13:27:16 +01:00
Volker Ruppert
4ab88c3d8f Cirrus: The first MB of video memory is always accessible. 2024-02-10 10:36:39 +01:00
Volker Ruppert
5c715aa9a3 Fixed clipping parameters in Banshee/Voodoo3 (issue #236).
Added 'clip_mask' with width depending on model.
Fixed VGA display issue discovered with Voodoo3.
2024-02-09 15:03:32 +01:00
Volker Ruppert
e5ff346368 Some fixes and cleanups after latest changes.
- Fixed Cirrus text mode output.
- VBE now using it's own 'line_offset' value.
- Since font change is now handled in update(), removing gui method set_text_charbyte().
2024-02-09 14:34:01 +01:00
Volker Ruppert
e53cf3b962 VBE/VGA: More accurate implementation of GRUB save/restore support.
Added VGA chain4 mode read/write support from VBE frame buffer.
Handle charmap update in update() using modified 'vga_mem_udated' flag.
Added temporary code for chain four memory addressing.
TODO: VGA memory handling rewrite including odd/even mode support.
2024-02-08 23:05:48 +01:00