Commit graph

2733 commits

Author SHA1 Message Date
Michael Forney 7a40a843d4 Common/FileSystem: Fix misspelling of 'separator' 2020-12-26 00:47:02 +10:00
Michael Forney d0398c8a83 Common/FileSystem: Fix canonicalization of paths beginning with ./
If we don't skip past the following separator when the destination
is empty, then `./file` gets canonicalized as `/file`.

Also, consider the case where we end up with an empty string (for
example, from `foo/..`). Canonicalize this as `.`.
2020-12-26 00:47:02 +10:00
Michael Forney 64c0ca14a3 System: Fix some bugs in GetTitleForPath
The previous implementation had a few issues in certain edge cases:
- If the path contained no '/' or '\', then the string_view constructor
  is called with a count that exceeds the length of the string
  (effectively `title_end - (char *)0`, which is undefined behavior,
  at least in C).
- If the only '/' was the filesystem root, the last character of
  the title was truncated, and the '/' remained. For example,
  "/title.bin" resulted in "/titl".
- At least in C, it is undefined behavior to use the the < operator
  with a null pointer, which is done in std::max if the path did
  not have both '/' and '\'.

The first issue results in a std::bad_alloc exception on my machine.
2020-12-26 00:47:02 +10:00
Connor McLaughlin 3f410ebbac Cheats: Add additional code types from @PugsyMAME 2020-12-26 00:47:02 +10:00
Jean-Baptiste Boric 7dcacc2cda Qt: Implement GDB server 2020-12-26 00:47:02 +10:00
Jean-Baptiste Boric abd2399aaf Core: Implement GDB protocol 2020-12-26 00:47:02 +10:00
Jean-Baptiste Boric 9b40c8ffa6 Settings: Add GDB server settings 2020-12-26 00:47:02 +10:00
Jean-Baptiste Boric 9bd28f39a5 StringUtil: Add base support and hexadecimal functions 2020-12-26 00:47:02 +10:00
Connor McLaughlin fd39f09aa7 scmversion: Second part of beta -> preview 2020-12-25 13:58:50 +10:00
PugsyMAME c0cc0a371b Fixed Slide Code cheat type
Address increment is a u8 and value increment is a u16. The changes will make this work correctly:-

