Commit Graph

26364 Commits

Author SHA1 Message Date
0773a48c6c Merge pull request #6223 from JosJuice/dont-force-immediate-xfb
Don't forcibly enable immediate XFB in game INIs
2017-11-30 19:09:55 +01:00
7c96e51bc8 Merge pull request #6187 from raelgc/1-exit-on-esc
Add an exit key to `dolphin-emu-nogui`
2017-11-27 13:30:33 -08:00
6344997fad Don't forcibly enable immediate XFB in game INIs
Forcing people to use hacks is a bad idea in general, and there are
two practical problems with doing it for immediate XFB in particular:

1. It breaks the GC IPL, which some users run when launching games.

2. Competitive players don't necessarily want the lowest possible
   latency - they might want the latency that's the closest to console,
   so if they're playing locally with a low-latency monitor, they might
   not want to use immediate XFB. (This isn't a theoretical concern -
   I've seen Melee players want to increase their latency.)

Besides, it feels arbitrary that just these five specific games should
have immediate XFB forced on.
2017-11-27 14:32:27 +01:00
9fe5dd7fa9 Merge pull request #6221 from leoetlino/qt-small-fixes
Qt: Small fixes
2017-11-27 13:21:34 +01:00
291c99217e Qt: Fix NAND import menu item parent 2017-11-26 18:33:07 +01:00
6e796a74fb Qt: Add support for --exec 2017-11-26 18:32:28 +01:00
96e094e127 Merge pull request #6216 from stenzek/headless-frame-dumping
OGL: Fix headless frame dumping
2017-11-26 11:36:10 +01:00
7e24b09301 Merge pull request #6218 from Armada651/uber-interpolation
UberShaderPixel: Fix the interpolation qualifier for interface blocks.
2017-11-26 02:19:14 +01:00
7dd207931d UberShaderPixel: Fix the interpolation qualifier for interface blocks.
Fixes MSAA on MacOS with ubershaders enabled.
2017-11-25 21:51:14 +01:00
cf1f975148 Vulkan: Fix headless framedumping without USE_X11 set 2017-11-23 17:00:32 +10:00
32125cf181 OGL: Fix headless frame dumping
Also skips swapping the window system buffers in headless mode, as there
may not be a surface which can be swapped in the first place. Instead,
we call glFlush() at the end of a frame in this case.
2017-11-23 16:53:55 +10:00
ab44536a3c OGL: Update the window size after swapping buffers, not before
Prevents us from rendering beyond the viewport bounds.
2017-11-23 16:09:59 +10:00
73a67aa413 Merge pull request #6204 from stenzek/downscaled-screenshots
Frame Dumping: Fix window-size framedumping
2017-11-22 07:53:23 +01:00
066471be07 Merge pull request #4601 from stenzek/celdamage-lighting
ShaderGen: Always calculate lighting for both color channels
2017-11-21 20:17:18 -08:00
efb9759862 LightingShaderGen: Always calculate lighting for both color channels
Cel-damage uses the color from the lighting stage of the vertex pipeline
as texture coordinates, but sets numColorChans to zero.

We now calculate the colors in all cases, but override the color before
writing it from the vertex shader if numColorChans is set to a lower value.
2017-11-22 01:52:18 +10:00
470e8d63b6 VideoConfig: Rename "Full Resolution Frame Dumps" to "Internal"
What is the "full" resolution, anyway?
2017-11-21 17:20:55 +10:00
8985cb2f0b Renderer: Re-implement window size frame dumping
This was broken by hybrid XFB, and all frame dumping/screenshots occured
at the full internal resolution.
2017-11-21 17:19:43 +10:00
39559f6358 VideoConfig: Remove bSupportsInternalResolutionFrameDumps
Field is unused as of Hybrid XFB.
2017-11-21 17:19:43 +10:00
18c1bf19ca VideoCommon: Use constant for number of color channels in XFMemory 2017-11-20 23:18:44 +10:00
f2f50d4fe5 Merge pull request #6213 from ligfx/restoresysconf
BootManager: RestoreSYSCONF without resetting all other config
2017-11-20 13:16:31 +01:00
ebc547030d BootManager: RestoreSYSCONF without resetting all other config
This was causing an issue where DolphinQt couldn't save graphics options
(DolphinWX doesn't hit this code path), because this function was being
called before the in-memory config was flushed to disk.

With this PR, the in-memory config isn't reset, and only SYSCONF-related
variables may get changed.
2017-11-19 17:17:59 -08:00
a4c057b315 Merge pull request #6212 from ligfx/qtimmediatexfb
Qt: show "Immediately present XFB" option
2017-11-20 00:48:16 +01:00
5dc3ecdb72 Qt: show "Immediately present XFB" option 2017-11-19 15:37:24 -08:00
88bfbda157 Merge pull request #6211 from sepalani/dsy-net
totaldb.dsy: RecvFrom and SendTo added
2017-11-20 00:11:32 +01:00
b4b80e1be9 totaldb.dsy: RecvFrom and SendTo added 2017-11-19 23:18:50 +01:00
901e29f080 Merge pull request #5995 from spycrab/qt_fifoplayer
Qt: Implement FIFO Player
2017-11-19 22:23:51 +01:00
474b1c2d5c Qt: Implement FIFO Player 2017-11-19 22:06:32 +01:00
aa8bf71333 FifoRecorder: Implement IsRecordingDone() 2017-11-19 21:49:29 +01:00
aac1b386b9 FifoPlayer: Implement IsPlaying() 2017-11-19 21:49:29 +01:00
b3b58b586c Merge pull request #5943 from leoetlino/features
IOS: Check for available features when adding devices
2017-11-19 21:43:54 +01:00
28f9034536 Merge pull request #6207 from JosJuice/dtm-immediate-xfb
Move Immediate XFB down in DTM header
2017-11-19 19:57:34 +01:00
d0b9923b0a Move XFB settings in DTM header back to where they were
7f0834c9 moved the locations of the Real XFB (now XFB to RAM) and
Disabled XFB (now Immediate Mode) settings. There are programs
other than Dolphin that parse DTM headers, so this is not good.

Note that Immediate XFB actually is the inversion of Disabled XFB.
I hope that's not too much of a problem...
2017-11-19 19:03:03 +01:00
01794126ad Merge pull request #6191 from lioncash/file-static
D3DUtil: Make file-scope variables internally linked where applicable
2017-11-19 18:36:32 +01:00
d6f10fdc15 D3DUtil: Remove unused defines 2017-11-19 12:14:18 -05:00
01a92af014 D3DUtil: Make file-scope variables internally linked where applicable
All file scope variables are able to be made internally linked.

CD3DFont is essentially used as an extension to the utility interface, so
this is able to be made internal as well, removing a global from
external view.
2017-11-19 12:12:39 -05:00
175db0d817 Merge pull request #6206 from spycrab/qt_fix_bs
Qt: Fix blackscreen
2017-11-20 02:55:41 +10:00
9388852e05 Qt: Fix blackscreen 2017-11-19 17:49:51 +01:00
38f44b2839 Merge pull request #4853 from ligfx/always_connected
GCPadEmu: only connected if default device connected
2017-11-19 16:53:23 +01:00
c62d83a34b GCPadEmu: only connected if default device connected
This lets Dolphin know if a configured GameCube Controller should actually
be treated as connected or not.

Talked to @JMC47 a bit about this last night. My use-case is that all of
my controllers are the same hardware (Xbox One controllers) so share the
same configuration (modulo device number). Treating them all as always
connected isn't a problem for most games, but in some (Smash Bros.) it
forces me to go find a keyboard/mouse and unconfigure any controllers
that I don't actually have connected. Hotplugging devices (works on macOS,
at least) + this patch remove my need to ever touch the Controller Config
dialog while in a game.

This patch makes the following changes:

- A new `BooleanSetting` in `GCPadEmu` called "Always Connected", which
  defaults to false.
- `ControllerEmu` tracks whether the default device is connected on every
  call to `UpdateReferences()`.
- `GCPadEmu.GetStatus()` now sets err bit to `PAD_ERR_NO_CONTROLLER` if
  the default device isn't connected.
- `SIDevice_GCController` handles `PAD_ERR_NO_CONTROLLER` by imitating the
  behaviour of `SIDevice_Null` (as far as I can tell, this is the only use
  of the error bit from `GCPadStatus`).

I wanted to add an OSD message akin to the ones when Wiimotes get
connected/disconnected, but I haven't yet found where to put the logic.
2017-11-19 16:07:00 +01:00
379e28b58c Add GCPadStatus.isConnected boolean 2017-11-19 16:01:08 +01:00
bb1c794657 Remove unused GCPadStatus.err 2017-11-19 16:01:07 +01:00
80bcc0d58d Merge pull request #6186 from lioncash/enum-class
VideoConfig: Make AspectMode and StereoMode enum classes
2017-11-19 15:08:16 +01:00
a75546747e Merge pull request #6164 from leoetlino/usb-hid
IOS/USB: Implement HIDv5
2017-11-19 14:13:57 +01:00
b8c83dd5f3 Merge pull request #5973 from ligfx/renamefifoqueue
Rename Common::FifoQueue to Common::SPSCQueue
2017-11-19 13:51:22 +01:00
9178a6e636 Merge pull request #6197 from degasus/GP
Jit: Optimize gather pipe usage.
2017-11-19 11:52:20 +01:00
40ed0e4251 Merge pull request #6198 from lioncash/cmake
D3D: Remove non-existent files from CMakeLists.txt
2017-11-19 10:41:32 +01:00
2ead31c769 Merge pull request #6203 from lioncash/missing-braces-warn
VideoCommon: Resolve -Wmissing-brace warnings
2017-11-19 08:45:13 +01:00
2385a03c2b Merge pull request #6201 from lioncash/headers
VideoBackends: Remove header inclusions made unnecessary with Hybrid XFB
2017-11-19 08:44:48 +01:00
4c23516b16 Merge pull request #6202 from lioncash/reorder-warn
AbstractTexture: Remove a redundant constructor initializer list entry
2017-11-19 08:44:29 +01:00
7372bb02b5 Merge pull request #6200 from lioncash/discio-warn
VolumeGC: Correct printf specifier in LoadBannerFile()
2017-11-19 08:43:32 +01:00