Commit Graph

8221 Commits

Author SHA1 Message Date
Stenzek
b36e2ce6be
CPU/CodeCache: Don't create a branch block with no delay slot
Can't compile that.
2024-09-26 20:55:13 +10:00
Stenzek
2e4eaeafdc
GameDB: PGXP-CPU for Hogs of War
Fixes wobble in minimap.
2024-09-26 20:55:10 +10:00
Stenzek
e3a84af1aa
GameDB: PGXP-CPU for Firebugs
Fixes gaps in geometry.
2024-09-26 20:49:04 +10:00
Stenzek
c46ec398dc
GPU: Move software fill/write/copy into rasterizer namespace 2024-09-26 18:30:46 +10:00
Stenzek
495a0da8d4
Pad: Pack state in struct 2024-09-26 17:54:46 +10:00
Stenzek
58dc24cb0d
CDROM: Pack state in struct
Ensures locality, as with other subsystems.
2024-09-26 17:49:35 +10:00
Stenzek
a26c3e5620
System: Add new 'Type 1B' fast boot
This saves approximately 2 seconds of boot time, as it no longer copies
the shell from ROM to RAM. The actual byte reads only take in the order
of 75ms, but because the BIOS executes the memcpy() out of uncached ROM,
the repeated instruction fetches take it up to almost 2 seconds...

It would be faster to read it from the CD-ROM...
2024-09-26 16:28:47 +10:00
Stenzek
d1eed89292
GameDB: PGXP-CPU for Roswell Conspiracies 2024-09-26 14:05:43 +10:00
Stenzek
0e4ca9cd93
CDROM: Fix CDDA playback in some obscure edge cases
e.g. Roswell Conspiracies
2024-09-26 14:05:34 +10:00
Stenzek
4d74b203af
System: Don't try to read SYSTEM.CNF from Audio CD 2024-09-26 13:39:01 +10:00
Stenzek
991927151c
ImGuiOverlays: Fix scrolling offscreen with no-serial 2024-09-26 13:38:57 +10:00
Stenzek
fd8f97f4d3
GPU/HW: Fix adaptive downsampling
Also rewrite shaders to improve blurring around edges of 3D objects
(e.g. FF7).

As a trade-off, the background does blur slightly less, but (imo)
it looks better overall, since you'll notice the foreground being
blurred much more than the background.
2024-09-26 13:25:53 +10:00
Stenzek
5ed96fcfe4
GameDB: ICache for Nightmare Creatures
Janky ass disc code...
2024-09-25 01:37:07 +10:00
Stenzek
50cfbf1629
GameDB: PGXP-CPU for Valkyrie Profile
Fixes wobble during screen transitions and battle stages.

Hopefully nothing else breaks, if it does, please let me know.
2024-09-25 01:37:07 +10:00
Stenzek
114effd9a1
CDROM: Simulate backwards 1T jump on short seeks
Fixes hangs in LMA Manager, Nightmare Creatures PAL with Interpreter.
2024-09-25 01:37:07 +10:00
Stenzek
3808217298
SPU: Handle ignore loop address with IRQs on
This was actually the issue with World Cup 98, not anything to do with
disc timing. Which makes more sense.

