Commit Graph

93 Commits (2ef6b6aa40e2a87d339c606a8ac380eed11dd64a)

Author SHA1 Message Date
Sam Pearman 2ef6b6aa40 Region flag upgrade & correct NTSC-U to NTSC-U/C
Replace references to NTSC-U with the correct NTSC-U/C and adds Canada in user-facing strings.
Replaces all region flags with revised SVGs.
Brings the US flag down to 3:2 to match Europe and Japan.
Adds a custom split US & Canada flag for the U/C region, also 3:2.
Generated PNGs and new HiDPI PNGs for region flags.
Flag PNGs were generated by downscaling using a Lanczos filter to a width of 36/72 pixels, then a 1px grey border added, then a 2/5px transparent border.
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 17b5c749bf libretro: Re-enable hw context switch, add auto option 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 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 d9893bb127 System: Add option to use a single memory card for playlists 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 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 9496c992f7 System: Add an option to preload CD image to RAM 5 years ago
Connor McLaughlin 75a8a7fcca Settings: Make per-game memory cards for slot 1 the default 5 years ago
Connor McLaughlin 5c1c467e38 GTE: Add widescreen hack 5 years ago
Connor McLaughlin 7ba1bed37b Settings: Leave interlacing on by default
Too many games break without it.
5 years ago
Albert Liu 91f51c2833 Settings: Add 1:1 pixel aspect ratio 5 years ago
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).
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
Connor McLaughlin 2a38090e7a HostDisplay: Move most backend logic to FrontendCommon 5 years ago
Connor McLaughlin eec37df1e0 Settings: Make the recompiler the default CPU mode 5 years ago
Connor McLaughlin f6aae5e67c Settings: Add 2:1 (VRAM 1:1) display aspect ratio 5 years ago
Connor McLaughlin 77291096db Settings: Add GPU adapter option and hook up to D3D11/Vulkan 5 years ago
Connor McLaughlin 3cd5b7ae74 Core: Add Vulkan renderer types 5 years ago
Connor McLaughlin 075380f8e0 Move most helper logic from base HostInterface to FrontendCommon 5 years ago
Connor McLaughlin f9eb3719e3 HostInterface: Add software cursor mode
This will probably need to be extended in the future.
5 years ago
Connor McLaughlin 531c3ad5fa AudioStream: Replace buffer queue with ring buffer
Should achieve a decent overall minimum latency reduction.
5 years ago
Connor McLaughlin 88502e130e Settings: Fix memory cards not syncing with disc change in title mode 5 years ago
Albert Liu ee3a96011e Controller: Add NeGcon support 5 years ago
Connor McLaughlin 81a7b147fc System: Add option to disable loading memory cards from save states 5 years ago
Connor McLaughlin 8fd3a83ea8 Settings: Save DMA timing hacks to ini 5 years ago
Connor McLaughlin d781de2ce6 GameList: Add support for compatibility database 5 years ago
Connor McLaughlin c329f58afe HostInterface: Add audio buffer/count/volume/mute settings 5 years ago
Connor McLaughlin b4c31e55e2 HostDisplay: Add integer upscaling option 5 years ago
Connor McLaughlin e37962009e HostInterface: Add log lettings to ini 5 years ago
Connor McLaughlin 940b725c1d Settings: Make DMA performance parameters tweakable 5 years ago
Connor McLaughlin 8f82987341 Controller: Add basic PlayStation Mouse support
Still needs capture/relative movement for a better experience.
5 years ago
Connor McLaughlin e20fd61f0b System: Add option to use per-game memory cards with game title as filename 5 years ago
Connor McLaughlin 74e455a5f7 System: Support per-game memory cards 5 years ago
Connor McLaughlin e6bd6587fd Controller: Add emulation of Namco GunCon 5 years ago
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.
5 years ago
Connor McLaughlin 7779a54bc5 GPU: Rename 'Force Progressive Scan' to 'Disable Interlacing'
It affects rendering as well as display/scanout now, after all.
5 years ago
Connor McLaughlin fbfd838e22 GPU: Add pixel aspect ratio option
Can display in 4:3, 16:9, 1:1 ratios.
5 years ago
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).
5 years ago
Connor McLaughlin 15c33ebedb CDROM: Add "Enable Region Check" option 5 years ago
Connor McLaughlin 21ddfacd40 Settings: Add missing crop mode save 6 years ago
Connor McLaughlin 7e36195f44 HostInterface: Enable on-screen FPS/VPS/Speed display via config 6 years ago