Commit Graph

13257 Commits

Author SHA1 Message Date
Stanislav Shwartsman
38b1bbf4ff Implemented VMX 'Shadow Stack Prematurely Busy' and secondary VMEXIT controls 2024-01-27 13:34:51 +02:00
Stanislav Shwartsman
e14b126198 fixed rounding to float16 (found during AVX512_FP16 development)
used Softfloat3 code as reference
2024-01-26 22:53:39 +02:00
Stanislav Shwartsman
093d4428ec read less bits for mask with DOUBLE precision elements 2024-01-26 20:36:29 +02:00
Shwartsman
0e1c5e35ff added error message for unimplemented access len in bx_voodoo_1_2_c::mem_read_handler 2024-01-26 09:45:00 +02:00
Volker Ruppert
30a61c2a51 Banshee/Voodoo3 fixes in mem_write_linear (issue #231).
- Applied memory mask to start address.
- Consider half mode and double width for redraw setup.
2024-01-25 19:57:28 +01:00
Shwartsman
437ddc96fc Addressing Black screen in Descent II: Destination Quartzon 3dfx OEM with Voodoo #238 2024-01-24 17:04:21 +02:00
Shwartsman
995e8fb6c6 let Bochs debugger switch CPU by simply typing 'cpu N' command insetad of doing 'set $cpu = N' 2024-01-23 23:13:20 +02:00
Shwartsman
164772103a use 'a' as 'all' in debugger 2024-01-23 19:25:56 +02:00
Shwartsman
b5bcbfced0 fix segfault @exit with debugger introduced by previous commit 2024-01-23 16:11:15 +02:00
Shwartsman
fb42896000 better support of SMP in debugger methods 2024-01-23 11:08:05 +02:00
Stanislav Shwartsman
ae0c9df317 compile stand alone disasm tool even if BX_DEBUGGER is configured in 2024-01-22 22:13:28 +02:00
Volker Ruppert
a663b9d1d0 Minor Banshee/Voodoo3 changes.
- Update pens when switching from / to 3D mode.
- Improved BX_ERROR message for unimplemented feature.
2024-01-22 20:23:40 +01:00
Volker Ruppert
75757e9852 Banshee/Voodoo3: Fixed overlay stride. 2024-01-22 16:37:18 +01:00
Stanislav Shwartsman
a2296e5d2a when printing instruction disassembly in debugger add status "(halted)" about halted CPU 2024-01-21 23:00:55 +02:00
Stanislav Shwartsman
c1a65ff7c4 introduce a method to switch dbg_cpu when needed 2024-01-21 22:39:59 +02:00
Shwartsman
0141f2767c fixed compilation for i386 config and with no SVM 2024-01-21 22:03:53 +02:00
Shwartsman
e960e574f4 this annoying message happens always when debugger is closed
change to BX_INFO
2024-01-21 17:44:17 +02:00
Shwartsman
8abfde13d7 complete support of SVM Nested Walk in dbg including 'page' command 2024-01-21 17:44:17 +02:00
Volker Ruppert
ea0b208970 Cirrus: Implemented double scan support for color depth > 8.
TODO: Screen width not adjusted yet (should be done similar to Voodoo3).
2024-01-21 10:09:30 +01:00
Benjamin David Lunt
9820cf934e
Update ohci_core.cc (#232)
On a buffer underrun (Short Packet), we still need to update the CBP

---------

Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-21 06:56:35 +01:00
Benjamin David Lunt
7851bf8ce1
Update hdimage.cc (#233)
Change an ERROR to a PANIC when a .lock file is found.
2024-01-21 06:39:48 +01:00
Volker Ruppert
7ad1fd0088 Update CHANGES. 2024-01-20 23:27:30 +01:00
Volker Ruppert
db0d16ff09 Banshee: Double the screen width in 'half mode' if height > width. 2024-01-20 22:30:47 +01:00
Shwartsman
f014160835 Add Bochs intenal debugger welcome message and improve help command 2024-01-20 21:09:46 +02:00
Volker Ruppert
ab32c8a2bb Update CHANGES and 'vga: update_freq' in docs. 2024-01-20 10:59:34 +01:00
Shwartsman
4eae91f1ca addressing issue Possible Undefined Behavior in NEG_EdR() and NEG_EdM() #227 2024-01-20 08:19:43 +02:00
Shwartsman
35abc682cb Merge fix for "Crash when floppy image file is missing #229" 2024-01-20 07:53:26 +02:00
Shwartsman
d9d07c03ec update CHANGES with critical ADOX fix 2024-01-19 20:35:54 +02:00
Shwartsman
dd9aaa7325 Fixed OF flag for ADOX instruction
The OF flag defintion is different from OF of other instructions
Instead it is defined as:
The instruction sets the OF flag with the **carry** generated by the unsigned addition of the operands.
2024-01-19 20:30:47 +02:00
Volker Ruppert
6e48bc78fc VGA core: Implemented a more accurate vertical timing.
Now using one timer with two alternating periods. A modification of the timer code
wasn't necessary. The update mode vsync is not yet affected by this change.
2024-01-19 18:40:13 +01:00
Volker Ruppert
4112a10fbd Update changes 2024-01-18 23:42:45 +01:00
Volker Ruppert
b382358e80 Banshee: Attempt to fix redraw in case bitblt is used in 3D mode. 2024-01-18 20:32:29 +01:00
Volker Ruppert
6770a355ae Cirrus: Fixed redraw issue caused by misaligned bitblt region.
If x0 + width exceeds the screen width, mark tile(s) on the left side of the screen, too.
This should finally fix issue #221.
2024-01-17 22:12:30 +01:00
Volker Ruppert
c66d6f1a0e Cirrus: Fixed possible segfault caused by missing address wrap.
- Added address wrap in cpu-to-video transparent bitblt.
- Added BX_DEBUG for address wrap detection and fixed redraw parameters.
TODO: Check other methods for possible segfaults.
2024-01-17 19:23:08 +01:00
Shwartsman
9d5bfa9064 UINTR: uitt_addr[3:0] are reserved and must be cleared before reading UITT entry 2024-01-17 14:52:49 +02:00
Stanislav Shwartsman
0f677ccfc6 change comments 2024-01-16 21:23:45 +02:00
Stanislav Shwartsman
c5436a4891 update CHANGES 2024-01-16 20:58:39 +02:00
finnbrudal
3455581a71
Cirrus: BLT System-to-screen Dword Pointer (GR2F[6:5]) implemented (#223)
Bits 5-6 of the left side clipping register have been implemented.

Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-16 19:10:06 +01:00
Stanislav Shwartsman
f8d1050a3f
Implemented SVM VM_CR_MSR and INIT redirection feature (#220)
Save and restore SVM MSRs
2024-01-16 07:42:28 +02:00
Vort
ba7c8ed57a
Cancel topmost mode after leaving fullscreen mode (#224)
`HWND_TOPMOST` should be cancelled with `HWND_NOTOPMOST` when it is not
needed anymore.

Co-authored-by: Volker Ruppert <Volker.Ruppert@t-online.de>
2024-01-16 00:03:32 +01:00
Volker Ruppert
8528604888 Cirrus: Corrected redraw fix for backward BitBlt. 2024-01-15 23:28:23 +01:00
Volker Ruppert
bcfe5e129f Cirrus: Fixed redraw values for backward BitBlt. 2024-01-15 17:11:25 +01:00
Shwartsman
d965a16a7d cosmetic updates for SVM code 2024-01-14 20:30:04 +02:00
Volker Ruppert
77fffc1336 SDL: Cleaned up fullscreen toggle functions.
FIXME: Window height sometimes not restored correctly (observed on Linux / X11).
2024-01-14 17:49:44 +01:00
Volker Ruppert
103b4fa8eb SDL2: Save / restore window position when using fullscreen toggle.
FIXME: Display updates can fail after toggle (observed on Linux / X11).
2024-01-14 17:00:05 +01:00
Shwartsman
e4deec2aca cleanups and code updates before thinking of INIT redirection implementation for AMD SVM 2024-01-14 12:55:43 +02:00
Shwartsman
61a35063c5 remove all ifdefs from features.h
I'd like features bitmasks to be independent on Bochs compilation flags
so let all flags to be 'exists' even if corresponding feature is not compiled in.
2024-01-14 12:51:41 +02:00
Volker Ruppert
9fdb898dfe SDL / SDL2: change fullscreen toggle to key combination ALT+ENTER.
TODO: Fix some issues related to this feature.
2024-01-14 11:41:01 +01:00
Volker Ruppert
04ed1e8fd2 Some more VGA timing handling chages.
- Changing status of 'update_mode_vsync' is no longer supported at runtime.
  If disabled, changing the value is only valid between 1 and 75.
- Modify vtotal_usec if frequency to high before activating vsync_timer.
2024-01-14 10:13:39 +01:00
Volker Ruppert
2585b6ff68 SDL2: Don't show dialog box if Bochs is killed with SIGTERM. 2024-01-14 07:01:31 +01:00