Commit Graph

255 Commits (05259bc851fc60ee190948d34b739b53ecf112ed)

Author SHA1 Message Date
Connor McLaughlin cdefcf7359 HostInterface: Log when all enhancements are disabled by config 5 years ago
Albert Liu 79012d5288 BIOS: Add check for older BIOS from PS3
Same revision number as newer PS3, but different file size and 512KB
hash.
5 years ago
Connor McLaughlin 8f5c20bdf5 BIOS: Improve robustness of BIOS searching
Always prefer a known BIOS image over an unknown image. Hopefully this
will stop people getting crashes on startup due to other files in the
BIOS directory confusing it.
5 years ago
Connor McLaughlin 5cd261a5b2 BIOS: Only match PS1 and PS2 BIOS images exactly 5 years ago
Connor McLaughlin 3cb2cd8235 GPU: Add adaptive and box downsampling modes 5 years ago
Connor McLaughlin 68ce959d70 Settings: Add option to temporarily disable all enhancements 5 years ago
Albert Liu 0e2276fc7a BIOS: Add support for loading PS2 BIOSes 5 years ago
Albert Liu 4db29f9399 HostInterface: Check all console regions when looking for any BIOS 5 years ago
Connor McLaughlin ca42d027ac Qt: Implement relative mouse mode 5 years ago
Connor McLaughlin 702ed21207 HostDisplay: Add threaded presentation for Vulkan renderer
Can add a significant speedup for fast forward. Automatically disabled
when vsync is enabled.
5 years ago
Connor McLaughlin a385573672 Qt: Add texture replacement options to advanced settings 5 years ago
Connor McLaughlin aa1543271e GPU: Support emulating a depth buffer from PGXP depth values 5 years ago
Connor McLaughlin a8af0f7ecb HostInterface: Add debugger message callbacks 5 years ago
Connor McLaughlin fa0f177e51 HostInterface: Move PauseSystem from common to base 5 years ago
Connor McLaughlin 678146b907 HostInterface: Add separate volume control for fast forwarding 5 years ago
Connor McLaughlin 8b3426a96e System: Reinitialize code cache on hw settings change/disc swap
Basically, anything which could allocate large amounts of memory and
potentially overlap with our fastmem area.
5 years ago
Connor McLaughlin af6b0dc189 Qt: Add option to pause on application focus loss 5 years ago
Connor McLaughlin 362905e3df GPU: Add display line offset game setting
Use when games need additional cropping.
5 years ago
Connor McLaughlin a2666de7c8 HostInterface: Make mmap fastmem unavailable a warning instead of OSD message 5 years ago
Connor McLaughlin f0ff7ce231 PGXP: Add geometry tolerance setting 5 years ago
Connor McLaughlin bf2e38aed5 CPU/Recompiler: Implement LUT-based fastmem 5 years ago
Connor McLaughlin 2595e31575 GPU: Split software to frontend/backend 5 years ago
Connor McLaughlin 2b66492ed8 HostInterface: Add proper turbo speed setting 5 years ago
Connor McLaughlin 2c8a4ff154 HostDisplay: Add an option to decouple display fps from emulator fps
Makes Android so much faster...
5 years ago
Connor McLaughlin ae1e4b1b8f GPU: Add chroma smoothing for 24-bit display enhancement 5 years ago
Connor McLaughlin 2b2a868fef HostInterface: Fix incorrect translation context in CPU mode switch string 5 years ago
Connor McLaughlin 2eaebd8921 GPU: Implement support for multisample antialiasing 5 years ago
Albert Liu df1c5c0f45 HostInterface: Fix PAL BIOS path not being read from settings 5 years ago
Connor McLaughlin 29467d40c8 DMA: Add debug window 5 years ago
Connor McLaughlin be3dd3e06f HostInterface: Fix a possible crash when renderer recreation fails 5 years ago
Albert Liu f69889264d Core: Make some additional OSD messages translatable 5 years ago
Connor McLaughlin 7566c45f64 CPU/Recompiler: Implement fastmem 5 years ago
Connor McLaughlin 13a9411b07 Android: Add BIOS importer 5 years ago
Connor McLaughlin 4f0007dd55 PGXP: Make preserving pre-divide fractional coordinates an option
Fixes holes in geometry in Crash Team Racing with PGXP on.
5 years ago
Connor McLaughlin 8ba93b36a0 CDROM: Add option to speed up double speed reads 5 years ago
Connor McLaughlin ca0bfc39a2 CDROM: Add a setting and hotkey to mute CD audio 5 years ago
Connor McLaughlin c051538d03 HostInterface: Mark some more OSD messages as being translatable 5 years ago
Connor McLaughlin 27697d0508 System: Implement CPU overclocking [SAVEVERSION+]
Partial credit to @CookiePLMonster as well.
5 years ago
Connor McLaughlin d73271ec0a GPU: Add option to force 4:3 for 24-bit content (e.g. FMVs) 5 years ago
Connor McLaughlin 40d157aa23
Merge pull request #875 from CookiePLMonster/more-slashes
Fix an outstanding forward slash showing in the UI
5 years ago
Connor McLaughlin d728bc091b BIOS: Add option to set search directory elsewhere 5 years ago
Silent e6431e3599
Fix an outstanding forward slash showing in the UI 5 years ago
Connor McLaughlin 78f06fb711 libretro: Fix breakage with new BIOS detection 5 years ago
Connor McLaughlin 7d01bedf07 BIOS: Automatically detect images, improve selection UI 5 years ago
Silent 92d0dabf54
Make path separators in UI more consistent 5 years ago
Connor McLaughlin 441f26706e Qt: Move post processing to its own setting category 5 years ago
Connor McLaughlin 2819715260 FrontendCommon: Add a post processing implementation 5 years ago
Connor McLaughlin 6f250a4ff7 GPU/HW: Add JINC2 and xBRZ texture filtering options
Shaders ported from beetle-psx.
5 years ago
Connor McLaughlin 9bb278b166 CommonHostInterface: Fix crash on shutdown when using save state selector 5 years ago
Connor McLaughlin a2eaaf0e89 PGXP: Allocate large storage dynamically
This causes performance issues on ARM otherwise.
5 years ago
Connor McLaughlin 13e3095801 Core: Don't link to imgui for libretro core 5 years ago
Connor McLaughlin 19d6037b99 CPU: Implement instruction cache simulation
Implemented for all execution modes. Disabled by default in the cached
interpreter and recompiler, always enabled in the pure interpreter.
5 years ago
Connor McLaughlin ab002e78e1 Support translating strings in emulator core 5 years ago
Connor McLaughlin bca609a2a6 Qt: Add option to disable per-game settings 5 years ago
Connor McLaughlin c3ce9135bf Fix recompiler not auto-disabling with PGXP-CPU mode 5 years ago
Connor McLaughlin 60d3fffec1 Add per-game overrides (mainly for compatibility) 5 years ago
Connor McLaughlin 2e9f656546 CPU: Implement PGXP CPU Mode
This is *very* slow. You don't want to enable it if you don't need it.
It is also incompatible with the recompiler and will disable it if the
option is enabled.
5 years ago
Connor McLaughlin 10a46a7fd8 OSD: Add option to show display resolution 5 years ago
Connor McLaughlin 26aa627deb GPU/HW: Include resolution in scale change message 5 years ago
Connor McLaughlin f5fb8186c7 Switch some messages to the OSD and increase durations 5 years ago
Connor McLaughlin d9893bb127 System: Add option to use a single memory card for playlists 5 years ago
Connor McLaughlin d1ee6c0da7 GPU/HW: Make settings update slightly safer 5 years ago
Connor McLaughlin 3a020ef87e HostInterface; Fix crash on shutdown if boot fails 5 years ago
Connor McLaughlin 5c6e92cdfc GPU/HW: Disable coordinate clamping when unnecessary 5 years ago
Connor McLaughlin 1d5f810a4b CPU/Recompiler: Disable memory access exceptions by default
This means it'll no longer pass amidog's CPU test in the default config.
But no games rely on this. You can enable it in advanced options if you
want to pass the CPU test.
5 years ago
Connor McLaughlin e5c46a54b7 System: Restore/reset state on recreating GPU/updating settings
Fixes display corruption on RetroArch when switching renderers.
5 years ago
Connor McLaughlin 0c1b637549 PGXP: Add initial implementation 5 years ago
Connor McLaughlin b6f871d2b9
JIT optimizations and refactoring (#675)
* CPU/Recompiler: Use rel32 call where possible for no-args

* JitCodeBuffer: Support using preallocated buffer

* CPU/Recompiler/AArch64: Use bl instead of blr for short branches

* CPU/CodeCache: Allocate recompiler buffer in program space

This means we don't need 64-bit moves for every call out of the
recompiler.

* GTE: Don't store as u16 and load as u32

* CPU/Recompiler: Add methods to emit global load/stores

* GTE: Convert class to namespace

* CPU/Recompiler: Call GTE functions directly

* Settings: Turn into a global variable

* GPU: Replace local pointers with global

* InterruptController: Turn into a global pointer

* System: Replace local pointers with global

* Timers: Turn into a global instance

* DMA: Turn into a global instance

* SPU: Turn into a global instance

* CDROM: Turn into a global instance

* MDEC: Turn into a global instance

* Pad: Turn into a global instance

* SIO: Turn into a global instance

* CDROM: Move audio FIFO to the heap

* CPU/Recompiler: Drop ASMFunctions

No longer needed since we have code in the same 4GB window.

* CPUCodeCache: Turn class into namespace

* Bus: Local pointer -> global pointers

* CPU: Turn class into namespace

* Bus: Turn into namespace

* GTE: Store registers in CPU state struct

Allows relative addressing on ARM.

* CPU/Recompiler: Align code storage to page size

* CPU/Recompiler: Fix relative branches on A64

* HostInterface: Local references to global

* System: Turn into a namespace, move events out

* Add guard pages

* Android: Fix build
5 years ago
Connor McLaughlin 8802177e25 BIOS: Add more revision filenames/hashes 5 years ago
Connor McLaughlin 104b80f111 HostInterface: Move 'System shut down' message to SDL
Only frontend where it makes sense anyway.
5 years ago
Connor McLaughlin 9496c992f7 System: Add an option to preload CD image to RAM 5 years ago
Connor McLaughlin 68d98af497 Qt: Remove usage of QString where possible for settings 5 years ago
Connor McLaughlin bddd098a66
Merge branch 'master' into qt-inisettings 5 years ago
Connor McLaughlin 5c1c467e38 GTE: Add widescreen hack 5 years ago
Albert Liu 9b2740b395 HostInterface: Save tweak/hack defaults to settings file
Fixes tweak/hack defaults not displaying correctly in Qt frontend.
5 years ago
Connor McLaughlin 7ba1bed37b Settings: Leave interlacing on by default
Too many games break without it.
5 years ago
Connor McLaughlin b0b3901722 libretro: Fix DualShock analog mode auto-enable 5 years ago
Connor McLaughlin f396a2c373 Renderers: Make shader cache path a prefix instead of directory 5 years ago
Connor McLaughlin b471d1043a Settings: Load Memory Cards From State -> Load Devices From State
Makes it apply to controllers too.
5 years ago
Connor McLaughlin e374853cf5 HostInterface: Better configuration of custom crosshair/software cursor 5 years ago
Connor McLaughlin 0b11a14e24 Qt: Better handling of default settings not in ini 5 years ago
Connor McLaughlin 4dc9e10777 HostInterface: Support per-controller-type settings 5 years ago
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.
5 years ago
Connor McLaughlin eec37df1e0 Settings: Make the recompiler the default CPU mode 5 years ago
Connor McLaughlin 49d11988bf Core: Add Vulkan GPU renderer 5 years ago
Connor McLaughlin 075380f8e0 Move most helper logic from base HostInterface to FrontendCommon 6 years ago
Connor McLaughlin f9eb3719e3 HostInterface: Add software cursor mode
This will probably need to be extended in the future.
6 years ago
Connor McLaughlin 531c3ad5fa AudioStream: Replace buffer queue with ring buffer
Should achieve a decent overall minimum latency reduction.
6 years ago
Connor McLaughlin 6acd8b27dd Qt: Prevent lag disabling power on buttons when starting 6 years ago
Connor McLaughlin 81a7b147fc System: Add option to disable loading memory cards from save states 6 years ago
Connor McLaughlin b17a5832e5 System: Simplify save state booting
Fixes memory card warning messages on load state.
6 years ago
Connor McLaughlin 2795dea124 HostInterface: Prioritize SCPH-3000 over SCPH-1000 for NTSC-J 6 years ago
Connor McLaughlin 1c50a09c2e HostInterface: Set user directory to Documents\DuckStation 6 years ago
Connor McLaughlin f7a2448dfb HostInterface: Pull compatibility database from program directory
Fixes compatibility list not reading on Linux.
6 years ago
Connor McLaughlin d781de2ce6 GameList: Add support for compatibility database 6 years ago
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.
6 years ago
Connor McLaughlin db9d637f92 HostInterface: Fix mute not applying on startup 6 years ago
Connor McLaughlin c329f58afe HostInterface: Add audio buffer/count/volume/mute settings 6 years ago
Connor McLaughlin 0f5bc7267f HostInterface: Fix hang when switching audio backends 6 years ago
Connor McLaughlin d8ab587153 HostInterface: Modify settings loading interface to support per-frontend settings 6 years ago