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
Albert Liu
9d6325f828
QtHostInterface: Fix compiler warning
2020-07-16 20:32:42 -07:00
Connor McLaughlin
71cef1de3f
GL/ContextGLX: Add additional logging
2020-07-15 15:50:30 +10:00
Connor McLaughlin
dd9a4191e6
AnalogController: Fix swapped rumble test
...
Fixes weak rumble test in MGS.
I should write some hardware tests for this at some point, particularly
for the large motor, which should have a variable intensity.
2020-07-15 02:38:16 +10:00
Connor McLaughlin
7ba1bed37b
Settings: Leave interlacing on by default
...
Too many games break without it.
2020-07-14 01:27:57 +10:00
Connor McLaughlin
48be73be5a
SDL: Fix crash when changing debug settings while running
2020-07-14 01:26:43 +10:00
Connor McLaughlin
6ed67468d2
CDROM: Prevent games which spam Reset from getting wedged
2020-07-14 01:26:37 +10:00
Albert Liu
91f51c2833
Settings: Add 1:1 pixel aspect ratio
2020-07-12 17:09:15 -07:00
Albert Liu
9e316e4502
Settings: Add 8:7 display aspect ratio
...
Requested by users for some 256-width 240p titles (effectively 1:1 PAR
at 256x224 when overscan cropping is turned on).
2020-07-12 17:08:28 -07:00
Connor McLaughlin
1ed57a9fdf
Qt: Hook up mouse events to ImGui
2020-07-13 02:39:59 +10:00
Connor McLaughlin
dbce58e07d
CDROM: Display paused position in debug window
2020-07-13 02:23:56 +10:00
Connor McLaughlin
35093818c6
libretro: Add resolutions up to 16x
2020-07-12 23:31:21 +10:00
Albert Liu
c44e74db80
GPU: Compute VRAM display width from GP1(06h) values
...
Fixes overpadding in some specific cases, e.g. when cropping overscan in
Captain Commando.
2020-07-11 10:57:23 -07:00
Connor McLaughlin
8febf5df04
D3D11HostDisplay: Fix reversed feature level order
2020-07-12 00:44:13 +10:00
Connor McLaughlin
113b0f57d6
libretro: Fix Vulkan context creation on Mali
...
We don't use the loader functions here anyway, so no need to try to
retrieve them.
2020-07-12 00:41:53 +10:00
Connor McLaughlin
3ad780b52e
libretro: Fix logging breaking when retro_set_environment called twice
2020-07-12 00:41:09 +10:00
Connor McLaughlin
282f166e7a
Vulkan/StagingBuffer: Don't try to invalidate unmapped buffer
...
Fixes crash on Mali.
2020-07-12 00:40:05 +10:00
Connor McLaughlin
fb6538da35
Vulkan/Context: Allocate SSBO descriptors in global set
...
Fixes vram write buffer creation failing on Mali.
2020-07-12 00:38:27 +10:00
Connor McLaughlin
50a25b63b1
CDROM: Track seek position when resetting
...
Fixes Blasto hanging after starting game.
2020-07-11 20:35:36 +10:00
Connor McLaughlin
d1a2ebd8f3
GPU/HW: Eliminate CPU round trip on oversized VRAM writes
2020-07-11 20:35:33 +10:00
Connor McLaughlin
86c6be41b3
SDL: Wayland support
2020-07-11 03:28:57 +10:00
Connor McLaughlin
4ce5f7e802
GLContext: Wayland support
2020-07-11 03:28:25 +10:00
Connor McLaughlin
eab70546c8
CDROMAsyncReader: Only log warning when waiting time exceeds 1ms
2020-07-11 03:21:05 +10:00
Connor McLaughlin
c5e8327e7a
CDROM: Seek to LBA 0 when resetting
...
Fixes Love & Destroy.
2020-07-10 20:55:15 +10:00
Connor McLaughlin
71157b171e
CDROM: Use partial seek position when re-seeking
2020-07-10 20:55:00 +10:00
Connor McLaughlin
4d1880091e
GPU: Ignore display start bit 0 instead of reducing width
2020-07-10 20:31:58 +10:00
Connor McLaughlin
93abf8e53d
GPU: Drop least significant bit of display start address
...
Fixes extra column in some games, e.g. Nascar Thunder 2004,
U.S. Navy Fighters.
2020-07-10 20:23:27 +10:00
Connor McLaughlin
604ff20b0d
AnalogController: Treat rumble as binary on/off
...
Fixes vibration in Final Fantasy 8.
2020-07-10 20:15:46 +10:00
Connor McLaughlin
d6ec1fd84e
Build fix
2020-07-10 14:46:44 +10:00
Connor McLaughlin
c01854e9d1
Define LIBRETRO macro when building core, skip swap chain
2020-07-10 14:02:45 +10:00
Connor McLaughlin
a5fe740e30
Fix a bunch of compiler warnings
2020-07-09 13:30:16 +10:00
Connor McLaughlin
60a739e305
D3D11HostDisplay: Add __has_include check for dxgi1_5.h
2020-07-09 13:24:56 +10:00
Connor McLaughlin
9685be9064
D3D11/ShaderCache: Remove feature level 12 enum usage
...
It's not used anyway.
2020-07-09 13:00:44 +10:00
Connor McLaughlin
5984f977ca
D3D11HostDisplay: Ensure we only get feature level 10-11
2020-07-09 13:00:31 +10:00
Connor McLaughlin
46dfccef81
Common/DimensionalArray: Don't break clang
2020-07-08 15:40:08 +10:00
Connor McLaughlin
532c2a0c15
cmake: Drop msbuild-based libretro dll in top-level dir too
2020-07-08 15:18:49 +10:00
Connor McLaughlin
a68bbb3e85
Common/DimensionalArray: Work around VC2017 issue
2020-07-08 15:04:47 +10:00
Connor McLaughlin
068b244303
libretro: Do SET_CORE_OPTIONS unconditionally
2020-07-08 12:48:57 +10:00
Connor McLaughlin
57cf40d1ae
Bus: Work around VS2017 bug with std::array
2020-07-08 12:45:53 +10:00
Connor McLaughlin
6ae5caa23b
Common/StringUtil: Add missing include
2020-07-08 12:45:49 +10:00
Connor McLaughlin
209d7c67e9
GPU/OpenGL: Prefer SSBOs over small texel buffers+subimage
2020-07-08 02:05:36 +10:00
Connor McLaughlin
922003ba50
libretro: Ignore renderer changes
...
RetroArch does not support hot swapping renderers.
2020-07-08 02:05:36 +10:00
Connor McLaughlin
97a946bd62
CommonHostInterface: Implement frame step hotkey
2020-07-08 02:05:36 +10:00
Connor McLaughlin
01287cb7da
build: Support building libretro core for Android
2020-07-07 20:27:14 +10:00
Connor McLaughlin
c242d4707f
build: Drop Linux libretro core in current directory too
2020-07-07 20:27:14 +10:00
Connor McLaughlin
089b1d465f
build: Drop libretro DLL in build directory
2020-07-07 19:09:14 +10:00
Connor McLaughlin
9a631ff52c
build: Don't build unit tests for libretro core
2020-07-07 18:54:02 +10:00
Connor McLaughlin
729e1b3392
GLContext: Fix Android context creation
2020-07-07 00:59:49 +10:00
Connor McLaughlin
da180a1c4f
Vulkan: Fix crash when device creation fails
2020-07-07 00:59:42 +10:00
Connor McLaughlin
1d4b5e22cb
Vulkan: Fall back to geometryShader when fillModeNonSolid unsupported
2020-07-07 00:59:35 +10:00
Connor McLaughlin
d1eae288bf
GameList: Add EntryCompatibilityRatingToString
2020-07-07 00:59:28 +10:00
Connor McLaughlin
5274fa32ac
Qt: Pump events on main thread when waiting for init
2020-07-06 02:47:33 +10:00
Connor McLaughlin
76cb52407b
SDLControllerInterface: Init joystick API as well
2020-07-06 02:47:33 +10:00
Connor McLaughlin
547e8b239b
libretro: Reduce base width/height
...
Stops the window opening so large.
2020-07-06 02:47:33 +10:00
Connor McLaughlin
11c0601a67
libretro: Work around hw render interface pointer being freed
2020-07-06 02:47:33 +10:00
Albert Liu
e42d5fed75
GPU: Adjust 4-pixel boundary alignment formula
...
Fixes missing edge in Tenchi wo Kurau II: Sekiheki no Tatakai.
2020-07-05 06:00:36 -07:00
Albert Liu
000a51298a
GPU: Don't round screen size to 4-pixel multiple
2020-07-05 06:00:36 -07:00
Albert Liu
e2b1158514
GPU: Report CRTC padding as signed in debug window
2020-07-05 06:00:36 -07:00
Connor McLaughlin
67bc14dac9
CI: Use libretro core naming convention
2020-07-05 13:15:12 +10:00
Connor McLaughlin
511c3133f1
GPU: Let GPU catch up before handling GP1 reset commands
...
Fixes trashed VRAM writes in some homebrew.
2020-07-05 02:25:56 +10:00
Connor McLaughlin
b0b3901722
libretro: Fix DualShock analog mode auto-enable
2020-07-05 00:05:14 +10:00
Connor McLaughlin
c76bb5eb6a
libretro: Fix display aspect ratio
2020-07-04 22:33:07 +10:00
Connor McLaughlin
343e3ba3b7
libretro: Better handle resolution changes
2020-07-04 22:14:07 +10:00
Connor McLaughlin
e15fafe428
libretro: Reduce OSD message durations
2020-07-04 22:14:07 +10:00
Connor McLaughlin
8408d3b6bf
libretro: Disable shader cache
...
Can't seem to see somewhere we can save shader blobs. It wasn't working
anyway because it would generate invalid paths.
2020-07-04 22:14:07 +10:00
Connor McLaughlin
f9622b2450
libretro: Fix memory card save locations
2020-07-04 22:14:07 +10:00
Connor McLaughlin
9b3e344ad8
Renderers: Support empty shader cache
2020-07-04 22:14:07 +10:00
Connor McLaughlin
f396a2c373
Renderers: Make shader cache path a prefix instead of directory
2020-07-04 22:14:07 +10:00
Connor McLaughlin
b9ffca1ddf
libretro: Vulkan renderer support
2020-07-04 22:14:07 +10:00
Connor McLaughlin
218f6721d3
libretro: Fix display rendering in D3D11/OpenGL
2020-07-04 20:05:49 +10:00
Connor McLaughlin
2c4fce3f0d
D3D11HostDisplay: Don't create swap chain for headless
2020-07-04 17:37:50 +10:00
Connor McLaughlin
b3359dadc9
Qt: Save original style name for restoring after theme switch
2020-07-04 15:54:26 +10:00
Connor McLaughlin
1231f6dafe
GPU: Handle GP1 command mirrors
2020-07-04 01:28:18 +10:00
Albert Liu
0a0a2024fd
SDLControllerInterface: Prefer cbutton.which for button events
...
Functionally the same as caxis.which due to SDL_Event union, but prefer
using SDL_ControllerButtonEvent members for button events.
2020-07-02 17:45:44 -07:00
Connor McLaughlin
2d74062abb
CPU: Delay interrupts by one instruction/block
...
Fixes Gameshark Sampler Disc.
2020-07-03 01:51:08 +10:00
Connor McLaughlin
8a8ce8d41c
NamcoGunCon: Use correct GPU clock as reference
2020-07-03 01:51:05 +10:00
Connor McLaughlin
0710e3b6d3
CDROM: Ignore sectors with channel number=255
...
Some games (Taxi 2 and Blues Blues) have junk audio sectors with a channel number of 255.
We need to skip them otherwise it ends up playing the incorrect file.
TODO: Verify with a hardware test.
2020-07-02 00:50:53 +10:00
Connor McLaughlin
bff5432879
Pad: Improve ACK timing
...
Fixes random pauses in Moto Racer.
2020-07-02 00:50:53 +10:00
Connor McLaughlin
b471d1043a
Settings: Load Memory Cards From State -> Load Devices From State
...
Makes it apply to controllers too.
2020-07-02 00:50:53 +10:00
Connor McLaughlin
655dff84e2
VulkanHostDisplay: Fix software cursor rendering
2020-07-01 01:57:25 +10:00
Connor McLaughlin
400ee3d9b3
OpenGLHostDisplay: Fix software cursor rendering
2020-07-01 01:57:25 +10:00
Connor McLaughlin
8cd9e0887e
libretro: Use framebuffer view dimensions not texture dimensions
2020-07-01 01:57:25 +10:00
Connor McLaughlin
70f4ce7cde
libretro: Add auto analog mode option for controllers
2020-07-01 01:57:25 +10:00
Connor McLaughlin
f65a50d84b
HostDisplay: Use surface scale for drawing software cursor
2020-07-01 01:57:25 +10:00
Connor McLaughlin
bf08385051
WindowInfo: Add surface_scale field
2020-07-01 01:57:25 +10:00
Connor McLaughlin
e374853cf5
HostInterface: Better configuration of custom crosshair/software cursor
2020-07-01 01:57:25 +10:00
Connor McLaughlin
f0c1dfefe7
Core: Add resources file
...
Currently includes a crosshair icon.
2020-07-01 00:56:46 +10:00
Connor McLaughlin
ed6065d7f5
D3D11HostDisplay: Fix software cursor rendering
2020-07-01 00:56:46 +10:00
Connor McLaughlin
7d88bba764
Common: Add an image helper class
2020-07-01 00:56:46 +10:00
Connor McLaughlin
78cf890c6c
Qt: Hook up per-controller-type-settings to UI
2020-07-01 00:56:46 +10:00
Connor McLaughlin
bcc6d5d53d
Qt: Support float settings in setting widget binder
2020-07-01 00:56:46 +10:00
Connor McLaughlin
0b11a14e24
Qt: Better handling of default settings not in ini
2020-07-01 00:56:46 +10:00
Connor McLaughlin
4dc9e10777
HostInterface: Support per-controller-type settings
2020-07-01 00:56:46 +10:00
Connor McLaughlin
f3b2953e40
Common/StringUtil: Add FromChars overload for bool
2020-07-01 00:56:46 +10:00
Connor McLaughlin
38aa485f8f
libretro: Analog controller/DualShock support
2020-06-30 03:03:56 +10:00
Connor McLaughlin
51b4776b8f
libretro: Work around video driver switching crash in RetroArch
2020-06-30 03:03:56 +10:00
Connor McLaughlin
861b98ed3b
libretro: Additional work
...
- Reliable resolution switching.
- Hook up logging.
- Memory cards and controller type settings.
- Save state support.
- Direct3D support.
2020-06-30 03:03:56 +10:00
Connor McLaughlin
2a38090e7a
HostDisplay: Move most backend logic to FrontendCommon
2020-06-30 03:03:56 +10:00
Connor McLaughlin
936d92dfb8
System: Add option to force start in software mode
2020-06-30 02:44:19 +10:00
Connor McLaughlin
919494079b
System: Make saving screenshots to state optional
2020-06-30 02:44:09 +10:00
Connor McLaughlin
dc7cc3b67f
Common/ByteStream: Fix buffer corruption in MemoryByteStream
2020-06-30 02:44:01 +10:00
Connor McLaughlin
e5f56fcd33
MDEC: Slightly reduce block timing
...
Fixes FMVs in Disney's Treasure Planet.
Probably needs sub-block timing emulated at some point.
2020-06-29 14:45:14 +10:00
Connor McLaughlin
614ea632a5
SPU: Log warning when data is lost due to reg clear
2020-06-29 14:45:03 +10:00
Connor McLaughlin
ea1066f76e
GL/StreamBuffer: Use glBufferData() on all drivers
2020-06-29 14:44:16 +10:00
Connor McLaughlin
745b53e4cb
GL/Context: Fix crash in some GLX drivers
2020-06-27 17:35:08 +10:00
Connor McLaughlin
15afe4f436
GPU/Vulkan: Fix incorrect vkCmdPushConstants() call
2020-06-27 16:26:20 +10:00
Albert Liu
1a45ee3018
CommonHostInterface: Use largeImage fields in Discord presence payload
...
Fixes application icon not showing up in Discord Rich Presence.
2020-06-26 22:28:48 -07:00
Connor McLaughlin
0b261e836b
GPU/Vulkan: Fix shader VRAM copies
...
Fixes battle transitions in Final Fantasy IX.
2020-06-27 03:00:03 +10:00
Connor McLaughlin
58b0e6859a
Frontend: Reset/restore GPU state before saving screenshot
...
Fixes driver crashes in Vulkan.
2020-06-27 02:59:58 +10:00
Connor McLaughlin
b94de1924d
GPU/ShaderGen: Round normalized colours before converting to integer
...
Fixes broken rendering/precision issues on Intel Ivy Bridge GPUs.
Many thanks to linkmauve from Dolphin for the idea - seems Dolphin also
had a similar problem a few years ago.
2020-06-26 21:40:53 +10:00
Connor McLaughlin
16ca214d09
GPU/OpenGL: Fix VRAM writes breaking on <GL4.3
2020-06-26 21:39:37 +10:00
Connor McLaughlin
34d7b752d8
GPU/ShaderGen: Enable GL_ARB_shader_storage_buffer_object on <GL4.3
2020-06-26 21:39:12 +10:00
Connor McLaughlin
998ec85b16
CDROM: Log slow sector reads in Release builds too
2020-06-26 17:17:25 +10:00
Connor McLaughlin
737337a526
CDROM: Fix incorrect sector read after incomplete seek->read
...
Fixes crash in Disney's The Lion King - Simba's Mighty Adventure.
2020-06-26 17:15:41 +10:00
Connor McLaughlin
b8a2487abf
GPU/HW: Fix incorrect offset application in line upscaler
...
Fixes green line in pause screen of Spyro.
2020-06-26 03:26:06 +10:00
Albert Liu
788a9a6768
Qt: Reset palette and style when selecting default theme
...
Fixes palette and style getting stuck when switching to default theme
after having used dark fusion theme earlier in the same session.
2020-06-24 16:08:36 -07:00
Connor McLaughlin
ad727c7991
CPU/Recompiler: Check interrupts after mtc0 sr/cause
...
Fixes Jackie Chan Stuntmaster in Recompiler mode.
2020-06-25 01:33:00 +10:00
Connor McLaughlin
b00f50c927
CPU/Recompiler: Emit test/jz instead of bt/jnc for bits < 8
...
Likely very slightly faster.
2020-06-25 01:33:00 +10:00
Connor McLaughlin
55a2c73097
Qt: Add Dark Fusion theme
2020-06-25 01:33:00 +10:00
Connor McLaughlin
a6d976240a
Qt: Add theme selection and dark theme
2020-06-25 01:33:00 +10:00
Albert Liu
28d38c9867
LibretroHostInterface: Report aspect ratio setting to frontend
2020-06-23 09:24:50 -07:00
Albert Liu
7c206766ae
HostInterface: Save default setting to AspectRatio, not PixelAspectRatio
...
Fixes inconsistency with default settings saving to PixelAspectRatio,
but loading from AspectRatio instead. PixelAspectRatio was not being
used elsewhere.
2020-06-23 09:24:50 -07:00
Connor McLaughlin
832c7a1192
Vulkan: Support using SSBOs instead texel buffers
2020-06-24 01:40:01 +10:00
Connor McLaughlin
08ef8c1e8d
GPU/HW: Support SSBOs instead of texture buffers for VRAM writes
2020-06-24 01:39:53 +10:00
Connor McLaughlin
eec37df1e0
Settings: Make the recompiler the default CPU mode
2020-06-24 01:39:42 +10:00
Connor McLaughlin
f6aae5e67c
Settings: Add 2:1 (VRAM 1:1) display aspect ratio
2020-06-24 01:39:35 +10:00
Connor McLaughlin
f32028a736
Merge pull request #566 from ggrtk/analog-controller
...
ControllerInterface: Customizable axis scaling and deadzone size
2020-06-24 01:33:26 +10:00
Connor McLaughlin
2cfb811569
Merge pull request #565 from lioncash/stamp
...
timestamp: Correct duplicate conditionals
2020-06-24 01:32:52 +10:00
Connor McLaughlin
84d4423719
Merge pull request #564 from lioncash/leak
...
file_system: Prevent resource leaks in DeleteDirectory()
2020-06-24 01:31:52 +10:00
Connor McLaughlin
da0885af0d
Merge pull request #563 from lioncash/fs
...
file_system: Correct duplicate conditionals in CreateDirectory()
2020-06-24 01:30:04 +10:00
Connor McLaughlin
4b31034efa
Merge pull request #562 from lioncash/amp
...
spu: Make use of logical AND within IsPitchModulationEnabled()
2020-06-24 01:29:42 +10:00
Albert Liu
293c2f50cd
ControllerInterface: Make axis-to-button deadzone customizable
2020-06-23 08:15:17 -07:00
Albert Liu
6b7c068f83
ControllerInterface: Implement axis scaling for axis-to-axis mappings
...
This feature allows us to work around analog stick range issues at the
intercardinal directions in certain titles (e.g. Rockman DASH 2) caused
by modern controllers having a tighter logical range of reporting than
PS1 analog controllers.
2020-06-23 08:14:37 -07:00
Lioncash
4c82705e34
timestamp: Correct duplicate conditionals
...
Previously, the milliseconds field wasn't being used in comparisons on
Windows.
2020-06-23 06:24:06 -04:00
Lioncash
987b11a1d2
timestamp: Implement operator!= in terms of operator==
...
Same behavior, less code.
2020-06-23 06:20:29 -04:00
Lioncash
83a01c27a2
file_system: Prevent resource leaks in DeleteDirectory()
...
We need to remember to close the search handle in the error cases.
2020-06-23 06:13:54 -04:00
Lioncash
292a0a6800
file_system: Correct duplicate conditionals in CreateDirectory()
2020-06-23 06:09:38 -04:00
Lioncash
20d17b953b
spu: Make use of logical AND within IsPitchModulationEnabled()
...
It seems awfully suspect to use a bitwise AND here.
2020-06-23 06:00:11 -04:00
Connor McLaughlin
3ca9d578b3
Merge pull request #559 from lioncash/field
...
bitfield: Make interface fully constexpr
2020-06-23 19:58:06 +10:00
Connor McLaughlin
6de24f620e
Merge pull request #558 from lioncash/psf
...
system: Correct error dialog in PSF load case
2020-06-23 19:57:19 +10:00
Connor McLaughlin
daf9afe221
Merge pull request #560 from lioncash/xy
...
playstation_mouse: Amend initial x value
2020-06-23 19:56:43 +10:00
Connor McLaughlin
e228588823
Merge pull request #561 from lioncash/rectangle
...
rectangle: Correct assignment of right within SetExtents
2020-06-23 19:56:16 +10:00
Lioncash
e064196f25
rectangle: Correct assignment of right within SetExtents
...
Previously left was being assigned twice in a row.
2020-06-23 05:50:43 -04:00
Lioncash
7a05f8402b
playstation_mouse: Amend initial x value
...
Previously the last host y position was being written to twice, which
seems like a typo.
2020-06-23 05:48:25 -04:00
Lioncash
0abe4c60b4
cd_image: Make use of std::array where applicable
...
Simplifies array copies.
2020-06-23 05:35:26 -04:00
Lioncash
a27aa45e6a
bitfield: Make interface fully constexpr
...
Given C++17 is being used, the entire interface is capable of being
constexpr.
2020-06-23 05:27:40 -04:00
Lioncash
76af96f15b
system: Correct error dialog in PSF load case
...
Corrects the error message to state that the PSF couldn't be loaded
rather than EXE.
2020-06-23 05:13:47 -04:00
Connor McLaughlin
840a80670f
CDROM: Reset XA resampler on file switch
...
Pure guess work, probably won't affect anything.
2020-06-22 15:58:22 +10:00
Connor McLaughlin
9265dd72ba
Vulkan/ShaderCache: Skip writing pipeline cache when size matches
...
Comparing all the data wasn't working, at least for Intel. I'm guessing
there's some modification time field in there which keeps changing.
2020-06-22 15:58:10 +10:00
Connor McLaughlin
eaca5eca07
GPU/Vulkan: Use Metal layer instead NSView on macOS.
2020-06-22 15:58:07 +10:00