1129 Commits

Author SHA1 Message Date
Connor McLaughlin
22a0d8f93c CDROM: Implement Sync/00h command 2020-03-28 02:24:36 +10:00
Connor McLaughlin
0b347e2151 GPU/HW: Implement flipped quad coordinate hack from beetle-psx
Fixes graphical glitches around the edges of flipped sprites.
2020-03-28 02:24:22 +10:00
Connor McLaughlin
f23bcc0faa SPU: Ignore loop start flag when repeat address is explicitly set
Fixes dialog/softlock in Thousand Arms.
2020-03-27 01:42:59 +10:00
Connor McLaughlin
08ad5aad53 SPU: Run muted voices when IRQ is enabled
Fixes SPU timeout in Casper. We can still optimize for most games where
interrupts are not used by completely ignoring muted voices in those.
2020-03-27 01:42:43 +10:00
Connor McLaughlin
54abd37daa GPU: Let the GPU drive DMA transfers for large time slices
Fixes FMV breakage... again.
2020-03-26 00:13:20 +10:00
Connor McLaughlin
d4ae0f13fe MDEC: Refactoring and fixes 2020-03-26 00:13:07 +10:00
Connor McLaughlin
c81efb1142 DMA: Enable block splitting for linked list mode 2020-03-26 00:13:03 +10:00
Connor McLaughlin
88f1edd48d System: Include console region in save state
Fixes #149.
2020-03-25 01:49:20 +10:00
Connor McLaughlin
7cd7dec668 HostInterface: Restore pause state after switching renderers
Fixes #148.
2020-03-25 01:48:51 +10:00
Connor McLaughlin
18cc3d5932 SPU: Stub out external volume registers
If nothing else, it'll avoid spamming the log.
2020-03-24 00:22:02 +10:00
Connor McLaughlin
7317c83a3c SPU: Implement internal volume sweep register reads
Fixes muted audio in Michelin Rally Masters.
2020-03-24 00:21:52 +10:00
Connor McLaughlin
452c6e16d1 GPU: Fix blitter ticks not being counted
Fixes Monkey Hero, again...
2020-03-24 00:21:42 +10:00
Connor McLaughlin
4c2597acf3 SPU: Process key on/off at next 44100hz cycle
Some games, particularly CART World Series and Monkey Hero, depend on
this behaviour.
2020-03-24 00:21:32 +10:00
Connor McLaughlin
c8af4abad8 CDROM: Don't queue up a second INT1 when one is still pending 2020-03-24 00:21:22 +10:00
Connor McLaughlin
40d6be7142 System: Frame pacing improvements 2020-03-24 00:21:11 +10:00
Connor McLaughlin
cbb9b96537 System: Include buffer swap time in frame time measurement 2020-03-24 00:20:56 +10:00
Connor McLaughlin
9ce63952fb TimingEvent: Fix events losing time when rescheduling outside handler 2020-03-24 00:20:45 +10:00
Connor McLaughlin
612b362ae9 Timers: Sync GPU on register write too 2020-03-24 00:20:27 +10:00
Connor McLaughlin
e2e2b573c0 GPU/HW: Move drawing offset to CPU-side
Saves updating the uniform buffer.
2020-03-24 00:20:15 +10:00
Connor McLaughlin
40481305c4 GPU/HW: Fudge texture coordinates by half a screen-space pixel
Fixes holes in triangles in some games, e.g. Disney's The Emperor's New
Groove.
2020-03-24 00:20:12 +10:00
Connor McLaughlin
7ac48cd8d6 SPU: Swap read/write ready bits
Nocash might be incorrect here.
2020-03-23 00:29:18 +10:00
Connor McLaughlin
7a89c787b8 SPU: Fix some reverb registers not being saved to state 2020-03-23 00:29:10 +10:00
Connor McLaughlin
d47a82d591 SPU: Implement noise functionality 2020-03-23 00:29:00 +10:00
Connor McLaughlin
0a6295a9b4 SPU: Implement volume sweep functionality 2020-03-23 00:28:51 +10:00
Connor McLaughlin
a5083f0ee4 Qt: Remove ? button in title bar 2020-03-22 22:40:45 +10:00
Connor McLaughlin
701491156a Qt: Use menu font instead of system font as default font 2020-03-22 22:40:29 +10:00
Connor McLaughlin
7b9be0a586 Qt: Add per-page help to settings dialog 2020-03-22 22:19:46 +10:00
Connor McLaughlin
1d9bcb2a48 Qt: Force redraw the display when restoring after minimized 2020-03-22 21:50:49 +10:00
Connor McLaughlin
361bedc2c3 SDLControllerInterface: Hackfix for non-player-id supporting controllers 2020-03-22 21:31:54 +10:00
Connor McLaughlin
8b836555f6 Qt: Disable auto-fill background and set WA_NoSystemBackground 2020-03-22 21:25:10 +10:00
Connor McLaughlin
74e0e83cfd Qt: Use same imgui style as SDL 2020-03-22 13:20:08 +10:00
Connor McLaughlin
e662f34f8b Qt: Add help for general settings 2020-03-22 13:20:08 +10:00
Connor McLaughlin
4629cdfffc Qt: Add help text section to settings dialog 2020-03-22 13:20:08 +10:00
Connor McLaughlin
d5c76bf7d5 Qt: Increase default size of settings dilaog 2020-03-22 13:20:08 +10:00
Connor McLaughlin
c646bf507f Qt: Add OSD options to general settings 2020-03-22 13:20:08 +10:00
Connor McLaughlin
a4a5d3ef79 Qt: Split some console settings out into general settings 2020-03-22 13:20:08 +10:00
Connor McLaughlin
bf2f9bd8d9 Qt: Add 'Refresh' button to toolbar for reloading game list 2020-03-22 13:20:08 +10:00
Connor McLaughlin
7e36195f44 HostInterface: Enable on-screen FPS/VPS/Speed display via config 2020-03-22 13:20:08 +10:00
Connor McLaughlin
9fd95c3e21 Common/Rectangle: Fix off-by-one error in Intersects() 2020-03-22 13:20:08 +10:00
Connor McLaughlin
77a60f0c5f HostInterface: Crash fix again for controller switching 2020-03-22 13:15:44 +10:00
Connor McLaughlin
acd49f3765 Qt: Fix possible crash when loading state via menu 2020-03-22 13:10:28 +10:00
Connor McLaughlin
12ddeb675c HostInterface: Fix controller not updating when switched and system running 2020-03-22 12:54:26 +10:00
Connor McLaughlin
46f921fb95 SDLControllerInterface: Fix crash on shutdown 2020-03-22 12:54:25 +10:00
Connor McLaughlin
8190efa5dc SDLControllerInterface: Fix compilation on Ubuntu LTS 2020-03-22 12:28:10 +10:00
Connor McLaughlin
ad6e4cb6e4 Qt: Add "Clear All" and "Rebind All" to controller bindings 2020-03-22 00:50:09 +10:00
Connor McLaughlin
45050709f2 Qt: Add support for clearing input bindings with right click 2020-03-22 00:49:55 +10:00
Connor McLaughlin
29a09a3685 Introduce ControllerInterface class, port SDL interface over
This breaks controller support in the SDL frontend until it's ported
over to the common interface.
2020-03-22 00:49:46 +10:00
Connor McLaughlin
a4486cf6fa CDROM: Don't miss last three frames at end of sector 2020-03-21 12:31:40 +10:00
Connor McLaughlin
8ef1e71ce0 DMA: Channels other than OTC should run based on request in SyncMode 0 2020-03-21 00:15:49 +10:00
Connor McLaughlin
f4d172df2f DMA: Fix underflow when block_count == 0 2020-03-21 00:15:42 +10:00
Connor McLaughlin
904ab982e6 GPU: Fix crash when fill rectangles are out-of-bounds 2020-03-21 00:15:35 +10:00
Connor McLaughlin
d67bcd654c GPU: Prevent emulator locking up when switching between PAL/NTSC mode 2020-03-20 01:12:41 +10:00
Connor McLaughlin
bad5b30a61 CDROM: Fix incorrect volume matrix update/application
Fixes #90.
2020-03-19 00:28:57 +10:00
Connor McLaughlin
3223f87eeb CDROM: Simplify register indexing for write 2020-03-19 00:28:41 +10:00
Connor McLaughlin
1ee68ad12a CommonHostInterface: Add Screenshot hotkey 2020-03-18 22:28:03 +10:00
Connor McLaughlin
afe2f96474 Qt: Fix display not updating after resize when paused
Fixes #104.
2020-03-18 22:27:45 +10:00
Connor McLaughlin
b86e0bc846 SPU: Implement reverb
Possibly still not complete.
2020-03-17 12:48:03 +10:00
Connor McLaughlin
c9e5e3a43e CDROM: Add missing disc/console region check
Fixes #106.
2020-03-17 12:47:46 +10:00
Connor McLaughlin
282998d0bb Qt: Add screenshot button 2020-03-16 00:06:39 +10:00
Connor McLaughlin
ffb760c79d SDL: Add screenshot to menu 2020-03-16 00:04:16 +10:00
Connor McLaughlin
6b68512ac1 HostInterface: Add SaveScreenshot() method 2020-03-16 00:03:57 +10:00
Connor McLaughlin
2bb992a702 HostDisplay: Add texture dumping/saving support 2020-03-16 00:03:49 +10:00
Connor McLaughlin
b4153266a0 GL/Texture: Add a GetTextureSubImage fallback/helper 2020-03-16 00:03:25 +10:00
Connor McLaughlin
212fddd195 D3D11/StagingTexture: Add auto-resizing staging texture 2020-03-16 00:03:16 +10:00
Connor McLaughlin
97c435a154 CMake: Linux build fix 2020-03-16 00:02:55 +10:00
Connor McLaughlin
fe2e6561d3 Qt: Add audio dumping options 2020-03-15 22:04:32 +10:00
Connor McLaughlin
c4af353d54 SDL: Add audio dumping options 2020-03-15 22:04:25 +10:00
Connor McLaughlin
8e20d0d4ff SPU: Add audio dumping support 2020-03-15 22:04:17 +10:00
Connor McLaughlin
198a64eb5e HostInterface: Add a helper function for generating timestamp-based filenames 2020-03-15 22:03:53 +10:00
Connor McLaughlin
c7a74cabaa Common: Add WAVWriter class 2020-03-15 22:03:22 +10:00
Connor McLaughlin
6a6aa72f3a SPU: Add a tick counter and delay between key on/off writes
Not yet tested on hardware. We believe that writing to a specific
voice's key on/off register within 2 samples/ticks of the first
write will result in the second write being ignored. This still
needs to be tested on hardware for confirmation.

