Leo Lam
e86f5ac04b
Merge pull request #5913 from ligfx/qtselectedgamegamefile
...
GameList: make GetSelectedGame a pointer to GameFile
2017-08-11 15:25:15 +08:00
Sepalani
ae4790ff25
RSO: Import data symbols
2017-08-10 21:30:32 +01:00
Michael M
3c002f0213
GameList: make GetSelectedGame a pointer to GameFile
2017-08-10 13:22:35 -07:00
Michael M
fcb1eb9d3b
dsp_rom: skip bootucode_ax when running from entrypoint
...
This could cause the first branch of the bootucode procedure, which
takes its parameters from the AX registers, to run during the ROM init
sequence. Since the ROM doesn't set any of the AX registers, the values
aren't meaningful, and can cause bad DMA transfers and crashes.
2017-08-10 10:53:12 -07:00
Léo Lam
5ba6182bbc
Qt: Fix WiiUpdate progress dialog cancel button
...
We didn't properly remove the default cancellation handler, which would
cause crashes if the dialog was gone too early.
2017-08-10 23:47:18 +08:00
Léo Lam
ea3b351d92
Qt: Add menu item to perform system update from disc
2017-08-10 23:47:18 +08:00
Léo Lam
0e71c0760e
WX: Add menu item to perform system update from disc
2017-08-10 23:47:18 +08:00
Léo Lam
0fdae2adb8
UI: Refactor Wii update code
...
This moves the progress dialog logic and the result dialog to separate
functions that can easily be reused for disc updates.
2017-08-10 23:47:18 +08:00
Léo Lam
916deb9004
WiiUtils: Add a disc updater
2017-08-10 23:47:18 +08:00
Léo Lam
eb1ba4b0e9
DiscIO: Add a blob reader for Volume files
2017-08-10 23:47:18 +08:00
Léo Lam
ca0438e26d
WiiWad: Allow using WiiWad with more than just files
...
This adds a WiiWad constructor that takes a BlobReader, so that the
class can be used with more than just files from the host filesystem.
Required for using WiiWad with WADs from update partitions.
2017-08-10 23:47:18 +08:00
Léo Lam
5976d3934d
WiiUtils: Refactor InstallWAD
...
Allows using an existing instance of IOS and WiiWAD.
2017-08-10 23:47:18 +08:00
Léo Lam
bc588948c9
WiiUtils: Move ShouldInstallTitle to the online updater
...
The disc updater uses different conditions.
2017-08-10 23:47:18 +08:00
Léo Lam
71f403d05b
BTBase: Fix a file deletion issue on Windows
...
> The process cannot access the file because it is being used by another process.
2017-08-10 23:30:52 +08:00
JosJuice
e806928071
Make DolphinQt2 netplay strings more like in DolphinWX
2017-08-10 15:58:04 +02:00
spycrab
366d4c7744
Qt/NetPlay: Use TraversalClient::FailureReason
2017-08-10 15:41:01 +02:00
Leo Lam
e41a9905c0
Merge pull request #5744 from JosJuice/remove-non-integer-irs
...
Remove non-integer IRs
2017-08-10 17:10:26 +08:00
Leo Lam
d0304c9b38
Merge pull request #5810 from spycrab/qt_netplay
...
Qt: Implement Netplay
2017-08-10 14:45:52 +08:00
Leo Lam
15e46cb216
Merge pull request #5900 from ligfx/fixupnpinit
...
Fix UPnP init
2017-08-10 14:41:50 +08:00
Leo Lam
13b0ba3f55
Merge pull request #5908 from beholdnec/fix-i8-typo
...
VideoCommon: Fix typos in comments introduced by #5849
2017-08-10 14:39:30 +08:00
spycrab
9b65f38382
Make Visual Studio happy
2017-08-10 06:49:57 +02:00
spycrab
78cc759d56
Settings: Implement NetPlay globals
2017-08-10 06:49:57 +02:00
spycrab
2e29509b75
Qt/GameList: Add "Host with NetPlay" option
2017-08-10 06:49:57 +02:00
spycrab
13fac93a29
Qt: Implement NetPlay
2017-08-10 06:49:57 +02:00
Michael Lelli
4fb2d1e361
Ignore capabilities reported by an XInput device
2017-08-09 22:51:01 -05:00
spycrab
d5629017b9
Qt/NetPlay: Implement MD5 dialog
2017-08-09 23:13:20 +02:00
N.E.C
b52aff7966
VideoCommon: Fix typo in comments introduced by #5849
2017-08-09 00:02:27 -07:00
Michael M
6faacbeea5
TraversalClient: make FailureReason an enum class
2017-08-08 15:29:56 -07:00
spycrab
962af060a0
Qt/GameList: Add method to get unique ID for item
2017-08-09 00:05:48 +02:00
spycrab
e9138f7512
Qt/GameList: Implement GetModel()
2017-08-09 00:05:48 +02:00
spycrab
655778f7f1
Qt: Implement GetUniqueID()
2017-08-09 00:05:48 +02:00
spycrab
ca1646d99b
Qt: Add "Start NetPlay" option to the menubar
2017-08-09 00:05:48 +02:00
Léo Lam
58b7350562
SettingsHandler: Fix generated serial numbers
...
Must be 9 characters at most; otherwise the serial number will be
rejected by SDK libraries, as there is a check to ensure the string
length is strictly lower than 10.
2017-08-08 23:25:40 +08:00
JosJuice
1fc910b3ea
Convert to/from old EFB scale numbering
2017-08-08 12:09:50 +02:00
JosJuice
f090a94319
Remove non-integer IRs
2017-08-08 12:09:50 +02:00
Léo Lam
e10e42c09e
PowerPC: Fix indirect includes for GDBStub
2017-08-08 17:47:20 +08:00
Michael M
9e81fec816
NetPlayServer: encapsulate m_upnp_inited in initUPnP()
2017-08-07 11:35:13 -07:00
Michael M
6a8c0ca70b
NetPlayServer: actually set m_upnp_inited
2017-08-07 11:35:13 -07:00
Leo Lam
a25f7b9b4c
Merge pull request #5892 from leoetlino/sysmenu-emu-fixes
...
Boot/BS2: Accuracy fixes
2017-08-08 01:33:05 +08:00
JosJuice
cbe43e58a7
Merge pull request #5890 from leoetlino/sd-fixes
...
IOS/SDIO: Small fixes
2017-08-07 17:03:18 +02:00
Leo Lam
f64b189850
Merge pull request #5895 from lioncash/sw
...
TransformUnit: Get rid of most pointer casting in TransformColor()
2017-08-07 14:18:35 +08:00
Michael M
2abf13ae36
NetPlayServer: remove goto statements
2017-08-06 23:06:38 -07:00
Leo Lam
dbb26a2b54
Merge pull request #5837 from leoetlino/auto-pause
...
WX: Automatically pause the core for the JIT menu items
2017-08-07 13:21:54 +08:00
Scott Mansell
3b5cad6682
Merge pull request #5860 from jturcotte/fix-macos-nswitch-axis
...
Fix axis not working with Switch Pro controller on macOS
2017-08-07 13:44:07 +12:00
Lioncash
745f92b4e5
TransformUnit: Get rid of pointer casting in TransformColor() where applicable
...
The casts to u32* are technically undefined behavior. The u8* cast is
left, as char/unsigned char is exempted from this rule to allow for
bvtewise inspection of objects (and this is what s8/u8 are typedefs of
on platforms we support).
2017-08-06 19:04:31 -04:00
Lioncash
4d35a3105e
TransformUnit: Make LightColor()'s chan parameter const
...
Also marks references/pointers const where applicable
2017-08-06 18:15:05 -04:00
Andrew
d38987e1e8
Hide mouse cursor after delay in DolphinQt
2017-08-06 17:52:37 -04:00
Lioncash
2363be4c63
ElidedButton: Make constructor explicit
...
Prevents implicit conversions to ElidedButton.
2017-08-06 17:31:29 -04:00
Lioncash
5153271278
ElidedButton: Add missing override specifier on paintEvent()
2017-08-06 17:26:07 -04:00
Leo Lam
1385444d86
Merge pull request #5883 from sepalani/term-close
...
DolphinWX: Prevent Dolphin to be shutdown when closing cmd.exe
2017-08-07 00:50:31 +08:00
Léo Lam
9f36499f9e
IOS/SDIO: Make GetCSDv1/v2 const member functions
2017-08-07 00:48:51 +08:00
Léo Lam
c24418a822
IOS/SDIO: Fix warnings about missing braces
2017-08-07 00:48:16 +08:00
Léo Lam
d86d5d62ad
IOS/SDIO: Add missing save calls in DoState
2017-08-07 00:48:16 +08:00
Leo Lam
1833354ef9
Merge pull request #5891 from lioncash/const
...
File: Make GetSize() a const member function
2017-08-07 00:46:49 +08:00
Léo Lam
6d73c3e8e3
Boot/BS2: Don't write part of the debugger hook
...
Writing to 0x60 does actually not "init exception[s]" or anything like
that. Not at all. Rather, it *breaks* a check in Nintendo's SDK, which
makes it fail to realise that the hook hasn't been set up.
This prevents the SDK initialisation routines from writing the rest of
the hook instructions (total: 0x20 bytes), which in turn causes an
anti-piracy check to fail in some Ubisoft games (including Tintin).
Dolphin can be really amazing sometimes.
2017-08-07 00:36:35 +08:00
Léo Lam
d612416ce8
Boot/BS2: Write to 0x3194 and 0x3198
2017-08-07 00:36:35 +08:00
Léo Lam
0bdcabdfa9
Boot/BS2: Write the "devkit boot program version"
2017-08-07 00:36:34 +08:00
Léo Lam
81b298f747
Boot/BS2: Set the proper value for 0x000030d8
...
No clue where people got the 0 value from, or why it's labelled as
"time". As far as I can tell, it is always set to 0xffffffff by
official NAND titles, including the system menu.
2017-08-07 00:36:34 +08:00
Léo Lam
29b1276548
Boot/BS2: Update state file
2017-08-07 00:36:34 +08:00
Léo Lam
363bf27cce
Boot/BS2: Write empty play record
2017-08-07 00:36:34 +08:00
Léo Lam
8489d9da90
Boot: Move StateFlags from Boot_WiiWAD to Boot
...
It's not specific to WADs. The BS2 emulation boot code will also need
to update the state file.
Move the struct to Boot and add a helper function that will handle
reading + computing the checksum + writing the state file.
2017-08-07 00:36:34 +08:00
Lioncash
f0308151a8
File: Make GetSize() a const member function
2017-08-06 07:57:43 -04:00
JosJuice
fa4723ffb4
DolphinQt2: Rename "Table"/"List" to "List View"/"Grid View"
...
Sentret_C posted this comment on Transifex recently:
"What Dolphin refers to as "Table View" and "List View" are
similar to "List View" and "Grid View" in Steam, and I think
the Steam names describe them better."
I agree with that, so here's a commit that changes the names.
2017-08-06 11:35:45 +02:00
Leo Lam
84ecc0ecc9
Merge pull request #5842 from TBoshoven/sdhc-support
...
Add support for SDHC
2017-08-06 11:17:50 +08:00
mimimi085181
cdbd9863b4
Keep textures that are overwritten by efb copies, if the stride matches
...
This is supposed to get efb2tex to the same texture as efb2ram, by applying the related efb copies as updates after each other, in the order of their creation.
2017-08-06 03:13:57 +02:00
mimimi085181
4e8ff42503
Do not load overwritten textures by hash
...
In this case, comparing the hash is not enough to check, if two textures are identical.
2017-08-06 03:13:57 +02:00
mimimi085181
a21ac22e07
fix stored memory stride for normal textures
2017-08-06 03:13:57 +02:00
Tom Boshoven
10c615d7db
Added proper SDHC initialization to protocol v2.
2017-08-05 19:55:08 +02:00
degasus
cc4b3b180b
VideoSW: Drop log level of missing anti aliasing support.
...
We don't want to emit such a high priority warning here, else fifoci will die.
2017-08-05 19:20:19 +02:00
Tom Boshoven
b29c8c1a63
Redid initialization logic.
...
Looks like initialization is done automatically by IOS versions that support SDHC.
2017-08-05 18:51:24 +02:00
Lioncash
01c262fe47
Filesystem: Declare FileInfo iterator's move constructor and assignment operator noexcept
...
Prevents potential extra copies being created in the context of
std::move_if_noexcept.
2017-08-05 12:29:02 -04:00
Tom Boshoven
47e056a654
Re-enable SDIO events.
2017-08-05 14:52:03 +02:00
Tom Boshoven
494e935ca7
Use std::array for CSD.
...
Fix double negative in comment.
Fixed member variable names, added some const correctness.
2017-08-05 14:49:38 +02:00
Stenzek
6d91c1b079
ProgramShaderCache: Call glTexImage3D after glTexParameter
...
Was missed before merge.
2017-08-05 18:18:30 +10:00
Anthony
3c5112bb21
Merge pull request #5856 from stenzek/optimus-crash
...
Fix ubershader crashes with primus/bumblebee
2017-08-05 00:54:28 -07:00
Léo Lam
e58ba76f07
Don't force the aspect ratio in GameINIs
...
Instead, add a SuggestedAspectRatio option which tells Dolphin which
aspect ratio to use when the aspect ratio option is set to Auto.
2017-08-05 14:27:16 +08:00
Anthony
737e045bd8
Merge pull request #5849 from beholdnec/tex-format-bookkeeping
...
Video: Clearly separate Texture and EFB Copy formats
2017-08-04 22:34:34 -07:00
Sepalani
eb3975eee8
DolphinWX: Prevent Dolphin to be shutdown when closing cmd.exe
2017-08-04 18:35:02 +01:00
Leo Lam
9bab7ffa83
Merge pull request #5794 from spycrab/qt_menubar
...
Qt: Overhaul menubar
2017-08-04 14:42:58 +08:00
Leo Lam
284aa99a0d
Merge pull request #5169 from ligfx/sidevicegbastate
...
SI_DeviceGBA: refactor and make GBASockServer a member rather than parent
2017-08-04 14:40:51 +08:00
iwubcode
bc3622c2a8
Fix the size of s_last_connect_request_counter to be 5 (wiimotes + balance board)
2017-08-04 00:32:20 -05:00
Leo Lam
f274bbcbe1
Merge pull request #5872 from ligfx/wxnetplayonionconfig
...
WX: make Netplay use new-style config
2017-08-04 10:07:05 +08:00
Leo Lam
51af8d4aeb
Merge pull request #5829 from ligfx/qtmsgalerthandler
...
Qt: register MsgAlertHandler
2017-08-04 09:53:24 +08:00
Leo Lam
fac085940e
Merge pull request #5877 from JosJuice/log-strings
...
DolphinQt2: Make logging strings more like in DolphinWX
2017-08-04 09:50:08 +08:00
N.E.C
c3a57bbad5
Video: Clearly separate Texture and EFB Copy formats
...
Improve bookkeeping around formats. Hopefully make code less confusing.
- Rename TlutFormat -> TLUTFormat to follow conventions.
- Use enum classes to prevent using a Texture format where an EFB Copy format
is expected or vice-versa.
- Use common EFBCopyFormat names regardless of depth and YUV configurations.
2017-08-03 18:35:29 -07:00
Michael M
7bdfd862d7
Qt: register MsgAlertHandler
...
This is the thing that pops up a message box when something goes wrong,
or when you want to override a previously dumped file, etc.
2017-08-03 13:29:59 -07:00
Michael M
737651f298
MsgHandler: small cleanup
2017-08-03 13:29:59 -07:00
Michael M
76459d88bf
QtUtils: add RunOnObject
2017-08-03 13:29:59 -07:00
Michael M
dde3471b62
WX: make Netplay use new-style config
2017-08-03 13:16:17 -07:00
Michael M
f8fea83e67
NetPlayLauncher: store window geometry in native wxConfig
2017-08-03 13:16:17 -07:00
Michael M
9867677211
WxUtils: add WxStrToUL
2017-08-03 13:16:17 -07:00
Michael M
7d509a7a94
Config/Section: support u16 values
2017-08-03 13:16:16 -07:00
Markus Wick
9649494f67
Merge pull request #5827 from JonnyH/WIP/fix-glMultiDrawElementsBaseVertex-invalid-OES-suffix
...
Fix an incorrect OES suffix on glMultiDrawElementsBaseVertex
2017-08-03 18:45:32 +02:00
JosJuice
b29ca4f830
DolphinQt2: Make logging strings more like in DolphinWX
...
Like PR 5817 but for strings that were added after that PR was merged.
2017-08-03 16:43:50 +02:00
Stenzek
7f88711186
Vulkan: Add a driver bug for NV when MSAA is enabled
...
This causes the card to lock up when vkCmdClearAttachments is called,
when multisampling is enabled. Seems to be restricted to Maxwell and
newer?
2017-08-03 17:40:15 +10:00
Leo Lam
6a76ca7bb7
Merge pull request #5873 from mimimi085181/fix-real-wiimote
...
Properly handle g_wiimotes_mutex again for real wiimotes
2017-08-03 13:09:57 +08:00
mimimi085181
576bf32ab2
Properly handle g_wiimotes_mutex again for reconnect on button press for real wiimotes
...
Sorry, i overlooked the mutex in PR https://github.com/dolphin-emu/dolphin/pull/4949
This pr fixes issue 10434: https://bugs.dolphin-emu.org/issues/10434
2017-08-03 01:54:49 +02:00
JosJuice
5e3c98af1d
DiscIO: Add a Volume::ReadSwappedAndShifted function
...
This is a fairly common operation, so let's make a utility
function for it to cut down on code duplication.
2017-08-02 22:00:51 +02:00
Stenzek
fee08cf63d
Vulkan: Use optimal tiling for dummy texture
...
Fixes a crash on some NVIDIA drivers. Apparently calling
vkCmdClearColorImage on an image with linear tiling causes the
GPU/driver to lock up.
2017-08-02 21:33:10 +10:00
Stenzek
287859c5e1
GLInterface: Support surfaceless contexts on GLX
2017-08-02 20:12:28 +10:00
Stenzek
67997529b8
ProgramShaderCache: Create a FBO for shared contexts to draw into
...
This way it allows us to use surfaceless contexts in EGL/GLX. It also
ensures that the shared context shares a similar setup to the main
context's framebuffer, potentially reducing the number of variants a
driver needs to generate.
2017-08-02 20:12:28 +10:00
Stenzek
d0bcdc7f89
Merge pull request #5858 from stenzek/ubershader-6-bit-color
...
Ubershaders: Fix 6-bit color truncation not being applied
2017-08-02 20:10:34 +10:00
Stenzek
57f34d748b
D3DBase: Raise error if d3dcompiler_47.dll cannot be loaded
...
Previously we were falling back to an earlier version of the compiler.
The older version cannot compile our ubershaders without various
graphical issues.
2017-08-02 19:54:55 +10:00
Leo Lam
a8e4a3c915
Merge pull request #5759 from AwesomeMarioFan/master
...
Fix Time in Forecast Channel
2017-08-02 12:54:26 +08:00
Leo Lam
7565d97733
Merge pull request #4980 from FunctionalDragon/patch-2
...
send stop message before saving recording
2017-08-02 12:49:46 +08:00
Leo Lam
d3bb964d79
Merge pull request #5809 from HannesMann/master
...
Send rumble data to the adapter on a separate thread
2017-08-02 12:36:35 +08:00
FunctionalDragon
11cab1c68d
Send stop message before saving recording
...
When recording during netplay, the stop message was only sent after you
have chosen a filename for the replay, causing the other player(s)
to freeze for a few seconds. This takes care of the annoyance.
2017-08-02 12:29:49 +08:00
Leo Lam
d6e051c942
Merge pull request #5703 from ligfx/blockuserinputfilter
...
QtUtils: add BlockUserInputFilter
2017-08-02 12:13:56 +08:00
Leo Lam
4ddf4e9604
Merge pull request #5862 from JosJuice/bs2-cleanup
...
Emulated BS2 cleanup
2017-08-02 12:03:50 +08:00
Leo Lam
407bc7a544
Merge pull request #4949 from mimimi085181/netplay-reconnect-on-button-press
...
Wiimote Netplay: Sync button press for reconnect
2017-08-02 12:00:28 +08:00
Leo Lam
f208ed8924
Merge pull request #5861 from JosJuice/pr-5817-fixup
...
PR #5817 fixup
2017-08-02 11:57:14 +08:00
Leo Lam
02e80af104
Merge pull request #5863 from MerryMage/oop
...
Config: Missed a line in #5770
2017-08-02 11:56:31 +08:00
Leo Lam
c7602cce04
Merge pull request #5865 from JosJuice/noncopyable-move
...
DirectoryBlob: Use NonCopyable
2017-08-02 11:56:16 +08:00
Hannes Mann
56239d1ae1
Send rumble data to the adapter on a separate thread
2017-08-02 00:44:46 +02:00
JosJuice
2bcccd893a
DirectoryBlob: Remove unused DiscContent member
2017-08-01 22:01:34 +02:00
JosJuice
f7032f8deb
FileSystemGCWii: Don't add 0-size files to m_offset_file_info_cache
...
This is done in order to reduce the risk of files not being added
due to them having the same end offset as another file.
2017-08-01 21:58:25 +02:00
JosJuice
b155c46aca
DirectoryBlob: Fix reading beyond the end of the disc
...
There were two problems with this:
1. If the starting offset was beyond the end of the disc,
we would dereference an invalid iterator.
2. The data beyond the end of the disc was non-deterministic.
2017-08-01 21:58:18 +02:00
JosJuice
74ada98e84
DirectoryBlob: Remove redundant assert
...
DiscContent::Read contains an equivalent assertion.
2017-08-01 21:58:12 +02:00
JosJuice
6b0a60d2ee
DirectoryBlob: Don't add DiscContents with size 0
...
Having DiscContents with size 0 would mean that some DiscContents
might not get added to the std::set because of them comparing
identically to another DiscContent.
This replaces an older piece of code in WriteDirectory that ensures
that no two files have the same starting offset. (We now care about
the ending offset, not the starting offset. The new solution both
ensures that no two files have the same ending offset and that no
two files have the same starting offset.)
2017-08-01 21:58:04 +02:00
JosJuice
78fa98f559
DirectoryBlob: Change the return type of Add/CheckSizeAndAdd
...
Only return the information that isn't already known to the caller.
2017-08-01 21:57:54 +02:00
JosJuice
1b1a75ee3a
DirectoryBlob: Lookup DiscContents by offset + size instead of offset
...
This simplifies DiscContentContainer::Read.
2017-08-01 21:57:48 +02:00
JosJuice
d6260e02ce
DirectoryBlob: Replace std::set<DiscContent> with a new class
2017-08-01 21:57:24 +02:00
JosJuice
a7a8e467b6
DirectoryBlob: Use NonCopyable
2017-08-01 21:52:30 +02:00
mimimi085181
acde0b8b6c
Sync info about pressed wiimote button
2017-08-01 20:56:45 +02:00
JosJuice
b0ee8bd0a0
NonCopyable: Allow moving
...
NonCopyable is only supposed to prevent classes from being copied,
not make it hard for classes to be moveable.
2017-08-01 20:50:11 +02:00
mimimi085181
8b1e61b00a
Change wiimote reconnect on button press code
...
This moves the reconnect logic into a single function, so the netplay code doesn't need to be written 2 times
2017-08-01 20:41:05 +02:00
MerryMage
31ec3e2501
Config: Missed a line in #5770
2017-08-01 18:07:53 +01:00
Leo Lam
9b0fae3183
Merge pull request #5730 from spycrab/qt_logging
...
Qt: Implement logging window
2017-08-01 23:51:35 +08:00
JosJuice
363547a5b2
Boot: Make EmulatedBS2 require a volume
2017-08-01 16:05:53 +02:00
JosJuice
eb6f0a7258
Boot: Remove volume parameter from SetupWiiMemory
2017-08-01 16:05:20 +02:00
JosJuice
42d7dc2e08
Boot: Remove skip_app_loader parameter
2017-08-01 16:04:15 +02:00
JosJuice
fea75d045c
Boot: Split out some code to a new function SetupGCMemory
...
Just like the existing function SetupWiiMemory.
2017-08-01 16:03:55 +02:00
JosJuice
a345ab2515
PR 5817 fixup
2017-08-01 14:34:44 +02:00
Leo Lam
a8606f5d13
Merge pull request #5844 from leoetlino/video-analytics
...
Analytics: Report a few more video settings
2017-08-01 19:23:59 +08:00
JosJuice
b6c6a04f95
DirectoryBlob: Standardize the spelling of disc
...
DirectoryBlob was using disk in some places and disc in other places.
2017-08-01 11:36:40 +02:00
JosJuice
d0c322f6e6
DirectoryBlob: Don't silently set GC region to NTSC-J if bi2.bin is missing
...
We were already handling the Wii region in region.bin in this way.
2017-08-01 11:36:40 +02:00
JosJuice
3fd0d39a85
DirectoryBlob: Write partition headers properly
2017-08-01 11:36:40 +02:00
JosJuice
09832caf41
DolphinQt2: Fix memory leak in GameLoader::LoadGame
2017-08-01 11:36:40 +02:00
JosJuice
a6be1513bf
DolphinWX: Increment game list cache version
...
This is so that DirectoryBlobs won't look like valid discs
in old versions that don't support the DirectoryBlob format.
2017-08-01 11:36:40 +02:00
JosJuice
5fe3745750
Don't show "extra" files from DirectoryBlobs in game list
...
For instance, we don't want to show TGC files that might be
inside the /files/ directory of a GameCube DirectoryBlob,
and we don't want to show the /sys/main.dol files for extra
partitions of Wii DirectoryBlobs.
2017-08-01 11:36:40 +02:00
JosJuice
1ea44f425d
DirectoryBlob: Change ConvertUTF8NamesToSHIFTJIS's parameter to pointer
2017-08-01 11:36:40 +02:00
JosJuice
34fd08e7eb
DirectoryBlob: Support multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
955ab72b1d
DirectoryBlob: Remove m_root_directory from DirectoryBlob
2017-08-01 11:36:40 +02:00
JosJuice
e15b957d53
DirectoryBlob: Implement GetDataSize()
2017-08-01 11:36:40 +02:00
JosJuice
d84bee3ff4
DirectoryBlob: Prepare more for supporting multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
a3ee61e1a9
DirectoryBlob: Let DirectoryBlob force GC/Wii for partition
2017-08-01 11:36:40 +02:00
JosJuice
fb09874f79
DirectoryBlob: Reorder functions in .cpp file
...
They're now grouped by which class they belong to.
2017-08-01 11:36:40 +02:00
JosJuice
ba0ee3f54b
DirectoryBlob: Prepare for supporting multiple partitions
2017-08-01 11:36:40 +02:00
JosJuice
953ca9cee1
DirectoryBlob: Make PadToAddress and Write32 static
2017-08-01 11:36:40 +02:00
JosJuice
ab4762c4c2
DirectoryBlob: Split out setting BI2 to new function
2017-08-01 11:36:40 +02:00
JosJuice
2ea0a1a086
DirectoryBlob: Make some constants local
2017-08-01 11:36:40 +02:00
JosJuice
0d4ad0e39e
DirectoryBlob: Remove m_fst_name_offset
2017-08-01 11:36:40 +02:00
JosJuice
ef39b4da46
DirectoryBlob: Improve SetApploader
...
The code gets simpler by using IOFile instead of ReadFileToString.
Also, we now write -1 in all cases where loading fails.
2017-08-01 11:36:40 +02:00
JosJuice
31d8322c5a
DirectoryBlob: Don't use member variables for addresses
...
Now it's clearer that SetDOL depends on SetApploader
and BuildFST depends on SetDOL.
As a side note, we now load the DOL even if there's
no apploader. (I don't think it matters whether we
do it, but it was easier to implement this way.)
2017-08-01 11:36:40 +02:00
JosJuice
b28ec0b7ee
DirectoryBlob: Split out setting partition table to new function
2017-08-01 11:36:40 +02:00
JosJuice
c4879aa48d
DirectoryBlob: Split out setting TMD and ticket to new function
2017-08-01 11:36:40 +02:00
JosJuice
5a00bda490
DirectoryBlob: Move content emplacement out of the constructor
2017-08-01 11:36:40 +02:00
JosJuice
1258d18f21
DirectoryBlob: Restructure SetApploader
2017-08-01 11:36:40 +02:00
JosJuice
8747b1b6ab
DirectoryBlob: Support region.bin
2017-08-01 11:36:40 +02:00
JosJuice
c73f6b6c26
DirectoryBlob: Add ReadFileToVector function
2017-08-01 11:36:40 +02:00
JosJuice
8afa230787
DirectoryBlob: Rename DISKHEADERINFO_ADDRESS to BI2_ADDRESS
...
Because DISKHEADERINFO is too easy confuse with DISKHEADER.
Also adding BI2_SIZE and DISKHEADER_SIZE contants.
2017-08-01 11:36:40 +02:00
JosJuice
975b2b40fa
DirectoryBlob: Support bi2.bin
2017-08-01 11:36:40 +02:00
JosJuice
251828ccc0
Don't check validity twice when creating DirectoryBlob
2017-08-01 11:36:40 +02:00
JosJuice
a6bbf7e21b
DirectoryBlob: Don't keep DOL in memory
2017-08-01 11:36:40 +02:00
JosJuice
4cc8d3091c
DirectoryBlob: Require header file (boot.bin)
2017-08-01 11:36:40 +02:00
JosJuice
71578b468d
DirectoryBlob: Support tickets and TMDs
2017-08-01 11:36:40 +02:00
JosJuice
02610d4b28
DirectoryBlob: Use DISCIO instead of DVDINTERFACE for logging
2017-08-01 11:36:40 +02:00
JosJuice
3f9eec9ae4
DirectoryBlob: Use DiscContent for ReadNonPartition too
...
ReadPartition and ReadNonPartition are now unified into
ReadInternal, with a parameter controlling whether
the read is in a partition or not.
2017-08-01 11:36:40 +02:00
JosJuice
a0fa350ca6
DirectoryBlob: Use DiscContent for everything in ReadPartition
2017-08-01 11:36:40 +02:00
JosJuice
936ef5b9dd
DirectoryBlob: Let DiscContent be backed by memory instead of file
2017-08-01 11:36:40 +02:00
JosJuice
e1321b131d
DirectoryBlob: Create a DiscContent class for use in m_virtual_disc
2017-08-01 11:36:40 +02:00
JosJuice
b56214789e
DirectoryBlob: Make some functions private
2017-08-01 11:36:40 +02:00
JosJuice
b8d8c7370f
DirectoryBlob: Move constants to .cpp file
2017-08-01 11:36:40 +02:00
JosJuice
12cbeb2288
Remove DVD root and apploader path settings
2017-08-01 11:36:40 +02:00
JosJuice
37c09343d8
Turn VolumeDirectory into DirectoryBlob
...
This lets VolumeDirectory/DirectoryBlob skip implementing
various volume functions like GetGameID, GetBanner, etc.
It also lets us view extracted discs in the game list.
This ends up breaking the boot process for Wii
DirectoryBlobs due to workarounds being removed from the
boot process, but that will be fixed later by adding
proper DirectoryBlob support for things like TMDs.
We now expect the directories to be laid out in a certain
format (based on the format that WIT uses) instead of requiring
the user to set the DVD root and apploader path settings.
2017-08-01 11:36:40 +02:00
JosJuice
5f8935932d
Blob: Add interface for reading decrypted Wii data directly
...
This is useful for blob types that store Wii data unencrypted
(such as WIA and discs extracted to directories) so that
we don't have to waste CPU time encrypting in the blob code
just to decrypt right afterwards in the volume code.
2017-08-01 11:36:40 +02:00
JosJuice
878869488d
Boot: Consider DOL/ELF files as possible volumes
...
The old approach to detecting DOL/ELF files doesn't fit
with the new way of implementing extracted discs.
The game list is already doing it in a way that's similar
to the approach that this commit uses.
2017-08-01 11:36:40 +02:00
Leo Lam
2098ee1b15
Merge pull request #5859 from stenzek/android-ubershader-setting
...
Android: Fix ubershader hybrid setting
2017-08-01 17:22:25 +08:00
Leo Lam
764c93f932
Merge pull request #5683 from JosJuice/volume-wii-defer
...
VolumeWii: Defer loading tickets, TMDs and keys until when needed
2017-08-01 17:11:30 +08:00
Leo Lam
c4b2aa88ec
Merge pull request #5690 from ligfx/removecoreaudio
...
Remove CoreAudio audio backend
2017-08-01 16:42:01 +08:00
Leo Lam
4dcc931d97
Merge pull request #5855 from leoetlino/config-reload
...
Config: Reload game INI on title change
2017-08-01 13:40:05 +08:00
Stenzek
fe65b26d53
Merge pull request #5834 from stenzek/bc7
...
Support loading BC7 (BPTC) textures from DDS files
2017-08-01 12:39:19 +10:00
Stenzek
b93d118cef
Merge pull request #5857 from stenzek/drop-force-ubershader-settings
...
VideoConfig: Drop force vertex/pixel ubershader settings
2017-08-01 12:01:33 +10:00
Stenzek
63305e9173
HiresTextures: Support loading BC7 (BPTC) from DDS files
2017-08-01 11:59:38 +10:00
Stenzek
d18988f41e
GLExtensions: Add GL_ARB_texture_compression_bptc
2017-08-01 11:58:57 +10:00
Jocelyn Turcotte
200fb26148
Fix axis not working with Switch Pro controller on macOS
...
Each axis would appear as multiple elements with 0 min/max.
Filter the list of elements using the correct usage page like
done for buttons.
2017-08-01 01:58:30 +02:00
spycrab
84b44fa467
Qt: Implement logging widget (+ configuration)
2017-08-01 01:36:08 +02:00
spycrab
962d684ca2
Qt: Implement logging settings and signals
2017-08-01 01:36:08 +02:00
spycrab
5b733b8710
Qt: Add log menubar options
2017-08-01 01:36:08 +02:00
Léo Lam
4129aa2438
Config: Reload game INI on title change
...
Enables any code that uses OnionConfig to use the correct config for
the current title, not just the first title that was booted.
2017-07-31 22:44:32 +08:00
Leo Lam
131c97e87c
Merge pull request #5853 from leoetlino/onionconfig-fix
...
Config: Fix the loader Load() being called twice
2017-07-31 22:43:32 +08:00
Stenzek
134b0ca940
Android: Fix ubershader hybrid setting
2017-08-01 00:38:26 +10:00
Léo Lam
f5fd183571
Config: Fix the loader Load() being called twice
...
The Config::AddLoadLayer functions call Load on the layer
explicitly, but Load is already called in the constructor,
so they'd cause the loader's Load function to be called twice,
which is potentially expensive considering we have to read an INI
from the host filesystem.
This commit removes the Config::AddLoadLayer functions because
they don't appear to be necessary.
2017-07-31 22:32:05 +08:00
Stenzek
852e30bb8c
Ubershaders: Fix 6-bit color truncation not being applied
2017-08-01 00:01:09 +10:00
Stenzek
d62dcd397d
VideoConfig: Drop force vertex/pixel ubershader settings
...
This was mainly included for debugging, but could end up being confusing
for users, as well as polluting the GL program cache with a mix of uber
and specialized shaders if the option was changed.
2017-07-31 23:21:38 +10:00
Léo Lam
23ae756192
WX: Automatically pause the core for the JIT menu items
...
Removes the need to manually pause the core, select the menu item and
then unpause.
2017-07-31 17:31:26 +08:00
Léo Lam
f777c01c5d
WX/Debugger: Clean up event handling
...
Boot to Pause and Automatic Start are not JIT or CPU menu items,
so they are supposed to be handled by OnCPUMode.
2017-07-31 17:31:26 +08:00
Léo Lam
603762ec4d
Config: Fix returned game INI filenames for title IDs
...
Using the first letter or the 3 letters of the ID only makes sense
if the ID is an actual game ID (which has 6 characters).
2017-07-31 17:00:44 +08:00
Leo Lam
ed331918f0
Merge pull request #5851 from leoetlino/sysconf-fix
...
SysConf: Fix writing a new SYSCONF
2017-07-31 16:45:06 +08:00
Leo Lam
279c80b414
Merge pull request #5852 from leoetlino/wiimotes
...
Core: Reset s_wants_determinism on shutdown
2017-07-31 16:44:05 +08:00
Leo Lam
c11172497f
Merge pull request #5840 from leoetlino/wx-focus-fix
...
WX: Fix 'renderer has focus' returning false after start
2017-07-31 16:43:53 +08:00
Leo Lam
ca49de80c5
Merge pull request #5826 from JonnyH/WIP/add-option-to-prefer-GLES-when-using-EGL
...
Add "PreferGLES" option to EGL GLInterface
2017-07-31 16:43:38 +08:00
Léo Lam
311cfe9223
Core: Reset s_wants_determinism on shutdown
...
Without doing this, Core::WantsDeterminism() will keep returning true
and some GUI options may be disabled for no reason.
2017-07-31 15:38:39 +08:00
Léo Lam
b5e7c417ff
SysConf: Fix writing a new SYSCONF
...
On Windows, File::GetTempFilenameForAtomicWrite returns a path
somewhere in C:\Users\XXX\AppData\Local\Temp\{UUID here}\
in which all writes just fail.
Just use the SYSCONF path + ".tmp" for the temporary file name.
2017-07-31 15:18:43 +08:00
Lioncash
f6c21e002b
General: Remove unnecessary semicolons
2017-07-30 16:39:53 -04:00
Lioncash
b3c1bff34b
SysConf: Add explicit to single-argument constructor
...
Prevents implicit construction from FromWhichRoot values.
2017-07-30 15:35:16 -04:00
Léo Lam
072991fa31
Force ticket to have a correct key index for importing
...
This commit changes the import code to ensure the common key index
in the ticket is correct, as it's checked by IOS.
2017-07-31 00:50:19 +08:00
Léo Lam
a1f75f3370
Analytics: Report a few more video settings
...
* per-pixel lighting
* usershader mode
* fast depth
* vertex rounding
2017-07-30 21:50:33 +08:00
Tom Boshoven
fa683adaf5
SDHC documentation and cleanups.
...
Added some more comments.
Cleanups based on PR feedback.
Comment was unclear.
2017-07-30 13:06:38 +02:00
Léo Lam
f0aa454662
WX: Fix 'renderer has focus' returning false after start
...
The main window was already active, so the activate event was never
emitted, and m_renderer_has_focus was never changed.
2017-07-30 17:48:54 +08:00
Stenzek
b154edb4fb
VideoCommon: Move WM_USER_CREATE message to after backend initialization
...
Fixes the mouse cursor being left visible after ubershader
precompilation when the hide option is checked.
2017-07-30 17:43:59 +10:00
Stenzek
d54ca2a16a
PixelShaderGen: Don't include host early z support in UID
...
Disable it at shader generation time instead. This way the UIDs are
sharable.
2017-07-30 17:43:59 +10:00
Stenzek
e968c191ff
Ubershaders: Support per-pixel lighting
2017-07-30 17:43:59 +10:00
Stenzek
c8f31656cb
VideoBackends: Support a different number of threads for precompiling
...
At runtime, we only really want a single shader compiler thread.
However, for initial boots, we can use a higher number to speed things
up.
2017-07-30 17:43:59 +10:00
Stenzek
e17efb1d8d
ShaderGen: Use consistent variable names for texture coordinates
2017-07-30 17:43:59 +10:00
Stenzek
25338c53e0
NativeVertexFormat: Drop unused virtual method SetupVertexPointers
2017-07-30 17:43:59 +10:00
Stenzek
33f6668544
Vulkan: Multithreaded creation of UID pipeline caches
...
Should give a decent speedup to boot time.
2017-07-30 17:43:59 +10:00
Stenzek
81b4ed2a81
Vulkan: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
4bf5625895
D3D: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
cd502990fa
OGL: Uber shader support
2017-07-30 17:43:59 +10:00
Stenzek
901bf9c257
VideoConfig: Add config options for ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
745d541527
ShaderGen: Implement vertex ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
7d78cf0f6f
ShaderGen: Implement pixel ubershaders
2017-07-30 17:43:59 +10:00
Stenzek
07591e7d5c
PixelShaderGen: Move header generation to seperate function
2017-07-30 17:43:59 +10:00
Stenzek
c783cd2aaf
GeometryShaderGen: Add UID enumeration functions
2017-07-30 17:43:59 +10:00
Stenzek
38c48ff72e
VertexLoaderManager: Add methods to generate "uber" vertex formats
...
These vertex formats enable all attributes. Inactive attributes are set
to offset=0, and the smallest type possible. This "optimization" stops
the NV compiler from generating variants of vertex shaders.
2017-07-30 17:43:59 +10:00
Stenzek
f48ef65bec
XFMemory: Convert several registers to bitfields
2017-07-30 17:43:59 +10:00
Scott Mansell
479abde9f4
BPMemory: Convert a number of unions to BitFields
2017-07-30 17:43:59 +10:00
Stenzek
0a9574eaa1
VideoCommon: Add AsyncShaderCompiler class implementation
2017-07-30 17:43:59 +10:00
Anthony
5bad2ee4a4
Merge pull request #5832 from stenzek/ubershader-prereq
...
Ubershader prerequisites
2017-07-30 00:42:36 -07:00
Stenzek
357c55442f
Vulkan: Clear decoding texture before usage
...
Fixes a validation layer warning.
2017-07-30 12:38:50 +10:00
Stenzek
447aeb8f77
EGLInterface: Create shared context with same attributes as main context
2017-07-30 12:38:50 +10:00
Stenzek
aff44684a4
Vulkan: Move shader/pipeline-related methods to ShaderCache
2017-07-30 12:38:49 +10:00
Stenzek
d23fd17e1a
Vulkan: Use VK_NV_glsl extension where available, and skip glslang
...
Seems to produce faster ubershaders, at least.
2017-07-30 12:38:49 +10:00
Stenzek
416afa065c
BitField: Add StartBit() and NumBits() accessors
2017-07-30 12:38:49 +10:00
Stenzek
3e508fc0a2
GLInterface: Support shared contexts on AGL
2017-07-30 12:38:49 +10:00
Ryan Houdek
01ae02482c
GLInterface: Support shared contexts in GLX
2017-07-30 12:38:49 +10:00
Stenzek
621287e7eb
VideoCommon: Improve precision of FPS counter
2017-07-30 12:38:48 +10:00
Stenzek
1fccbd5be3
DolphinWX: Add a progress dialog host command
...
Allows feedback from backends to be communicated to the user when
long-running operation are performed (e.g. shader compilation).
2017-07-30 12:38:48 +10:00
Tom Boshoven
4cbb66637b
Add support for SDHC.
...
This add support for SD protocol 2 while staying compatible with protocol 1.01.
Most of this is quite hacky, but it seems to be working well.
The original implementation was quite confusing, so I didn't touch most of the stuff I did not understand.
2017-07-29 21:24:01 +02:00
spycrab
b3e93c5273
Qt: Overhaul menubar
2017-07-29 21:19:05 +02:00
Léo Lam
5a90a26080
IOS: Fix the error code for ES_DEVICE_ID_MISMATCH
2017-07-30 00:24:47 +08:00
ligfx
2f932273bb
LogManager: remove stand-alone semicolon
...
My bad!
2017-07-27 21:15:05 -07:00
Anthony
97ea97564f
Merge pull request #5833 from leoetlino/unused
...
Qt/Config: Remove unused members
2017-07-27 12:00:33 -07:00
Anthony
6fe33f844f
Merge pull request #5770 from ligfx/lognewconfig
...
LogManager: use layered config
2017-07-27 11:58:57 -07:00
Léo Lam
27924a1e2e
Qt/Config: Remove unused members
2017-07-27 17:26:28 +08:00
Leo Lam
7a51b0bcec
Merge pull request #5807 from leoetlino/connect-wiimote
...
Move the Wiimote connect code out of Host
2017-07-27 15:02:28 +08:00
Leo Lam
5c29ea54c5
Merge pull request #5817 from JosJuice/qt-strings-match-wx
...
Make DolphinQt2 strings more like DolphinWX strings
2017-07-27 15:01:56 +08:00
Leo Lam
b140a6eb04
Merge pull request #5830 from lioncash/prototypes
...
DolphinQt2: Remove unimplemented prototypes
2017-07-27 15:01:29 +08:00
Leo Lam
bf7c0c8024
Merge pull request #5831 from lioncash/include
...
DolphinQt2: Add missing include guards
2017-07-27 15:00:52 +08:00
Stenzek
a11bde7d16
Merge pull request #5679 from stenzek/no-host-state-in-uids
...
ShaderGen: Decouple host state from shader UIDs
2017-07-27 13:30:38 +10:00
Jonathan Hamilton
0fbd0cab6a
Add "PreferGLES" option to EGL GLInterface
...
This makes the EGL interface select OpenGL|ES contexts over "desktop"
OpenGL ones.
Possibly not useful for anyone outside my own debugging, but you never
know
2017-07-26 19:26:36 -07:00
Lioncash
fb42c3eddc
DolphinQt2: Add missing include guards
2017-07-26 16:31:58 -04:00
Lioncash
80b938b403
DolphinQt2: Remove unimplemented prototypes
...
Also removes an unnecessary includes in related files
2017-07-26 16:26:55 -04:00
Michael M
0437f4c486
IOWindow: use BlockUserInputFilter
2017-07-26 10:30:02 -07:00
Michael M
c624ef43f0
MappingButton: use BlockUserInputFilter
2017-07-26 10:30:02 -07:00
Michael M
7d438da911
QtUtils: Add BlockUserInputFilter
2017-07-26 10:30:01 -07:00
JosJuice
de6bd80f9c
DolphinQt2: Add i18n comments for Table/List
...
To avoid confusion with the verb "list" and the kind of table
that's a type of furniture.
2017-07-26 08:04:10 +02:00
JosJuice
b32fe5e41d
DolphinQt2: Remove the %1 from "%1 Banner Details"
...
It's not particularily useful to list the platform here,
and these kinds of messages that use words as parameters
are more likely to be mistranslated than the average string.
2017-07-26 08:04:10 +02:00
JosJuice
960525859b
Make DolphinWX strings more like DolphinQt2 strings
...
Same as the previous commit, except I'm copying strings
in the other direction because the DolphinWX variants
of these strings could use some improvement.
2017-07-26 08:04:10 +02:00
JosJuice
ce11b34e74
Make DolphinQt2 strings more like DolphinWX strings
...
Without this, we would be pushing a lot of extra strings onto
translators now that 55fb6ef
is merged.
2017-07-26 08:04:10 +02:00
JosJuice
fb80c5398a
DolphinWX: Use title case for hotkey group names
2017-07-26 08:00:17 +02:00
JosJuice
d7d88aeb7d
DolphinWX: Mark AF choices as translatable
...
For consistency with DolphinQt2.
2017-07-26 08:00:17 +02:00
JosJuice
8deba867e8
DolphinQt2: Remove ellipses from settings menu options
...
The action that these menu options perform is to open a
settings window, and that action is completed instantly,
so we shouldn't have ellipses.
2017-07-26 08:00:17 +02:00
Leo Lam
10db1bcbca
Merge pull request #5828 from ligfx/qtqueueonobject
...
Qt: add QueueOnObject
2017-07-26 12:56:08 +08:00
Leo Lam
be8324380d
Merge pull request #5786 from grimpunch/qt_viewoptions
...
Qt: Implement Show Platforms / Show Regions
2017-07-26 12:02:14 +08:00
Michael M
2c03cfacc2
Qt WiiUpdate: use QueueOnObject instead of Core::QueueHostJob
2017-07-25 17:44:07 -07:00
Michael M
734c9e1459
QtUtils: add QueueOnObject
2017-07-25 17:44:07 -07:00
Jonathan Hamilton
184e4d7b4a
Fix an incorrect OES suffix on glMultiDrawElementsBaseVertex
...
The spec says it should have an EXT not OES suffix, as it's enabled as
an interaction with GL_EXT_multi_draw_arrays.
On some drivers GetProcAddress() returns NULL, which causes the
GLExtensions init to fail
This 'happened' to work if GetProcAddress() doesn't return NULL on missing
functions (as allowed in EGL) - as the function appears to never be called so
this would not have been noticed.
Mesa also (incorrectly?) exports the EXT version, so this would all
happen to work there, but appears to be contrary to the spec.
This invalid prefix even ended up in the upstream khronos registry, the
issue was reported here:
https://github.com/KhronosGroup/OpenGL-Registry/issues/81
2017-07-25 12:52:39 -07:00
JosJuice
8292d378ea
Merge pull request #5824 from lioncash/include-guard
...
ListProxyModel: Add missing include guard
2017-07-25 08:23:49 +02:00
Mat M
63f1f122fa
Merge pull request #5729 from ligfx/qtremoveoldsyntax
...
DolphinQt2: update old SLOT/SIGNAL syntax
2017-07-24 18:48:20 -05:00
Lioncash
7373474888
ListProxyModel: Add missing include guard
2017-07-24 19:46:25 -04:00
Christian Murphy
df35a26628
Qt: Implement Show Platforms / Show Regions
...
Porting the View config logic from WX to Qt.
Adds to the View Menu
2017-07-24 14:36:09 +01:00
Leo Lam
c27dd9dc20
Merge pull request #5785 from leoetlino/sysconf-fix
...
SysConf: Minor fixes
2017-07-24 14:03:33 +08:00
Leo Lam
a23a38da23
Merge pull request #5821 from JosJuice/qt-builtin-database-placement
...
DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
2017-07-24 11:06:20 +08:00
Michael Maltese
aafb61c187
DolphinQt2: Remove 'slots:' syntax from headers
...
With Qt5's new connection syntax, method pointers and functors are
connected directly. There's no need to declare slots.
2017-07-23 15:07:49 -07:00
Michael Maltese
f0fd38698e
DolphinQt2: use new connection syntax instead of old syntax
2017-07-23 15:07:49 -07:00
Michael Maltese
a365686956
GameList: fix Decompress slot typo
...
There is no such `DecompressISO` slot.
2017-07-23 15:07:49 -07:00
Leo Lam
7c70e77c74
Merge pull request #5818 from JosJuice/qt-localization-fixes
...
DolphinQt2: Fix localization issues
2017-07-23 22:04:17 +08:00
Leo Lam
96a8fb720d
Merge pull request #5819 from JosJuice/qt-analytics-message
...
DolphinQt2: Reword the analytics message
2017-07-23 22:02:02 +08:00
JosJuice
bb3bbb2887
DolphinQt2: Fix saving "Use Built-In Database of Game Names"
...
This one is my fault too
2017-07-23 15:29:43 +02:00
JosJuice
22fbd65d47
DolphinQt2: Change the placement of "Use Built-In Database of Game Names"
...
When I added this setting, I didn't notice that the interface
pane in DolphinQt2 was split into two different sections.
2017-07-23 15:28:34 +02:00
JosJuice
34cacd4944
DolphinQt2: Reword the analytics message
...
"this" made sense when "Do you authorize..." was on the bottom,
but it doesn't make sense when it's at the top.
Also removing unnecessary newlines.
2017-07-23 15:18:12 +02:00
JosJuice
20172196f5
DolphinQt2: Let game properties show names for WADs
2017-07-23 15:11:18 +02:00
JosJuice
5938c58f99
DolphinQt2: Fix localization issues
2017-07-23 10:50:20 +02:00
Léo Lam
02f32a9b26
Handle BT.DINF properly
...
The section is 0x461 bytes long, not 0x460. The config data is also now
initialised to zero to avoid garbage being written to the SYSCONF.
Because our handling has been wrong forever, we discard older BT.DINF
section backups as using them would result in the section being the
wrong size / incomplete again.
2017-07-23 15:58:04 +08:00
Léo Lam
c759739ee9
SysConf: Handle array entries properly
...
It turns out that the last byte of array entries isn't unused (as we
thought); instead, it looks like it's actually part of the main data,
and the length stored next to the name is in fact the length minus one.
Getting it wrong and always storing a null byte in there won't affect
most entries (since the last byte is zeroed most of the time), except:
- IPL.NIK: the length is stored in the last byte, and it must be kept.
- BT.DINF: u8 unknown[0x45] should be another Bluetooth device entry.
- Possibly other unknown affected entries.
2017-07-23 15:57:29 +08:00
Léo Lam
1c33dfc787
Wiimote: Remove useless disconnections
...
ChangeWiimoteSource does not need to disconnect a Wiimote if it isn't
connected.
2017-07-23 15:52:15 +08:00
Léo Lam
ee868e2362
Move the Wiimote connect code out of Host
...
I don't know who thought it would be a good idea to put the Wiimote
connect code as part of the Host interface, and have that called
from both the UI code and the core. And then hack around it by having
"force connect" events whenever Host_ConnectWiimote is called
from the core...
2017-07-23 15:47:32 +08:00
Léo Lam
9357fa3514
Qt/AboutDialog: Fix the copyright string
2017-07-23 14:58:01 +08:00
Leo Lam
673210afea
Merge pull request #5814 from ligfx/macremovecfbundlelocalizations
...
Remove CFBundleLocalizations from Info.plist
2017-07-23 14:48:38 +08:00
Leo Lam
2c35983126
Merge pull request #5787 from ligfx/wxsortfallbacktotitle
...
Wx: make GameListCtrl fallback to sorting by title
2017-07-23 14:47:31 +08:00
Leo Lam
81abecbf46
Merge pull request #5739 from leoetlino/correct-key
...
IOS/ES: Use the correct import/export key (fix DLC)
2017-07-23 14:47:10 +08:00
Leo Lam
3cbf56a9ad
Merge pull request #5797 from ligfx/qtoptionsmenu
...
Qt: implement remainder of 'Options' menu
2017-07-23 14:46:48 +08:00
Leo Lam
55fb6efea3
Merge pull request #5812 from ligfx/gettexttizeqt
...
gettextize: extract arguments to Qt's `tr`
2017-07-23 14:35:44 +08:00
Leo Lam
a7c3d035c8
Merge pull request #5806 from Starsam80/qt-movable-headers
...
Qt: Allow the game list headers to be rearranged
2017-07-23 14:19:46 +08:00
Leo Lam
68e00b3ee6
Merge pull request #5808 from leoetlino/hci-array
...
BT: Use a std::array for all Bluetooth addresses
2017-07-23 14:19:24 +08:00
Michael Maltese
03f26ec5b3
Remove CFBundleLocalizations from Info.plist
...
It's only needed for apps that don't use .lproj folders.
2017-07-22 23:15:14 -07:00
Michael Maltese
4776fdc130
Qt/AboutDialog: remove literal UTF-8 characters
2017-07-22 22:35:25 -07:00
Lioncash
5859914da5
TraversalClient: Fix memory leaks in ReleaseTraversalClient()
...
release() relinquishes ownership of a pointer, it doesn't actually free
it.
2017-07-22 18:19:25 -04:00
Léo Lam
b6ae70ac7e
BT: Use a std::array for all Bluetooth addresses
...
BluetoothEmu had its own bdaddr_t type which is a old style C struct
and typedef, which makes comparisons and copies a bit ugly.
On the other hand, BTReal had its own btaddr_t type using std::array.
To make things very slightly nicer, this commit changes the Bluetooth
code to use a single type (std::array<u8, 6>) for all BT addresses.
2017-07-23 02:07:02 +08:00
Leo Lam
efd318df64
Merge pull request #5791 from leoetlino/wiimote-indicator
...
Remove Wii Remote connection status from status bar
2017-07-22 22:03:25 +08:00
Starsam80
d9a09cff14
Qt: Allow the game list headers to be rearranged
2017-07-22 00:38:09 -06:00
Léo Lam
fbcc6bbd57
IOS/ES: Use the correct key for imports/exports
...
Imports/exports don't always use the title key. Exporting a title and
importing it back uses the PRNG key (aka backup key handle or key #5 ),
not the title key (at all).
To make things even more fun, some versions of IOS have a bug that
causes it to use a zeroed key instead of the PRNG key. When Nintendo
decided to fix it, they added checks to keep using the zeroed key only
in affected titles to avoid making existing exports useless.
(Thanks to tueidj for drawing my attention to this.
I missed this edge case during the initial implementation.)
This commit implements these checks so we are using the correct key
in all of these cases.
We now also use IOSC for decryption/encryption since built-in key
handles are used. And we now reject any invalid common key index,
just like ES.
2017-07-21 17:42:59 +08:00
Léo Lam
e608d79f42
IOSC: Load the backup/PRNG key
2017-07-21 17:42:59 +08:00
Léo Lam
05016e8dca
EcWii: Add function to get the backup key
2017-07-21 17:42:59 +08:00
Léo Lam
5b09657a1f
ESFormats: Add entry for unknown title flag
2017-07-21 17:42:59 +08:00
Léo Lam
5cbbe2dda2
IOSC: Add support for importing decrypted keys directly
2017-07-21 17:42:59 +08:00
Léo Lam
5729ac0fc6
Core: Replace recursive locking from PauseAndLock
...
PauseAndLock cannot be called recursively anymore.
2017-07-21 16:45:59 +08:00
Léo Lam
f106a9637d
Replace balanced Core::PauseAndLock calls with RunAsCPUThread
...
Core::PauseAndLock requires all calls to it to be balanced, like this:
const bool was_unpaused = Core::PauseAndLock(true);
// do stuff on the CPU thread
Core::PauseAndLock(false, was_unpaused);
Aside from being a bit cumbersome, it turns out all callers really
don't need to know about was_unpaused at all. They just need to do
something on the CPU thread safely, including locking/unlocking.
So this commit replaces Core::PauseAndLock with a function that
makes both the purpose and the scope of what is being run on the
CPU thread visually clear. This makes it harder to accidentally run
something on the wrong thread, or forget the second call to
PauseAndLock to unpause, or forget that it needs to be passed
was_unpaused at the end.
We also don't need comments to indicate code X is being run on the
CPU thread anymore, as the function name makes it obvious.
2017-07-21 16:45:59 +08:00
JosJuice
1fc5830d0c
Remove region mismatch check for GCI folders
...
The region mismatch check that we used can give false positives.
Skipping the check won't lead to any harm - games will ignore
save files that have a non-matching fourth game ID character.
2017-07-20 15:24:07 +02:00
Stenzek
3ea9d86faa
ShaderGen: Pass host config to shader generation functions
...
Also moves the host config checks to common.
2017-07-20 17:54:33 +10:00
Stenzek
d01b0bf60f
VideoCommon: Move shader cache filename generation to common
2017-07-20 17:46:59 +10:00
Stenzek
7c5bbafdd1
Vulkan: Don't save/load pipeline UID cache when shader cache is disabled
2017-07-20 17:46:59 +10:00
Stenzek
b380f292b4
Vulkan: Reload pipeline cache when relevant host config changes
2017-07-20 17:46:59 +10:00
Stenzek
a8343cc19a
Vulkan: Don't save pipeline cache if shader cache is disabled
...
We still create a pipeline cache object, since that speeds up driver's
creation of pipelines at runtime. However, we should not save it.
2017-07-20 17:46:59 +10:00
Stenzek
d9a3b29a07
Vulkan: Emit input/output locations for EFB poke geometry shader
2017-07-20 17:46:59 +10:00
Stenzek
228ddb8aba
D3D11: Reload shader cache when relevant config changes
2017-07-20 17:46:59 +10:00
Stenzek
62a901508b
OGL: Reload shader cache when relevant video config changes
2017-07-20 17:46:59 +10:00
Stenzek
d1381f5021
VideoConfig: Add host config union
...
Contains all host state that can affect shadergen.
2017-07-20 17:46:59 +10:00
Stenzek
82c27182a8
ShaderGen: Remove host state from shader uids
2017-07-20 17:46:59 +10:00
Leo Lam
c207a1072d
Merge pull request #5795 from JosJuice/gc-region-detection
...
Improve GameCube region detection
2017-07-20 14:13:11 +08:00
Anthony
39e17ccc41
Merge pull request #5793 from spycrab/qt_fullscreen_fix
...
Qt: Fix missing window border after exiting fullscreen under Windows
2017-07-19 08:52:22 -07:00
Leo Lam
baf950c417
Merge pull request #5796 from JosJuice/findfileinfo-find
...
Use find_first_not_of in FileSystemGCWii::FindFileInfo
2017-07-19 21:52:13 +08:00
Michael Maltese
e1554c04a1
Qt: implement remainder of 'Options' menu
2017-07-16 18:23:59 -07:00
Michael Maltese
2b712bdbaa
ListTabWidget: disallow deselecting items
2017-07-16 18:23:59 -07:00
Michael Maltese
19dc580a4e
Qt: extract ListTabWidget from SettingsWindow
2017-07-16 18:23:59 -07:00
Starsam80
c6478cac2f
Qt: Shrink settings window and make widgets stretch
2017-07-16 14:50:52 -06:00
JosJuice
c83cac7cca
Fix the handling of NTSC-K for GCI folders
2017-07-16 16:31:12 +02:00
JosJuice
be8e93f472
Ensure that Volume::GetRegion doesn't return invalid enum values
2017-07-16 14:52:17 +02:00
JosJuice
db1c534b3e
Add warning comments to RegionSwitch and code that uses it
2017-07-16 14:49:28 +02:00
JosJuice
cd60810d9d
Improve Japanese check in TitleDatabase
...
We should check the language of a game rather than the region.
RegionSwitchGC counts W as NTSC-J, and W games aren't in Japanese.
2017-07-16 14:33:14 +02:00
JosJuice
c8b4645039
Detect Korean GC releases as Korean when possible
...
According to http://scanlines16.com/en/blog-3/retro-gaming/game-cube/gamecube-korean-master-list/ ,
Korean GC releases use the following country codes:
- E or W for games in English
- K for games in Korean
- Unknown value for games in Japanese (my guess is that they might
have made the discs bit-for-bit identical to Japanese releases
because the regions of these games are already set to NTSC-J)
As far as I know, the GC has no Taiwanese releases, which is what
the W country code is used for on the Wii. But I could be wrong.
A small note: The country_byte == 'K' check in the code isn't
actually necessary as long as RegionSwitchGC returns NTSC_J
for 'K', but I thought it would be better to not rely on that.
2017-07-16 14:30:41 +02:00
JosJuice
ebf0f64a01
Detect GC region based on the actual region value
...
The county code isn't 100% reliable for detecting the region.
For instance, some games released in Korea have the country
code E even though they're region-locked to NTSC-J consoles.
This commit makes the GC disc region detection match the Wii
disc region detection (apart from the region value being in
a different place on the disc).
2017-07-16 14:29:43 +02:00
JosJuice
fe10e8aa6c
Fix RegionSwitchGC for the value 'K'
...
Korean GameCube releases have their region set to NTSC-J.
2017-07-16 13:52:53 +02:00
JosJuice
c64d668c3c
Use find_first_not_of in FileSystemGCWii::FindFileInfo
2017-07-16 13:19:18 +02:00
spycrab
e3cf1e4f37
Qt: Fix missing window border after exiting fullscreen under Windows
2017-07-16 01:09:36 +02:00
Jules Blok
ba356f78d1
Merge pull request #5774 from Armada651/d3d-fs-fixes
...
D3DBase: Set the fullscreen state in Create()
2017-07-15 15:01:46 +02:00
Léo Lam
91f8283a1d
Remove Wii Remote connection status from status bar
...
Showing the Wii remote connection status leads to inconsistent UX,
because we don't do anything like that for GameCube controllers
or with Bluetooth passthrough.
It's also questionable how useful it is given that:
* it doesn't print the number of connected remotes, just that one
remote is connected, connecting or not connected, so the only info
it provides is actually wrong when using multiple remotes;
* this user-facing feature is actually broken in master and no one has
complained AFAIK, which means people don't really rely on it;
* the status bar isn't visible most of the time unless the user is
using render to main or deliberately keeping the main window's
status bar visible by moving the render window and they're not too
far away from their screen;
* emulated Wii remotes now reconnect on input, which means that there
is less of a need to actually know at all times whether a remote
is connected, since pressing any button will reconnect it and provide
immediate, visible feedback via OSD messages and the Wii remote
pointer appearing.
2017-07-15 13:01:56 +08:00
Andrew
3095f585dd
Hide mouse cursor after delay in DolphinWX
2017-07-14 22:28:52 -04:00
Michael Maltese
41917cb43c
Wx: make GameListCtrl fallback to sorting by title
...
Fixes an issue with game items moving around randomly when resorted.
2017-07-14 15:29:48 -07:00
Michael Maltese
becb1a744b
SI_DeviceGBA: if a client doesn't respond within 1s, disconnect them
...
Rather than returning 0 / not creating an expected SI interrupt. You can
test this by running VBA-M in a debugger and stopping it while it's
connected to Dolphin: on current master, Dolphin will freeze-up until it
gets a response. With this PR, Dolphin will gracefully disconnect the device, and reconnect if it starts responding again.
2017-07-14 13:57:17 -07:00
Michael Maltese
f004dfa92b
SI_DeviceGBA: use SI_ERROR_NO_RESPONSE when client isn't connected
...
Slight behavior change, but fills a gaping hole in the state logic.
2017-07-14 13:57:17 -07:00
Michael Maltese
8dee8e6494
SI_DeviceGBA: extract magic numbers SEND_MAX_SIZE, RECV_MAX_SIZE
2017-07-14 13:57:17 -07:00
Michael Maltese
05ab03a551
SI_DeviceGBA: make GBASockServer a member instead of parent
2017-07-14 13:57:17 -07:00
Michael Maltese
ff78327643
SI_DeviceGBA: remove duplication of GBASockServer destructor logic
2017-07-14 13:57:17 -07:00
Michael Maltese
e6cfc3a75b
SI_DeviceGBA: clean up GetTransferTime()
2017-07-14 13:57:17 -07:00
Michael Maltese
d30e0ea28e
GBASockServer: clean up Receive() return value
2017-07-14 13:57:16 -07:00
Michael Maltese
89ca32daa6
GBASockServer: cleanup GetNextSock and GetNextClock
2017-07-14 13:57:16 -07:00
Michael Maltese
751377256b
Move GBASockServer logging into SI_DeviceGBA
2017-07-14 13:57:16 -07:00