50000AA4 FFFF
801CC760 0400
which is a example slide code representing:-
801CC760 0400
801CC804 03FF
801CC8A8 03FE
801CC94C 03FD
801CC9F0 03FC
801CCA94 03FB
801CCB38 03FA
801CCBDC 03F9
801CCC80 03F8
801CCD24 03F7
2020-12-25 13:53:28 +10:00
Connor McLaughlin add6754381 libretro: Remove guncon/mouse/negcon controller types
These were never supported. Use the standalone version if you want to
use these controller types.
2020-12-25 13:53:28 +10:00
Connor McLaughlin 7f6fbd6b80
Merge pull request #1289 from andercard0/patch-51
Atualização Português do Brasil
2020-12-25 13:51:02 +10:00
Connor McLaughlin 8fcb3d6690
Merge pull request #1297 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-25 13:50:51 +10:00
Albert Liu f63291b8ec CMake: Fix missing translation files 2020-12-24 12:01:33 -08:00
zkdpower 3f22f55338
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-24 13:05:50 +08:00
Anderson_Cardoso 33fdbe48a5
Atualização Português do Brasil
Update Pt-Br to the latest.
2020-12-22 16:51:05 -03:00
Connor McLaughlin 095bc280cb Qt: Fix default value of PGXP depth buffer 2020-12-23 02:26:47 +10:00
Connor McLaughlin ee5ba8d90a
Merge pull request #1284 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-23 01:44:35 +10:00
Connor McLaughlin 4f9a5d0241
Merge pull request #1285 from CookiePLMonster/memcard-slashes-fix
Memory Card Editor fixes
2020-12-23 01:44:13 +10:00
zkdpower ce4e9f4f17
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-22 23:41:05 +08:00
Silent 51eb494340
Memcard Editor: Fix relative shared paths not opening in Memcard Editor by default 2020-12-22 16:39:59 +01:00
Connor McLaughlin 744cfbd924 Frontends: Add PGXP Depth Buffer options 2020-12-23 01:39:49 +10:00
Connor McLaughlin d320d5c830 GameSettings: Add game settings/hotkey for PGXP depth 2020-12-23 01:39:49 +10:00
Connor McLaughlin aa1543271e GPU: Support emulating a depth buffer from PGXP depth values 2020-12-23 01:39:49 +10:00
Connor McLaughlin 9384f3a8e9 Qt/CheatManager: Fix checking groups not updating child nodes 2020-12-23 01:34:32 +10:00
Silent bb528fb15c
Fix inconsistent forward/backward slashes in Memcard Editor
Memcard Editor looks for an exact string match, so slashes must be
consistent.
2020-12-22 16:14:22 +01:00
Anderson_Cardoso 19980426fb
Atualização Português do Brasil
Update language Pt-Br to latest.
2020-12-21 14:53:52 -03:00
Connor McLaughlin ca84925ff8 HostDisplay: Support screenshotting 16-bit display formats 2020-12-22 03:24:51 +10:00
Albert Liu 189656cbc4 CommonHostInterface: Fully clear controller section before loading profile 2020-12-22 03:24:51 +10:00
Albert Liu a5f04f2a8e CommonHostInterface: Don't save/load input profile rumble for motorless controller types 2020-12-22 03:24:51 +10:00
Connor McLaughlin 7249825c16 Qt: Support multiple updater channels 2020-12-22 03:24:51 +10:00
Connor McLaughlin 14c227a813 scmversion: Fix incorrect tagging after stable/beta split 2020-12-22 03:24:19 +10:00
Connor McLaughlin b24245dd1d GameList: Bump cache list version
Required due to aspect ratio change.
2020-12-22 02:16:11 +10:00
Connor McLaughlin d5d9cb623d GPU/Vulkan: Fix possible framebuffer destroy-while-in-use 2020-12-22 00:56:55 +10:00
Connor McLaughlin c0d8e44548
Merge pull request #1263 from andercard0/patch-48
Atualização Português do Brasil
2020-12-22 00:53:36 +10:00
Connor McLaughlin 22c15f88dd
Merge pull request #1262 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-22 00:53:19 +10:00
Connor McLaughlin 68557eb843
Merge pull request #1266 from Margen67/ar
Use proper 21:9 aspect ratio, add 32:9
2020-12-22 00:52:36 +10:00
shikulja e3c9b75c1a update ru translation 2020-12-21 15:17:05 +03:00
Margen67 b7534015e0 Use proper 21:9 aspect ratio, add 32:9 2020-12-20 19:57:15 -08:00
Anderson_Cardoso 2a1e8047fe
Atualização Português do Brasil 2020-12-19 10:29:39 -03:00
zkdpower 3b9a9a6308
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-19 17:39:38 +08:00
Connor McLaughlin 6224d0ab89 Qt: Fix crash when switching to cheat list
Regression from 076a2ca307.
2020-12-19 19:09:34 +10:00
Connor McLaughlin 44ea51306a Qt: Add open button to memory card editor 2020-12-19 17:02:02 +10:00
Connor McLaughlin 175bc66c91 Qt: Fix some mouse presses at high click rate not registering 2020-12-19 17:02:02 +10:00
Connor McLaughlin 81aad196e8 HostInterface: Add -nocontroller CLI option to disable controller interface
Can use with buggy drivers where SDL is causing crashes.
2020-12-19 17:02:01 +10:00
Connor McLaughlin e804fdfdba GPU: Use floating point coordinates for lightgun 2020-12-19 17:02:01 +10:00
Connor McLaughlin 4860313bef NamcoGuncon: Add an option to scale X coordinates
Fixes what appears to be curvature correction at the edges of the
screen.
2020-12-19 17:02:01 +10:00
Connor McLaughlin fad3d79895 NamcoGuncon: Add button to shoot offscreen 2020-12-19 17:02:01 +10:00
Connor McLaughlin faa016eaee
Merge pull request #1255 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-19 17:01:44 +10:00
Connor McLaughlin 076a2ca307 Qt/CheatManager: Default to unsigned/hex/halfword 2020-12-19 02:44:46 +10:00
Connor McLaughlin ca61f989fc DMA: Don't panic on invalid device read/write 2020-12-19 02:44:46 +10:00
Connor McLaughlin 7c7145d1c5 MDEC: Handle invalid commands
Fixes panic in Formula 1.
2020-12-19 02:44:46 +10:00
Connor McLaughlin 980aa0a8bc Qt/CheatManager: Add manual watch address 2020-12-19 02:44:46 +10:00
Connor McLaughlin a6a0b660d2 GameList: Bump cache version
This should've happened with the aspect ratio changes.
2020-12-19 02:44:46 +10:00
zkdpower 9b20f1ffd9
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-18 16:26:08 +08:00
Connor McLaughlin 9e1987063d System: Add a libcrypt game list, and check serials
Nag the user if they're missing a sbi file.
2020-12-18 03:03:22 +10:00
Connor McLaughlin 627008f34c CDImage: Add helper for checking for SBI 2020-12-18 03:03:22 +10:00
Connor McLaughlin 4232ef7bf3 CDImageCue: Try for a file based on the cue filename if bin missing
Should work around people who have renamed the files but not updated the
cuesheet.
2020-12-18 03:03:22 +10:00
Connor McLaughlin b3edcc5841 CDROM: Don't reset audio decoder state on file/channel change
Star Wars Jedi Power Battles sends constant Setfilter commands, while
playing.
2020-12-18 03:03:21 +10:00
Connor McLaughlin d2c98639a8 Cheats: Add extension 32-bit instructions variants 2020-12-18 03:03:21 +10:00
Anderson_Cardoso feb009ce39
Atualização Português do Brasil
Updated translation latest.
2020-12-17 11:38:19 -03:00
Connor McLaughlin 681fccd5e6 Qt: Fix compilation on Qt <5.11 2020-12-17 13:05:17 +10:00
Connor McLaughlin 4b4b97540e Qt: Fix Linux build (again) 2020-12-17 12:54:36 +10:00
Connor McLaughlin 6fdb7fa801 Qt: Fix Linux build 2020-12-17 12:38:32 +10:00
Connor McLaughlin c1f802c397 Qt: Fix OSD messages not rendering in Japanese translation 2020-12-17 12:15:37 +10:00
Connor McLaughlin ea996a0305 Qt: Add debugger UI 2020-12-17 12:15:37 +10:00
Connor McLaughlin 3b23542ec9 CPU: Provide debugger/breakpoint/step functionality 2020-12-17 11:57:47 +10:00
Connor McLaughlin a8af0f7ecb HostInterface: Add debugger message callbacks 2020-12-17 11:57:47 +10:00
Connor McLaughlin fa0f177e51 HostInterface: Move PauseSystem from common to base 2020-12-17 11:57:47 +10:00
Connor McLaughlin e044858953 CPU: Add additional instruction decoder helpers 2020-12-17 11:57:46 +10:00
Connor McLaughlin 9fd1d606d7 Bus: Add memory region access helpers 2020-12-17 11:57:46 +10:00
Connor McLaughlin 6b10a1089c
Merge pull request #1240 from ggrtk/qt-japanese
Qt: Add Japanese translation by mikakunin
2020-12-17 11:37:19 +10:00
Connor McLaughlin a4b6df3e7d
Merge pull request #1239 from ggrtk/analog-controller
AnalogController: Fix config mode 0x4C response
2020-12-17 11:36:58 +10:00
Connor McLaughlin 9d7b63923a
Merge pull request #1235 from valadaa48/CRTCTicksToSystemTicks_optimization
Small optimization to GPU::SystemTicksToCRTCTicks
2020-12-17 11:36:21 +10:00
Connor McLaughlin bd8613b120
Merge pull request #1227 from ggrtk/auto-aspect-ratio
GPU: Add auto aspect ratio and various fixes
2020-12-17 11:35:48 +10:00
Albert Liu 4f26150ef1 Qt: Add Japanese translation by mikakunin 2020-12-16 16:11:49 -08:00
Albert Liu b7bccac71d AnalogController: Fix config mode 0x4C response 2020-12-16 15:11:53 -08:00
Connor McLaughlin 30472b853d Qt: Compile fix 2020-12-17 01:26:07 +10:00
Connor McLaughlin 47f0720b93 Controller: Always preserve internal state when loading/resuming
Fixes analog mode getting disabled when loading state.
2020-12-17 01:20:06 +10:00
Connor McLaughlin b78a6045fc Qt: Make some async method invokes explicitly queued 2020-12-17 01:20:06 +10:00
Connor McLaughlin 7b6d30a994 GPU/HW: Fix possible VRAM corruption when live switching resolutions
Mask bit was getting lost based on guest state.
2020-12-17 01:20:06 +10:00
shikulja cc5df71af9
update ru translation (#1216)
* update ru translation

added some new lines, fixed small typos

* Update duckstation-qt_ru.ts
2020-12-17 01:04:35 +10:00
Albert Liu de8f03bd75 GPU: Add auto (game native) aspect ratio 2020-12-16 02:40:33 -08:00
valadaa48 f5f12fd76d Small optimization to GPU::SystemTicksToCRTCTicks 2020-12-15 22:31:34 -05:00
Albert Liu b4fb1e20d8 Settings: Remove unused variables 2020-12-14 19:28:59 -08:00
Albert Liu 2c76ad204a GPU: Fix operator warning 2020-12-14 19:28:59 -08:00
Albert Liu 1c8a896a55 GPU: Wrap display VRAM coordinates properly 2020-12-14 19:28:59 -08:00
Albert Liu 866cbdca4b GPU: Prevent potential overflow in CRTC visible area calculation 2020-12-14 19:28:59 -08:00
Albert Liu 78e42d9b4c GPU: Clean up CRTC variable naming 2020-12-14 19:28:59 -08:00
Albert Liu b8abf2df95 GPU: Don't apply display offsets when not cropping 2020-12-14 19:28:58 -08:00
Connor McLaughlin e85f7da874 Update game compatibility settings 2020-12-14 02:15:25 +10:00
shikulja 4e7de5a464 Update ru translation
(LF>CRLF )
2020-12-13 18:58:57 +03:00
Connor McLaughlin d0e68c7163 GPU: Mask Y coordinates of VRAM transfers to 9-bits
Fixes GPU error and crash in hardware renderers in Remote Control
Dandy.
2020-12-14 01:35:53 +10:00
Connor McLaughlin 5164840c25 CPU/CodeCache: Don't choke on indirect branches in delay slot
Fixes emulator crash/memory usage explosion in Shadow Master.
2020-12-14 01:35:53 +10:00
Connor McLaughlin c90ed85d9d
Merge pull request #1202 from andercard0/patch-44
Atualização Português do Brasil
2020-12-14 01:35:36 +10:00
Connor McLaughlin ac2d788e3d
Merge pull request #1205 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-14 01:35:16 +10:00
GravuTrad c37cb54acf
Update duckstation-qt_fr.ts (#1210)
* Update duckstation-qt_fr.ts

Update french: all typos errors and few missing translations

* Update duckstation-qt_fr.ts

* Update duckstation-qt_fr.ts
2020-12-14 01:34:53 +10:00
zkdpower 12c294c780
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-13 11:08:04 +08:00
Anderson_Cardoso bb4be085e4
Atualização Português do Brasil 2020-12-12 16:55:19 -03:00
Connor McLaughlin 5c6ee953d0 libretro: Update compatibility settings 2020-12-13 00:47:26 +10:00
Connor McLaughlin 7e5410fc44 CPU/AArch64: Use scratch register for unfitting intermediate values
Should fix crashes with icache emulation enabled.
2020-12-13 00:36:09 +10:00
Connor McLaughlin c47efc597f
Merge pull request #1194 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-13 00:17:50 +10:00
Renzo Pigliacampo 35b9143d3e
Update spanish translation (#1189) 2020-12-13 00:15:47 +10:00
Albert Liu 62609b5008 GameSettings: Fix build warning 2020-12-12 01:00:34 -08:00
Albert Liu def9a98cb9 GameSettings: Disable analog mode forcing instead of forcing digital controller 2020-12-11 19:50:43 -08:00
Albert Liu 8716c33f41 AnalogController: Clarify option for forcing analog mode 2020-12-11 19:50:43 -08:00
Connor McLaughlin 90997d4a8b GameList: Prioritize game title cover image over database title 2020-12-12 12:23:53 +10:00
Connor McLaughlin 6e7f1501b5 SDLAudioStream: Fix volume not applying 2020-12-12 11:50:48 +10:00
Connor McLaughlin eefbd8f6a6 CubebAudioStream: Use cubeb's volume control 2020-12-12 11:50:37 +10:00
Connor McLaughlin 907e0de35a FrontendCommon: Fix volume hotkeys starting at 0% when muted 2020-12-12 11:50:20 +10:00
Connor McLaughlin f4d540bcc6 Qt: Fix mute toggle having inverse effect 2020-12-12 11:49:50 +10:00
Connor McLaughlin 58b24d6ac9 Qt: Fix volume controls updating incorrect volume 2020-12-12 11:49:34 +10:00
Connor McLaughlin 420525e672 DigitalController: MSVC warning fix 2020-12-12 11:37:38 +10:00
zkdpower 49fda513ee
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-11 08:33:03 +08:00
Albert Liu 191e6b0496 DigitalController: Add option to force as Pop'n Controller 2020-12-09 23:39:11 -08:00
Connor McLaughlin e2a2972b38
Merge pull request #1180 from andercard0/patch-43
Atualização Português do Brasil
2020-12-10 01:22:05 +10:00
Connor McLaughlin 50bcdc0abb MDEC: Adjust 16bpp timing
Fixes jittery movement in Parasite Eve II opening.
2020-12-09 20:29:32 +10:00
Connor McLaughlin 59c338f461 Cheats: Support double conditional D0/D1/D2/D3/E0/E1/E2/E3/D4 2020-12-09 20:22:43 +10:00
Anderson_Cardoso 654c3f2ad6
Atualização Português do Brasil 2020-12-08 21:36:46 -03:00
Connor McLaughlin 98766a490f Log: Change success to verbose and move down in ordering 2020-12-09 01:03:32 +10:00
Connor McLaughlin 678146b907 HostInterface: Add separate volume control for fast forwarding 2020-12-09 01:03:32 +10:00
Connor McLaughlin b79d025e66
Merge pull request #1174 from ggrtk/analog-controller
AnalogController: Disallow analog-to-dpad in config mode
2020-12-09 00:22:57 +10:00
Connor McLaughlin 8e79059fe3
Merge pull request #1166 from CookiePLMonster/xinput-button-fix
XInput: Fix mapping buttons to axes
2020-12-09 00:22:14 +10:00
Connor McLaughlin 419736aaee GPU/Software: Ensure commands are always aligned to 4 bytes 2020-12-09 00:19:57 +10:00
Albert Liu 18a4ff76e2 AnalogController: Disallow analog-to-dpad in config mode 2020-12-08 02:36:19 -08:00
Silent a4124fdc1b
Another fix for XInput backend 2020-12-07 18:08:48 +01:00
Connor McLaughlin 98d6b49987 System: Log FPS/frame times every second 2020-12-08 01:47:28 +10:00
Connor McLaughlin 7daa169cda
Merge pull request #1163 from ggrtk/gpu-tex-palette-reg-y
GPU: Fix GPUTexturePaletteReg y BitField width
2020-12-08 01:42:10 +10:00
Connor McLaughlin e7ae9b33a1
Merge pull request #1160 from zkdpower/master
Update Simple-Chinese language file to latest
2020-12-08 01:41:56 +10:00
Albert Liu 93f46c142c GPU: Fix GPUTexturePaletteReg y BitField width 2020-12-06 22:20:23 -08:00
zkdpower 0d2e835637
Update Simple-Chinese language file to latest
Update Simple-Chinese language file to latest
2020-12-07 01:31:27 +08:00
Connor McLaughlin 50273899c6
Merge pull request #1158 from andercard0/patch-38
Tradução Português do Brasil
2020-12-07 02:48:10 +10:00
Connor McLaughlin b44a654943 System: Reset throttler when audio buffers underflow
Should hopefully reduce the chances of the audio source ending up out of
phase from the emulation when vsync is disabled.
2020-12-07 02:44:23 +10:00
Connor McLaughlin c8f33e340b Revert "CommonHostInterface: Don't use sleep throttle when syncing to audio at standard speed"
This reverts commit 922e17f677.
2020-12-07 02:44:23 +10:00
Anderson_Cardoso 8f56d2c659
Tradução Português do Brasil
Update to latest.
2020-12-06 12:42:01 -03:00
Connor McLaughlin f002b4ca4b
Merge pull request #1150 from andercard0/patch-37
Atualização Português do Brasil
2020-12-07 01:09:46 +10:00
Connor McLaughlin e579cd2eb2 CDImageHasher: Only ignore index 0 for track 1 2020-12-07 00:44:48 +10:00
Connor McLaughlin 0fbb69a3ef Qt: Add option to hide the mouse cursor in fullscreen 2020-12-07 00:06:32 +10:00
Connor McLaughlin a511882cb8 D3D11HostDisplay: Add an option to force a blit/discard swap chain 2020-12-06 23:46:23 +10:00
Connor McLaughlin 3ccfc42b0f D3D11HostDisplay: Use shader cache for postprocessing shaders 2020-12-06 23:37:41 +10:00
Connor McLaughlin 737a87b483 CommonHostInterface: Add a hotkey to toggle all cheats 2020-12-06 23:32:32 +10:00
Connor McLaughlin 922e17f677 CommonHostInterface: Don't use sleep throttle when syncing to audio at standard speed 2020-12-06 18:18:18 +10:00
Connor McLaughlin f5ccb6ea60 CPU: Fall back to mmap'ed buffer if reprotecting code space fails 2020-12-06 18:13:07 +10:00
Connor McLaughlin 09495b1d93 Cheats: Implement C1 command 2020-12-06 15:50:58 +10:00
Connor McLaughlin ea9829946d Cheats: Implement D4/D5/D6 code types 2020-12-06 15:47:00 +10:00
Anderson_Cardoso f0c2fb23e3
Atualização Português do Brasil 2020-12-05 13:51:47 -03:00
Connor McLaughlin fd6462263f Common/Event: Fix TryWait not returning on timeout on Linux
Fixes a potential deadlock in the Qt frontend if initialization on the
emu thread takes too long.
2020-12-06 00:41:07 +10:00
Connor McLaughlin a90c25d0e7 SPU: Ignore manually set loop address only on first block
Fixes occasional missing dialogue in Valkyrie Profile.
2020-12-06 00:35:54 +10:00
Connor McLaughlin d7bd21c06d Timers: Update when sync is used with sysclk source
Fixes hang at boot in Zoku Mikagura Shoujo Tanteidan - Kanketsuhen.
2020-12-06 00:35:54 +10:00
Connor McLaughlin 5e05a14f97 GPU: Fix incorrect draw time approximation of lines
Fixes flickering pre-mission screen in Omega Boost.
2020-12-06 00:35:54 +10:00