Leo Lam
4b53093acb
Merge pull request #5520 from sepalani/write-console
...
HLE: Fix __write_console implementation
2017-06-03 22:00:23 +02:00
Léo Lam
1a17c02d6f
DiscIO: Use std::optional for GetTitleID instead of pointer
...
This makes the interface slightly cleaner and a bit more consistent
with the other getters. Still not fully the same, since the others
don't really handle failures with std::optional; but at least the
value is returned by value now, as opposed to having the function
take a pointer to a u64.
2017-06-03 21:56:33 +02:00
Leo Lam
227bc3816f
Merge pull request #5517 from leoetlino/more-reliable-shutdown
...
More reliable shutdown
2017-06-03 21:33:43 +02:00
Leo Lam
bcc85f9f4d
Merge pull request #5516 from leoetlino/drop-last-filename
...
Drop m_LastFilename
2017-06-03 21:32:04 +02:00
JosJuice
ce012ee3f4
FilesystemPanel: Remove strange disc type check
...
I don't know what the point of this was.
(Workaround for some old bug that we don't have anymore?)
2017-06-03 21:19:11 +02:00
JosJuice
24192671f9
DVDInterface: Remove useless disc type check
2017-06-03 21:19:11 +02:00
JosJuice
6661492989
Check for existance of partitions instead of disc type when appropriate
...
This gets rid of some assumptions that non-DiscIO code was making about
volume types. It's better to encapsulate as many of the volume type
differences as possible in DiscIO.
Made possible by PR #2353 .
2017-06-03 21:19:11 +02:00
Leo Lam
fbad958f03
Merge pull request #5518 from JosJuice/replace-weird-brace-thingy
...
Replace {{}} with {}
2017-06-03 21:16:36 +02:00
Sepalani
2afa546551
HLE: Fix __write_console implementation
2017-06-03 20:06:31 +01:00
JosJuice
f71fcd38bd
TitleDatabase: Check game ID length before reading characters
2017-06-03 20:46:57 +02:00
JosJuice
4493b1324b
TitleDatabase: Allow showing Japanese names for Japanese GC games
2017-06-03 20:46:30 +02:00
Léo Lam
546181c457
WX: Clear m_is_game_loading at the proper moment
...
This should happen after the core has stopped (OnStopped), not when
the user wants to stop (DoStop).
2017-06-03 19:05:35 +02:00
Léo Lam
52f00603e2
Core: Use RAII for EmuThread shutdown
...
This is more reliable, as this guarantees subsystems will be
shut down in the same order they were initialised (if they were
initialised). It also allows us to stop keeping track of what needs to
be shut down manually and just return in case of errors.
This should prevent the emulator from getting totally stuck when
the boot process does fail.
2017-06-03 19:05:35 +02:00
Leo Lam
5d6074f157
Merge pull request #5366 from sepalani/set-sym-size
...
CodeView: Set Symbol Size/End Address added
2017-06-03 19:00:45 +02:00
Leo Lam
6d38f153d6
Merge pull request #5515 from leoetlino/import-ticket
...
IOS/ES: Move ImportTicket write function
2017-06-03 18:40:52 +02:00
JosJuice
1c926dcae2
Replace {{}} with {}
...
IIRC we were only using {{}} because {} used to cause errors
on the FreeBSD buildbot.
2017-06-03 18:14:22 +02:00
Léo Lam
6e02af1b34
Core: Remove unneeded config save
...
We don't touch the user config during booting, so there is nothing to
manually save.
2017-06-03 18:08:50 +02:00
Léo Lam
677640ac52
Drop m_LastFilename
...
This makes it hard to support different boot params for different boot
types. We should not be making the assumption that Dolphin will
always be booting directly from a file (and in particular, only
using a string).
It's incompatible with future changes that will allow Dolphin to boot
a NAND title properly from well, the NAND, as opposed to booting from
WADs. (And no, treating the title TMD as a "bootable" path doesn't
count. Especially when that approach won't work with NAND images
or IOS LLE.)
And it's confusing to expose this functionality from the UI. It's
pretty bad for UX to change the play button's behaviour depending on
whether the user has launched something before, configured a default
file to boot, added a directory to their game paths.
2017-06-03 18:01:25 +02:00
Léo Lam
9d52ab5144
IOS/ES: Move ImportTicket write function
...
This commit moves the write function to where it should be (IOS),
especially when ES::ImportTicket() is the only place to use it.
Prevents misusing the ticket import function, and removes one unsafe
direct write to the NAND that does not go through IOS.
This also fixes the destination path: the session root is the one which
should be used for determining the ticket path, not the configured one.
2017-06-03 17:43:16 +02:00
JosJuice
1e5c83b3a9
Use std::optional for UpdateRunningGameMetadata
2017-06-03 14:41:09 +02:00
Léo Lam
74f636dfc4
Analytics: Don't crash when a DNS resolve times out
2017-06-03 14:09:14 +02:00
Leo Lam
4af514bb3c
Merge pull request #5388 from leoetlino/optional
...
Add a std::optional and std::variant implementation
2017-06-03 13:21:20 +02:00
Leo Lam
ccccb8463d
Merge pull request #5503 from ligfx/qtelidedbutton
...
DolphinQt2: add ElidedButton for controller mapping buttons
2017-06-03 12:47:18 +02:00
Leo Lam
1a983bd357
Merge pull request #5500 from ligfx/qtfixsorting
...
Qt: fixes to GameList sorting
2017-06-03 12:46:17 +02:00
Léo Lam
e38a66fe1b
Common: Add a std::variant implementation
...
Based on https://github.com/mpark/variant (which is based on libc++).
2017-06-03 12:36:24 +02:00
Léo Lam
62d08e2d17
DiscIO: Fix the wrong NAND root being used
...
The whole NANDContentLoader stuff is truly awful and will be removed
as soon as possible.
For now, this fixes a bug that was exposed by std::optional::operator*.
2017-06-03 12:36:24 +02:00
Léo Lam
545006f666
Use std::optional for ESFormats/SharedContentMap
2017-06-03 12:36:24 +02:00
Léo Lam
b08653d69d
Common: Add a std::optional implementation
...
std::optional makes a few things a bit neater and less error prone.
However, we still cannot use C++17 (unfortunately), so this commit
adds an implementation of std::optional that we can use right now.
Based on https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/lib/gtl/optional.h
which seems to be fairly similar to C++17's <optional> and standards
compliant. It's one of the few implementations that handle propagating
type traits like copy constructibility, just like libc++/libstdc++.
2017-06-03 12:36:24 +02:00
shuffle2
3443454ba2
Merge pull request #5271 from JosJuice/allow-aslr
...
Allow (but don't force) ASLR
2017-06-02 21:53:02 -07:00
shuffle2
0b63fcc78f
Merge pull request #5505 from spycrab/wx_stars
...
Wx: Implement new, themed stars
2017-06-02 18:44:48 -07:00
spycrab
1d8ba6f865
Wx: Implement new, themed stars
2017-06-02 22:38:56 +02:00
Leo Lam
93020f6c1b
Merge pull request #5509 from ligfx/qtshutdowncontrollers
...
MainWindow: shutdown different input interfaces
2017-06-02 22:08:53 +02:00
Sepalani
5e4986d835
IP/Top: Properly fix GetAddrInfo
2017-06-01 17:05:12 +01:00
Sepalani
726d8de16c
IP/Top: Fix GetAddrInfo written socket
2017-06-01 15:17:59 +01:00
Michael Maltese
040bddafa6
MainWindow: shutdown different input interfaces
...
`MainWindow` initializes a number of input interfaces but never shuts
them down. This was causing a crash-after-exit on macOS where the
ControllerInterface backend stores a `std::thread` object in a static
variable and only stops it when ControllerInterface::Shutdown is called.
2017-05-31 21:14:55 -07:00
Michael Maltese
87a74ca3ae
MappingButton: remove unused includes
2017-05-31 01:17:33 -07:00
Michael Maltese
046c6f468f
MappingButton: derive from ElidedButton
2017-05-31 01:17:33 -07:00
Michael Maltese
b378ffb4ec
MappingButton: don't set text twice in constructor
2017-05-31 01:17:33 -07:00
Michael Maltese
07c90bed08
DolphinQt2: add QtUtils/ElidedButton
2017-05-31 01:17:33 -07:00
spycrab
118e90ec6e
Qt: Use new, themed rating stars
2017-05-31 05:50:37 +02:00
Anthony
25f24d32ff
Merge pull request #5463 from spycrab/qt_hidpi
...
Qt: Fix HiDPI icon scaling
2017-05-30 14:57:05 -07:00
spycrab
1737e81b16
Qt: Fix HiDPI icon scaling
2017-05-30 22:42:21 +02:00
iwubcode
1b685bcde9
Fix for loop in D3D Renderer ApplyState function
2017-05-29 23:32:32 -05:00
Michael Maltese
1a7210aa74
GameListModel: provide Qt::InitialSortOrderRole for sorting
...
Fixes regression where pixmap columns can't be sorted by default.
2017-05-29 17:32:40 -07:00
Michael Maltese
8bbc31e0a2
GameList: sort case-insensitively
2017-05-29 17:32:40 -07:00
Michael Maltese
051cbf1962
GameListModel: invert role-column choice tree
2017-05-29 17:32:40 -07:00
Leo Lam
1afb0a134d
Merge pull request #5497 from sepalani/getaddrinfo
...
IP/Top: Use a constant for addrinfo size
2017-05-29 22:39:33 +02:00
Leo Lam
c76335eaf1
Merge pull request #5484 from BhaaLseN/permissive
...
Windows: Enable MSVC Standards Conformance (/permissive-)
2017-05-29 22:29:44 +02:00
Sepalani
e90404a4f6
IP/Top: Use a constant for addrinfo size
2017-05-29 21:00:22 +01:00
Leo Lam
5d7f4cb9c8
Merge pull request #5496 from spycrab/qt_fixtheme
...
Qt: Fix GetThemeDir()
2017-05-29 18:33:56 +02:00
spycrab
845cc68bba
Qt: Fix HiDPI icon scaling
2017-05-29 13:52:01 +02:00
shuffle2
c8f9900d26
Merge pull request #5495 from Tilka/gamelist
...
WX: improve game list reload speed
2017-05-28 22:03:38 -07:00
Lioncash
d6b6b070bc
D3D/Render: Get rid of undefined behavior in Create3DVisionTexture
...
pSysMem is of the type const void* -- because of this, it makes the
original delete[] call undefined behavior, as deleting a void pointer is
undefined behavior.
Also punning types into existence, like what was done for the stereo
image header is undefined behavior as well. The proper way to do this is
to either manually add all individual bytes manually, or memcpy the
struct into memory.
As we want to deallocate the memory before returning, and because
pSysMem is a const void*, we keep a unique_ptr to the data and just pass
pSysMem a raw pointer to the data.
2017-05-28 23:28:00 -04:00
Lioncash
278e406f0b
D3D/Render: Use std::array where applicable
2017-05-28 23:28:00 -04:00
Lioncash
0c3958bbe5
D3D/Render: Join variable with declaration
2017-05-28 23:27:59 -04:00
Lioncash
3ee447e5f7
D3D/Render: Get rid of unnecessary casts
2017-05-28 23:27:59 -04:00
Lioncash
ba5b215c42
D3D/Render: Mark translation unit local variables as static
2017-05-28 23:27:59 -04:00
Tillmann Karras
5c08b1d704
WX: improve game list reload speed
...
When loading a big game list, this eliminates the long delay after the
progress dialog disappears.
2017-05-28 23:02:03 +01:00
Tillmann Karras
599774aacc
Qt2: remove unused variables
2017-05-28 23:01:41 +01:00
Leo Lam
4d0f458f2f
Merge pull request #5494 from leoetlino/file-selector
...
WX: Minor file selector fixes
2017-05-28 20:24:17 +02:00
Léo Lam
d5e397aa14
WX: Add dff to the file selector filter description
2017-05-28 19:08:24 +02:00
Léo Lam
473f90c08f
WX: Remove .tmd from the file selector filter
...
No idea why it was in the whitelist.
2017-05-28 19:07:12 +02:00
BhaaL
e37ab851ad
add the same flags to CMake
2017-05-28 13:37:34 +02:00
BhaaL
076d3cd639
enable latest C++ Standard features (/std:c++latest)
2017-05-28 13:37:33 +02:00
BhaaL
0fcc625b56
clean up Base.props
...
/permissive- automatically enables /Zc:rvalueCast and /Zc:strictStrings
2017-05-28 13:37:32 +02:00
BhaaL
ec8f6e6d26
enable MSVC Standards Conformance (/permissive-)
2017-05-28 13:37:31 +02:00
BhaaL
072c161445
upgrade to Windows SDK 10.0.15063.0
...
this is required for /permissive- to work, because some headers in the
Windows SDK use Microsoft extensions that are not allowed in standards mode
2017-05-28 13:37:31 +02:00
Lioncash
3e7af2a2cd
CubebStream: Add missing <vector> include
2017-05-27 23:50:39 -04:00
Michael Maltese
d416cbd9ed
Add CubebUtils namespace and hook up cubeb logging
2017-05-27 18:28:57 -07:00
Michael Maltese
34ad1eb547
Externals: remove PortAudio
2017-05-27 18:28:57 -07:00
Michael Maltese
48d6168c99
EXI_DeviceMic: use Cubeb instead of PortAudio
2017-05-27 18:28:56 -07:00
Michael Maltese
f6e1da0dc0
AudioCommon: add Cubeb backend
2017-05-27 18:28:56 -07:00
Michael Maltese
17f4413143
Externals/cubeb: add Visual Studio build files
2017-05-27 18:28:56 -07:00
shuffle2
d4faa099d9
Merge pull request #5481 from ligfx/updateqt5.8
...
Update ext-win-qt submodule for Qt 5.8
2017-05-27 17:59:46 -07:00
Mat M
7192226971
Merge pull request #5474 from sepalani/bl-fix
...
CodeView: Fix missing bl details
2017-05-27 17:40:18 -04:00
Mat M
7b70fce79b
Merge pull request #5476 from ligfx/ffmpegbuildcleanup
...
CMake/MSVC: cleanups around FFMpeg
2017-05-27 17:36:55 -04:00
JosJuice
491b9d2a75
Merge pull request #5491 from ligfx/qtcontrollerremoveicons
...
DolphinQt2: replace icons in controllers dialog with labels
2017-05-27 10:33:36 +02:00
Leo Lam
6a7c3fcac1
Merge pull request #5487 from ligfx/removetabledelegate
...
DolphinQt2: don't use custom delegate for GameList
2017-05-27 10:23:40 +02:00
Michael Maltese
c004b59100
DolphinQt2: replace icons with labels in controllers dialog
...
Icons without labels are bad for usability, so bring this back in line
with how DolphinWX does it.
Some reading:
- https://www.nngroup.com/articles/icon-usability/
> Summary: A user’s understanding of an icon is based on previous
> experience. Due to the absence of a standard usage for most icons,
> text labels are necessary to communicate the meaning and reduce
> ambiguity.
- http://uxmyths.com/post/715009009/myth-icons-enhance-usability
- http://edwardsanchez.me/blog/13589712
- https://uxdesign.cc/do-icons-need-labels-6cb4f4282c00
2017-05-26 20:09:51 -07:00
Michael Maltese
a936afed9d
DolphinQt2: hide GameList vertical header (the one on the left)
2017-05-26 17:43:57 -07:00
Michael Maltese
c01c66ad4b
DolphinQt2: remove unused GameList::TableDelegate
2017-05-26 17:40:51 -07:00
Michael Maltese
e76f5d85b2
DolphinQt2: don't use custom delegate for GameList
2017-05-26 17:40:51 -07:00
JosJuice
aa33fabded
Merge pull request #5483 from leoetlino/max-tmd-size
...
Check TMD sizes using the actual constant
2017-05-26 23:10:31 +02:00
Leo Lam
260fd5e0f8
Merge pull request #5482 from ligfx/cmakeremoved3d12
...
CMake: remove references to D3D12
2017-05-26 11:30:47 +02:00
Léo Lam
b5a2f34a37
Check TMD sizes using the actual constant
...
0x49e4 is the actual maximum TMD size (which is checked against in ES).
IsValidTMDSize is added to ESFormats to avoid duplicating the constant.
2017-05-26 11:27:43 +02:00
Leo Lam
f4190ab1c4
Merge pull request #5465 from sepalani/gc-bios
...
Tools: Load GameCube BIOS added
2017-05-26 10:23:03 +02:00
Leo Lam
933767f1bd
Merge pull request #5475 from sepalani/map-vaddr
...
PPCSymbolDB: Fix LoadMap corrupting virtual addresses
2017-05-26 10:21:38 +02:00
Michael Maltese
e041602416
CMake: remove references to D3D12
...
It's gone!
2017-05-26 01:16:04 -07:00
Michael Maltese
07a23f6924
Update ext-win-qt submodule for Qt 5.8
...
Accompanying PR for https://github.com/dolphin-emu/ext-win-qt/pull/3
2017-05-26 01:00:15 -07:00
Michael Maltese
3ca03373ae
MSVC: define HAVE_FFMPEG
2017-05-26 00:53:58 -07:00
Michael Maltese
53acd25de4
Rename define HAVE_LIBAV->HAVE_FFMPEG
2017-05-26 00:53:58 -07:00
Michael Maltese
d951d2e4c4
CMake: libav/ffmpeg cleanups
...
Use @Orphis's FindFFmpeg module from ppsspp:
2149d3db7f
From that commit:
> This new module should be able to handle both libraries in the regular
> paths and fallback to pkg-config.
> It is also able to find dynamic libraries, not just static libraries.
> It will generate imported targets with the name FFmpeg::<lib> that you
> can use in your scripts.
2017-05-26 00:53:58 -07:00
Pierre Bourdon
d592bdd4d4
Migrate to Visual Studio 2017.
...
Auto-generated by the IDE, I'll trust it knows what it's doing.
2017-05-25 15:58:59 -07:00
Sepalani
2d75a99426
ConfigManager: GetBootROMPath added
2017-05-25 13:11:12 +01:00
Leo Lam
0f020857c5
Merge pull request #5448 from XeR/master
...
GeckoCode: install code handler even if no codes are activated
2017-05-25 11:16:16 +02:00
Sepalani
82695ccd99
PPCSymbolDB: Fix LoadMap corrupting virtual addresses
2017-05-24 21:08:15 +01:00
Sepalani
c1afdc6f47
CodeView: Fix missing bl details
2017-05-24 20:34:23 +01:00
Léo Lam
57ce091ef5
IOS/ES: Implement ES_DeleteStreamKey (0x3d)
2017-05-24 18:16:35 +02:00
Léo Lam
90d590d1f3
IOS/ES: Implement ES_DeleteContent (0x3e)
2017-05-24 18:16:35 +02:00
Léo Lam
ced049c5e8
IOS/ES: Prevent usage of ES_DiVerifyWithView for the PPC
...
ES_DiVerifyWithView (0x3b) is another private ioctlv that can only be
used from DI. Calling it from anywhere else returns -1017.
2017-05-24 18:16:34 +02:00