Commit graph

1295 commits

Author SHA1 Message Date
Connor McLaughlin 07dbc5a80d GPU/HW: Draw opaque before semitransparent for reverse subtract
Fixes missing shadows in Suikoden II.
2020-11-22 13:46:20 +10:00
Connor McLaughlin e06f85a328 GPU: Fix VRAM palette changes not being detected in hw renderer
Fixes wall texture animation in Mega Man Legends.
2020-11-22 13:22:29 +10:00
Connor McLaughlin b49067d165 Build: Fix Android armv8 performance regression 2020-11-22 02:33:02 +10:00
Connor McLaughlin 7e7ec86f91 GPU/Software: Remove a couple of unused variables 2020-11-22 01:24:26 +10:00
Connor McLaughlin a6529a9537 Android: Enable armeabi-v7a builds 2020-11-21 23:47:12 +10:00
Connor McLaughlin 131dc923ed Build: Fix CMake build 2020-11-21 18:59:03 +10:00
Connor McLaughlin b554c133ea GPU/OpenGL: Add a version check and display message when unsupported 2020-11-21 18:39:04 +10:00
Connor McLaughlin 2595e31575 GPU: Split software to frontend/backend 2020-11-21 18:39:04 +10:00
Connor McLaughlin 03d4f80883 GPU: Move enums/types into separate file 2020-11-21 18:39:04 +10:00
Connor McLaughlin d3d881aa6b GPU/Software: Reduce number of copies by one, enable 16-bit scanout 2020-11-21 18:39:04 +10:00
Connor McLaughlin 9f3e8bed86 CPU: Add AArch32/armv7 recompiler 2020-11-21 18:39:04 +10:00
Connor McLaughlin 1128836826 CPU/Recompiler: Add GetValueInHostOrScratchRegister helper 2020-11-21 18:39:04 +10:00
Connor McLaughlin cdd0a5525a CPU/Recompiler: Reduce register pressure of lwl/lwr/swl/swr 2020-11-21 18:39:04 +10:00
Connor McLaughlin 6df5824616 CPU/Recompiler: Support targets where shifts aren't implicitly masked 2020-11-21 18:39:04 +10:00
Connor McLaughlin 053d7fdc4b CPU/Recompiler: Inhibit allocation in mtc0/rfe branches 2020-11-21 18:39:04 +10:00
Connor McLaughlin 028a5c60d7 Bus: Fix failed safe instruction reads raising guest exceptions 2020-11-21 18:39:03 +10:00
Connor McLaughlin 28c88cd69f Build: Fix Win32 compilation of core 2020-11-21 18:39:03 +10:00
Connor McLaughlin a03bca2f72 CPU: Make fastmem a compile-time feature (support 32-bit targets) 2020-11-21 18:39:03 +10:00
Connor McLaughlin 125d104df4 Pad: Fix controller state not being ignored in state load 2020-11-21 18:39:03 +10:00
Connor McLaughlin 53f81d067a CPU/CodeCache: Remove warning about executing uncompiled blocks 2020-11-21 18:39:03 +10:00
Connor McLaughlin 3185c5df0f
Merge pull request #1078 from CookiePLMonster/sdl-joystick-support
Add SDL_Joystick support
2020-11-21 18:37:20 +10:00
Connor McLaughlin e4d2b7331b CommonHostInterface: Add resize window to scale functions 2020-11-19 00:40:02 +10:00
Connor McLaughlin 0726ad1275 GPU: Flush partial VRAM writes to backend VRAM 2020-11-19 00:40:02 +10:00
Connor McLaughlin 9e11e5c354 CPU: Make zero register printing consistent with the others 2020-11-19 00:40:02 +10:00
Connor McLaughlin 042bdd9c0c CPU/CodeCache: Fetch second delay slot from first branch for double branches 2020-11-19 00:40:02 +10:00
Connor McLaughlin 3890a539ee CDROM: Clear data FIFO on reset
Fixes Snatcher booting.
2020-11-19 00:40:02 +10:00
Silent 2880b71b48
Support for SDL Joysticks
This enables use of non-controller peripherals,
such as DirectInput steering wheels or flight sticks
2020-11-15 16:12:39 +01:00
Connor McLaughlin 473cfffa0c GPU: Only accept DMA writes when FIFO is empty or command incomplete
Fixes a bunch of games, including Red Asphalt, Little Princess, Vampire
Hunter D main menu when combined with tight DMA sync.
2020-11-16 01:00:55 +10:00
Connor McLaughlin df12f08ac3 DMA: Add additional tick penalty to DMA chains for page change 2020-11-16 01:00:55 +10:00
Albert Liu 7ed0477a29 AnalogController: Save buttons and legacy rumble to state 2020-11-14 07:46:26 -08:00
Albert Liu 81a638cabb Pad: Fix loading controllers from save states 2020-11-14 07:46:26 -08:00
Albert Liu f9d2643d98 Controller: Add Analog Joystick support 2020-11-14 07:46:26 -08:00
Connor McLaughlin 13d9702000 HostDisplay: Log errno on file open failure 2020-11-15 00:16:00 +10:00
Connor McLaughlin 65be904d15 SPU: Only log warning about FIFO lost on writes 2020-11-14 23:20:28 +10:00
Connor McLaughlin 077764ce18 CPU/Interpreter: Handle move instructions in PGXP memory mode 2020-11-14 23:20:28 +10:00
Connor McLaughlin e1579584ef CPU/Recompiler: Fix PGXP values getting corrupted if cached in caller-saved reg 2020-11-14 23:20:28 +10:00
Connor McLaughlin 3f937a2a39 SPU: Port reverb algorithm changes from Mednafen 2020-11-14 23:20:28 +10:00
Albert Liu 3eeab81063 PlayStationMouse: Fix returning incorrect controller type 2020-11-13 01:42:31 -08:00
Albert Liu d87ab23fec ControllerInterface: Move axis scaling into AnalogController class 2020-11-11 23:55:23 -08:00
Connor McLaughlin ca14e53c4a GTE: Make widescreen hack use display aspect ratio 2020-11-11 01:02:40 +10:00
Connor McLaughlin 2d3fd621bf Settings: Add 19:9 aspect ratio 2020-11-11 01:02:40 +10:00
Connor McLaughlin 6cd991bc57 BIOS: Turn display on with fast boot
Fixes black screen in SaGa Frontier with fast boot disabled.
2020-11-11 01:02:40 +10:00
Connor McLaughlin d468814a6d GPU: Disable texture filters when dual-source blend is unsupported 2020-11-11 01:02:40 +10:00
Connor McLaughlin 92a4551bb2 GPU/OpenGL: Support GL_EXT_blend_func_extended for dual-source blend 2020-11-11 01:02:40 +10:00
Albert Liu d0443e3165 BIOS: Add BIOS image info for PS1 on PS3 2020-11-09 09:02:00 -08:00
Albert Liu c698519d44 Bus: Log writes to additional POST registers 2020-11-09 09:02:00 -08:00
Albert Liu f3522b7b70 Bus: Stub out EXP3 and unknown EXP accesses 2020-11-09 09:02:00 -08:00
Connor McLaughlin b6ec587e5b CheatList: Allow passing in strings instead of filenames 2020-11-08 00:22:35 +10:00
Connor McLaughlin 6828082f8b CheatList: Add merge list function for importing 2020-11-08 00:22:35 +10:00
Connor McLaughlin 576914cd2c CPU/CodeCache: Backpatch code writes after they exceed 10 faults
Small performance improvement in Driver 2.
2020-11-08 00:22:35 +10:00
Albert Liu 6d4b812b7c AnalogController: Implement legacy rumble method
Fixes missing vibration in Tobal 2, Bushido Blade, etc.
2020-11-04 22:45:58 -08:00
Connor McLaughlin 2b66492ed8 HostInterface: Add proper turbo speed setting 2020-11-03 22:59:26 +10:00
Connor McLaughlin 2c8a4ff154 HostDisplay: Add an option to decouple display fps from emulator fps
Makes Android so much faster...
2020-11-03 16:17:45 +10:00
Connor McLaughlin ae1e4b1b8f GPU: Add chroma smoothing for 24-bit display enhancement 2020-11-03 16:17:45 +10:00
Connor McLaughlin d102b2facd Qt: Fix selecting fullscreen mode breaking other backend borderless 2020-11-03 16:17:45 +10:00
Connor McLaughlin 863f84e3f6 System: Fix frame limiter on fast systems (when frametime <1ms) 2020-11-03 16:17:45 +10:00
Connor McLaughlin 2b2a868fef HostInterface: Fix incorrect translation context in CPU mode switch string 2020-11-02 00:56:05 +10:00
Connor McLaughlin 414bc30f24 HostDisplay: Implement exclusive fullscreen for D3D11 renderer 2020-11-02 00:56:05 +10:00
Connor McLaughlin 858f39827d GPU/HW: Add 'Disable Edge Blending' variants of texture filters 2020-11-02 00:56:05 +10:00
Connor McLaughlin 6ddf6784ab GPU/OpenGL: Fix edge blending when texture filtering 2020-11-02 00:56:05 +10:00
Connor McLaughlin 79aa1cece7
Merge pull request #1031 from ggrtk/negcon-deadzone
NeGcon: Add steering axis deadzone setting
2020-11-02 00:52:27 +10:00
Albert Liu 8b5fde8e6f BIOS: Add SCPH-1000R image infos 2020-11-01 04:21:17 -08:00
Albert Liu 3b51b993f3 NeGcon: Add steering axis deadzone setting 2020-11-01 04:17:18 -08:00
Connor McLaughlin b5b1c725c1 GPU: Fix MSAA in OpenGL ES 2020-10-31 15:24:25 +10:00
Connor McLaughlin f2aa343cae GPU/HW: Fix SSAA being enabled when it's not supported 2020-10-31 15:12:12 +10:00
Connor McLaughlin b3c5c0f852 GPU/OpenGL: Eliminate some redundant per-draw state calls 2020-10-31 14:27:58 +10:00
Connor McLaughlin 2eaebd8921 GPU: Implement support for multisample antialiasing 2020-10-31 14:27:58 +10:00
Connor McLaughlin 61a4960380 GPU: Skip zero-width or height fills 2020-10-31 14:27:57 +10:00
Connor McLaughlin 2e53bf914e CPU/CodeCache: Fix crash when jumping to invalid block in recompiler 2020-10-31 14:27:57 +10:00
Albert Liu df1c5c0f45 HostInterface: Fix PAL BIOS path not being read from settings 2020-10-29 14:26:07 -07:00
Connor McLaughlin 7078f73ecf AnalogController: Fix analog-as-digital applying in analog mode 2020-10-30 02:10:49 +10:00
Connor McLaughlin 2fb67ee7db AnalogController: Add option to use analog stick as dpad in digital mode 2020-10-30 00:44:40 +10:00
Connor McLaughlin be63d893cd CPU: Use partial icache fills for non-line-aligned addresses 2020-10-30 00:44:40 +10:00
Connor McLaughlin 3b3ad0c1cb Bus: Fix icache fills from BIOS failing 2020-10-30 00:44:39 +10:00
Connor McLaughlin f14270fc4b Bus: Ignore reads to nocash EXP2 area 2020-10-30 00:44:39 +10:00
Connor McLaughlin b2d224abfc System: Set BIOS before resetting
Fixes incorrect first instruction executing in interpreter mode.
2020-10-30 00:44:39 +10:00
Connor McLaughlin e081ee4b8e CDROM: Return error to guest instead of panicing for unknown commands 2020-10-30 00:44:39 +10:00
Connor McLaughlin a6947fbc70 CDROM: Implement fast forward/rewind 2020-10-30 00:44:39 +10:00
Connor McLaughlin 29467d40c8 DMA: Add debug window 2020-10-30 00:44:39 +10:00
Connor McLaughlin 0552da6be2 CDROM: Stub out VideoCD command 2020-10-29 01:44:44 +10:00
Connor McLaughlin 34a808c258 SPU: Zero previous block ADPCM samples on key on
Fixes clicking in background in Breath of Fire III.
2020-10-29 01:30:40 +10:00
Connor McLaughlin a8171405b1 CPU/CodeCache: Fix incorrect invalidation on non-page-crossing DMA writes
Fixes recompiler mode for Breath of Fire III, probably others.
2020-10-29 01:30:00 +10:00
Connor McLaughlin 451c48406d libretro: Fix runtime aspect ratio changes not applying 2020-10-28 17:32:59 +10:00
Connor McLaughlin 392c7af738 Bus: Fix assertion failing if booting fails 2020-10-28 17:31:25 +10:00
Connor McLaughlin be3dd3e06f HostInterface: Fix a possible crash when renderer recreation fails 2020-10-27 11:57:41 +10:00
Connor McLaughlin 7f795d25aa CPU/Recompiler: Don't try fastmem for RAM mirrors 2020-10-26 22:07:52 +10:00
Connor McLaughlin 875b0b91f1 CPU/Recompiler/AArch64: Use scratch for add CPU struct field 2020-10-26 22:02:35 +10:00
Connor McLaughlin 76428887b8 CPU/Recompiler: Fix typo in UninhibitAllocation function name 2020-10-26 22:00:10 +10:00
Connor McLaughlin cbc7e3d64a CPU/Recompiler: Add register allocation safety check to fastmem 2020-10-26 21:59:29 +10:00
Connor McLaughlin 1b618b8c46 SPU: Don't block ADPCM loop flag when setting/keying on in same slice
Fixes repeated sounds in Re-Loaded: The Hardcore Sequel.
2020-10-24 20:27:06 +10:00
Connor McLaughlin 98987643b3 SPU: Always reset address on loop end regardless of repeat
Fixes menu music in Madden NFL 99.
2020-10-24 19:42:23 +10:00
Connor McLaughlin a1453ee8a5 GPU: Skip full CRTC update on GP1(05h) 2020-10-23 19:37:56 +10:00
Connor McLaughlin e5a0c92336
Merge pull request #999 from ggrtk/gpu-crtc
GPU: CRTC update
2020-10-23 19:36:45 +10:00
Albert Liu 6bc7cf29cc GPU: Synchronize CRTC on GP1(05h) command
Fixes text flashing briefly after startup PlayStation logo in King's
Field (USA).
2020-10-22 21:41:42 -07:00
Albert Liu f69889264d Core: Make some additional OSD messages translatable 2020-10-22 02:07:48 -07:00
Albert Liu ca7db7a2d2 GPU: Update CRTC debug window reporting 2020-10-21 23:17:39 -07:00
Albert Liu 1a0b1a3149 GPU: Use accurate VRAM display width rounding
Modified version of Nocash algorithm, confirmed with hardware test.
Relies on proper horizontal display range rounding for correct results.
2020-10-21 23:17:39 -07:00
Albert Liu bbaebfd4c9 GPU: Round horizontal display range values down to clockdiv multiple
GP1(06h) X1 and X2 are persistent across clockdiv changes, but the GPU
actively uses rounded values for display output. This behavior is
modeled by storing the rounded values in horizontal_display_start and
horizontal_display_end. Verified with hardware test.
2020-10-21 23:17:39 -07:00
Connor McLaughlin 2b2e2f7854 Cheats: Invalidate code pages on memory writes 2020-10-22 11:09:11 +10:00
Connor McLaughlin 3fc9f264d7 CPUCodeCache: Fix extra page being invalidated on writing to edge 2020-10-22 11:08:57 +10:00