Connor McLaughlin
f852be74e8
Compile fix for Linux/libretro
2020-08-21 00:26:22 +10:00
Connor McLaughlin
bca609a2a6
Qt: Add option to disable per-game settings
2020-08-21 00:09:37 +10:00
Connor McLaughlin
c3ce9135bf
Fix recompiler not auto-disabling with PGXP-CPU mode
2020-08-21 00:09:37 +10:00
Connor McLaughlin
60d3fffec1
Add per-game overrides (mainly for compatibility)
2020-08-21 00:09:37 +10:00
Connor McLaughlin
0d4fe1eb71
Fix Linux build again
2020-08-20 01:21:36 +10:00
Connor McLaughlin
6a17a558bb
CPU: Linux compile fix
2020-08-20 01:05:03 +10:00
Connor McLaughlin
b17335d812
GTE: Increase z precision in PGXP mode
2020-08-20 00:49:42 +10:00
Connor McLaughlin
daa72aba10
CPU: Skip executing nop instructions
...
Makes PGXP CPU mode quicker, as well as a performance improvement to the
regular interpreter.
2020-08-20 00:49:39 +10:00
Connor McLaughlin
2e9f656546
CPU: Implement PGXP CPU Mode
...
This is *very* slow. You don't want to enable it if you don't need it.
It is also incompatible with the recompiler and will disable it if the
option is enabled.
2020-08-20 00:49:39 +10:00
Connor McLaughlin
e1c29510f1
GPU/OpenGL: Fix incorrect framebuffer clear for interlacing
2020-08-19 00:45:08 +10:00
Connor McLaughlin
c9c2c00c1a
GPU: Update GPUSTAT.13 with field
...
Doubt this'll change much..
2020-08-19 00:02:37 +10:00
Connor McLaughlin
6d75f42e12
CDROM: Update last subq even when auto-pausing
...
Fixes music looping in Fighting Force.
2020-08-18 00:13:21 +10:00
Connor McLaughlin
7c697f363e
libretro: Make single cards for playlist the default, fix disabled case
...
This bug was causing the option to act as if it was disabled anyway.
2020-08-17 11:51:47 +10:00
Connor McLaughlin
f65651823e
GPU: Simplify hsync handling
...
Fixes character lighting in Monkey Hero.
2020-08-17 01:22:03 +10:00
Connor McLaughlin
4e62b32d60
Add option to dump the contents of RAM to a file
2020-08-16 23:20:36 +10:00
Connor McLaughlin
10a46a7fd8
OSD: Add option to show display resolution
2020-08-16 00:20:11 +10:00
Connor McLaughlin
26aa627deb
GPU/HW: Include resolution in scale change message
2020-08-16 00:20:11 +10:00
Connor McLaughlin
f5fb8186c7
Switch some messages to the OSD and increase durations
2020-08-16 00:20:10 +10:00
Connor McLaughlin
e0e76b881d
System: Bump save state version
2020-08-16 00:20:10 +10:00
Connor McLaughlin
d9893bb127
System: Add option to use a single memory card for playlists
2020-08-16 00:20:10 +10:00
Connor McLaughlin
dedeee1698
System: Track playlists in save states
2020-08-16 00:20:10 +10:00
Connor McLaughlin
8fa965a1ac
GameList: Support playlist entries
2020-08-16 00:20:10 +10:00
Connor McLaughlin
d4665e8b22
GPU: Tweaks to ODE handling
...
Fixes Team Buddies and The Next Tetris.
2020-08-16 00:20:10 +10:00
Connor McLaughlin
c5db7db182
Build: Compile source as UTF-8 with MSVC
2020-08-15 00:04:38 +10:00
Connor McLaughlin
025e01ca47
CPU: Fix exceptions clobbering cop0.cause.Ip
...
Fixes Gran Turismo 2 (PAL).
2020-08-14 23:55:16 +10:00
Connor McLaughlin
e6156e2adb
GPU/ShaderGen: Move transparent compensation to bilinear function
2020-08-12 02:27:52 +10:00
Connor McLaughlin
bb344a4e1e
GPU/D3D11: Fix crash/hang when toggling bilinear setting
2020-08-12 02:27:52 +10:00
Connor McLaughlin
d1ee6c0da7
GPU/HW: Make settings update slightly safer
2020-08-12 02:27:52 +10:00
Connor McLaughlin
17a1719450
GPU/HW: Fix incorrect texel offset when upscaling
...
Fixes incorrectly coloured triangles in Tomb Raider.
2020-08-12 02:27:52 +10:00
Connor McLaughlin
d733553425
GPU/HW: Don't display a deleted texture in D3D/OpenGL when updating settings
2020-08-11 04:03:11 +10:00
Connor McLaughlin
2130d3b004
GPU/Vulkan: Don't add UV limits as attribute when unused
2020-08-11 03:58:59 +10:00
Connor McLaughlin
fba2488bc5
GPU/D3D11: Don't add UV limits to input layout when unused
2020-08-11 03:58:59 +10:00
Connor McLaughlin
bf9ac64183
GPU/D3D11: Don't leak input layout objects
2020-08-11 03:48:24 +10:00
Connor McLaughlin
3a020ef87e
HostInterface; Fix crash on shutdown if boot fails
2020-08-11 03:01:08 +10:00
Connor McLaughlin
5c6e92cdfc
GPU/HW: Disable coordinate clamping when unnecessary
2020-08-10 23:28:37 +10:00
Connor McLaughlin
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
Connor McLaughlin
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
Connor McLaughlin
223074b78f
SPU: Fix activating transfer event with a downcount of 0
...
Happened when loading states.
2020-08-09 04:29:43 +10:00
Connor McLaughlin
70767dc6bf
CPU/Recompiler/AArch64: Use cmn for negative constant comparisons
2020-08-08 23:44:13 +10:00
Connor McLaughlin
901ca71fdc
CPU/Recompiler: Add temporary inhibiting of register allocation
2020-08-08 23:44:13 +10:00
Connor McLaughlin
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
Connor McLaughlin
b1377fe0d9
CPU/Recompiler: Add a fast block lookup array
...
Up to 15% perf improvement.
2020-08-08 23:06:28 +10:00
Connor McLaughlin
f6e88353eb
CPU/Recompiler: Make generated code invariant to virtual PC
2020-08-08 23:06:28 +10:00
Connor McLaughlin
8d4216068a
CPU/Recompiler: Implement div/divu
2020-08-08 23:06:27 +10:00
Connor McLaughlin
a2f271c505
CPU: Simplify some exception checks in cop0-3
2020-08-07 17:05:01 +10:00
Connor McLaughlin
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
Connor McLaughlin
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
Connor McLaughlin
6e586311e8
Common: Add title, modal information to ProgressCallback
2020-08-06 19:32:53 +10:00
Connor McLaughlin
466e4099d4
CDROM: Fix handling of logical seeks to audio sectors
...
Fixes Wizard's Harmony.
2020-08-05 03:14:04 +10:00
Connor McLaughlin
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
Connor McLaughlin
0b0bc32afb
GPU/HW: Use texture samplers rather than fetching for batches
...
Enables wrap-around.
2020-08-04 14:40:00 +10:00
Connor McLaughlin
0fc301d654
GPU/HW: Use wrap texture address modes
2020-08-04 14:40:00 +10:00
Connor McLaughlin
231c0b5ff6
GPU/SW: Wrap texture coordinates when sampling
2020-08-04 14:40:00 +10:00
Connor McLaughlin
818892cb1b
GPU: Claer interlaced field buffer when enabling
...
Fixes old frames getting briefly displayed.
2020-08-03 03:26:13 +10:00
Connor McLaughlin
23df239469
GPU/HW: Debug build compile fix
2020-08-03 03:26:00 +10:00
Connor McLaughlin
f712c42c21
GPU/HW: Add more details to debug window
2020-08-03 03:06:23 +10:00
Connor McLaughlin
9b7512f7b8
GPU/HW: Implement automatic resolution scale from window size
2020-08-03 03:06:03 +10:00
Connor McLaughlin
be6ae8b70b
GPU/Vulkan: Work around Mali crash with readbacks
2020-08-03 02:03:33 +10:00
Connor McLaughlin
b527118c0a
GPU/HW: Fix macOS compile
2020-08-02 18:04:00 +10:00
Connor McLaughlin
92975b2e81
GPU/HW: Tiny performance optimization in polygon loading
2020-08-02 17:32:43 +10:00
Connor McLaughlin
96ba9198ef
GPU/HW: Expand lines into triangles before rendering
...
Fewer batches, consistent upscaling behavior.
2020-08-02 17:17:11 +10:00
Connor McLaughlin
568cfa1865
GPU/OpenGL: Fix possible error on shutdown
2020-08-02 17:16:51 +10:00
Connor McLaughlin
4d9c2c1b6c
GPU: Ensure pending time is used in events
...
Fixes long delay in Syphon Filter.
2020-08-02 14:09:22 +10:00
Connor McLaughlin
bd0c403672
GPU/HW: Fix mask bit test regression
...
Fixes white boxes in Silent Hill. Again.
2020-08-02 13:04:25 +10:00
Connor McLaughlin
0c1b637549
PGXP: Add initial implementation
2020-08-02 00:25:07 +10:00
Connor McLaughlin
e9882a10aa
System: Move restore/reset graphics API state to System
...
Fixes frame stepping.
2020-08-01 16:45:07 +10:00
Connor McLaughlin
2eb9384275
Replace more instances of fopen() with FileSystem::OpenFile()
2020-08-01 14:00:22 +10:00
Connor McLaughlin
2885d2e547
CPU/CodeCache: Hopefully fix 32-bit compile errors
2020-08-01 03:53:53 +10:00
Connor McLaughlin
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
Connor McLaughlin
1f9fc6ab74
BIOS: Fix Linux build
2020-07-31 16:34:25 +10:00
Connor McLaughlin
8802177e25
BIOS: Add more revision filenames/hashes
2020-07-31 16:28:15 +10:00
Connor McLaughlin
66e79091d3
BIOS: Use fopen() wrapper from FileSystem
2020-07-31 16:04:10 +10:00
Connor McLaughlin
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
Connor McLaughlin
5a34a15bf2
CDROM: Include FIFO size in debug window
2020-07-30 01:03:59 +10:00
Connor McLaughlin
dd48a1f585
System: Handle large event timing overshoots better
...
Usually a result of DMA cycle stealing. Instead of adding all time, add
min(all_events.downcount) at a time. 1.5% performance improvement, but
fixes desyncs between the SPU and CD-ROM.
2020-07-30 00:47:19 +10:00
Connor McLaughlin
cdab84e210
GPU/Vulkan: Display shader compiling message
2020-07-26 23:59:06 +10:00
Connor McLaughlin
7c54129409
Merge pull request #665 from ggrtk/analog-controller
...
AnalogController: Expose axis scale setting to frontend
2020-07-26 23:57:40 +10:00
Connor McLaughlin
caf9943418
GPU/Vulkan: Possible workaround for Adreno GS shader compiler bug
2020-07-25 15:17:29 +10:00
Albert Liu
79576ca956
AnalogController: Expose axis scale setting to frontend
2020-07-24 19:18:41 -07:00
Connor McLaughlin
d711baaa31
GPU/HW: Fix lines being one pixel too short
...
Fixes lines in screen wipe effect in Vagrant Story.
2020-07-25 02:37:01 +10:00
Connor McLaughlin
104b80f111
HostInterface: Move 'System shut down' message to SDL
...
Only frontend where it makes sense anyway.
2020-07-23 02:45:20 +10:00
Connor McLaughlin
8e1c0a4fe4
System: Support loading m3u playlists
2020-07-23 02:36:05 +10:00
Connor McLaughlin
d46c104d1b
System: Preload CD images to RAM when switching/loading state
2020-07-23 02:35:23 +10:00
Connor McLaughlin
08a8434140
GPU/HW: Fix off-by-one in wrap-around VRAM writes
2020-07-23 02:35:03 +10:00
Connor McLaughlin
10cd00c8dd
CDROM: Play audio when reading and mode.0 is set
2020-07-22 15:23:13 +10:00
Connor McLaughlin
e9db1d0f6f
GPU/OpenGL: Use base class helper for filling VRAM copy uniforms
2020-07-22 14:47:09 +10:00
Connor McLaughlin
2dc62ab987
GPU/HW: Fix VRAM updates when Y >= 512
2020-07-22 14:46:52 +10:00
jdgleaver
49f9ddfa0e
Finish adding support for PSX BIOS included in PSP firmware 6.60
2020-07-21 17:06:38 +01:00
jdgleaver
7478e75ed6
(libretro) Fix 'Fast Boot' option
2020-07-21 16:32:36 +01:00
Connor McLaughlin
f28ef01d24
CDROM: Move audio FIFO to CDROM class and skip sectors when unempty
...
Fixes cutscene audio in Nickelodeon Rugrats - Search for Reptar.
2020-07-22 00:05:52 +10:00
Connor McLaughlin
f9bbbbbaec
Settings: Make auto-detect the default console region
2020-07-22 00:03:31 +10:00
Connor McLaughlin
9496c992f7
System: Add an option to preload CD image to RAM
2020-07-22 00:03:22 +10:00
Connor McLaughlin
8b91bf5e57
Core: Add loading screen based progress callbacks
2020-07-22 00:03:01 +10:00
Connor McLaughlin
93528db388
System: Use existing CD media when loading state where possible
2020-07-22 00:02:37 +10:00
Connor McLaughlin
75a8a7fcca
Settings: Make per-game memory cards for slot 1 the default
2020-07-21 20:15:52 +10:00
Connor McLaughlin
68d98af497
Qt: Remove usage of QString where possible for settings
2020-07-21 20:10:06 +10:00
Connor McLaughlin
bddd098a66
Merge branch 'master' into qt-inisettings
2020-07-21 13:28:18 +10:00
Connor McLaughlin
5c1c467e38
GTE: Add widescreen hack
2020-07-18 00:28:37 +10:00
Connor McLaughlin
401ecfa872
Bus: Make memory map public
2020-07-18 00:28:37 +10:00
Albert Liu
9b2740b395
HostInterface: Save tweak/hack defaults to settings file
...
Fixes tweak/hack defaults not displaying correctly in Qt frontend.
2020-07-16 20:35:18 -07:00