025e01ca47
CPU: Fix exceptions clobbering cop0.cause.Ip
...
Fixes Gran Turismo 2 (PAL).
2020-08-14 23:55:16 +10:00
e6156e2adb
GPU/ShaderGen: Move transparent compensation to bilinear function
2020-08-12 02:27:52 +10:00
bb344a4e1e
GPU/D3D11: Fix crash/hang when toggling bilinear setting
2020-08-12 02:27:52 +10:00
d1ee6c0da7
GPU/HW: Make settings update slightly safer
2020-08-12 02:27:52 +10:00
17a1719450
GPU/HW: Fix incorrect texel offset when upscaling
...
Fixes incorrectly coloured triangles in Tomb Raider.
2020-08-12 02:27:52 +10:00
d733553425
GPU/HW: Don't display a deleted texture in D3D/OpenGL when updating settings
2020-08-11 04:03:11 +10:00
2130d3b004
GPU/Vulkan: Don't add UV limits as attribute when unused
2020-08-11 03:58:59 +10:00
fba2488bc5
GPU/D3D11: Don't add UV limits to input layout when unused
2020-08-11 03:58:59 +10:00
bf9ac64183
GPU/D3D11: Don't leak input layout objects
2020-08-11 03:48:24 +10:00
3a020ef87e
HostInterface; Fix crash on shutdown if boot fails
2020-08-11 03:01:08 +10:00
5c6e92cdfc
GPU/HW: Disable coordinate clamping when unnecessary
2020-08-10 23:28:37 +10:00
b95ce993e0
GPU/HW: Clamp interpolated UVs to polygon limits
...
Fixes texture filtering and PGXP issues in some games.
2020-08-10 23:28:37 +10:00
5b9db71b87
CPU/Recompiler: Fix mid-block software interrupts not updating pc
...
Fixes Need for Speed: High Stakes hanging at boot.
2020-08-09 04:32:53 +10:00
223074b78f
SPU: Fix activating transfer event with a downcount of 0
...
Happened when loading states.
2020-08-09 04:29:43 +10:00
70767dc6bf
CPU/Recompiler/AArch64: Use cmn for negative constant comparisons
2020-08-08 23:44:13 +10:00
901ca71fdc
CPU/Recompiler: Add temporary inhibiting of register allocation
2020-08-08 23:44:13 +10:00
1d5f810a4b
CPU/Recompiler: Disable memory access exceptions by default
...
This means it'll no longer pass amidog's CPU test in the default config.
But no games rely on this. You can enable it in advanced options if you
want to pass the CPU test.
2020-08-08 23:44:13 +10:00
b1377fe0d9
CPU/Recompiler: Add a fast block lookup array
...
Up to 15% perf improvement.
2020-08-08 23:06:28 +10:00
f6e88353eb
CPU/Recompiler: Make generated code invariant to virtual PC
2020-08-08 23:06:28 +10:00
8d4216068a
CPU/Recompiler: Implement div/divu
2020-08-08 23:06:27 +10:00
a2f271c505
CPU: Simplify some exception checks in cop0-3
2020-08-07 17:05:01 +10:00
e5c46a54b7
System: Restore/reset state on recreating GPU/updating settings
...
Fixes display corruption on RetroArch when switching renderers.
2020-08-06 23:20:52 +10:00
359234080a
D3D11: Set GS to null when restoring state
...
Fixes the D3D11 renderer being broken on RetroArch due to it leaving a
geometry shader bound.
2020-08-06 23:19:19 +10:00
6e586311e8
Common: Add title, modal information to ProgressCallback
2020-08-06 19:32:53 +10:00
466e4099d4
CDROM: Fix handling of logical seeks to audio sectors
...
Fixes Wizard's Harmony.
2020-08-05 03:14:04 +10:00
dd9705ef31
GPU/HW: Fix last row of oversized writes not applying
...
Combined with the wrap changes, fixes Namco Museum motherboard scene.
2020-08-04 14:40:00 +10:00
0b0bc32afb
GPU/HW: Use texture samplers rather than fetching for batches
...
Enables wrap-around.
2020-08-04 14:40:00 +10:00
0fc301d654
GPU/HW: Use wrap texture address modes
2020-08-04 14:40:00 +10:00
231c0b5ff6
GPU/SW: Wrap texture coordinates when sampling
2020-08-04 14:40:00 +10:00
818892cb1b
GPU: Claer interlaced field buffer when enabling
...
Fixes old frames getting briefly displayed.
2020-08-03 03:26:13 +10:00
23df239469
GPU/HW: Debug build compile fix
2020-08-03 03:26:00 +10:00
f712c42c21
GPU/HW: Add more details to debug window
2020-08-03 03:06:23 +10:00
9b7512f7b8
GPU/HW: Implement automatic resolution scale from window size
2020-08-03 03:06:03 +10:00
be6ae8b70b
GPU/Vulkan: Work around Mali crash with readbacks
2020-08-03 02:03:33 +10:00
b527118c0a
GPU/HW: Fix macOS compile
2020-08-02 18:04:00 +10:00
92975b2e81
GPU/HW: Tiny performance optimization in polygon loading
2020-08-02 17:32:43 +10:00
96ba9198ef
GPU/HW: Expand lines into triangles before rendering
...
Fewer batches, consistent upscaling behavior.
2020-08-02 17:17:11 +10:00
568cfa1865
GPU/OpenGL: Fix possible error on shutdown
2020-08-02 17:16:51 +10:00
4d9c2c1b6c
GPU: Ensure pending time is used in events
...
Fixes long delay in Syphon Filter.
2020-08-02 14:09:22 +10:00
bd0c403672
GPU/HW: Fix mask bit test regression
...
Fixes white boxes in Silent Hill. Again.
2020-08-02 13:04:25 +10:00
0c1b637549
PGXP: Add initial implementation
2020-08-02 00:25:07 +10:00
e9882a10aa
System: Move restore/reset graphics API state to System
...
Fixes frame stepping.
2020-08-01 16:45:07 +10:00
2eb9384275
Replace more instances of fopen() with FileSystem::OpenFile()
2020-08-01 14:00:22 +10:00
2885d2e547
CPU/CodeCache: Hopefully fix 32-bit compile errors
2020-08-01 03:53:53 +10:00
b6f871d2b9
JIT optimizations and refactoring ( #675 )
...
* CPU/Recompiler: Use rel32 call where possible for no-args
* JitCodeBuffer: Support using preallocated buffer
* CPU/Recompiler/AArch64: Use bl instead of blr for short branches
* CPU/CodeCache: Allocate recompiler buffer in program space
This means we don't need 64-bit moves for every call out of the
recompiler.
* GTE: Don't store as u16 and load as u32
* CPU/Recompiler: Add methods to emit global load/stores
* GTE: Convert class to namespace
* CPU/Recompiler: Call GTE functions directly
* Settings: Turn into a global variable
* GPU: Replace local pointers with global
* InterruptController: Turn into a global pointer
* System: Replace local pointers with global
* Timers: Turn into a global instance
* DMA: Turn into a global instance
* SPU: Turn into a global instance
* CDROM: Turn into a global instance
* MDEC: Turn into a global instance
* Pad: Turn into a global instance
* SIO: Turn into a global instance
* CDROM: Move audio FIFO to the heap
* CPU/Recompiler: Drop ASMFunctions
No longer needed since we have code in the same 4GB window.
* CPUCodeCache: Turn class into namespace
* Bus: Local pointer -> global pointers
* CPU: Turn class into namespace
* Bus: Turn into namespace
* GTE: Store registers in CPU state struct
Allows relative addressing on ARM.
* CPU/Recompiler: Align code storage to page size
* CPU/Recompiler: Fix relative branches on A64
* HostInterface: Local references to global
* System: Turn into a namespace, move events out
* Add guard pages
* Android: Fix build
2020-07-31 17:09:18 +10:00
1f9fc6ab74
BIOS: Fix Linux build
2020-07-31 16:34:25 +10:00
8802177e25
BIOS: Add more revision filenames/hashes
2020-07-31 16:28:15 +10:00
66e79091d3
BIOS: Use fopen() wrapper from FileSystem
2020-07-31 16:04:10 +10:00
5634e821c5
CDROM: Reset audio decoder state immediately after pause or seek
...
Fixes stuttering dialogue in Dino Crisis (control room at beginning of
game).
2020-07-30 01:55:37 +10:00
5a34a15bf2
CDROM: Include FIFO size in debug window
2020-07-30 01:03:59 +10:00