Thanks to @PSI-Rockin for the idea.

Fixes sound effects in Monkey Hero.
2020-03-14 15:33:24 +10:00
Connor McLaughlin
d42f155512 SPU: Use "ticks" instead of "sample" in variable names 2020-03-14 15:23:23 +10:00
Connor McLaughlin
90d6babfb0 SPU: Always run, not only when enabled 2020-03-14 15:01:23 +10:00
Connor McLaughlin
c3cb6ef393 Qt: Fix debug menu not updating selected GPU renderer
Fixes #93.
2020-03-14 12:34:41 +10:00
Connor McLaughlin
90121aa169 GPU: Fix VRAM display in software renderer 2020-03-13 23:21:44 +10:00
Connor McLaughlin
e076526898 CDROM: Rework sector buffering behavior
This has not been tested on hardware yet, but fixes a couple of games.
2020-03-12 15:33:07 +10:00
Connor McLaughlin
86eefbd5d7 System: Fix a possible assertion failure loading state 2020-03-12 15:32:37 +10:00
Connor McLaughlin
21ecf231d9 Qt: Show game list scanning progress visually 2020-03-12 15:32:34 +10:00
Connor McLaughlin
0e3bcfa7b5 Qt/HostInterface: Track main window pointer 2020-03-12 15:32:30 +10:00
Connor McLaughlin
9e08ae6188 GameList: Use ProgressCallback interface when scanning 2020-03-12 15:32:19 +10:00
Connor McLaughlin
f71a03202b Qt: Add ProgressCallback implementation 2020-03-12 15:32:15 +10:00
Connor McLaughlin
8028b7b4a3 Common: Add ProgressCallback class 2020-03-12 13:54:27 +10:00
Connor McLaughlin
8f39a0f154 Qt: Properly implement "Start Fullscreen" 2020-03-12 13:53:58 +10:00
Connor McLaughlin
2480624cbe Qt: Replace QWindow for display with QWidget base
Not as elegant, but it solves the input focus issue.
2020-03-12 13:53:51 +10:00
Connor McLaughlin
db1070a683 Settings: Fix start paused not applying 2020-03-12 13:53:43 +10:00
Connor McLaughlin
3effa1238f CDROM: Return correct SCEx string based on disc region
Fixes SCEI/SCEE displaying as SCEE in BIOS.
2020-03-12 13:51:53 +10:00
Connor McLaughlin
419422a2d7 CDROM: Return console region string based on system 2020-03-12 13:51:38 +10:00
Connor McLaughlin
e0a339ca96 GameList: Seperate disc region and console region 2020-03-12 13:51:29 +10:00
Connor McLaughlin
e8a5259e68 Qt: Show save times in save state menu as well 2020-03-12 13:51:23 +10:00
Connor McLaughlin
b2d0dd2d6c Qt/GameList: Update entry rather than ignoring same directory added twice 2020-03-10 23:10:20 +10:00
Connor McLaughlin
ed0abf3912 Qt: Fix possible assertion failure when removing search directories 2020-03-10 22:59:17 +10:00
Connor McLaughlin
bd25aa2f9d Qt: Include .chd in disc image filter
Fixes #77.
2020-03-10 00:18:13 +10:00
Connor McLaughlin
c2370c598e CDROM: Don't crash when stopping with no media
Fixes #76.
2020-03-10 00:09:27 +10:00
Connor McLaughlin
e98c753d3d CDROM: Delay the first CDDA report by one second
Needs hardware testing...
2020-03-09 00:01:28 +10:00
Connor McLaughlin
776159265a CDROM: Skip pregap when processing CDDA 2020-03-09 00:01:26 +10:00
Connor McLaughlin
b81071a65c CDImage: Assume 2 second pregap between tracks if none specified 2020-03-09 00:01:23 +10:00
Connor McLaughlin
631865469d CDROM: Bump up ACK delay timing 2020-03-08 18:07:39 +10:00
Connor McLaughlin
4eeaa38ccd CDROM: Don't persist seek error bit in secondary status
Fixes Viewpoint (#56).
2020-03-08 15:54:09 +10:00
Connor McLaughlin
2249b873ff D3D11/StreamBuffer: Check feature support for MAP_NO_OVERWRITE before using 2020-03-08 12:51:14 +10:00
Connor McLaughlin
99d42c07c2 D3D11/StreamBuffer: Use WRITE_DISCARD at position 0 2020-03-08 12:38:01 +10:00
Connor McLaughlin
e19175edae GPU/D3D11: Fix non-vertical line rendering at >1x scale 2020-03-08 00:03:31 +10:00
Connor McLaughlin
34ae0dae13 CDROM: Fix upper bound for XA audio frames and sync SPU 2020-03-07 17:29:41 +10:00
Connor McLaughlin
6fa8031569 GPU/D3D11: Fix uniform buffer creation on Win7 2020-03-07 16:05:54 +10:00
Connor McLaughlin
eb6dbbfb13 CDROM: Set seeking bit in stat when seeking 2020-03-07 15:10:49 +10:00
Connor McLaughlin
c700913322 CDROM: Implement SetSession command 2020-03-07 15:10:19 +10:00
Connor McLaughlin
d0f420de10 CDROM: Log invalid command identifiers 2020-03-07 14:00:15 +10:00
Connor McLaughlin
6bb6249e86 GPU/HW: Print capabilities to log 2020-03-07 12:54:15 +10:00
Connor McLaughlin
b5b6a15e40 GPU/D3D11: Always flush render before presenting 2020-03-07 12:37:58 +10:00
Connor McLaughlin
ae4767a9ca GPU/HW: Always unmap buffer on flush
Should stop assertions firing in some games.
2020-03-07 12:34:44 +10:00
Connor McLaughlin
ef2796b780 CommonHostInterface: Fix controller inputs not binding
Fixes #46.
2020-03-06 21:55:27 +10:00
Connor McLaughlin
2004de7170 Qt: Fix controller rebinding not registering when paused 2020-03-06 21:55:10 +10:00
Connor McLaughlin
f9a298f1b7 GPU: Fix incorrect handling of check mask bit
Fixes boxes in Silent Hill in Software Renderer.
2020-03-06 00:45:21 +10:00
Connor McLaughlin
552a01a9b6 Qt: Disable LTCG on Release-only builds
It wasn't being used anyway.
2020-03-04 23:21:43 +10:00
Connor McLaughlin
b59e4ffbcb HostInterface: Reset performance counters on unpausing 2020-03-03 10:07:16 +10:00
Connor McLaughlin
b405c01652 Qt: Save settings for column visibility/sorting in game list 2020-03-02 11:08:29 +10:00
Connor McLaughlin
5c0660744a Qt: Implement "File Title" column and toggling in game list 2020-03-02 11:08:25 +10:00
Connor McLaughlin
c8954a3089 Qt: Fix game list sorting by column 2020-03-02 11:08:20 +10:00
Connor McLaughlin
69f03959aa Qt: Implement context menu in game list 2020-03-02 11:08:16 +10:00
Connor McLaughlin
0c40903f74 Qt: Fix double mutex lock on controller type change
Fixes #39.
2020-03-02 11:05:13 +10:00
Connor McLaughlin
34f1c644f5 GPU: Update GPUSTAT if raster has passed to the next line
Fixes games which poll GPUSTAT, including The Next Tetris (Europe).
2020-03-01 17:14:42 +10:00
Connor McLaughlin
b0b1fd8f1a GPU: Timing for CPU->VRAM transfers
Fixes Monkey Hero, probably others.
2020-03-01 17:14:38 +10:00
Connor McLaughlin
6b9c6d3750 GPU: Add a helper function to determine how many GPU ticks are pending 2020-03-01 17:14:32 +10:00
Connor McLaughlin
635ab72b37 GPU: Implement "Scaled Dithering" option
Fixes #29.
2020-03-01 00:05:31 +10:00
Connor McLaughlin
d41e6dd28f CommonHostInterface: Add some more default key bindings
Also remove some unused code.
2020-02-29 00:41:17 +10:00
Connor McLaughlin
fdcb891ed3 GPU: Fix incorrect detection of 480i mode 2020-02-29 00:19:23 +10:00
Connor McLaughlin
ed493c846d GPU: Don't panic on oversized VRAM copies
Fixes #31.
2020-02-29 00:19:09 +10:00
Connor McLaughlin
7412e78aa1 GPU: Move software copy/fill functions to base class so it can be used as fallback 2020-02-29 00:18:33 +10:00
Connor McLaughlin
e1d4c0b9d4 HostDisplay: Fudge texture coordinates for better linear filtering 2020-02-29 00:18:24 +10:00
Connor McLaughlin
6bacbf3438 GPU: Fix 480i displays getting cut off in OpenGL and Software 2020-02-28 23:01:38 +10:00
Connor McLaughlin
aa56a59f58 GPU: Make resolution info less spammy 2020-02-28 23:00:37 +10:00
Connor McLaughlin
0690491883 GPU/HW: Fix potential crash in rectangle expansion 2020-02-28 22:58:34 +10:00
Connor McLaughlin
a298e93004 CMake: Fix Linux build
Fixes #36.
2020-02-28 22:43:34 +10:00
Connor McLaughlin
e8e44991db GPU: Fix display in OpenGL renderer 2020-02-28 22:42:56 +10:00
Connor McLaughlin
63064f80c2 HostInterface: Fix default value for Display/CropMode 2020-02-28 18:15:37 +10:00
Connor McLaughlin
f2adb71a70 CommonHostInterface: Bind face buttons to keypad by default 2020-02-28 18:15:21 +10:00
Connor McLaughlin
19c1e8b838 StringUtil: Fix for older gcc versions again 2020-02-28 17:19:51 +10:00
Connor McLaughlin
fcc0ae9571 GPU: Implement "Crop Mode" (none, overscan, all borders) 2020-02-28 17:01:01 +10:00
Connor McLaughlin
5df7fbd68c Common/Rectangle: Fix typo in assignment operator 2020-02-28 17:00:19 +10:00
Connor McLaughlin
122726fe65 Common/StringUtil: Support compiling on gcc7 2020-02-28 17:00:16 +10:00
Connor McLaughlin
bbdee22ea8 SDL: Move SDLSettingsInterface (ini) to frontend-common 2020-02-28 17:00:14 +10:00
Connor McLaughlin
9ab5212833 FrontendCommon: Make SDL2 dependency optional 2020-02-28 17:00:12 +10:00
Connor McLaughlin
f35970fcac FrontendCommon: Move input binding and some other logic from Qt to common 2020-02-28 17:00:09 +10:00
Connor McLaughlin
ccbe6f0c42 Qt: Don't store floats in settings as QVariant data 2020-02-28 17:00:07 +10:00
Connor McLaughlin
da0059fb21 Common/StringUtil: Add a FromChars std::optional wrapper 2020-02-28 17:00:05 +10:00
Connor McLaughlin
86094b8080 Common/String: Don't copy StaticStrings when not writing 2020-02-28 17:00:02 +10:00
Connor McLaughlin
4fe57e64d7 SDL: Add -gstate parameter to load global state 2020-02-28 17:00:00 +10:00
Connor McLaughlin
992bf7c338 SDL: Add GPU debug device option to settings 2020-02-28 16:59:58 +10:00
Connor McLaughlin
07ba2ecd3d Settings: Simplify resolution scale enumeration 2020-02-28 16:59:55 +10:00
Connor McLaughlin
f21cb25426 HostInterface: Recreate system on GPU debug device toggle too 2020-02-28 16:59:53 +10:00
Connor McLaughlin
82eb14efb1 Core: Apply DPI scaling to debug windows 2020-02-28 16:59:51 +10:00
Connor McLaughlin
ce31c85983 SDL: Support high-dpi displays 2020-02-28 16:59:48 +10:00
Connor McLaughlin
a0a0cd48fa SDL: Reimplement improved fullscreen toggling 2020-02-28 16:59:46 +10:00
Connor McLaughlin
f03de090c4 SDL: Fix setting changes not applying 2020-02-28 16:59:44 +10:00
Connor McLaughlin
4b94224955 SDL: Use RunLater() for menu actions too 2020-02-28 16:59:41 +10:00
Connor McLaughlin
50a155e775 Settings: Default to relative paths for bios/memcards
Prevents from locking to the directory the first time we run.
2020-02-28 16:58:30 +10:00
Connor McLaughlin
509f26ad7e Qt: Add some more default hotkeys (fullscreen/pause/poweroff)
Along with the previous commit, fixes #32
2020-02-26 19:31:12 +10:00
Connor McLaughlin
e4ff8b0936 Qt: Add power off hotkey and confirmation message 2020-02-26 19:26:20 +10:00
Connor McLaughlin
27c9f2d834 Qt: Add a method for the emulation thread to focus the display widget 2020-02-26 19:26:14 +10:00
Connor McLaughlin
e9dea6e0f7 HostInterface: Add a ConfirmMessage() method 2020-02-26 19:25:57 +10:00
Connor McLaughlin
8ffdcf1b7e Qt: Add a way for the emulation thread to request fullscreen state 2020-02-26 19:25:51 +10:00
Connor McLaughlin
460ff24248 Qt: Support SDL audio backend 2020-02-25 23:40:46 +10:00
Connor McLaughlin
223b52736f Qt: Populate audio backend drop-down 2020-02-25 23:40:42 +10:00
Connor McLaughlin
c68d188029 Disable DXGI handling of ALT+ENTER
We manage fullscreen ourselves.
2020-02-24 18:19:20 +09:00
Connor McLaughlin
bfdf343dfe SDL: Move imgui render to display
Fixes crash on renderer switch.
2020-02-23 00:04:30 +09:00
Connor McLaughlin
49c7767ed4 System: Check save state version when loading
Fixes #34.
2020-02-22 17:16:47 +09:00
Connor McLaughlin
959a555274 CDROM: Implement asynchronous disc reading 2020-02-22 00:24:35 +09:00
Connor McLaughlin
7ece901d57 CDImage/CHD: Fix crash when opening invalid/nonexistant file 2020-02-22 00:18:58 +09:00
Connor McLaughlin
1ed8243776 HostInterface: Reset counters when starting from state 2020-02-22 00:18:27 +09:00
Connor McLaughlin
3a0f8bffc5 SDL: Use precompiled D3D11 display shaders 2020-02-20 23:22:37 +09:00
Connor McLaughlin
784a5c789f Qt: Use precompiled D3D11 display shaders 2020-02-20 23:22:28 +09:00
Connor McLaughlin
4f794b1c37 Add precompiled versions of D3D11 display shaders 2020-02-20 23:21:54 +09:00
Connor McLaughlin
46846a10f6 Common: Simplify D3D shader object creation with helpers 2020-02-19 22:04:21 +09:00
Connor McLaughlin
11b90b2beb Qt: Fix mac build again 2020-02-18 00:31:05 +09:00
Connor McLaughlin
262331504f Qt: Support binding controller axes 2020-02-18 00:06:28 +09:00
Connor McLaughlin
b7dfe06f74 Qt: Support axes in input binding widgets 2020-02-18 00:06:11 +09:00
Connor McLaughlin
149cbf6457 GPU/HW: Properly implement too-large polygon culling
Replaces triangle strips with triangle lists, which has the added bonus
of not requiring flushing as many batches.

Fixes missing geometry in Vagrant Story.
2020-02-17 00:09:45 +09:00
Connor McLaughlin
bbe54df3a8 GPU/HW: Split rectangles on texture page boundaries
Fixes the sky in Ape Escape's menu screen, FF7 menu borders, probably
others.
2020-02-17 00:09:31 +09:00
Connor McLaughlin
bd542831a8 GPU: Fix incorrect bit check in DrawMode::IsUsingPalette()
Fixes Sony Computer Entertainment fade in the NTSC-J BIOS.
2020-02-17 00:09:27 +09:00
Connor McLaughlin
0f7365117b SDLControllerInterface: Add missing include 2020-02-16 00:39:06 +09:00
Connor McLaughlin
961bc09979 SDL: Fix crashes on starting emulation 2020-02-16 00:33:43 +09:00
Connor McLaughlin
208928b6dc Qt: Fix load state menu not refreshing after save 2020-02-16 00:15:18 +09:00
Connor McLaughlin
1e0e802fa4 HostInterface: Add a helper to display a 'Loading Screen' during long startup 2020-02-16 00:15:16 +09:00
Connor McLaughlin
9ddb3a8c7a SDL: Use controller interface from frontend-common 2020-02-16 00:15:14 +09:00
Connor McLaughlin
6456c5d63d Qt: Don't resume when booting without game code 2020-02-16 00:15:11 +09:00
Connor McLaughlin
dcc9da3f5e HostInterface: Don't try to resume system without game code 2020-02-16 00:15:09 +09:00
Connor McLaughlin
06f4d72631 FrontendCommon: Use SDL_InitSubSystem() for lazy initialization 2020-02-16 00:15:05 +09:00
Connor McLaughlin
78a6666439 SDLAudioStream: Don't allow format to change 2020-02-16 00:15:02 +09:00
Connor McLaughlin
e48e6141c8 Qt: Set display window size on context create not constructor
The size isn't known at construction time.
2020-02-16 00:15:00 +09:00
Connor McLaughlin
cd2f6d1f68 HostInterface: Only display error when loading resume state if boot anyway flag isn't set 2020-02-16 00:14:58 +09:00
Connor McLaughlin
6d945439eb Qt: Fix possible crash/race when startup fails 2020-02-16 00:14:56 +09:00
Connor McLaughlin
59cf799491 Qt: Implement controller interface/binding 2020-02-16 00:14:53 +09:00
Connor McLaughlin
6a1206dde7 Frontends: Add option for "Increase Timer Resolution" 2020-02-16 00:14:51 +09:00
Connor McLaughlin
e01cf0dccb Frontends: Implement auto save on exit/resume 2020-02-16 00:14:49 +09:00
Connor McLaughlin
e738b87a25 HostInterface: Add helpers for resume save state 2020-02-16 00:14:47 +09:00
Connor McLaughlin
5f3be68028 HostInterface: Notify host when controller types change 2020-02-16 00:14:44 +09:00
Connor McLaughlin
b0c846388e SDL: Only save settings when changes have been made 2020-02-16 00:14:42 +09:00
Connor McLaughlin
37d765e8d7 HostInterface: Support switching audio backends 2020-02-16 00:14:40 +09:00
Connor McLaughlin
6a0c15b649 HostInterface: Move timer resolution increase to base class 2020-02-16 00:14:37 +09:00
Connor McLaughlin
1e009133ae Rename 'Default' audio backend to 'SDL' 2020-02-16 00:14:35 +09:00
Connor McLaughlin
d17f0a3923 Qt: Implement disc change in QtHostInterface 2020-02-16 00:14:33 +09:00