Commit graph

701 commits

Author SHA1 Message Date
Connor McLaughlin 82da9a4505 D3D11: Add a shader bytecode cache class 2020-01-24 14:52:00 +10:00
Connor McLaughlin 7afb79aee6 Common: Add FileSystem::{Get,Set}WorkingDirectory functions 2020-01-24 14:50:58 +10:00
Connor McLaughlin de4e45a433 Common: Add a function to get the path to the running program 2020-01-24 14:50:57 +10:00
Connor McLaughlin d2db6bf9c3 Common/Rectangle: Add clamp methods 2020-01-22 23:57:12 +10:00
Connor McLaughlin 159786c3f1 Common/Assert: Fix incorrect windows platform detection 2020-01-17 21:36:31 +10:00
Connor McLaughlin 0861a1e579 Common: Remove unused type declarations 2020-01-13 12:01:39 +10:00
Connor McLaughlin 4de82bda6d Linux build for cubeb 2020-01-12 15:17:15 +10:00
Connor McLaughlin 1911ab2e1c CubebAudioStream: Initialize COM on Windows if it isn't already initialized 2020-01-11 14:20:51 +10:00
Connor McLaughlin 9586970a9f AudioStream: Add cubeb implementation 2020-01-11 13:51:41 +10:00
Connor McLaughlin 71c1e243fe Remove YBaseLib dependency 2020-01-10 13:40:53 +10:00
Connor McLaughlin c52040434a Core: Linux warning fixes 2020-01-09 08:46:52 +10:00
Connor McLaughlin 1b7be01507 Qt: Implement audio output 2020-01-07 14:18:51 +10:00
Connor McLaughlin f3e9c3ec8c Add initial work on Qt frontend 2019-12-31 16:18:30 +10:00
Connor McLaughlin 6176fc4486 NullAudioStream: Provide factory function 2019-12-30 00:45:50 +10:00
Connor McLaughlin 9f45c67b1d JitCodeBuffer: Fix compilation on AArch64 2019-12-27 20:38:07 +10:00
Connor McLaughlin ed7aabe5f2 Common: Add a NullAudioStream implementation 2019-12-23 17:02:11 +10:00
Connor McLaughlin ad93d83421 JitCodeBuffer: Don't leak code space on Windows 2019-12-21 22:09:08 +10:00
Connor McLaughlin decf416aee JitCodeBuffer: Expose FlushInstructionCache() to callers 2019-12-20 21:55:25 +10:00
Connor McLaughlin 1de096224c JitCodeBuffer: Fix far code pointer not being initialized without reset 2019-12-20 21:55:21 +10:00
Connor McLaughlin 6f78fea159 GL: Improve error handling with texture creation 2019-12-11 00:02:12 +10:00
Connor McLaughlin b53e32e84f GL/Program: Add IsBound() method 2019-12-07 01:36:14 +10:00
Connor McLaughlin bc44d4b1b0 CDImage: Support SBI replacement subchannel Q for cue/bin images 2019-12-06 21:14:58 +10:00
Connor McLaughlin d41a76ac5e CDImage: Fix incorrect file offset being used for pregap 2019-12-06 00:33:21 +10:00
Connor McLaughlin 2c645d9e93 JitCodeBuffer: Use __builtin___clear_cache instead of __clear_cache
The former exists on Android.
2019-12-04 20:33:02 +10:00
Connor McLaughlin f49216f5f8 CPU/Recompiler: Implement most instructions for AArch64 2019-12-04 01:50:59 +10:00
Connor McLaughlin 98e67616ec JitCodeBuffer: Flush cache after committing code on ARM CPUs
ARM's instruction and data caches are not coherent, so we need to flush
before executing to ensure there's no stale data left over.
2019-12-03 20:21:32 +10:00
Connor McLaughlin 3b11d936df Common: Add a basic ISO reader class 2019-11-29 23:36:25 +10:00
Connor McLaughlin f11d357ab9 Compile fixes for Android 2019-11-28 01:55:33 +10:00
Connor McLaughlin 457743e109 Common/CDImage: Fix double increment of sectors_read 2019-11-28 01:55:09 +10:00
Connor McLaughlin 897e75fa8e CPU/Recompiler: Fix code generation crash on Linux 2019-11-23 21:38:38 +10:00
Connor McLaughlin 11966e4caf CPU/Recompiler: Write exception exits to far code buffer
Keeps the hot path nice and clean.
2019-11-22 18:01:28 +10:00
Connor McLaughlin 878a76e258 Common: Fix issues in utility classes for readbacks 2019-11-14 16:57:58 +10:00
Connor McLaughlin 525bbf48d7 CDImage: Set data bit in Q subchannel for bin images 2019-11-13 16:28:43 +10:00
Connor McLaughlin 8e06f86db8 CDROM: Implement auto-pause at end of track 2019-11-12 20:40:37 +10:00
Connor McLaughlin 6bb4f8e728 CDImage: Support generating Q Sub-Channel 2019-11-10 22:44:53 +10:00
Connor McLaughlin 2cc5084dd1 CDImage: Handle cue sheets where pregap is in file 2019-11-10 15:16:48 +10:00
Connor McLaughlin 26c22f003f Common: Persistent-mapped stream buffer implementation 2019-11-07 00:08:13 +10:00
Connor McLaughlin cc7483ad58 GPU/HW: Only copy the dirty area to the VRAM read texture 2019-11-05 22:34:36 +10:00
Connor McLaughlin 65197d4350 Common: Add Rectangle helper class 2019-11-05 19:19:20 +10:00
Connor McLaughlin 39850af147 Common: Add GS support to D3D11 shader compiler 2019-11-05 00:23:31 +10:00
Connor McLaughlin f244da86a2 Common: Add helper classes for D3D11 2019-11-04 00:39:25 +10:00
Connor McLaughlin d68f7085d6 Common: Move GL classes to subdirectory 2019-11-03 15:22:37 +10:00
Connor McLaughlin d5150ec790 Common: Add unregistered uniform mutators to GL::Program 2019-11-03 15:18:28 +10:00
Connor McLaughlin 91c99f0226 GPU/HW: Use uniform blocks for batch rendering 2019-11-03 13:18:43 +10:00
Connor McLaughlin e3a9aa1c4f Common: Add uniform block binding to GL::Program 2019-11-03 13:14:50 +10:00
Connor McLaughlin 5abbdef065 Fix compile errors on GCC 2019-11-03 00:15:42 +10:00
Connor McLaughlin bb572d5c14 GPU: Remove hack for bitwise ops on TextureMode enum 2019-11-03 00:01:54 +10:00
Connor McLaughlin f59e08b564 Common: Add Unbind() to GL::StreamBuffer 2019-11-02 23:42:44 +10:00
Connor McLaughlin 60281eb67e Common: Use std::string_view for GL::Program 2019-11-02 23:42:21 +10:00
Connor McLaughlin 407fee9ec3 GPU: Add base functionality for GL streaming buffers 2019-11-02 22:21:56 +10:00
Connor McLaughlin d8a02d7a15 common: Add macro for generating static/friend enum class operators 2019-11-01 21:47:40 +10:00
Connor McLaughlin 273d807e31 Common: Add HeapArray class 2019-10-27 13:34:13 +10:00
Connor McLaughlin 41574d92e8 Build: Enable conformance mode 2019-10-27 01:58:28 +10:00
Connor McLaughlin f9e964e34d CDImage: Relational operators for Position 2019-10-27 00:01:32 +10:00
Connor McLaughlin 27674c2dc9 FIFOQueue: Support copying from another queue (pop -> push) 2019-10-26 17:41:29 +10:00
Connor McLaughlin 1adb1d14ae Build: Enable inlining for __inline functions in DebugFast 2019-10-26 15:42:21 +10:00
Connor McLaughlin c7a7d682bc Common: Force inlining of BitField/SignExtend/ZeroExtend functions 2019-10-26 15:41:43 +10:00
Connor McLaughlin 2500f9d3af Build: Disable LTCG on common project in Release 2019-10-26 15:36:48 +10:00
Connor McLaughlin ca48b21ffc StateWrapper: Support switching modes 2019-10-25 23:30:44 +10:00
Connor McLaughlin 9410685807 Common: Optionally create framebuffer with GL textures 2019-10-23 00:35:08 +10:00
Connor McLaughlin a76ec6fc19 Compile fixes for GCC 2019-10-22 23:07:51 +10:00
Connor McLaughlin 4f1fc7abf0 Fix CMake build 2019-10-20 22:31:45 +10:00
Connor McLaughlin b9e0c329d0 Remove unused common classes 2019-10-20 22:28:19 +10:00
Connor McLaughlin 9058a79184 Remove libsamplerate dependency 2019-10-20 22:26:49 +10:00
Connor McLaughlin 1cc3e4d5f2 CDImage: Only add implicit two seconds pregap for track 1 2019-10-20 15:32:02 +10:00
Connor McLaughlin 9b6a59329e Common: Support dual-source blend in GL::Program 2019-10-19 17:35:36 +10:00
Connor McLaughlin 9433e08782 CDROM: Implement GetTD command 2019-10-18 23:52:52 +10:00
Connor McLaughlin 4959de9859 CDROM: Implement GetTN command 2019-10-18 23:52:52 +10:00
Connor McLaughlin 246b17454e CDROM: Store filename, reduce ack cycles 2019-10-18 23:52:52 +10:00
Connor McLaughlin 513bbe44f3 Common: Refactor CDImage class to support multiple tracks/indices 2019-10-18 23:52:52 +10:00
Connor McLaughlin 0324ae2fd7 CDROM: Initial debug windows 2019-10-17 23:54:51 +10:00
Connor McLaughlin e68cddf017 Fix CMake build 2019-10-15 18:02:48 +10:00
Connor McLaughlin 2b6ebf9955 Common: Add helper functions for decoding CD-XA ADPCM 2019-10-15 17:24:11 +10:00
Connor McLaughlin b2632db0a7 build: Use C++17 for MSBuild in common library 2019-10-15 17:23:38 +10:00
Connor McLaughlin 2d9d999713 Add debug window for MDEC 2019-10-12 23:27:23 +10:00
Connor McLaughlin d88da93a55 SPU: Save state support 2019-10-11 16:54:21 +10:00
Connor McLaughlin 135e282f8d common: Add sync-to-audio support 2019-10-11 13:24:41 +10:00
Connor McLaughlin bc51cc6d7d common: Add AudioStream class 2019-10-11 02:20:10 +10:00
Connor McLaughlin e7d68ba304 common/BitField: Support sign extension 2019-10-04 23:20:42 +10:00
Connor McLaughlin 4fa79f1503 GL: Eliminiate most redundant state setting calls at draw time 2019-10-04 22:10:43 +10:00
Connor McLaughlin 0b46a8cfc4 CDROM: Implement GetlocP/GetlocL commands 2019-10-04 19:05:19 +10:00
Connor McLaughlin a23a353dbb FIFOQueue: Add PopRange 2019-09-29 18:11:07 +10:00
Connor McLaughlin 9ee8c0194e StateWrapper: Add std::array overload 2019-09-29 18:05:22 +10:00
Connor McLaughlin e11d98e5e0 StateWrapper: Fix FIFO corruption on loading 2019-09-28 16:21:09 +10:00
Connor McLaughlin 8841934009 GTE: Fix MVMVA flags due to missing 43-bit-sign-extend 2019-09-28 15:19:35 +10:00
Connor McLaughlin c02cbc57e8 GPU: Properly handle semitransparent pixels 2019-09-27 17:40:26 +10:00
Connor McLaughlin 332b5481e8 common: Log bad shaders to disk 2019-09-26 23:32:56 +10:00
Connor McLaughlin 767e8f08e0 CDROM: Move pregap handling to image class 2019-09-26 00:15:06 +10:00
Connor McLaughlin 3fb08a72a4 CDROM: Hack around missing pregap in images 2019-09-22 02:32:45 +10:00
Connor McLaughlin 2875a22987 CDROM: Reads appear to be functioning 2019-09-22 01:12:16 +10:00
Connor McLaughlin ad652c47ed Basic CD image loading 2019-09-20 20:14:00 +10:00
Connor McLaughlin e3c6035152 CDROM: Implement get version and getstat commands 2019-09-17 22:18:58 +10:00
Connor McLaughlin a0e7dff37c common: Add a FIFOQueue helper class 2019-09-17 19:22:23 +10:00
Connor McLaughlin 2128a2984b Add interrupt controller emulation 2019-09-17 16:26:00 +10:00
Connor McLaughlin 9475c281bd Build: Set /MP on projects which are missing it 2019-09-17 14:25:17 +10:00
Connor McLaughlin 5babc076f5 Bitfield: Fix incorrect shift in operator<<= 2019-09-15 12:42:43 +10:00
Connor McLaughlin 2560efbebd Save state support 2019-09-14 20:28:47 +10:00
Connor McLaughlin 851ef67814 GPU: Implement fill VRAM command 2019-09-14 16:43:53 +10:00
Connor McLaughlin ae43cc838b GPU: Partially implemented texture support 2019-09-14 02:07:31 +10:00
Connor McLaughlin aea7a18ac2 GPU: More work on OpenGL renderer 2019-09-13 01:09:07 +10:00
Connor McLaughlin 2149ab4d69 Initial commit 2019-09-11 14:00:42 +10:00