Game has IRQs enabled, but because it wasn't keyed on, the condition
never held true, therefore the new repeat address was immediately
overwritten.
2024-09-25 01:37:07 +10:00
Stenzek
2cfad2126d
Common: Missed another SSE4 instruction 2024-09-25 01:37:07 +10:00
Anderson Cardoso
c0ada65336
Atualização Português do Brasil (#3302)
Atualizado para a última versão.
2024-09-23 23:23:14 +10:00
Mrlinkwii
9a1d92a9c5
gitignore: Add /.cache/ folder (#3301) 2024-09-23 22:08:40 +10:00
Stenzek
71cf206dc8
CI: Add Windows SSE2 builds 2024-09-23 21:42:48 +10:00
Stenzek
b971125469
MSBuild: Support creating legacy SSE2 builds 2024-09-23 21:19:28 +10:00
Stenzek
ed7a9e2f8c
CI: Refactoring and add Linux SSE2 builds
Windows will follow at some point.
2024-09-23 20:27:58 +10:00
Stenzek
bfc914aaa9
CMake: Add DISABLE_SSE4 option
NOT recommended. Only if you ABSOLUTELY need it.

The SSE2/legacy build will be a separate download option, and
warn you if you try to run it on a CPU that supports SSE4.
2024-09-23 20:27:58 +10:00
Stenzek
d67b826033
CI/Flatpak: Improve install behaviour
Use "standard" install path.
2024-09-23 19:21:14 +10:00
Stenzek
dae38cb309
Qt: Fix gap in advanced graphics settings on Linux 2024-09-23 19:18:29 +10:00
Stenzek
bb3d27f153
GPU/SW: Drop dithering function specialization
Reduces the code size by roughly half, which may be beneficial on
icache-starved processors.

Also fixes too-bright values being fed into the blending equation.
2024-09-23 01:01:07 +10:00
Stenzek
2768d27c05
Qt: Make log window legible in light theme 2024-09-23 00:50:51 +10:00
Stenzek
23ec40d032
Settings: Set log level to none if no sinks enabled 2024-09-23 00:26:48 +10:00
Stenzek
cf32774b24
RegTest: Check size before hash
Some checks failed
Create rolling release / linux-build (push) Failing after 0s
Create rolling release / linux-flatpak-build (push) Failing after 0s
Create rolling release / windows-build (push) Has been cancelled
Create rolling release / windows-arm64-build (push) Has been cancelled
Create rolling release / macos-build (push) Has been cancelled
Create rolling release / create-release (push) Has been cancelled
2024-09-22 21:06:05 +10:00
Stenzek
206f32e511
Qt: Fix early console debug output 2024-09-22 21:06:05 +10:00
Stenzek
c439de6364
Common: SSE2 backsupport for vector classes
shuffle8() sucks, the rest aren't _too_ bad.
2024-09-22 21:06:05 +10:00
Stenzek
e1c876671a
Misc: More iNN => sNN 2024-09-22 21:06:05 +10:00
Stenzek
986e207cff
GPU/HW: Make batch shaders independent on resolution
Almost a 6x reduction in *compressed* shader cache size.
2024-09-22 21:06:05 +10:00
Stenzek
f9941c3f68
GPU/HW: Reduce shader dependence on global constants
Step 1 of making resolution-independent shaders.
2024-09-22 21:06:05 +10:00
Stenzek
f169b892c1
GPU: Defer frame done if not running events
Prevents interruption/execution exiting if the frame was ticked over
by a MMIO access, e.g. reading GPUSTAT.
2024-09-22 21:06:05 +10:00
PugsyMAME
88bc3a2278
Fixed typo in F4 Cheat Type code (#3300)
Typo in my code, this fix will make it work properly on multiple find & replaces.
2024-09-22 21:05:44 +10:00
Stenzek
3dca598063
Log: Switch to enum class
Some checks failed
Create rolling release / windows-build (push) Waiting to run
Create rolling release / windows-arm64-build (push) Waiting to run
Create rolling release / macos-build (push) Waiting to run
Create rolling release / create-release (push) Blocked by required conditions
Create rolling release / linux-build (push) Failing after 0s
Create rolling release / linux-flatpak-build (push) Failing after 0s
Need to change the channel to a bitset too.. the string lookups are
horribly slow, and conflict when one is a prefix of another.
2024-09-21 22:26:06 +10:00
Stenzek
88381209b3
System: Fix crash when disabling runahead 2024-09-21 22:26:06 +10:00
Stenzek
1754ecf4f9
SPU: Get rid of second output stream 2024-09-21 22:26:05 +10:00
Stenzek
df17528b18
Qt: Move threaded rendering toggle to Debug tab
Frees up some space.
2024-09-21 22:26:05 +10:00
Stenzek
54e5d93165
GPU/SW: Enable SIMD path and make default 2024-09-21 22:26:05 +10:00
Stenzek
19698559c3
System: Drop IPC server
The one group using it switched to shared memory exports anyway.
2024-09-21 22:26:05 +10:00
Stenzek
ac8461a28b
System: Fix bogus SW thread CPU in OSD 2024-09-21 22:26:05 +10:00
Stenzek
e617f17294
System: Set GPU timing enable on init/destroy
It's really unrelated to the guest GPU.
2024-09-21 22:26:05 +10:00
Stenzek
e7aa0495ab
System: Not all setting changes need to interrupt 2024-09-21 22:26:05 +10:00
Stenzek
40670726b4
GPU/SW: Fix SSE4 path and add 256-bit AVX2 path 2024-09-21 22:26:05 +10:00
Stenzek
a7747c5be3
Common: Add 256-bit integer vector wrapper 2024-09-21 22:26:05 +10:00
Stenzek
d07c7e4b68
Qt: Fix 100% CPU usage while downloading files
The wonders of having fast internet, you never realize when this happens
because it completes too quickly...
2024-09-21 22:26:05 +10:00
Stenzek
5f80cb1188
GPU/HW: Fix inaccurate shader progress counter 2024-09-21 22:26:05 +10:00
Stenzek
b5df06a54a
GPU/HW: Rewrite automatic internal resolution selection
Make it aspect ratio aware, as well as updating when/if the game changes
resolution. Also include the padding area in the OSD/status resolution.
2024-09-21 22:26:05 +10:00