From 0ce37d8597e0bf9f1b3aeff0a7d95cfa6267232d Mon Sep 17 00:00:00 2001 From: XargonWan Date: Sun, 3 Mar 2024 14:38:57 +0100 Subject: [PATCH] DUCKSTATION: config refactor + controllers now via sdl + 4 controllers support --- emu-configs/duckstation/settings.ini | 214 ++++++++++++--- incconfigs/Duckstation/settings.ini | 371 --------------------------- incconfigs/whatis.readme | 7 - net.retrodeck.retrodeck.appdata.xml | 3 + 4 files changed, 187 insertions(+), 408 deletions(-) delete mode 100644 incconfigs/Duckstation/settings.ini diff --git a/emu-configs/duckstation/settings.ini b/emu-configs/duckstation/settings.ini index a3ab2d70..0936a2e7 100644 --- a/emu-configs/duckstation/settings.ini +++ b/emu-configs/duckstation/settings.ini @@ -43,14 +43,16 @@ FastmemMode = true [GPU] Renderer = Vulkan +Adapter = AMD RADV VANGOGH ResolutionScale = 3 Multisamples = 1 UseDebugDevice = false UseSoftwareRendererForReadbacks = false +UseSoftwareRendererForReadbacks = false PerSampleShading = false UseThread = true ThreadedPresentation = true -TrueColor = false +TrueColor = true ScaledDithering = true TextureFilter = Nearest DownsampleMode = Disabled @@ -87,12 +89,15 @@ ShowFPS = false ShowVPS = false ShowSpeed = false ShowResolution = false +ShowCPU = false +ShowGPU = false ShowStatusIndicators = true +ShowInputs = false ShowEnhancements = false Fullscreen = false -VSync = false +VSync = true DisplayAllFrames = false -PostProcessChain = +PostProcessChain = MaxFPS = 0.000000 InternalResolutionScreenshots = false @@ -101,6 +106,7 @@ InternalResolutionScreenshots = false ReadaheadSectors = 8 RegionCheck = false LoadImageToRAM = false +LoadImagePatches = false MuteCDAudio = false ReadSpeedup = 1 SeekSpeedup = 1 @@ -188,12 +194,17 @@ Directory = RETRODECKHOMEDIR/saves/psx/duckstation/memcards [ControllerPorts] +ControllerSettingsMigrated = true MultitapMode = Disabled +PointerXScale = 8 +PointerYScale = 8 +PointerXInvert = false +PointerYInvert = false [Logging] LogLevel = Info -LogFilter = +LogFilter = LogToConsole = true LogToDebug = false LogToWindow = false @@ -212,6 +223,15 @@ ShowMDECState = false ShowDMAState = false +[TextureReplacements] +EnableVRAMWriteReplacements = false +PreloadTextures = false +DumpVRAMWrites = false +DumpVRAMWriteForceAlphaChannel = true +DumpVRAMWriteWidthThreshold = 128 +DumpVRAMWriteHeightThreshold = 128 + + [Hacks] DMAMaxSliceTicks = 1000 DMAHaltTicks = 100 @@ -219,31 +239,6 @@ GPUFIFOSize = 16 GPUMaxRunAhead = 128 -[Hotkeys] -OpenQuickMenu = Keyboard/Control & Keyboard/M -FastForward = Keyboard/Control & Keyboard/Plus -ToggleTurbo = Keyboard/Control & Keyboard/T -ToggleFullscreen = Keyboard/Control & Keyboard/Return -TogglePause = Keyboard/Control & Keyboard/P -Screenshot = Keyboard/Control & Keyboard/X -Reset = Keyboard/Control & Keyboard/R -ChangeDisc = Keyboard/Control & Keyboard/D -Rewind = Keyboard/Control & Keyboard/Minus -ToggleCheats = Keyboard/Control & Keyboard/C -IncreaseEmulationSpeed = Keyboard/Control & Keyboard/1 -DecreaseEmulationSpeed = Keyboard/Control & Keyboard/2 -ResetEmulationSpeed = Keyboard/Control & Keyboard/3 -IncreaseResolutionScale = Keyboard/Control & Keyboard/U -DecreaseResolutionScale = Keyboard/Control & Keyboard/Y -ToggleWidescreen = Keyboard/Control & Keyboard/W -LoadSelectedSaveState = Keyboard/Control & Keyboard/A -SaveSelectedSaveState = Keyboard/Control & Keyboard/S -SelectPreviousSaveStateSlot = Keyboard/Control & Keyboard/J -SelectNextSaveStateSlot = Keyboard/Control & Keyboard/K -PowerOff = Keyboard/Control & Keyboard/Q -UndoLoadState = Keyboard/Control & Keyboard/9 - - [Cheevos] Enabled = false TestMode = false @@ -261,9 +256,168 @@ LoginTimestamp = [UI] -MainWindowGeometry = AdnQywADAAAAAAAlAAAAHAAAA0QAAAL0AAAAJQAAADkAAANEAAAC9AAAAAAAAAAAB4AAAAAlAAAAOQAAA0QAAAL0 +MainWindowGeometry = AdnQywADAAAAAAhwAAABXwAAC48AAAQKAAAIcAAAAXwAAAuPAAAECgAAAAAAAAAACgAAAAhwAAABfAAAC48AAAQK MainWindowState = AAAA/wAAAAD9AAAAAAAAAyAAAAI9AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAHQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAA== [GameList] RecursivePaths = RETRODECKHOMEDIR/roms/psx + + +[InputSources] +SDL = true +SDLControllerEnhancedMode = false +XInput = false +RawInput = false + + +[Pad1] +Type = AnalogController +Up = SDL-0/DPadUp +Right = SDL-0/DPadRight +Down = SDL-0/DPadDown +Left = SDL-0/DPadLeft +Triangle = SDL-0/Y +Circle = SDL-0/B +Cross = SDL-0/A +Square = SDL-0/X +Select = SDL-0/Back +Start = SDL-0/Start +L1 = SDL-0/LeftShoulder +R1 = SDL-0/RightShoulder +L2 = SDL-0/+LeftTrigger +R2 = SDL-0/+RightTrigger +Analog = Keyboard/F6 +L3 = SDL-0/LeftStick +R3 = SDL-0/RightStick +LLeft = SDL-0/-LeftX +LRight = SDL-0/+LeftX +LDown = SDL-0/+LeftY +LUp = SDL-0/-LeftY +RLeft = SDL-0/-RightX +RRight = SDL-0/+RightX +RDown = SDL-0/+RightY +RUp = SDL-0/-RightY +SmallMotor = SDL-0/SmallMotor +LargeMotor = SDL-0/LargeMotor + + +[Pad2] +Type = AnalogController +Up = SDL-1/DPadUp +Right = SDL-1/DPadRight +Down = SDL-1/DPadDown +Left = SDL-1/DPadLeft +Triangle = SDL-1/Y +Circle = SDL-1/B +Cross = SDL-1/A +Square = SDL-1/X +Select = SDL-1/Back +Start = SDL-1/Start +Analog = SDL-1/Guide +L1 = SDL-1/LeftShoulder +R1 = SDL-1/RightShoulder +L2 = SDL-1/+LeftTrigger +R2 = SDL-1/+RightTrigger +L3 = SDL-1/LeftStick +R3 = SDL-1/RightStick +LLeft = SDL-1/-LeftX +LRight = SDL-1/+LeftX +LDown = SDL-1/+LeftY +LUp = SDL-1/-LeftY +RLeft = SDL-1/-RightX +RRight = SDL-1/+RightX +RDown = SDL-1/+RightY +RUp = SDL-1/-RightY +SmallMotor = SDL-1/SmallMotor +LargeMotor = SDL-1/LargeMotor + + +[Pad3] +Type = AnalogController +Up = SDL-2/DPadUp +Right = SDL-2/DPadRight +Down = SDL-2/DPadDown +Left = SDL-2/DPadLeft +Triangle = SDL-2/Y +Circle = SDL-2/B +Cross = SDL-2/A +Square = SDL-2/X +Select = SDL-2/Back +Start = SDL-2/Start +Analog = SDL-2/Guide +L1 = SDL-2/LeftShoulder +R1 = SDL-2/RightShoulder +L2 = SDL-2/+LeftTrigger +R2 = SDL-2/+RightTrigger +L3 = SDL-2/LeftStick +R3 = SDL-2/RightStick +LLeft = SDL-2/-LeftX +LRight = SDL-2/+LeftX +LDown = SDL-2/+LeftY +LUp = SDL-2/-LeftY +RLeft = SDL-2/-RightX +RRight = SDL-2/+RightX +RDown = SDL-2/+RightY +RUp = SDL-2/-RightY +SmallMotor = SDL-2/SmallMotor +LargeMotor = SDL-2/LargeMotor + + +[Pad4] +Type = AnalogController +Up = SDL-3/DPadUp +Right = SDL-3/DPadRight +Down = SDL-3/DPadDown +Left = SDL-3/DPadLeft +Triangle = SDL-3/Y +Circle = SDL-3/B +Cross = SDL-3/A +Square = SDL-3/X +Select = SDL-3/Back +Start = SDL-3/Start +Analog = SDL-3/Guide +L1 = SDL-3/LeftShoulder +R1 = SDL-3/RightShoulder +L2 = SDL-3/+LeftTrigger +R2 = SDL-3/+RightTrigger +L3 = SDL-3/LeftStick +R3 = SDL-3/RightStick +LLeft = SDL-3/-LeftX +LRight = SDL-3/+LeftX +LDown = SDL-3/+LeftY +LUp = SDL-3/-LeftY +RLeft = SDL-3/-RightX +RRight = SDL-3/+RightX +RDown = SDL-3/+RightY +RUp = SDL-3/-RightY +SmallMotor = SDL-3/SmallMotor +LargeMotor = SDL-3/LargeMotor + + +[Pad5] +Type = None + + +[Pad6] +Type = None + + +[Pad7] +Type = None + + +[Pad8] +Type = None + + +[Hotkeys] +FastForward = Keyboard/Tab +TogglePause = Keyboard/Space +Screenshot = Keyboard/F10 +ToggleFullscreen = Keyboard/F11 +OpenPauseMenu = Keyboard/Escape +LoadSelectedSaveState = Keyboard/F1 +SaveSelectedSaveState = Keyboard/F2 +SelectPreviousSaveStateSlot = Keyboard/F3 +SelectNextSaveStateSlot = Keyboard/F4 diff --git a/incconfigs/Duckstation/settings.ini b/incconfigs/Duckstation/settings.ini deleted file mode 100644 index 00a53dd3..00000000 --- a/incconfigs/Duckstation/settings.ini +++ /dev/null @@ -1,371 +0,0 @@ -[Main] -SettingsVersion = 3 -EmulationSpeed = 1.000000 -FastForwardSpeed = 0.000000 -TurboSpeed = 0.000000 -SyncToHostRefreshRate = false -IncreaseTimerResolution = true -InhibitScreensaver = true -StartPaused = false -StartFullscreen = false -PauseOnFocusLoss = true -PauseOnMenu = true -SaveStateOnExit = false -ConfirmPowerOff = false -LoadDevicesFromSaveStates = true -ApplyGameSettings = true -AutoLoadCheats = true -DisableAllEnhancements = false -RewindEnable = false -RewindFrequency = 10.000000 -RewindSaveSlots = 10 -RunaheadFrameCount = 0.000000 -ControllerBackend = SDL -ControllerEnhancedMode = false -EnableDiscordPresence = false - - -[Console] -Region = Auto -Enable8MBRAM = false - - -[CPU] -ExecutionMode = Recompiler -OverclockNumerator = 1 -OverclockDenominator = 1 -OverclockEnable = false -RecompilerMemoryExceptions = false -RecompilerBlockLinking = true -ICache = false -FastmemMode = true - - -[GPU] -Renderer = Vulkan -Adapter = AMD RADV VANGOGH -ResolutionScale = 3 -Multisamples = 1 -UseDebugDevice = false -UseSoftwareRendererForReadbacks = false -UseSoftwareRendererForReadbacks = false -PerSampleShading = false -UseThread = true -ThreadedPresentation = true -TrueColor = true -ScaledDithering = true -TextureFilter = Nearest -DownsampleMode = Disabled -DisableInterlacing = true -ForceNTSCTimings = false -WidescreenHack = false -ChromaSmoothing24Bit = false -PGXPEnable = false -PGXPCulling = true -PGXPTextureCorrection = true -PGXPVertexCache = false -PGXPCPU = false -PGXPPreserveProjFP = false -PGXPTolerance = -1.000000 -PGXPDepthBuffer = false -PGXPDepthClearThreshold = 300.000000 - - -[Display] -CropMode = Overscan -ActiveStartOffset = 0 -ActiveEndOffset = 0 -LineStartOffset = 0 -LineEndOffset = 0 -AspectRatio = Auto (Game Native) -CustomAspectRatioNumerator = 4 -Force4_3For24Bit = false -LinearFiltering = true -IntegerScaling = false -Stretch = false -PostProcessing = false -ShowOSDMessages = true -ShowFPS = false -ShowVPS = false -ShowSpeed = false -ShowResolution = false -ShowCPU = false -ShowGPU = false -ShowStatusIndicators = true -ShowInputs = false -ShowEnhancements = false -Fullscreen = false -VSync = true -DisplayAllFrames = false -PostProcessChain = -MaxFPS = 0.000000 -InternalResolutionScreenshots = false - - -[CDROM] -ReadaheadSectors = 8 -RegionCheck = false -LoadImageToRAM = false -LoadImagePatches = false -MuteCDAudio = false -ReadSpeedup = 1 -SeekSpeedup = 1 - - -[Audio] -Backend = Cubeb -OutputVolume = 100 -FastForwardVolume = 100 -BufferSize = 2048 -Resampling = true -OutputMuted = 0 -Sync = true -DumpOnBoot = false - - -[BIOS] -SearchDirectory = /run/media/mmcblk0p1/retrodeck/bios -PathNTSCU = -PathNTSCJ = -PathPAL = -PatchTTYEnable = false -PatchFastBoot = false - - -[MemoryCards] -Card1Type = PerGameTitle -Card2Type = None -UsePlaylistTitle = true -Card1Path = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards/shared_card_1.mcd -Card2Path = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards/shared_card_2.mcd -Directory = /run/media/mmcblk0p1/retrodeck/saves/psx/duckstation/memcards - - -[ControllerPorts] -ControllerSettingsMigrated = true -MultitapMode = Disabled -PointerXScale = 8 -PointerYScale = 8 -PointerXInvert = false -PointerYInvert = false - - -[Logging] -LogLevel = Info -LogFilter = -LogToConsole = true -LogToDebug = false -LogToWindow = false -LogToFile = false - - -[Debug] -ShowVRAM = false -DumpCPUToVRAMCopies = false -DumpVRAMToCPUCopies = false -ShowGPUState = false -ShowCDROMState = false -ShowSPUState = false -ShowTimersState = false -ShowMDECState = false -ShowDMAState = false - - -[TextureReplacements] -EnableVRAMWriteReplacements = false -PreloadTextures = false -DumpVRAMWrites = false -DumpVRAMWriteForceAlphaChannel = true -DumpVRAMWriteWidthThreshold = 128 -DumpVRAMWriteHeightThreshold = 128 - - -[Hacks] -DMAMaxSliceTicks = 1000 -DMAHaltTicks = 100 -GPUFIFOSize = 16 -GPUMaxRunAhead = 128 - - -[Cheevos] -Enabled = false -TestMode = false -UnofficialTestMode = false -UseFirstDiscFromPlaylist = true -RichPresence = true -ChallengeMode = false -Leaderboards = true -Notifications = true -SoundEffects = true -PrimedIndicators = true -Username = -Token = -LoginTimestamp = - - -[UI] -MainWindowGeometry = AdnQywADAAAAAAhwAAABXwAAC48AAAQKAAAIcAAAAXwAAAuPAAAECgAAAAAAAAAACgAAAAhwAAABfAAAC48AAAQK -MainWindowState = AAAA/wAAAAD9AAAAAAAAAyAAAAI9AAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAOAHQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAA== - - -[GameList] -RecursivePaths = /run/media/mmcblk0p1/retrodeck/roms/psx - - -[InputSources] -SDL = true -SDLControllerEnhancedMode = false -XInput = false -RawInput = false - - -[Pad1] -Type = AnalogController -Up = SDL-0/DPadUp -Right = SDL-0/DPadRight -Down = SDL-0/DPadDown -Left = SDL-0/DPadLeft -Triangle = SDL-0/Y -Circle = SDL-0/B -Cross = SDL-0/A -Square = SDL-0/X -Select = SDL-0/Back -Start = SDL-0/Start -L1 = SDL-0/LeftShoulder -R1 = SDL-0/RightShoulder -L2 = SDL-0/+LeftTrigger -R2 = SDL-0/+RightTrigger -Analog = Keyboard/F6 -L3 = SDL-0/LeftStick -R3 = SDL-0/RightStick -LLeft = SDL-0/-LeftX -LRight = SDL-0/+LeftX -LDown = SDL-0/+LeftY -LUp = SDL-0/-LeftY -RLeft = SDL-0/-RightX -RRight = SDL-0/+RightX -RDown = SDL-0/+RightY -RUp = SDL-0/-RightY -SmallMotor = SDL-0/SmallMotor -LargeMotor = SDL-0/LargeMotor - - -[Pad2] -Type = AnalogController -Up = SDL-1/DPadUp -Right = SDL-1/DPadRight -Down = SDL-1/DPadDown -Left = SDL-1/DPadLeft -Triangle = SDL-1/Y -Circle = SDL-1/B -Cross = SDL-1/A -Square = SDL-1/X -Select = SDL-1/Back -Start = SDL-1/Start -Analog = SDL-1/Guide -L1 = SDL-1/LeftShoulder -R1 = SDL-1/RightShoulder -L2 = SDL-1/+LeftTrigger -R2 = SDL-1/+RightTrigger -L3 = SDL-1/LeftStick -R3 = SDL-1/RightStick -LLeft = SDL-1/-LeftX -LRight = SDL-1/+LeftX -LDown = SDL-1/+LeftY -LUp = SDL-1/-LeftY -RLeft = SDL-1/-RightX -RRight = SDL-1/+RightX -RDown = SDL-1/+RightY -RUp = SDL-1/-RightY -SmallMotor = SDL-1/SmallMotor -LargeMotor = SDL-1/LargeMotor - - -[Pad3] -Type = AnalogController -Up = SDL-2/DPadUp -Right = SDL-2/DPadRight -Down = SDL-2/DPadDown -Left = SDL-2/DPadLeft -Triangle = SDL-2/Y -Circle = SDL-2/B -Cross = SDL-2/A -Square = SDL-2/X -Select = SDL-2/Back -Start = SDL-2/Start -Analog = SDL-2/Guide -L1 = SDL-2/LeftShoulder -R1 = SDL-2/RightShoulder -L2 = SDL-2/+LeftTrigger -R2 = SDL-2/+RightTrigger -L3 = SDL-2/LeftStick -R3 = SDL-2/RightStick -LLeft = SDL-2/-LeftX -LRight = SDL-2/+LeftX -LDown = SDL-2/+LeftY -LUp = SDL-2/-LeftY -RLeft = SDL-2/-RightX -RRight = SDL-2/+RightX -RDown = SDL-2/+RightY -RUp = SDL-2/-RightY -SmallMotor = SDL-2/SmallMotor -LargeMotor = SDL-2/LargeMotor - - -[Pad4] -Type = AnalogController -Up = SDL-3/DPadUp -Right = SDL-3/DPadRight -Down = SDL-3/DPadDown -Left = SDL-3/DPadLeft -Triangle = SDL-3/Y -Circle = SDL-3/B -Cross = SDL-3/A -Square = SDL-3/X -Select = SDL-3/Back -Start = SDL-3/Start -Analog = SDL-3/Guide -L1 = SDL-3/LeftShoulder -R1 = SDL-3/RightShoulder -L2 = SDL-3/+LeftTrigger -R2 = SDL-3/+RightTrigger -L3 = SDL-3/LeftStick -R3 = SDL-3/RightStick -LLeft = SDL-3/-LeftX -LRight = SDL-3/+LeftX -LDown = SDL-3/+LeftY -LUp = SDL-3/-LeftY -RLeft = SDL-3/-RightX -RRight = SDL-3/+RightX -RDown = SDL-3/+RightY -RUp = SDL-3/-RightY -SmallMotor = SDL-3/SmallMotor -LargeMotor = SDL-3/LargeMotor - - -[Pad5] -Type = None - - -[Pad6] -Type = None - - -[Pad7] -Type = None - - -[Pad8] -Type = None - - -[Hotkeys] -FastForward = Keyboard/Tab -TogglePause = Keyboard/Space -Screenshot = Keyboard/F10 -ToggleFullscreen = Keyboard/F11 -OpenPauseMenu = Keyboard/Escape -LoadSelectedSaveState = Keyboard/F1 -SaveSelectedSaveState = Keyboard/F2 -SelectPreviousSaveStateSlot = Keyboard/F3 -SelectNextSaveStateSlot = Keyboard/F4 diff --git a/incconfigs/whatis.readme b/incconfigs/whatis.readme index 0fe86944..05a30cf5 100644 --- a/incconfigs/whatis.readme +++ b/incconfigs/whatis.readme @@ -1,10 +1,3 @@ -Duckstation (Major changes) - -The old Duckstation config does not work anymore in cooker for controllers). - -- [Controller] is now [Pad] -- All controlls now go via SDL -- Updated to 4 controllers MelonDS (Minor changes) diff --git a/net.retrodeck.retrodeck.appdata.xml b/net.retrodeck.retrodeck.appdata.xml index 5a9d9b30..89dce97d 100644 --- a/net.retrodeck.retrodeck.appdata.xml +++ b/net.retrodeck.retrodeck.appdata.xml @@ -100,6 +100,9 @@
  • CITRA: Graphical Tweaks
  • CITRA: Standrad layout Tweaks
  • CITRA: Enabled Gyro
  • +
  • DUCKSTATION: config refactor. The old config didn't not work anymore for controllers.
  • +
  • DUCKSTATION: All controlls now go via SDL
  • +
  • DUCKSTATION: Updated to 4 controllers
  • Fixes: