Lioncash
94237b694b
Jit64Common: Split Jit64Util contents into separate files
...
Much of Jit64Util consists of essentials, not utilities. Breaking these
out into their own files also prevents unrelated includes from being
present near other classes.
This also makes it easier to find and change certain components of the
x86-64 JIT, should it be necessary.
2016-12-18 02:27:58 -05:00
Sepalani
a6114bad34
Import/Export signature files as CSV
2016-12-18 00:27:10 +00:00
Anthony
f431b18675
Merge pull request #4491 from leoetlino/debugger-symbol-filter
...
DolphinWX: Add ability to filter symbols (by name)
2016-12-17 11:13:28 -06:00
Stenzek
accce4294a
TextureCache: Use same color coefficients for EFB2Tex as EFB2RAM
2016-12-15 02:20:46 +10:00
Stenzek
d6cdf49769
VideoSoftware: Don't drop least significant bit of 5-bit blue channels
2016-12-14 23:56:06 +10:00
Lioncash
8b6f8892d6
TrampolineCache: Make constant constexpr
2016-12-14 04:43:32 -05:00
Lioncash
d0c54fe15e
Jit64Util: Make constants constexpr
2016-12-14 04:43:31 -05:00
Lioncash
9c1ad3dde6
Jit64Base: Replace #defines with concrete constants
2016-12-14 04:43:31 -05:00
Lioncash
d010246af2
Jit64Base: Clean up casting
...
Mostly intended to clean up HandleFault than anything else.
2016-12-14 04:43:31 -05:00
Lioncash
1aff8c4eb1
BlockCache: Use const_cast
2016-12-14 04:43:30 -05:00
Lioncash
36c99df9f5
Jit: Move most x86-64-specific code out of JitCommon
2016-12-14 04:43:25 -05:00
Stenzek
5aaa5141ed
PixelShaderGen: Fix incorrect indexing of tevLerpBias
...
Fixes the white box in the fortune street fifolog.
2016-12-13 00:03:25 +10:00
Markus Wick
d64c9dd5c9
Merge pull request #4419 from degasus/master
...
Jit64: Fix a few trivial PIE issues.
2016-12-12 10:58:16 +01:00
hthh
801d1d1876
OpenGL: Always use a PBO in EncodeToRamUsingShader
...
This improves performance significantly on macOS, particularly
noticeably in the Super Mario Sunshine transition, which goes
from ~5FPS to ~17FPS.
2016-12-12 20:33:41 +11:00
Stenzek
607ce40f0b
OGL: Fix black screen when MSAA is enabled
2016-12-12 17:51:19 +10:00
Markus Wick
863aeb383a
Merge pull request #4509 from lioncash/assign
...
ShaderManagers: Use aggregate initialization for some variables.
2016-12-11 13:53:28 +01:00
Markus Wick
6ed462a059
Merge pull request #4511 from lioncash/ac
...
AudioCommon: Remove unnecessary headers
2016-12-11 13:52:59 +01:00
Lioncash
87f2a74c08
AudioCommon: Remove unnecessary headers
...
Now AudioCommon code won't need to be recompiled if the TAS movie header
is ever modified.
2016-12-11 06:11:37 -05:00
Lioncash
8dcb05802b
ShaderManagers: Use aggregate initialization for some variables.
...
These provide the same semantics, however aggregate initialization
doesn't force the structs to be trivially copyable. memset, on the other
hand, does.
2016-12-10 17:33:51 -05:00
Stenzek
993e029f75
Merge pull request #4506 from stenzek/vulkan-no-depth-clamp
...
Vulkan: Fix viewport depth when depth clamp is unsupported
2016-12-11 01:57:25 +10:00
Mat M
a0920afd5b
Merge pull request #4500 from leoetlino/fileio-fix
...
IPC_HLE: Fix incorrect file path for IOCTL_SET_ATTR
2016-12-09 17:48:21 -05:00
Lioncash
58a5395173
TextureCacheBase: Eliminate static state
2016-12-09 16:50:37 -05:00
Anthony
7a5bb46016
Merge pull request #4030 from clinchergt/fix-setfocus-rendertowindow
...
Fix focus bug when using the "render to main window" feature
2016-12-09 15:39:31 -06:00
Anthony
1fa61af413
Merge pull request #4492 from aldelaro5/gc-mic-ui-reimplement
...
Move the GameCube mic button configuration to the GameCube config dialog
2016-12-09 14:53:47 -06:00
Mat M
b042377393
Merge pull request #4494 from lioncash/isoproperties
...
ISOProperties: Separate the filesystem tab out into its own class
2016-12-09 07:55:36 -05:00
Stenzek
af706efaef
Vulkan: Fix viewport depth when depth clamp is unsupported
2016-12-09 22:45:10 +10:00
Ethan Lee
7cfead6429
DolphinWX: Add 'DisableTooltips' config option
...
(Revision 2: Remove checkbox from WX GUI)
2016-12-07 13:20:37 -05:00
Léo Lam
10c7e56689
IPC_HLE: Fix incorrect file path for IOCTL_SET_ATTR
...
We were reading the string from the wrong location…
2016-12-07 13:52:44 +01:00
Léo Lam
31ccfffd38
Common: Add alignment header
...
Gets rid of duplicated alignment code.
2016-12-06 20:33:53 +01:00
aldelaro5
9ff95c58fa
Add a special input configuration dialog for the GameCube Mic
...
This is more logical as the mic is plugged into an EXI slot so it should be configured via the GameCube config dialog. This also allows to pass the right port number for the new dialog.
2016-12-05 18:09:31 -05:00
aldelaro5
431929fa1d
Moved the Mic button of the GCPad to its own group.
...
This is needed to separate it from the GCPad input configuration dialog as it would be moved to its own dialog.
2016-12-05 18:09:23 -05:00
Markus Wick
7192789c11
Merge pull request #4486 from stenzek/gl-minimize-assert
...
OGL: Fix assertion when minimizing window
2016-12-05 12:46:29 +01:00
Lioncash
ddeccf2622
ISOProperties: Separate the filesystem tab out into its own class
2016-12-04 22:35:01 -05:00
Stenzek
bff394ec8a
Merge pull request #4489 from stenzek/vulkan-minor-fixes
...
Vulkan: Minor fixes
2016-12-05 12:19:49 +10:00
Tillmann Karras
f575902cf3
evdev: set flag in a thread-safe way
2016-12-05 00:47:26 +00:00
Tillmann Karras
3c090a37d4
evdev: fix shutdown hang
...
Note: This probably means our approach of populating from udev isn't
safe to be called multiple times.
2016-12-05 00:47:26 +00:00
Tillmann Karras
0043bd3547
Remove two unused variables
2016-12-05 00:47:26 +00:00
Léo Lam
59abfee11d
DolphinWX: Add ability to filter symbols (by name)
...
This allows the user to filter symbols by name, instead of having to
scroll through a very, very long listbox…
2016-12-04 18:18:07 +01:00
degasus
5082a664c8
VertexLoaderX64: Avoid unchecked pointer cast.
2016-12-04 13:09:16 +01:00
degasus
21f3e97435
Jit64: Avoid pointer casts if possible.
2016-12-04 13:09:16 +01:00
degasus
f325d41def
DSPJit: Use tmp register for pointer immediate.
...
PIE.
2016-12-04 13:09:16 +01:00
degasus
d26709f713
Jit64: Use ImmPtr for mtcrf.
...
Only a small overhead, but PIE compatible.
2016-12-04 13:09:16 +01:00
degasus
8189ef432b
Jit64: Use ImmPtr for mcrxr.
...
Only a small overhead, but PIE compatible.
2016-12-04 13:09:16 +01:00
degasus
23c284c081
Jit64: Use ImmPtr for inst.OE handling.
...
A bit slower, but PIE compatible and *very* rarely.
2016-12-04 13:09:15 +01:00
Stenzek
8f97a24904
Vulkan: Enable GS instancing
2016-12-04 20:53:49 +10:00
Stenzek
9736198c3b
Vulkan: Use explicit barriers instead of dependancies
...
At least on NV, some of these don't seem to have the intended effect. One
known instance of this is in texture conversion.
2016-12-04 20:10:13 +10:00
Stenzek
a475792163
Vulkan: Fix incorrect logic in readback preemption
...
This could have been causing a large number of command buffer
submissions per frame, depending on when the readbacks occured.
2016-12-04 20:10:13 +10:00
Stenzek
58978c1440
Vulkan: Faster path for decoding XFB data
...
Using a texel buffer as the copy destination removes the need to copy to
an intermediate texture first.
2016-12-04 20:10:13 +10:00
Stenzek
804cd0ff03
Vulkan: Move XFB encoding/decoding to TextureConverter
2016-12-04 20:10:13 +10:00
Stenzek
d67463e0a7
Vulkan: Simplify palette texture conversion
2016-12-04 20:10:13 +10:00
Stenzek
add638538b
Vulkan: Combine PaletteTextureConverter and TextureEncoder classes
2016-12-04 20:10:13 +10:00
Stenzek
804af42ccc
Vulkan: Support binding texel buffers in UtilityShaderDraw
2016-12-04 20:10:13 +10:00
Stenzek
e241ec6666
Vulkan: Implement StagingTexture2D on top of StagingBuffer
...
Greatly simplifies things, and we weren't using the linear texture
implementation anyway.
2016-12-04 20:10:13 +10:00
Stenzek
4bc0e14995
Vulkan: Use an enumeration to index pipeline layouts
2016-12-04 20:10:13 +10:00
Stenzek
cd3481fbc7
Vulkan: Differentiate between descriptor set layouts and bind points
...
This also moves the pipeline and descriptor set layouts used for texture
conversion (texel buffers) to ObjectCache, and shares a binding location
with the SSBO set.
2016-12-04 20:10:13 +10:00
Stenzek
4e9018049d
Vulkan: Support logging debug reports without enabling validation layers
...
There is a caveat, Host GPU must be checked prior to starting the game, as
we can't enable the extension at runtime without recreating the instance.
2016-12-04 19:55:12 +10:00
Stenzek
1cfb0a1185
Vulkan: Fix deadlock in some resize scenarios
...
Only have experienced this on a few occasions when using the anv driver.
2016-12-04 19:12:33 +10:00
Mat M
d1c89db8c8
Merge pull request #4448 from lioncash/isoproperties
...
DolphinWX: Separate the information panel from ISOProperties
2016-12-03 19:15:25 -05:00
Stenzek
2ef884893a
Vulkan: Fix map error when texture dumping is enabled
2016-12-04 00:23:34 +10:00
Stenzek
4c860ddb70
Vulkan: Fix typo in PopulateBackendInfoMultisampleModes
2016-12-04 00:23:30 +10:00
Stenzek
730ec3809a
Vulkan: Remove unused variable
2016-12-04 00:23:25 +10:00
Stenzek
107e8c8ee7
OGL: Fix assertion when minimizing window
...
Also fixes a potential divide by zero in Renderer::RenderText.
2016-12-03 20:35:14 +10:00
Michael Maltese
f798bcd5c0
DolphinQt2: InfoWidget: explicit type for std::min
...
Avoids errors on macOS:
```
Source/Core/DolphinQt2/Config/InfoWidget.cpp:190:21: error: no matching function for call to 'min'
u64 read_size = std::min(file_data.size(), game_size - read_offset);
^~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm:2589:1: note: candidate template ignored: deduced conflicting types for parameter '_Tp' ('unsigned long' vs. 'unsigned long long')
min(const _Tp& __a, const _Tp& __b)
```
2016-12-02 21:26:18 -08:00
Stenzek
7b1966a680
Vulkan: Fix assertion triggering when geometry shaders are unsupported
...
Happened when loading the pipeline UID cache.
2016-12-02 17:37:10 +10:00
Lioncash
20fcfd0ed8
DolphinWX: Separate the information panel from ISOProperties
...
Makes the information panel self-contained.
This was done first, as opposed to isolating the GameConfig panel--the
first panel in the group--as this panel had code all over the place in
ISOProperties, so I figured it'd be best to fix this one up first.
2016-12-01 21:21:46 -05:00
Mat M
2e7c90eeb5
Merge pull request #4450 from PEmu1/fifo-player-capitalization
...
Update FIFO Player Window Capitalization
2016-12-01 21:09:44 -05:00
Anthony
0705c53681
Merge pull request #4340 from sepalani/step_timeout
...
CodeWindow: Fix step out issues
2016-12-01 13:32:44 -06:00
Anthony
ffe20705dd
Merge pull request #4362 from ligfx/osxhotplug
...
ControllerInterface: enable hotplugging on macOS
2016-12-01 00:29:56 -06:00
Michael Maltese
7ed8fb95c5
ControllerInterface: enable hotplugging on macOS
2016-11-30 22:27:46 -08:00
Anthony
a95e3c875e
Merge pull request #4343 from ligfx/fixsdlcrash
...
ControllerInterface: Fix crashes when using SDL controllers
2016-11-30 20:47:38 -06:00
Stenzek
e2018f2208
Merge pull request #4480 from stenzek/vulkan-streambuffer-reuse
...
Vulkan: Fix stream buffer re-use problems
2016-12-01 12:38:31 +10:00
Michael Maltese
3e69d066f5
ControllerInterface: replace Reinitialize with RefreshDevices
...
The SDL backend crashes when you close a joystick after SDL_Quit has
been called. Some backends don't need to be shutdown and
re-initialized everytime, we can just ask to enumerate devices again.
2016-11-30 16:07:55 -08:00
Michael Maltese
cebb4d84f2
ControllerInterface: clear devices before shutting down backends
...
The SDL backend faults if it tries to close a joystick after SDL_Quit
has been called.
2016-11-30 16:07:54 -08:00
Hector Martin
90c2dec02d
Wii IPC HLE: do not clobber memory when launching a new title
...
It's questionable whether ES_LAUNCH should write *anything* to the
command structure at all, ever, given that it never actually returns
it back through the mailbox. But it *definitely* shouldn't write
anything to it if it has just launched a DOL, because otherwise it might
clobber code/data from the just-loaded application.
2016-12-01 06:55:15 +09:00
Hector Martin
288e75f672
Wii IPC HLE: Fix IPC missing reply fail
2016-12-01 06:38:51 +09:00
Hector Martin
2b906e3fc4
DOL/ELF loaders: enable HID4.SBE in Wii mode
...
When booting "cooked" executables, BATs should already be set up and
enabled. They should only really be disabled when booting NAND contents
in real mode.
2016-12-01 06:36:53 +09:00
Hector Martin
a6742d9cf7
ELF boot: scan segments for Wii mode detection, not sections
2016-12-01 06:36:53 +09:00
Hector Martin
3f11879640
ES HLE / WAD boot: hardcode the entrypoint
...
NAND titles are always started at address 0x3400 with translation off.
The entrypoint in the DOL is ignored.
2016-12-01 06:36:53 +09:00
Stenzek
ca691a9d95
Vulkan: Allow re-use of uniform buffers when doing per-stage uploads
...
This is safe now because we invalidate the pointers after submitting a
command buffer.
2016-11-30 23:34:46 +10:00
Stenzek
6a4eba1153
Vulkan: Replace explicit command buffer submits with wrapper function
...
Should we ever introduce anything else that has to be done when a command
buffer is executed (e.g. invalidating constants from previous commit), we
don't have to update all the callers.
2016-11-30 23:14:36 +10:00
Stenzek
3adeacb78d
Vulkan: Fix case where uniforms could be overwritten
...
If a draw caused a command buffer submission, the current uniform storage
should not be used for the new command buffer.
2016-11-30 23:14:35 +10:00
Stenzek
4c11735bd5
Vulkan: Fix case where a draw's vertices could be overwritten
...
This could happen because the vertex memory was already committed, if a
uniform buffer allocation failed and caused a command buffer to be
executed, it would be associated with the previous command buffer rather
than the buffer containing the draw that consumed these vertices.
2016-11-30 22:45:00 +10:00
Stenzek
37550501cc
Vulkan: Fix incorrect handling of buffer wrap-around in StreamBuffer
...
This was happening when a fence wait happened mid-frame. The data written
between the fence being queued and the allocation occuring was incorrectly
assumed to be consumed by the GPU.
2016-11-30 22:44:52 +10:00
JosJuice
3cfc49a613
Merge pull request #4472 from JosJuice/revert-absolute-path
...
IOS HLE: Replace broken path traversal prevention
2016-11-29 18:34:22 +01:00
aldelaro5
f705d8378e
Fix the order of the name of the hotkeys
2016-11-29 11:51:55 -05:00
Stenzek
aadc77c493
Merge pull request #3649 from stenzek/wgl-core-shared
...
GLInterface: Implement core and shared context creation for WGL
2016-11-29 22:59:31 +10:00
Mat M
eebe4ef1fd
Merge pull request #4461 from aldelaro5/hotkey-config-redo
...
Redo every input configuration dialog
2016-11-29 07:39:28 -05:00
Stenzek
7353cae707
GLInterface: Implement core and shared context creation for WGL
2016-11-29 20:04:32 +10:00
aldelaro5
32a0dae257
Completely redo All configuration dialog
...
Hotkeys
Make a new class that inherits from InputConfigDialog with a specialised constructor. The changes are mainly the top portion and it now uses tabs to categorise the hotkeys.
Redo the GCPad configuration dialog
The layout is similar, but it now allows flexibility to change it more easily.
Redo the GC Keyboard configuration dialog
Same layout.
Redo completely the Wiimote configuration dialog
Separated the controls into 2 tabs to make them less imposing overall.
Redo the Nunchuk configuration dialog
Similar layout, except for 2 control group sizers.
Redo the Classic controller configuration dialog
Same layout.
Redo the Guitar input configuration dialog
Stacked 2 sets of group together.
Redo the Turntable configuration dialog
More stacked groups and the window is much less wide.
2016-11-28 08:26:34 -05:00
aldelaro5
03e0cae9b7
Prepare for having different extensions dialogs
...
Just setting up a switch on the type so that different dialogs can be instantiated. This also makes the extension type an enum because I don't see why not here and finally, it removes ControlGroupSizer. This removal allows to not dynamically generate the UI, but instead, let the specialised constructors do the layout.
2016-11-28 08:26:34 -05:00
aldelaro5
00f680b830
Add flexibility to InputConfigDialog
...
Removed the unecessary forced tabbed layout, removed the layout part of the constructor and remade some method in preparation for tabbed styled input dialog such as the new hotkey configuration one. It breaks every inputconfigDialog, but this will get fixed in the next commits.
Also moved to a folder since there will be many more files created in the next commits so it gives better separation.
2016-11-28 08:26:27 -05:00
Stenzek
0212741574
Merge pull request #4436 from stenzek/vulkan-full-ir-framedump
...
VideoBackends: Internal resolution frame dumping
2016-11-28 22:05:16 +10:00
Stenzek
49e807b71f
Merge pull request #4459 from stenzek/nogui-resize-notify
...
DolphinNoGUI: Receive resize events and notify backend when this occurs
2016-11-28 22:04:21 +10:00
Stenzek
b81dee8b9a
OGL: Support full-resolution frame dumping
2016-11-28 21:54:56 +10:00
Stenzek
93221e7f48
OGL: Move frame rendering procedures to seperate methods
2016-11-28 21:54:56 +10:00
Stenzek
1c1a686f63
Vulkan: Support full resolution frame dumping
2016-11-28 21:54:55 +10:00
Stenzek
adc22a5e20
VideoCommon: Add method for calculating full-scale framedump rectangles
2016-11-28 21:54:54 +10:00
Stenzek
8d48319414
Vulkan: Validate the pipeline cache before using it
...
This ensures that if a user changes adapters or vendors we're not passing
invalid data to the driver.
2016-11-28 21:21:55 +10:00
Stenzek
9604b336c8
Vulkan: Don't destroy the device's pipeline cache on MSAA mode change
...
The user could switch back again, and this would mean this data would be
lost. Disk space is cheap, and it's not going to be much.
2016-11-28 21:21:54 +10:00
Stenzek
aac66a1b61
Vulkan: Implement a pipeline UID cache
...
This stores enough information to recreate the pipeline, including the
shader UIDs, blend/depth/rasterization state, primitive and vertex format.
2016-11-28 21:21:53 +10:00