Léo Lam
34c9bf391e
IOS: Correct ES return code names about signatures
...
-1027 is used when ES cannot find the issuer of a certificate.
-1012 is used when the signature type is invalid.
2017-06-16 15:49:40 +02:00
Shawn Hoffman
1ada68aecd
windows: fix handle leak when using continuous scan
2017-06-16 04:00:32 -07:00
Léo Lam
01faa5c852
FileUtil: Use errno for printing errors in IsDirectory
...
stat() returns an error code in errno on both POSIX compliant
platforms and Windows.
This means we should always use errno instead of GetLastErrorMsg
which uses GetLastError() (Win32) on Windows.
2017-06-16 12:43:41 +02:00
Léo Lam
aa63199977
FileUtil: Don't manually strip trailing slashes
...
POSIX allows one or more trailing slashes for directories.
From POSIX.1-2008, section 3.271 (Base Definitions / Pathname):
> A pathname can optionally contain one or more trailing <slash>
> characters. Multiple successive <slash> characters are considered to
> be the same as one <slash>, except for the case of exactly two
> leading <slash> characters.
On Windows, the extra trailing slashes are ignored for directories too.
2017-06-16 12:31:26 +02:00
Leo Lam
405d2e28ad
Merge pull request #5621 from Orphis/d3d_include
...
d3d: Add missing include
2017-06-16 10:53:56 +02:00
Shawn Hoffman
f469d86467
cmake/win32: add CompatPatches
2017-06-15 21:26:40 -07:00
Shawn Hoffman
1210c74955
[windows]: Apply compatibility patches to problematic gamepad vibration drivers.
...
Move ucrtFreadWorkaround to use the new LdrWatcher.
2017-06-15 21:21:01 -07:00
Florent Castelli
0b504fa046
d3d: Add missing include
2017-06-16 05:52:01 +02:00
Shawn Hoffman
e51071a9c5
msbuild: put pugixml in Externals solution filter; fix project reference.
2017-06-15 19:06:16 -07:00
Michael Maltese
7c79673d78
MappingButton: make m_block a Common::Flag
2017-06-15 16:15:07 -07:00
Michael Maltese
5b6c8c3ad0
MappingButton: grab and release mouse and keyboard instead of calling parent SetBlockInputs
2017-06-15 16:15:07 -07:00
Michael Maltese
2188ac785a
Move MappingWindow::OnDefaultFieldsPressed() to correct file
2017-06-15 16:15:07 -07:00
Michael Maltese
6c73079011
MappingWidget: fix typo and call Update() on bools
2017-06-15 16:15:07 -07:00
Michael Maltese
ef563fc032
MappingWidget: call Clear() on numerics and bools
2017-06-15 16:15:07 -07:00
Michael Maltese
94038a1e03
MappingButton: remove GetFirstButtonPress logic
2017-06-15 16:15:07 -07:00
Michael Maltese
5b3b6b7f3d
DolphinQt2: FocusEventFilter -> WindowActivationEventFilter
2017-06-15 16:12:05 -07:00
Lioncash
dd4203bec8
Core: Remove unnecessary includes
...
Also moves a cpp file's related header file to the top of the inclusions if it isn't already there.
2017-06-15 18:52:22 -04:00
Lioncash
b003108b8b
Core: Add WiimoteCommon headers to the VS project
2017-06-15 18:38:21 -04:00
Leo Lam
8f460a1cda
Merge pull request #5611 from JosJuice/reorganize-file-namespace
...
Reorganize File namespace
2017-06-15 23:28:36 +02:00
JosJuice
cf94ce6305
Add a namespace to OpenFStream
...
For consistency with the other functions in FileUtil.h.
2017-06-15 21:34:04 +02:00
JosJuice
f09ceaa735
Move IOFile to a separate file
...
Reduces the number of files that need to be recompiled
when making changes to FileUtil.h.
2017-06-15 21:33:50 +02:00
Leo Lam
9bc1b652fe
Merge pull request #5601 from leoetlino/esformats-additions
...
ESFormats additions and fixes
2017-06-15 21:32:44 +02:00
Leo Lam
743284d39d
Merge pull request #5606 from leoetlino/include
...
NoGUI: Fix a missing include for Xlib
2017-06-15 21:31:21 +02:00
Leo Lam
09c0a3caaf
Merge pull request #2820 from JosJuice/filesystem
...
Filesystem redesign and performance improvements
2017-06-15 21:24:42 +02:00
MerryMage
f8a99ca192
VertexShaderManager: Rename projection hack variables
2017-06-15 16:38:10 +01:00
MerryMage
44f2420517
GraphicsSettings: PH_ZNear and PH_ZFar are std::strings
2017-06-15 16:38:06 +01:00
Léo Lam
a370ad5f6d
IOS/ESFormats: Fix content map writing
...
On Windows, this would fail because the file handle wasn't closed.
2017-06-14 23:13:46 +02:00
Léo Lam
8865208571
IOS/ESFormats: Add ParseCertChain
...
This will be used to avoid duplicating cert chain parsing code.
2017-06-14 22:45:30 +02:00
Léo Lam
e29f6e383f
IOS/ESFormats: Add CertReader
2017-06-14 22:45:30 +02:00
Léo Lam
90280b3f84
IOS/ESFormats: Remove unused TMDReader function
...
The ES function that used to make use of it was changed to be more
sane, so GetRawHeader() is now unused and useless.
2017-06-14 22:45:29 +02:00
Léo Lam
6c3069be97
IOS/ESFormats: Use SignedBlobReader for TMDs and tickets
2017-06-14 22:45:29 +02:00
Léo Lam
2ec04675c9
IOS/ESFormats: Add SignedBlobReader
...
Allows common signature parsing code to not be duplicated.
2017-06-14 22:45:29 +02:00
Anthony
335f54cac6
Merge pull request #5609 from leoetlino/qt-user-path
...
Qt: Support custom user profile paths
2017-06-14 13:40:37 -07:00
JosJuice
583406d900
Filesystem: Make destructors = default
2017-06-14 15:26:04 +02:00
JosJuice
0b7d2e7c68
Filesystem: Modernize variable names
2017-06-14 15:25:09 +02:00
JosJuice
e3a2cd827a
Filesystem: Do more validity checking in the constructor
...
This makes it possible to catch errors earlier so that file systems
simply fail to load instead of behaving oddly. It also makes it possible
to check for errors that weren't checkable before, like the end of a
directory being after the end of the parent directory.
2017-06-14 15:25:05 +02:00
JosJuice
ee27be06d7
Filesystem: Add a cache for finding file info by disc offset
...
FileMonitor calls this every time a read happens, and there's no code that
only calls this a small number of times, so having a cache is worthwhile.
2017-06-14 15:25:02 +02:00
JosJuice
87916fe099
Filesystem: Replace GetFileList()
...
Instead of expecting callers to know how the size of directory file infos
relates to which files are in which directories, filesystems now offer a
GetRoot() method, and file infos offer a way to get their children. As
a bonus, m_FileInfoVector no longer has to be created and kept around
in RAM. Only the file info objects that actually are used are created.
2017-06-14 15:23:48 +02:00
Léo Lam
a9630727fe
Qt: Support custom user profile paths
...
Pretty much the most important option to support, even for a UI
frontend that's still a WIP. It's essential for testing.
2017-06-14 14:31:30 +02:00
Leo Lam
40a9e585a7
Merge pull request #5604 from sepalani/wx-rm-path
...
PathConfigPane: Prevent an invalid index assert
2017-06-14 13:30:15 +02:00
Sepalani
2a349f8e49
PathConfigPane: Prevent an invalid index assert
2017-06-14 12:07:25 +01:00
Leo Lam
c71cb9ac49
Merge pull request #5608 from Starsam80/qt-should-be-like-wx
...
Qt/MappingWindow: Update layout to match WX
2017-06-14 11:14:34 +02:00
Leo Lam
54e882941c
Merge pull request #5600 from leoetlino/xml-library
...
Externals: Add zeux/pugixml@38edf25
2017-06-14 11:13:32 +02:00
Leo Lam
36efcc9f39
Merge pull request #5599 from leoetlino/http-request
...
Common: Add HttpRequest to simplify HTTP requests
2017-06-14 11:12:56 +02:00
Starsam80
e023cc124b
Qt/MappingWindow: Update layout to match WX
2017-06-13 22:42:53 -06:00
JosJuice
ee2b88ebb6
Filesystem: Store pointer to beginning of FST in file infos
...
Needed for the next commit.
2017-06-13 22:44:15 +02:00
JosJuice
1262f08ac1
Filesystem: Better validity checking
...
Now that the FST in read in the constructor, m_Valid
can be set to false when there are errors in the FST.
2017-06-13 22:44:11 +02:00
JosJuice
afe2bc60f6
Filesystem: Initialize everything in constructor
...
Not initializing until the filesystem is used is good when
a filesystem is constructed and then never used, but nobody does that.
This simplifies the code a little and lets all methods be const.
2017-06-13 22:44:07 +02:00
JosJuice
d6ee7ec32c
Filesystem: Read the entire FST in one go
...
Instead of using lots of small scattered reads to read the FST,
only one big read is used, which is more efficient.
This also means that the FST only allocates memory once and stores all
strings close to each other - good for the CPU cache. The file info
objects use pointers to this FST memory of containing data themselves.
Keeping around the big m_FileInfoVector containing objects with only
pointers is a bit unnecessary, but that will be fixed soon.
2017-06-13 22:43:41 +02:00
JosJuice
f49b64caff
Filesystem: Rewrite finding file info by path for performance
...
Instead of calling GetPathFromFSTOffset for every file info, FindFileInfo
now only looks at names in directories that are included in the path.
For the common case of searching for "opening.bnr", this means that
only root-level files and directories have to be searched through.
2017-06-13 22:41:02 +02:00
JosJuice
7c45afecb2
Filesystem: Use file info in arguments instead of path
...
Some callers already have the file info, making the relatively slow
FindFileInfo calls unnecessary. Callers that didn't have the file info
will now need to call FindFileInfo on their own.
2017-06-13 22:40:57 +02:00
JosJuice
3d5ef948d0
Filesystem: Make FindFileInfo public
2017-06-13 22:40:53 +02:00
JosJuice
07d3a39aeb
Filesystem: Replace file info's full path with name
...
Some callers (i.e. ISOProperties) don't want the full path, so giving them
it is unnecessary. Those that do want it can use GetPathFromFSTOffset.
Not storing full paths everywhere also saves a small bit of RAM and is
necessary for a later commit. The code isn't especially pretty right now
(callers need to use FST offsets...) but it'll become better later.
2017-06-13 22:38:31 +02:00
JosJuice
5021b4a567
Filesystem: Replace FileInfo struct with interface
...
GC/Wii filesystem internals shouldn't be exposed to other classes.
This change isn't especially useful by itself, but it opens up the
way for some neat stuff in the following commits.
2017-06-13 22:37:43 +02:00
Leo Lam
38c60156ce
Merge pull request #5479 from spycrab/qt_mapping_io_win
...
Qt: Implement advanced mapping I/O windows
2017-06-13 21:09:45 +02:00
Léo Lam
0d58a0bfe2
HttpRequest: Add support for custom timeouts
2017-06-13 19:17:11 +02:00
spycrab
50c13c1902
Qt: Implement advanced mapping I/O windows
2017-06-13 17:16:41 +02:00
JosJuice
95bc57cff3
DiscScrubber: Use FileInfo::IsDirectory instead of bit magic
2017-06-13 17:01:39 +02:00
Léo Lam
b08201654e
Externals: Add zeux/pugixml@38edf25
...
Along with VS boilerplate to get it to build on Windows.
2017-06-13 14:05:10 +02:00
Léo Lam
ba3f16edbf
HttpRequest: Add support for sending custom headers
2017-06-13 12:52:31 +02:00
Léo Lam
8f87433719
HttpRequest: Log response body on failure
2017-06-13 12:52:31 +02:00
Léo Lam
18678afa6d
Common: Add HttpRequest to simplify HTTP requests
...
Too much boilerplate that is duplicated if we use curl directly.
Let's add a simple wrapper class that hides the implementation details
and just allows to simply make HTTP requests and get responses.
2017-06-13 12:52:31 +02:00
Léo Lam
55916eddda
NoGUI: Fix a missing include for Xlib
2017-06-13 11:46:13 +02:00
iwubcode
e4896d39bd
Video Backends: Move and rename HostTextureFormat to AbstractTextureFormat
2017-06-13 00:41:56 -05:00
iwubcode
2cdc93f4ab
Video Backends: Split texture cache code out into separate files, introduce 'AbstractTexture'
2017-06-13 00:41:51 -05:00
Stenzek
8a56ef42dc
Vulkan: Fix image layout assertion failing for palette textures
2017-06-13 14:47:09 +10:00
Leo Lam
73be025847
Merge pull request #5603 from sepalani/png-warn
...
Silent GameList PNG warnings
2017-06-12 23:58:23 +02:00
Leo Lam
3e1a650a3f
Merge pull request #5591 from leoetlino/wii-fix
...
Core: Misc WiiRoot fixes
2017-06-12 23:41:45 +02:00
Sepalani
b7dde796fa
Silent GameList PNG warnings
2017-06-12 22:19:58 +01:00
Léo Lam
4a3537285b
IOSC: Implement ImportCertificate
...
Same as VerifyPublicKeySign, we currently only support RSA keys
(which is all we need right now).
2017-06-12 20:33:54 +02:00
Léo Lam
1a8144c702
IOSC: Fix ImportPublicKey to work with other public key types
2017-06-12 20:33:54 +02:00
Léo Lam
2eccd45f01
IOSC: Implement GetSizeForType
...
Avoids duplicating sizes everywhere.
2017-06-12 20:33:53 +02:00
Léo Lam
965773bf67
IOSC: Implement VerifyPublicKeySign
...
Partial implementation which doesn't support ECC stuff, but good enough
for our purposes.
2017-06-12 18:24:02 +02:00
Léo Lam
a0392db833
IOSC: Add entry for the root key handle
...
It contains a RSA4096 public key used to validate all other
Nintendo certificates.
2017-06-12 18:24:01 +02:00
Léo Lam
8859bc91e2
IOSC: Add storage for key misc data
...
Will be used to store the exponent for RSA keys.
2017-06-12 18:24:01 +02:00
Léo Lam
d4f501bca6
IOSC: Replace direct access to entries with getter
...
Makes it slightly less likely to forget a check and end up doing an
out-of-bounds access. Also makes it obvious that we *are* indeed
checking whether the handle is valid, instead of hiding it in
HasOwnership (which won't handle the root key handle case properly).
2017-06-12 18:24:01 +02:00
Léo Lam
acf150df3f
IOSC: Add structures for certificates and signatures
2017-06-12 18:24:01 +02:00
shuffle2
2b86cf02a8
Merge pull request #5589 from stenzek/vulkan-validation-fixes
...
Vulkan: Don't transition image layouts inside render passes
2017-06-11 16:59:02 -07:00
JosJuice
b3ac6de7f8
Skip GameCube IPL by default
...
See https://github.com/dolphin-emu/dolphin/pull/5492#issuecomment-306988942
I'm also renaming the setting because HLE_BS2 has already
been set to False automatically in existing INIs.
2017-06-11 17:51:01 +02:00
Léo Lam
17ef4c8046
StringUtil: Make SplitString return by value
...
Simpler usage.
2017-06-11 16:48:20 +02:00
MerryMage
a0b41c83e7
VideoConfig: Remove bRunning
...
Value was set but not used.
2017-06-11 15:06:12 +01:00
Leo Lam
eefae402b3
Merge pull request #5593 from leoetlino/legacy-code
...
VideoConfig: Remove useless code
2017-06-10 21:34:56 +02:00
Léo Lam
774587cbd1
VideoConfig: Remove useless header includes
2017-06-10 20:25:27 +02:00
Léo Lam
0e85c47237
VideoConfig: Remove manual panic alert setting load
...
This code hadn't been touched since 2010. Nowadays, the panic alert
setting is loaded by ConfigManager and applied in UICommon.
VideoConfig has no business messing with it.
2017-06-10 20:24:18 +02:00
Leo Lam
f2a6e39722
Merge pull request #5590 from MerryMage/vcd-refresh
...
VideoConfigDiag: Refresh VideoConfig before opening configuration dialog
2017-06-10 20:21:18 +02:00
MerryMage
33879bf611
Config: Remove creation of unnecessary CommandLine layer
2017-06-10 19:07:17 +01:00
Léo Lam
91bcd756ff
Core: Remove useless ShutdownWiiRoot calls
...
I don't see why we need to call ShutdownWiiRoot on InitializeWiiRoot.
Also, atexit? Really? Not only is this unnecessary, it will also cause
ShutdownWiiRoot to be called twice in rapid succession for no reason.
2017-06-10 20:00:43 +02:00
Léo Lam
3eecf67a2a
Core: Remove useless InitializeWiiRoot call
2017-06-10 19:52:54 +02:00
Léo Lam
8b67a3ada3
Core: Only restore config after HW shutdown
...
The config must only be restored after the HW has shut down, not while
it is still running, because the HW can still query the config, which
can lead to inconsistent states.
This fixes WiiRoot not being able to copy back saves on shutdown.
2017-06-10 19:50:43 +02:00
MerryMage
12e9ce47f6
VideoConfigDiag: Refresh VideoConfig before opening configuration dialog
...
If the video configuration dialog is opened before a game was run, VideoConfig::Refresh was never called.
2017-06-10 16:40:10 +01:00
Stenzek
ca55ba6c1d
Vulkan: Transition texture cache entries before usage
2017-06-10 23:52:39 +10:00
Stenzek
8bb6abacf8
Vulkan: Transition EFB/XFB buffers before beginning swap render pass
...
Image layouts shouldn't be changed within a render pass.
2017-06-10 23:52:32 +10:00
JosJuice
2578a3553b
VolumeDirectory: That's not what "4 byte" means
2017-06-09 20:00:36 +02:00
JosJuice
240cb0ca11
VolumeDirectory: Use correct endianness when writing apploader -1
2017-06-09 20:00:17 +02:00
Anthony
20a3cbb8fc
Merge pull request #5587 from JosJuice/volumewii-game-partition-later
...
VolumeWii: Don't set m_game_partition until we know partition is valid
2017-06-09 10:49:50 -07:00
Anthony
c900829eee
Merge pull request #5586 from JosJuice/expand-game-partition
...
FilesystemPanel: Expand game partition rather than second partition
2017-06-09 10:49:12 -07:00
JosJuice
d2b69f963a
VolumeWii: Don't set m_game_partition until we know partition is valid
...
Without this, we can end up in an inconsistent state where
m_game_partition is set to a partition that isn't in the
partition maps.
2017-06-09 18:39:30 +02:00
Leo Lam
1f30bd1f26
Merge pull request #5583 from shuffle2/remove-psapi
...
remove MemUsage, and therefor psapi dependency
2017-06-09 18:10:04 +02:00
Leo Lam
d9e8a2a7e7
Merge pull request #5584 from JosJuice/boot-tmd-valid
...
Boot: Check TMD validity before reading from TMD
2017-06-09 18:07:26 +02:00
JosJuice
025884b688
FilesystemPanel: Expand game partition rather than second partition
...
The game partition is normally the second partition, but not
if the disc has been scrubbed to only contain one partition.
2017-06-09 18:04:58 +02:00
Leo Lam
25850dd366
Merge pull request #5563 from leoetlino/internal-functions
...
IOS/ES: Make NandUtils member functions
2017-06-09 17:52:09 +02:00
JosJuice
fdd197475b
Boot: Check TMD validity before reading from TMD
...
Otherwise Dolphin crashes when trying to boot a Wii game
with an invalid TMD.
2017-06-09 17:44:43 +02:00
Shawn Hoffman
f206a4ea9c
remove MemUsage, and therefor psapi dependency
2017-06-08 22:25:46 -07:00
Leo Lam
9885a2bb28
Merge pull request #5575 from leoetlino/setup-stream-key
...
IOS/ES: Implement ES_SetUpStreamKey
2017-06-08 20:11:14 +02:00
Léo Lam
7b4404c7d5
IOS/ES: Implement ES_SetUpStreamKey
...
This ioctlv is used to get an IOSC decrypt handle for a title.
It is known to be used internally by the WFS modules, but it can also
be used from the PPC under some conditions.
Brings us down to 2 essentially unimplementable ioctlvs (syscalls which
seem to return kernel thread priorities...), and 1 known but
unimplemented ioctlv (VerifySign).
2017-06-08 18:15:03 +02:00
Léo Lam
e240e260d9
IOSC: Fix the SetOwnership implementation
2017-06-08 18:15:03 +02:00
Léo Lam
47e0a1656e
IOS/ES: Make NandUtils member functions
...
In the future, NAND filesystem access will be limited to one IOS
instance, for safety reasons and to make it possible to consider
supporting NAND images. This means that any code accessing the NAND
filesystem must go through the FS device, both for code that is
external to IOS and internal.
Because we don't want to introduce any singleton, this requires
internal IOS code that needs NAND access to be part of an IOS device
class, so they can access the FS device easily.
Making some of the internal ES implementation functions member
functions also prevents them from being (mis)used outside of IOS,
since they cannot be called everywhere anymore.
2017-06-08 17:44:00 +02:00
Shawn Hoffman
55062afea9
move IOS::HLE::WriteReturnValue to .cpp file
2017-06-08 00:07:10 -07:00
shuffle2
ffd8309aca
Merge branch 'master' into fix-unittests
2017-06-07 21:20:06 -07:00
Shawn Hoffman
602b972773
msvc: enable some default-off warnings
2017-06-07 21:07:36 -07:00
shuffle2
327050348c
Merge pull request #5576 from lioncash/filters
...
Core: Move SignatureDB and Config source files into filters
2017-06-07 20:41:06 -07:00
Shawn Hoffman
fd166032ab
msbuild: obey some warnings about missing virtual destructors
2017-06-07 20:20:25 -07:00
Shawn Hoffman
1065dc4438
msbuild: set warning level 4
2017-06-07 20:20:25 -07:00
Shawn Hoffman
5480efdff2
video: change multisample/AA setting to u32
2017-06-07 20:20:25 -07:00
Shawn Hoffman
9357cee2ef
do not assign in conditional statements
2017-06-07 20:09:44 -07:00
Shawn Hoffman
50f34f8b05
jit64: silence signedness comparison warnings
2017-06-07 20:09:44 -07:00
Shawn Hoffman
ef9090d7da
powerpc: silence an int->u32 init warning
2017-06-07 20:09:43 -07:00
Shawn Hoffman
a97d079138
jit64: quiet variable init warnings
2017-06-07 20:09:43 -07:00
Shawn Hoffman
e6c15e993b
quiet some sign-conversion-in-parameter warnings
2017-06-07 20:09:43 -07:00
Shawn Hoffman
ab4a785f1b
d3d: silence variable shadowing warning
2017-06-07 20:09:43 -07:00
Shawn Hoffman
ead4f19654
ios/usbv4: initialize TransferCommand::data_address to 0
2017-06-07 19:52:08 -07:00
Shawn Hoffman
983f70c9ea
ios: treat return values as s32
2017-06-07 19:52:07 -07:00
Shawn Hoffman
5b5c630afb
set underlying type of some enums to quiet warnings
2017-06-07 19:52:07 -07:00
Shawn Hoffman
ebd3d43b7d
ios/es: make fd s32 -> quiets warnings
2017-06-07 19:52:07 -07:00
Shawn Hoffman
8f12d7fb3c
ios/net/ip/top: introduce a helper to write ip addr (quiets warning)
2017-06-07 19:52:07 -07:00
Shawn Hoffman
4a1b32afe4
windows: use proper type/constant for NET_IFINDEX in ios hle
2017-06-07 19:52:07 -07:00
Shawn Hoffman
7e75a052a4
windows/bba: pass c_str() instead of std::string object through a va_list
2017-06-07 19:52:07 -07:00
Shawn Hoffman
90f863a7a3
HLE: fix unreachable code warning
2017-06-07 19:52:07 -07:00
Shawn Hoffman
f730b775b6
quiet warnings about possibly-uninitialized variable usage
2017-06-07 19:52:07 -07:00
Shawn Hoffman
e1a3e41bf3
fix various instances of -1 being assigned to unsigned types
2017-06-07 19:52:07 -07:00
Shawn Hoffman
be7c6a0819
msvc: disable warning about using setjmp w/c++ objects in scope
2017-06-07 19:52:07 -07:00
Lioncash
a093b58aad
Core: Move SignatureDB and Config source files into filters
...
Keeps things organized instead of being in the root of Core's source
tree when using the filter view.
2017-06-07 21:57:49 -04:00
Shawn Hoffman
f7f1d5d2ca
msvc: disable meaningless constant truncation warnings in SDCardUtil
2017-06-07 18:44:03 -07:00
Shawn Hoffman
4f9dd7277b
msvc: disable unused symbol warning in Core/Common/Crypto/ec.cpp
2017-06-07 18:44:03 -07:00
Shawn Hoffman
5dc7318281
msbuild: cleanup some old comments in DolphinQt2.vcxproj
2017-06-07 17:30:05 -07:00
Shawn Hoffman
8d37301b19
msbuild: Remove hack for ObjectFileName (reduces build parallelism).
2017-06-07 17:30:05 -07:00
Shawn Hoffman
1bb26dddb1
msbuild: only set /NODEFAULTLIB in one place
2017-06-07 17:30:05 -07:00
Shawn Hoffman
0594f7db02
msbuild/DolphinQt: remove extra /INCREMENTAL. Already enabled for Debug.
2017-06-07 17:30:05 -07:00
Shawn Hoffman
4371dd201f
msbuild: remove some remnants of Qt .ui/.qrc support
2017-06-07 17:30:05 -07:00
Léo Lam
0ddb6f9328
DiscIO: Use the correct offset shift for DOL exports
2017-06-07 22:41:00 +02:00
Léo Lam
0b71b60ef0
DiscIO: Fix formatting
2017-06-07 22:40:51 +02:00
Léo Lam
7b490d7cb0
HW/WiiSaveCrypted: Don't use new/delete
2017-06-07 12:49:24 +02:00
Leo Lam
3a83ebcc35
Merge pull request #5567 from lioncash/put_time
...
Movie: Use std::put_time in GetRTCDisplay()
2017-06-07 10:00:31 +02:00
Leo Lam
b3ca876956
Merge pull request #5564 from Starsam80/qt-title-database
...
Qt: Use TitleDatabase for better names in the game list
2017-06-07 09:58:11 +02:00
Leo Lam
6ee2227ba2
Merge pull request #5568 from lioncash/boot
...
Boot: Make BootExecutableReader hierarchy constructors explicit
2017-06-07 09:27:04 +02:00
Lioncash
d9bb2ce3af
DVDInterface: Amend lint formatting issues
2017-06-07 01:20:54 -04:00
Lioncash
b676edd80c
Core: include what you use
...
Eliminates a swath of indirectly included standard headers
2017-06-07 01:20:48 -04:00
Lioncash
b0427731b3
ElfReader: default the destructor
2017-06-06 23:03:59 -04:00
Lioncash
1af1795695
ElfReader: Make constructors explicit
2017-06-06 23:03:59 -04:00
Lioncash
1876505707
DolReader: Make constructors explicit
2017-06-06 23:03:59 -04:00
Lioncash
927a4a16f8
Boot: Make BootExecutableReader constructors explicit
2017-06-06 22:54:25 -04:00
Starsam80
0c24162928
Qt: Use TitleDatabase for better names in the game list
2017-06-06 19:00:38 -06:00
Lioncash
acac2aeb9b
Movie: Use std::put_time in GetRTCDisplay()
...
No need for a fixed buffer.
2017-06-06 20:56:04 -04:00
Lioncash
e5260dee6b
ec_wii: Add missing <string> header
2017-06-06 20:37:43 -04:00
Lioncash
1ffc311bf3
Core: Fix vcxproj filter
...
This would cause the core project to fail to load.
2017-06-06 20:29:03 -04:00
shuffle2
03c1a1e392
Merge pull request #5510 from spycrab/qt_hotkeys
...
Qt: Implement hotkeys
2017-06-06 16:12:52 -07:00
Michael Maltese
60f4f499e8
OpenAL: hardcode that X-Fi supports surround
2017-06-06 15:23:55 -07:00
Michael Maltese
3bfebf396a
Fix OpenAL backend on macOS
...
OpenALStream was querying the backend for AL_EXT_float32 support (which
suceeds), but AL_FORMAT_STEREO_FLOAT32 was defined incorrectly.
Also changes OpenALStream to query for AL_EXT_MCFORMATS (multichannel
support) rather than hard-coding that it doesn't work on macOS.
2017-06-06 15:23:55 -07:00
Leo Lam
c07058a4ad
Don't show CPU and file related OSD messages on boot ( #5533 )
...
They have been broken since 2 years and no one has noticed,
which shows that no one really cares.
And it's arguable whether showing the CPU info is really useful.
2017-06-06 13:14:30 -07:00
shuffle2
bd489008ff
Merge pull request #5560 from shuffle2/gh5
...
Implement slider bar present on GHWT and GH5 controllers
2017-06-06 13:12:02 -07:00
Léo Lam
d50b4406a6
Boot: Restore symbol map loading
2017-06-06 16:40:00 +02:00
Léo Lam
9a3fb858f3
EXI: Always try to load IPL in GameCube mode
...
I don't see any reason to disable loading the IPL if bHLE_BS2 is
disabled. bHLE_BS2 should only cause us not to run the IPL, but not
skip loading it in the first place. More importantly, without always
loading it, this causes issues when trying to launch only the GC IPL
while having bHLE_BS2 = false.
2017-06-06 16:31:17 +02:00
Léo Lam
d0169fe8db
Boot: Re-use the disc volume
...
Saves some disc IO.
2017-06-06 16:31:16 +02:00
Léo Lam
6f6a18b1b0
Boot: Remove unneeded manual HLE function scan
...
Not needed. And the symbols would get overwritten by the symbol map
load that is just below.
2017-06-06 16:30:55 +02:00
Léo Lam
065261dbad
Boot: Unify the ELF and DOL code paths
...
They're essentially the same. To achieve this, this commit unifies
DolReader and ElfReader into a common interface for boot executable
readers, so the only remaining difference between ELF and DOL is
how which volume is inserted.
2017-06-06 16:30:54 +02:00
Léo Lam
22992ae41e
Boot: Clean up the boot code
...
* Move out boot parameters to a separate struct, which is not part
of SConfig/ConfigManager because there is no reason for it to
be there.
* Move out file name parsing and constructing the appropriate params
from paths to a separate function that does that, and only that.
* For every different boot type we support, add a proper struct with
only the required parameters, with descriptive names and use
std::variant to only store what we need.
* Clean up the bHLE_BS2 stuff which made no sense sometimes. Now
instead of using bHLE_BS2 for two different things, both for storing
the user config setting and as a runtime boot parameter,
we simply replace the Disc boot params with BootParameters::IPL.
* Const correctness so it's clear what can or cannot update the config.
* Drop unused parameters and unneeded checks.
* Make a few checks a lot more concise. (Looking at you, extension
checks for disc images.)
* Remove a mildly terrible workaround where we needed to pass an empty
string in order to boot the GC IPL without any game inserted.
(Not required anymore thanks to std::variant and std::optional.)
The motivation for this are multiple: cleaning up and being able to add
support for booting an installed NAND title. Without this change, it'd
be pretty much impossible to implement that.
Also, using std::visit with std::variant makes the compiler do
additional type checks: now we're guaranteed that the boot code will
handle all boot types and no invalid boot type will be possible.
2017-06-06 16:27:52 +02:00
Léo Lam
4d2fb9b9ba
Core: Replace BOOT_MIOS with an explicit "is MIOS" flag
...
I didn't know better back then, but the boot type is only supposed to
be used for the actual boot params. It shouldn't be used or changed
after booting.
2017-06-06 16:21:58 +02:00
spycrab
151ae38a56
Qt: Implement hotkeys (+ configuration)
2017-06-06 13:49:49 +02:00
Giancarlo Saraceni
ef84e19d55
Implement slider bar present on GHWT and GH5 controllers
2017-06-06 04:38:20 -07:00
Shawn Hoffman
a2358786dc
unittests: set user directory so SYSCONF does not get created at the drive root
2017-06-06 04:07:13 -07:00
shuffle2
096399d371
quick UB fix for 3c0bdd74
2017-06-06 03:49:01 -07:00
Leo Lam
c0495d1d11
Merge pull request #5559 from JosJuice/discio-rename
...
DiscIO: Remove C/I/S prefixes from class names
2017-06-06 12:47:33 +02:00
JosJuice
b2af07a7b7
DiscIO: Remove C/I/S prefixes from class names
...
These prefixes were inconsistent with the rest of Dolphin.
I'm also renaming VolumeWiiCrypted to VolumeWii because of 1113b13
.
2017-06-06 12:31:59 +02:00
shuffle2
3c0bdd7473
Merge pull request #5558 from Tilka/fix_warnings
...
Interpreter: simplify srawx/srawix
2017-06-06 03:28:19 -07:00
shuffle2
3d6c278892
Merge pull request #5556 from shuffle2/jloehr-FixWiimoteReportSizeOnWindows
...
fix wiimote report size on windows
2017-06-06 03:26:14 -07:00
Tillmann Karras
7702771d61
Interpreter: simplify srawx/srawix
...
This also avoids -Wint-in-bool-context warnings in GCC 7.
2017-06-06 11:05:33 +01:00
shuffle2
1113b131f2
Merge pull request #5548 from JosJuice/volume-wii-unencrypted
...
Reimplement support for unencrypted Wii discs
2017-06-06 01:37:52 -07:00
Shawn Hoffman
2b0c600be5
windows: make IORead return number of valid bytes according to ReportID
2017-06-06 01:21:30 -07:00
JosJuice
d41bb375f1
Fix UB string comparisons
...
Also replacing auto& with const char* so that it's easier
to see that these strings aren't std::strings.
2017-06-06 09:02:29 +02:00
shuffle2
f018d69bff
Merge pull request #5553 from sepalani/strpopback
...
StringUtil: Add StringPopBackIf UnitTests
2017-06-05 22:06:38 -07:00
shuffle2
367fba8e06
Merge pull request #5199 from ligfx/default_gci_folder
...
Make EXIDEVICE_MEMORYCARDFOLDER the default for slot A
2017-06-05 21:56:04 -07:00
Sepalani
5fb26abb17
StringUtil: Add StringPopBackIf UnitTests
2017-06-06 05:50:45 +01:00
shuffle2
442e614021
Merge pull request #5536 from sepalani/getstring
...
HLE: Prevent GetStringVA to strip newlines
2017-06-05 21:31:09 -07:00
shuffle2
c8166951a0
Merge pull request #5418 from MerryMage/config-again-and-again
...
VideoConfig: Port to layered configuration system
2017-06-05 21:11:04 -07:00
Sepalani
f28f23af1d
StringUtil: StringPopBackIf added
2017-06-06 05:08:51 +01:00
shuffle2
192fec50b9
Merge pull request #5276 from ligfx/macosheadless
...
Add headless support on macOS
2017-06-05 20:49:02 -07:00
Sepalani
1209959012
HLE: Prevent GetStringVA to strip newlines
2017-06-06 04:31:01 +01:00
shuffle2
9a9b0eed72
Merge pull request #5552 from sepalani/hle-print-warnings
...
HLE_OS: Fix missing-declarations warnings
2017-06-05 20:29:31 -07:00
Sepalani
190f7cbc4f
HLE_OS: Fix missing-declarations warnings
2017-06-06 04:23:54 +01:00
shuffle2
2d941ad1e7
Merge pull request #5294 from sepalani/mem-view-ascii
...
MemoryView: Prevent non-ascii characters
2017-06-05 20:21:02 -07:00
shuffle2
2f73bc1735
Merge pull request #5293 from sepalani/mem-ascii
...
MemoryView: Fix empty string
2017-06-05 20:20:24 -07:00
shuffle2
0b00477c8a
Merge pull request #5311 from ligfx/mixerdpl2
...
AudioCommon: Move DPL2 decoding into Mixer
2017-06-05 20:09:18 -07:00
shuffle2
98eb192226
Merge pull request #5312 from ligfx/cleanupupdatedrawrectangle
...
RenderBase: clean up UpdateDrawRectangle
2017-06-05 20:03:56 -07:00
shuffle2
3fed604ad9
Merge pull request #4878 from ligfx/geckodownloadcodes
...
Move GeckoCodeDiag download logic to GeckoCodeConfig (and make it use Curl)
2017-06-05 20:00:30 -07:00
Michael Maltese
97e6ba773b
Move DSP::CodesToHeader to DSPTool
...
It's the only place it's used, and highly-specific to DSPTool's needs.
2017-06-05 19:28:40 -07:00
Michael Maltese
1765e54ab3
DSPCodeUtil: remove GenRandomCode
...
It was only used in a specific DSPTool test, which was removed because
non-deterministic tests aren't really useful.
2017-06-05 19:28:40 -07:00
Michael Maltese
80710984dc
DSPTool: extract tests into a DSPAssemblyTest
...
- Moves all test code from DSPTool into UnitTests/Core/DSPAssemblyTest.
- Converts test files (which could only be loaded if they were in the
shell's working directory, so basically never) into C++ values.
- Enables most of the commented-out tests.
- Removes non-deterministic random code test.
2017-06-05 19:28:40 -07:00
Michael Maltese
1580b6e627
DSPTool: make existing tests pass
...
Disassemble code without the additional text for humans, like the
current PC and opcode hex values, so that it can be reassembled.
I'm not updating any commented-out tests here.
2017-06-05 19:28:40 -07:00
shuffle2
b9b3b1dc19
Merge pull request #5347 from JosJuice/do-not-translate-button-names
...
Don't translate button names
2017-06-05 19:05:09 -07:00
shuffle2
bc8024ed21
Merge pull request #5549 from Starsam80/qt-title
...
Qt: Add the version to the window title
2017-06-05 18:49:50 -07:00