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
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
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
b0b3901722
libretro: Fix DualShock analog mode auto-enable
2020-07-05 00:05:14 +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
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
e374853cf5
HostInterface: Better configuration of custom crosshair/software cursor
2020-07-01 01:57:25 +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
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
eec37df1e0
Settings: Make the recompiler the default CPU mode
2020-06-24 01:39:42 +10:00
Connor McLaughlin
49d11988bf
Core: Add Vulkan GPU renderer
2020-06-19 00:18:17 +10:00
Connor McLaughlin
075380f8e0
Move most helper logic from base HostInterface to FrontendCommon
2020-06-09 02:35:37 +10:00
Connor McLaughlin
f9eb3719e3
HostInterface: Add software cursor mode
...
This will probably need to be extended in the future.
2020-06-08 02:53:55 +10:00
Connor McLaughlin
531c3ad5fa
AudioStream: Replace buffer queue with ring buffer
...
Should achieve a decent overall minimum latency reduction.
2020-06-07 01:22:03 +10:00
Connor McLaughlin
6acd8b27dd
Qt: Prevent lag disabling power on buttons when starting
2020-06-06 03:44:57 +10:00
Connor McLaughlin
81a7b147fc
System: Add option to disable loading memory cards from save states
2020-05-27 02:06:56 +10:00
Connor McLaughlin
b17a5832e5
System: Simplify save state booting
...
Fixes memory card warning messages on load state.
2020-05-27 02:01:11 +10:00
Connor McLaughlin
2795dea124
HostInterface: Prioritize SCPH-3000 over SCPH-1000 for NTSC-J
2020-05-17 01:08:14 +10:00
Connor McLaughlin
1c50a09c2e
HostInterface: Set user directory to Documents\DuckStation
2020-05-17 00:22:16 +10:00
Connor McLaughlin
f7a2448dfb
HostInterface: Pull compatibility database from program directory
...
Fixes compatibility list not reading on Linux.
2020-05-16 22:18:05 +10:00
Connor McLaughlin
d781de2ce6
GameList: Add support for compatibility database
2020-05-16 20:32:36 +10:00
Connor McLaughlin
14b2506d7d
HostInterface: Disable true color/enable scaled dithering by default
...
Too many games are broken with it enabled. The number which break with
scaled dithering is much smaller.
2020-05-15 01:41:58 +10:00
Connor McLaughlin
db9d637f92
HostInterface: Fix mute not applying on startup
2020-05-13 13:47:12 +10:00
Connor McLaughlin
c329f58afe
HostInterface: Add audio buffer/count/volume/mute settings
2020-05-10 00:44:37 +10:00
Connor McLaughlin
0f5bc7267f
HostInterface: Fix hang when switching audio backends
2020-05-05 03:04:28 +10:00
Connor McLaughlin
d8ab587153
HostInterface: Modify settings loading interface to support per-frontend settings
2020-05-01 01:01:50 +10:00
Connor McLaughlin
b4c31e55e2
HostDisplay: Add integer upscaling option
2020-05-01 01:00:22 +10:00
Connor McLaughlin
e37962009e
HostInterface: Add log lettings to ini
2020-05-01 00:58:32 +10:00
Connor McLaughlin
59f055f4b9
HostInterface: Make title-based memory cards the default
2020-04-30 01:21:18 +10:00
Connor McLaughlin
940b725c1d
Settings: Make DMA performance parameters tweakable
2020-04-29 20:00:22 +10:00
Connor McLaughlin
74e455a5f7
System: Support per-game memory cards
2020-04-27 16:22:25 +10:00
Connor McLaughlin
08c8d1a521
System: Support saving screenshots in save states
2020-04-21 02:50:45 +10:00
Connor McLaughlin
1757932b3a
GPU: Implement FIFO and timings
...
This will cause a slight performance loss. I've left some knobs in which
can be tweaked to mitigate this, but the goal is to be compatible with
all games which require them.
2020-04-19 01:17:28 +10:00
Connor McLaughlin
f75ea052a6
FrontendCommon: Add input profile support
2020-04-15 01:44:04 +10:00
Connor McLaughlin
81cf4b469f
Frontends: Add shared command line interface
...
Also provides batch mode and automatic fullscreen switching.
-help: Displays this information and exits.
-version: Displays version information and exits.
-batch: Enables batch mode (exits after powering off)
-fastboot: Force fast boot for provided filename
-slowboot: Force slow boot for provided filename
-resume: Load resume save state. If a boot filename is provided,
that game's resume state will be loaded, otherwise the most
recent resume save state will be loaded.
-state <index>: Loads specified save state by index. If a boot
filename is provided, a per-game state will be loaded, otherwise
a global state will be loaded.
-statefile <filename>: Loads state from the specified filename.
No boot filename is required with this option.
-fullscreen: Enters fullscreen mode immediately after starting.
-nofullscreen: Prevents fullscreen mode from triggering if enabled.
-portable: Forces "portable mode", data in same directory.
--: Signals that no more arguments will follow and the remaining
parameters make up the filename. Use when the filename contains
spaces or starts with a dash.
2020-04-13 22:17:09 +10:00
Connor McLaughlin
6a03bb2d15
HostInterface: Drop std::filesystem requirement
2020-04-12 21:06:33 +10:00
Connor McLaughlin
7779a54bc5
GPU: Rename 'Force Progressive Scan' to 'Disable Interlacing'
...
It affects rendering as well as display/scanout now, after all.
2020-04-11 16:37:53 +10:00
Connor McLaughlin
6cfad33b8e
HostInterface: Set NoNav on FPS window
...
Prevents it stealing focus in SDL frontend.
2020-04-11 00:00:37 +10:00
Connor McLaughlin
fbfd838e22
GPU: Add pixel aspect ratio option
...
Can display in 4:3, 16:9, 1:1 ratios.
2020-04-10 15:12:35 +10:00
Connor McLaughlin
3325d2c42c
GPU: Add Force NTSC timings option
...
This option forces NTSC timings for PAL games, causing them to either
run faster (more likely) or smoother (less likely).
2020-04-10 13:35:10 +10:00
Connor McLaughlin
610abc1a75
BIOS: Make SCPH-3000 BIOS known
2020-04-07 11:54:24 +10:00
Connor McLaughlin
b4538b1d2e
HostInterface: Add redump BIOS filenames to search list
...
ps-10x.bin, ps-30x.bin, etc.
2020-04-07 11:54:22 +10:00
Connor McLaughlin
e91d760175
HostInterface: Fix crash on startup with controller connected
2020-04-06 12:18:33 +10:00
Connor McLaughlin
e7640d5367
HostInterface: Make SetUserDirectory() overridable by frontends
2020-04-05 22:59:06 +10:00
Connor McLaughlin
15c33ebedb
CDROM: Add "Enable Region Check" option
2020-04-01 01:48:37 +10:00
Connor McLaughlin
7cd7dec668
HostInterface: Restore pause state after switching renderers
...
Fixes #148 .
2020-03-25 01:48:51 +10:00
Connor McLaughlin
7e36195f44
HostInterface: Enable on-screen FPS/VPS/Speed display via config
2020-03-22 13:20:08 +10:00
Connor McLaughlin
77a60f0c5f
HostInterface: Crash fix again for controller switching
2020-03-22 13:15:44 +10:00
Connor McLaughlin
12ddeb675c
HostInterface: Fix controller not updating when switched and system running
2020-03-22 12:54:26 +10:00
Connor McLaughlin
6b68512ac1
HostInterface: Add SaveScreenshot() method
2020-03-16 00:03:57 +10:00
Connor McLaughlin
8e20d0d4ff
SPU: Add audio dumping support
2020-03-15 22:04:17 +10:00
Connor McLaughlin
198a64eb5e
HostInterface: Add a helper function for generating timestamp-based filenames
2020-03-15 22:03:53 +10:00
Connor McLaughlin
8f39a0f154
Qt: Properly implement "Start Fullscreen"
2020-03-12 13:53:58 +10:00
Connor McLaughlin
e8a5259e68
Qt: Show save times in save state menu as well
2020-03-12 13:51:23 +10:00
Connor McLaughlin
b59e4ffbcb
HostInterface: Reset performance counters on unpausing
2020-03-03 10:07:16 +10:00
Connor McLaughlin
69f03959aa
Qt: Implement context menu in game list
2020-03-02 11:08:16 +10:00
Connor McLaughlin
635ab72b37
GPU: Implement "Scaled Dithering" option
...
Fixes #29 .
2020-03-01 00:05:31 +10:00
Connor McLaughlin
63064f80c2
HostInterface: Fix default value for Display/CropMode
2020-02-28 18:15:37 +10:00
Connor McLaughlin
fcc0ae9571
GPU: Implement "Crop Mode" (none, overscan, all borders)
2020-02-28 17:01:01 +10:00
Connor McLaughlin
f35970fcac
FrontendCommon: Move input binding and some other logic from Qt to common
2020-02-28 17:00:09 +10:00
Connor McLaughlin
07ba2ecd3d
Settings: Simplify resolution scale enumeration
2020-02-28 16:59:55 +10:00
Connor McLaughlin
f21cb25426
HostInterface: Recreate system on GPU debug device toggle too
2020-02-28 16:59:53 +10:00
Connor McLaughlin
50a155e775
Settings: Default to relative paths for bios/memcards
...
Prevents from locking to the directory the first time we run.
2020-02-28 16:58:30 +10:00
Connor McLaughlin
e4ff8b0936
Qt: Add power off hotkey and confirmation message
2020-02-26 19:26:20 +10:00
Connor McLaughlin
e9dea6e0f7
HostInterface: Add a ConfirmMessage() method
2020-02-26 19:25:57 +10:00
Connor McLaughlin
959a555274
CDROM: Implement asynchronous disc reading
2020-02-22 00:24:35 +09:00
Connor McLaughlin
1ed8243776
HostInterface: Reset counters when starting from state
2020-02-22 00:18:27 +09:00
Connor McLaughlin
1e0e802fa4
HostInterface: Add a helper to display a 'Loading Screen' during long startup
2020-02-16 00:15:16 +09:00
Connor McLaughlin
dcc9da3f5e
HostInterface: Don't try to resume system without game code
2020-02-16 00:15:09 +09:00
Connor McLaughlin
cd2f6d1f68
HostInterface: Only display error when loading resume state if boot anyway flag isn't set
2020-02-16 00:14:58 +09:00
Connor McLaughlin
6a1206dde7
Frontends: Add option for "Increase Timer Resolution"
2020-02-16 00:14:51 +09:00
Connor McLaughlin
e01cf0dccb
Frontends: Implement auto save on exit/resume
2020-02-16 00:14:49 +09:00
Connor McLaughlin
e738b87a25
HostInterface: Add helpers for resume save state
2020-02-16 00:14:47 +09:00
Connor McLaughlin
5f3be68028
HostInterface: Notify host when controller types change
2020-02-16 00:14:44 +09:00
Connor McLaughlin
37d765e8d7
HostInterface: Support switching audio backends
2020-02-16 00:14:40 +09:00
Connor McLaughlin
6a0c15b649
HostInterface: Move timer resolution increase to base class
2020-02-16 00:14:37 +09:00
Connor McLaughlin
1e009133ae
Rename 'Default' audio backend to 'SDL'
2020-02-16 00:14:35 +09:00
Connor McLaughlin
fd8ed08307
Move more logic from frontend to base HostInterface
2020-02-16 00:14:28 +09:00
Connor McLaughlin
f0578bb932
HostInterface: Make helper methods const
2020-02-16 00:14:25 +09:00
Connor McLaughlin
7290e5cad0
HostInterface: Add per-slot save state helper functions
2020-02-16 00:14:00 +09:00
Connor McLaughlin
befa2a27d8
HostInterface: Fix crash in SetUserDirectory
2020-02-15 23:12:15 +09:00
Connor McLaughlin
b605a84f7d
HostInterface: Set user directory for Linux/macOS, portable.txt support
2020-02-15 22:36:16 +09:00
Connor McLaughlin
8eba4b379c
Settings: Default to D3D11 renderer on Windows
...
This point it's less buggy and slightly more performant.
2020-02-15 10:21:59 +09:00
Connor McLaughlin
5aba89091e
HostInterface: Fix possible crash in BIOS loading
2020-02-14 22:45:54 +09:00
Connor McLaughlin
5c7ef65a34
HostInterface: Non-standard speeds are <100% too
2020-02-12 21:27:43 +09:00
Connor McLaughlin
e098c83342
HostInterface: Disable vsync/audio sync when running at not-100% speed
2020-02-11 12:03:25 +09:00
Connor McLaughlin
70fe43a3ec
System: Implement variable emulation speed
2020-02-11 12:02:42 +09:00
Connor McLaughlin
c820ddba79
HostInterface: Move throttle and perf stats to System class
2020-02-09 22:16:25 +09:00
Stenzek
057263bda3
HostInterface: Track changes to CPU mode in ApplySettings()
2020-02-05 17:43:15 +09:00
Connor McLaughlin
1b9609ef61
Implement event-based scheduler instead of lock-step components
2020-01-24 16:23:39 +10:00
Connor McLaughlin
624888e131
HostInterface: Default BIOS path to bios subdirectory
2020-01-24 14:52:12 +10:00
Connor McLaughlin
faf2308695
Settings: Move set defaults to HostInterface so it can use user paths
2020-01-24 14:52:04 +10:00
Connor McLaughlin
b5e73a0be4
HostInterface: Add helper methods for getting paths to save states/memcards
2020-01-24 14:52:03 +10:00
Connor McLaughlin
40799d0f77
HostInterface: Move ModifyResolutionScale() to base class
2020-01-24 14:51:56 +10:00
Connor McLaughlin
4a3478b360
HostInterface: Add function to switch between sw/hw rendering
2020-01-24 14:51:53 +10:00
Connor McLaughlin
f2231d6669
HostInterface: Move setting update logic to base class
2020-01-24 14:51:52 +10:00
Connor McLaughlin
82563d94f4
HostInterface: Fix offset OSD messages in Qt frontend
2020-01-24 14:51:38 +10:00
Connor McLaughlin
f6fee86f1c
HostInterface: Create user directories on startup
2020-01-24 14:51:10 +10:00
Connor McLaughlin
b4c06fdcc6
GameList: Auto set cache/database path from user directory
2020-01-24 14:51:09 +10:00
Connor McLaughlin
77b282862f
HostInterface: Move running title info to System
2020-01-24 14:51:05 +10:00
Connor McLaughlin
b3db3a1cc0
HostInterface: Share settings between SDL and Qt frontends
2020-01-24 14:51:03 +10:00
Connor McLaughlin
2c3a0a6af9
HostInterface: Change working directory to user directory at startup
2020-01-24 14:51:02 +10:00
Connor McLaughlin
53428cb55b
HostInterface: Add user directory helpers
2020-01-24 14:51:00 +10:00
Connor McLaughlin
8d4d8e44e4
HostInterface: Saving state message should be OSD not error
2020-01-24 14:50:50 +10:00
Connor McLaughlin
0a5f7fcd75
System: Update running game when media changes from save state
2020-01-24 14:50:48 +10:00
Connor McLaughlin
20b60e0f01
Qt: Update window title/save states from running title
2020-01-24 14:50:46 +10:00
Connor McLaughlin
9562cbea56
Frontends: Add frame time performance counters
2020-01-24 14:49:47 +10:00
Connor McLaughlin
71c1e243fe
Remove YBaseLib dependency
2020-01-10 13:40:53 +10:00
Connor McLaughlin
686df4a203
Qt: Improve imgui hidpi scaling
2020-01-07 18:52:33 +10:00
Connor McLaughlin
0590f0935c
HostInterface: Fix compile error on Linux
2020-01-04 15:25:15 +10:00
Connor McLaughlin
9de0bf0aaf
HostInterface: Most some imgui logic from SDL to core
2020-01-02 19:14:06 +10:00
Connor McLaughlin
ea0845d5ad
Move controller creation to System class, switch shared_ptr to unique_ptr
2019-12-14 23:20:24 +10:00
Connor McLaughlin
efb8033d48
HostInterface: Fix for gcc < 8
2019-12-03 01:29:26 +10:00
Connor McLaughlin
299ee05cd9
HostInterface: Move OSD messages to base class
2019-12-01 21:33:56 +10:00
Connor McLaughlin
0a6b913536
HostInterface: Move performance counters to base class
2019-12-01 21:29:09 +10:00
Connor McLaughlin
f11d357ab9
Compile fixes for Android
2019-11-28 01:55:33 +10:00
Connor McLaughlin
48e3683d20
HostInterface: Fix load state on boot not loading state
2019-11-17 19:41:25 +10:00
Connor McLaughlin
b2b5e6c793
HostInterface: Reset throttle timer on slowdown
...
Prevents too slow messages when fast forwarding.
2019-11-17 01:47:50 +10:00
Connor McLaughlin
8fb4f73d17
Settings: Add audio sync and additional cleanup
2019-11-16 20:52:39 +10:00
Connor McLaughlin
3673c6e33c
HostInterface: Re-enable audio sync by default
2019-11-16 20:52:39 +10:00
Connor McLaughlin
b57f1d4a60
HostInterface: Implement non-vsync based speed throttler
...
Needed for PAL games.
2019-11-16 20:52:39 +10:00
Connor McLaughlin
246c97ccb3
System: Scaffolding for multi-system/multi-bios
2019-11-16 20:50:59 +10:00
Connor McLaughlin
8c51abaf37
System: Move settings to HostInterface
2019-11-08 01:07:39 +10:00
Connor McLaughlin
98a5c4980d
Settings: Use simpleini for settings load/save
2019-11-07 01:43:51 +10:00
Connor McLaughlin
ac45f3892c
Frontend: Fix broken display texture for OpenGL
2019-11-04 01:01:31 +10:00
Connor McLaughlin
9de9cf3be2
GPU/HW: Add D3D11 renderer and refactor host interface/display
2019-11-04 00:39:48 +10:00
Connor McLaughlin
0092cb1016
Pad: Set up memory cards via settings
2019-10-27 17:46:36 +10:00
Connor McLaughlin
0e6d1d5629
Frontend: Add a powered-off window/welcome screen
2019-10-20 21:19:54 +10:00
Connor McLaughlin
f852b8dd90
Further work on SPU implementation
2019-10-11 02:20:21 +10:00
Connor McLaughlin
8362b8e43b
UI: Beginning of customizable settings, debug menu
2019-10-04 15:00:32 +10:00
Connor McLaughlin
bddbab9d60
Rename to DuckStation
2019-10-04 13:54:09 +10:00