Sepalani
5a1ebe232e
HLE: Add Reload() function
2017-04-09 14:02:34 +01:00
Sepalani
20a9c5b12d
HLE: Add PatchFixedFunctions() function
2017-04-09 14:02:34 +01:00
Sepalani
61b36d1f9a
PatchEngine: Add Reload() function
2017-04-09 14:02:33 +01:00
JosJuice
776d63bcd3
Simplify condition for enabling/disabling vertex rounding checkbox
...
Also moving the code further up in the function so that
it's consistent with how the other settings are handled.
2017-04-09 10:54:02 +02:00
JosJuice
055adad8f1
Merge pull request #5218 from lioncash/video
...
VideoConfigDiag: Move event implementations into the cpp file
2017-04-09 10:42:10 +02:00
Matthew Parlane
394b847b6c
Merge pull request #5229 from lioncash/si-id
...
SI_Devices: Get rid of pointer casts for ID assignment in RunBuffer
2017-04-09 20:09:44 +12:00
Lioncash
cc803db042
RenderBase: Eliminate renderer global accesses within the Renderer class
...
There's no need to access these globals, the instance itself has access
to these data members and functions.
2017-04-08 20:15:39 -04:00
Lioncash
caf25653d8
RenderBase: const correctness
2017-04-08 20:11:29 -04:00
Lioncash
0540950e7a
VideoConfigDiag: Move event implementations into the cpp file
...
Also removes the unused Event_Adapter event stub which did nothing. It
wasn't even hooked up to wx's event system.
Allows removing several includes from the header file and moving them to
the cpp file. Prevents includes being dumped into other source files
that include the header.
This uncovered an indirect include in Main for MsgHandler utilities.
2017-04-08 17:35:50 -04:00
Mat M
96e70ad5a3
Merge pull request #5217 from lioncash/cheats
...
Frame: Make cheat dialog private
2017-04-08 17:30:27 -04:00
Mat M
3013252d4f
Merge pull request #5222 from MerryMage/keyb
...
Frame: Fix macOS keyboard while emulation is running
2017-04-08 17:28:13 -04:00
Mat M
59d93f3a0d
Merge pull request #5219 from lioncash/common
...
FileSearch: Namespace functions under the Common namespace
2017-04-08 17:19:00 -04:00
Mat M
579b7538e7
Merge pull request #5224 from ligfx/cachedinterpreterhle
...
CachedInterpreter: fix HLEFunction argument
2017-04-08 17:17:28 -04:00
Mat M
ab18eba9de
Merge pull request #5105 from lioncash/namespace
...
EXI: Namespace device classes
2017-04-08 17:12:56 -04:00
Mat M
f09d17f40f
Merge pull request #5161 from leoetlino/es-formats-tests
...
Add unit tests for IOS/ESFormats
2017-04-08 17:10:57 -04:00
Mat M
11d1124fa5
Merge pull request #5209 from leoetlino/block-es-diverify
...
IOS/ES: Block ES_DIVerify from the IPC interface
2017-04-08 16:57:40 -04:00
Mat M
d55d9f93a7
Merge pull request #5212 from leoetlino/es-unknown-ioctlvs
...
IOS/ES: Return IPC_EINVAL for unknown ioctlvs
2017-04-08 16:56:50 -04:00
Mat M
1e182706ca
Merge pull request #5185 from leoetlino/disable-nand-items
...
WX: Disable a few menu items when a Wii title is running
2017-04-08 16:54:52 -04:00
Mat M
5d7bd357c1
Merge pull request #5227 from JosJuice/revise-new-settings-strings
...
Revise descriptions for new settings
2017-04-08 16:51:35 -04:00
Mat M
4ba6184785
Merge pull request #5216 from ligfx/removeshadowedtlut
...
TextureCacheBase: remove duplicated variable
2017-04-08 16:49:04 -04:00
Mat M
9a7c28026b
Merge pull request #5214 from sepalani/strutil-fix
...
StringUtil: Fix a ctype assertion
2017-04-08 16:45:29 -04:00
Lioncash
069b70b2b4
SI_Devices: Get rid of pointer casts for ID assignment in RunBuffer
...
This is actually undefined behavior (pointer casting to a non-char type and
dereferencing it).
2017-04-08 16:36:14 -04:00
JosJuice
9d73196e4f
Boot: Make default ISO code for DOLs consistent with ELFs
2017-04-08 18:52:39 +02:00
JosJuice
0b78386044
Boot: Allow setting a default ISO for Wii DOLs
...
I have no idea why there was a special case preventing this...
2017-04-08 18:52:33 +02:00
JosJuice
6263830d6d
Boot: Always emulate BS2 once when booting a DOL
...
The old code could do it 0, 1 or 2 times.
2017-04-08 18:52:12 +02:00
JosJuice
31eec8c75b
Boot: Remove useless check
...
No disc is inserted at this point, so IsDiscInside is always false.
2017-04-08 18:45:01 +02:00
JosJuice
4424d24fd0
Revise descriptions for new settings
...
I replaced "1x IR" with "native internal resolution" because
the IR setting never says "1x" or "IR", and I also did some
minor rewording and normalized the sentence-ending spaces.
2017-04-08 18:39:46 +02:00
Pierre Bourdon
e7d632d1af
Merge pull request #5226 from JosJuice/ir-18n-comments
...
Add i18n comments for the acronym IR
2017-04-08 18:00:12 +02:00
MerryMage
8ad6f2cecc
AX: Add support for UCodes without LPF
2017-04-08 16:04:09 +01:00
JosJuice
254df247b1
Add i18n comments for the acronym IR
2017-04-08 16:00:09 +02:00
Michael Maltese
1bd87f5a79
CachedInterpreter: fix HLEFunction argument
2017-04-07 17:54:59 -07:00
Sepalani
eb45ea5f7f
Boot: Prevent ELF to be considered as a disc
2017-04-08 00:04:50 +01:00
MerryMage
8f8e7681b2
AX: Implement loop counter
...
Required for Rogue Squadron.
2017-04-07 20:54:34 +01:00
MerryMage
a793b4d06f
Frame: Fix macOS keyboard while emulation is running
2017-04-07 19:44:04 +01:00
Stenzek
2492f196a7
TextureCache: Fix incomplete GPU texture decoding of non-square mips
2017-04-07 23:03:14 +10:00
Lioncash
f7a2f6ad01
FileSearch: Namespace functions under the Common namespace
2017-04-07 01:02:14 -04:00
Lioncash
c61d0dfe87
Frame: Make cheat dialog private
...
Rather than destroy and reinitialize the dialog whenever it's closed,
and opened this dialog can just be hidden from view when it's not
needed, and shown again when it is needed.
Also, a dialog should really not be managing any live instances of
itself, including the one directly in the main frame.
This gets rid of another usage of the main frame global.
2017-04-06 21:25:26 -04:00
Michael Maltese
cef5bd4a09
TextureCacheBase: remove duplicated variable
...
Fixes warning:
```
Source/Core/VideoCommon/TextureCacheBase.cpp:869:17: warning: declaration shadows a local variable [-Wshadow]
const u8* tlut = &texMem[tlutaddr];
^
Source/Core/VideoCommon/TextureCacheBase.cpp:784:13: note: previous declaration is here
const u8* tlut = &texMem[tlutaddr];
^
```
2017-04-06 13:52:42 -07:00
Sepalani
c170659189
StringUtil: Fix a ctype assertion
2017-04-06 15:02:21 +01:00
Stenzek
fdf2efdac6
TextureConversionShader: Add missing swap for index of C14X2 textures
2017-04-06 23:29:40 +10:00
Léo Lam
60d47eaeff
IOS/ES: Return IPC_EINVAL for unknown ioctlvs
...
Instead of allowing unknown ioctlvs and faking success for both unknown
and unimplemented ioctlvs, which can possibly result in nasty, hard to
debug bugs (if the emulated software behaves unexpectedly), we should
reject unknown ioctlvs and log known, but unimplemented ioctlvs.
2017-04-06 15:18:23 +02:00
Léo Lam
98dea421ba
IOS/ES: Block ES_DIVerify from the IPC interface
...
Simple accuracy change.
DIVerify is an internal ioctlv in unpatched, up-to-date IOSes,
where calling it from the PPC just returns -1017.
2017-04-06 10:38:06 +02:00
Stenzek
c6075f4c36
TextureConversionShader: Fix compile error in C14X2 decoder
2017-04-06 13:59:06 +10:00
Michael Maltese
d10d09ccc1
VideoCommon: rework anamorphic widescreen heuristic
...
Some widescreen hacks (see below) properly force anamorphic output, but
don't make the last projection in a frame 16:9, so Dolphin doesn't
display it correctly.
This changes the heuristic code to assume a frame is anamorphic based on
the total number of vertex flushes in 4:3 and 16:9 projections that
frame. It also adds a bit of "aspect ratio inertia" by making it harder
to switch aspect ratios, which takes care of aspect ratio flickering
that some games / widescreen hacks would be susceptible with the new
logic.
I've tested this on SSX Tricky's native anamorphic support, Tom Clancy's
Splinter Cell (it stayed in 4:3 the whole time), and on the following
widescreen hacks for which the heuristic doesn't currently work:
Paper Mario: The Thousand-Year Door (Gecko widescreen code from Nintendont)
C202F310 00000003
3DC08042 3DE03FD8
91EEF6D8 4E800020
60000000 00000000
04199598 4E800020
C200F500 00000004
3DE08082 3DC0402B
61CE12A2 91CFA1BC
60000000 387D015C
60000000 00000000
C200F508 00000004
3DE08082 3DC04063
61CEE8D3 91CFA1BC
60000000 7FC3F378
60000000 00000000
The Simpsons: Hit & Run (AR widescreen code from the wiki)
04004600 C002A604
04004604 C09F0014
04004608 FC002040
0400460C 4082000C
04004610 C002A608
04004614 EC630032
04004618 48220508
04041A5C 38600001
04224344 C002A60C
04224B1C 4BDDFAE4
044786B0 3FAAAAAB
04479F28 3FA33333
2017-04-05 17:23:16 -07:00
Léo Lam
d8089a457f
WX: Disable a few menu items when a Wii title is running
...
Unsafe and keeping them enabled would allow inaccurate behaviour that
can break games.
2017-04-05 20:54:48 +02:00
Léo Lam
c4d5076696
Common: Add missing set(LIBS ...) for mbedtls
2017-04-05 20:54:11 +02:00
MerryMage
19eb09b086
Jit_SystemRegisters: Make mfspr PIE-compliant
2017-04-05 10:22:48 +01:00
MerryMage
38917a151d
CoreTiming: Pull globals into a single struct
2017-04-05 10:22:48 +01:00
Scott Mansell
4c0a392698
Merge pull request #4715 from iwubcode/efb_copy_corruption_at_higher_ir
...
Add configurable toggle to round vertices to nearest pixel
2017-04-05 19:41:52 +12:00
Stenzek
27e9e469d4
Merge pull request #5206 from ligfx/fixcustomtextures
...
TextureCacheBase: fix custom textures not being loaded
2017-04-05 16:49:54 +10:00
Lioncash
14c81764df
ControllerEmu: Replace includes with forward declarations
...
Replaces includes with forward declarations where applicable, and moves
includes to where they're actually needed.
2017-04-04 20:38:30 -04:00
Michael Maltese
e9e3226026
TextureCacheBase: fix custom textures not being loaded
...
Fixes bug #10183 [0] introduced by 3bd184a
/ PR #4467 [1].
TextureCacheBase was no longer calling `entry->Load` for custom textures
since the compute shader decoding logic was added. This adds it back in.
It also slightly restructures the decoding if-group to match the one
below, which I think makes the logic more obvious.
(recommend viewing with `git diff -b` to ignore the indentation changes)
[0]: https://bugs.dolphin-emu.org/issues/10183
[1]: https://github.com/dolphin-emu/dolphin/pull/4467
2017-04-04 14:34:46 -07:00
Léo Lam
cf0492468d
IOS/WFS: Fix logging message
2017-04-04 17:37:08 +02:00
Anthony
d8c476b015
Merge pull request #5204 from leoetlino/tmd-view-fixes
...
IOS/ES: Fix GetTMDView
2017-04-04 15:14:04 +00:00
iwubcode
a9d08a31a6
Add configurable toggle that rounds vertices to the nearest pixel when
...
w=1. This fixes some games at higher IRs.
2017-04-04 09:52:18 -05:00
Léo Lam
6f8c30c863
IOS/ES: Fix GetTMDView
...
We had missing checks *and* were checking for the out vector size
improperly.
Rewritten based on the actual behaviour in IOS.
2017-04-04 16:04:24 +02:00
Stenzek
97dc773a3e
D3D: Drop redundant interface TextureEncoder
2017-04-04 22:57:23 +10:00
Anthony
90acceaf41
Merge pull request #5201 from lioncash/determinism
...
Core: Hide determinism global
2017-04-04 06:21:07 +00:00
Anthony
840e58c032
Merge pull request #5196 from lioncash/tasdlg
...
TASInputDlg: Minor changes
2017-04-03 20:27:37 +00:00
Lioncash
0c1d56c16f
Core: Hide determinism global
...
This is only ever queried and not set outside of the Core.cpp, so this
should just be hidden internally and just have a function exposed that
allows querying it.
2017-04-03 14:56:12 -04:00
Lioncash
ad1a899a7c
Core: Make EmuThread internally linked
2017-04-03 13:27:35 -04:00
Lioncash
ed2e9e9e41
Core: Remove unnecessary forward declaration
2017-04-03 13:26:15 -04:00
Markus Wick
9d1ae76d0d
Merge pull request #5200 from lioncash/frame
...
Frame: Remove callback function prototypes from header.
2017-04-03 13:35:35 +02:00
Lioncash
b67968c3d8
Core: Remove unimplemented function prototype SetBlockStart
2017-04-03 06:34:49 -04:00
Lioncash
c457ee4995
Frame: Remove callback function prototypes from header
...
Gets rid of more direct usages of the main_frame global, keeping the
callbacks internal to the frame itself.
2017-04-03 06:34:36 -04:00
Matthew Parlane
637bdc45b3
Merge pull request #5197 from leoetlino/ios-reset
...
IOS: Don't expose HLE::Reset()
2017-04-03 21:26:01 +12:00
Markus Wick
3bd184a255
Merge pull request #4467 from stenzek/gpu-texture-decoding
...
VideoBackends: GPU Texture Decoding
2017-04-03 10:46:13 +02:00
Lioncash
f3ab0fc3f8
TASInputDlg: Use an enum for ID constants
...
These are all related constants (and it doesn't make sense to allow
taking the address of them).
2017-04-03 04:29:15 -04:00
Lioncash
9dd29895cd
TASInputDlg: Replace includes with forward declarations
2017-04-03 04:29:15 -04:00
Lioncash
2a968f02d7
TASInputDlg: Make constructor explicit
2017-04-03 04:29:14 -04:00
Lioncash
28395c6302
TASInputDlg: Simplify event queueing calls
...
wxQueueEvent/wxPostEvent are useful when the event is being dispatched
to another separate window, but aren't really necessary when the event
will be handled by the same window it's dispatched from.
GetEventHandler() is unnecessary here for the same reason. It's an event
intended to be handled by the dialog itself.
2017-04-03 04:29:14 -04:00
Lioncash
598a92426f
TASInputDlg: Get rid of unnecessary event casts
...
wxCommandEvent already stores the necessary data; the control object
itself doesn't need to be retrieved and casted.
2017-04-03 04:29:14 -04:00
Lioncash
2af5b64f32
TASInputDlg: Apply auto to UI control initializations where appropriate
...
As all UI controls are essentially constructed with new expressions, the
type is already visible on the right-hand side, so repeating the type
twice isn't necessary.
2017-04-03 04:29:11 -04:00
Lioncash
b809db52d1
TASInputDlg: Use std::array where applicable
2017-04-03 04:28:11 -04:00
Michael Maltese
f1dfa7933c
FrameTools: unbind KEY_DOWN handler when game stops
...
Fixes issue 10162: Cannot type window text fields in macOS builds[0]
[0]: https://bugs.dolphin-emu.org/issues/10162
2017-04-02 19:17:35 -07:00
Léo Lam
0dbad29bf4
IOS: Don't expose HLE::Reset()
...
This is an implementation detail that does not have to be exposed.
It was used in WII_IPC whenever the IPC gets reset, but that does not
make much sense to me: the only time when IOS loses state and the IPC
registers are set up again is when it's reloaded. And reloading IOS
already calls Reset() indirectly.
Also, an IPC reset from the PPC definitely should not close all opened
devices!
This also gets rid of a special case for clear_devices, which is now
completely unneeded.
2017-04-02 18:00:32 +02:00
Markus Wick
fd7f7c5541
Merge pull request #5159 from ligfx/arm64warnings
...
Arm64: a slew of warning fixes
2017-04-02 17:07:17 +02:00
Markus Wick
40cfa708a8
Merge pull request #5180 from lioncash/enum
...
CPU: Convert state enum to an enum class
2017-04-02 17:01:25 +02:00
Markus Wick
86e48fc1ca
Merge pull request #5194 from lioncash/dialog
...
Frame: Make TAS dialogs private
2017-04-02 16:53:31 +02:00
Léo Lam
64b1a4d308
IOS/IPC: Remove unneeded forward declaration
...
CoreTiming.h is already included.
2017-04-02 12:41:47 +02:00
Lioncash
05872336a9
ExpressionParser: Rename ParseStatus' Success member to Successful
...
This clashes with X11's preprocessor define named Success (because using
non-prefixed lowercase identifiers in C was apparently a fantastic idea
at some point), causing compilation errors.
2017-04-02 06:13:18 -04:00
Lioncash
c09f7bd84b
Frame: Convert TAS dialog C array to std::array
2017-04-02 04:11:58 -04:00
Lioncash
678905764a
Movie/Frame: Amend variable naming
...
Amends variable naming related to translation unit locals and TAS input
dialogs that were modified in the previous commit.
2017-04-02 04:11:58 -04:00
Lioncash
7f0203a5b0
Frame: Make TAS dialogs private
...
Amends the TAS callbacks to internally store functions using
std::function instead of raw function pointers. This allows binding
extra contextual state via lambda functions, as well as keeping the
dialogs internal to the main frame (on top of being a more flexible
interface).
2017-04-02 04:11:47 -04:00
Lioncash
5620f78b5c
Core: Amend VS filter tag
2017-04-02 00:30:26 -04:00
Jussi Virtanen
92ad1b9c4d
Use pointers inside ini loop to retain references to ini files
2017-04-01 17:52:25 +03:00
Stenzek
739aced97c
Vulkan: Implement compute-shader based GPU texture decoding
2017-04-01 12:32:57 +10:00
Stenzek
5fbc63fbcf
Vulkan: Compute shader support
2017-04-01 12:32:57 +10:00
Stenzek
02f887ede0
OGL: Add GPUTimer class for measuring execution time of a draw/dispatch
2017-04-01 12:32:57 +10:00
Stenzek
b01bcb80f4
OGL: Implement GPU texture decoding backend
2017-04-01 12:32:56 +10:00
Stenzek
79ba946d70
VideoCommon: Changes to TextureCache to support decoding in backend
2017-04-01 12:32:10 +10:00
Stenzek
6ffc16d1b0
VideoCommon: Add texture decoding shader generators
2017-04-01 12:32:10 +10:00
Stenzek
82fd984f3e
VideoBackends: Add configuration field for GPU texture decoding
2017-04-01 12:32:05 +10:00
Stenzek
abc662d69c
OGL: Support compute shaders and emitting GLSL 4.3
...
This also changes bSupportsEarlyFragmentTests to
bSupportsImageLoadStore, as it is used for both.
2017-04-01 12:31:41 +10:00
Stenzek
b987f220e1
VideoBackends: Add support flag for compute shaders
2017-04-01 12:31:41 +10:00
Stenzek
a8876a29fe
OGL: Use ARB_texture_storage to allocate TextureCache entries
...
This ensures that they are complete textures by decoding time, as when
using compute shaders we write directly to the destination texture.
2017-04-01 12:31:41 +10:00
Stenzek
c8cbbd831d
GLExtensions: Seperate GL_ARB_compute_shader from GL 4.3
...
Allows the usage of glDispatchCompute from GLES (requires GLES 3.1).
2017-04-01 12:31:40 +10:00
Stenzek
4e24bfd0ce
GLExtensions: Seperate GL_ARB_shader_image_load_store from GL 4.2
...
Allows the usage of glBindImageTexture and glMemoryBarrier from GLES
(requires GLES 3.1).
2017-04-01 12:31:40 +10:00
Stenzek
bd15d0352a
GLExtensions: Seperate GL_ARB_texture_storage from GL 4.2
...
This allows us to use glTexStorage on GL3.3 implementations that support
the extension.
2017-04-01 12:31:40 +10:00
Stenzek
f8059eae43
OGL: Fix render-target texture mipmap allocation
...
The loop was allocating one-too-many levels, as well as incorrect sizes
for each level. Probably not an issue as mipmapped render targets aren't
used, but the logic should be correct anyway.
2017-04-01 12:31:40 +10:00
Matthew Parlane
22fa199caf
Merge pull request #5190 from ligfx/removeao
...
Remove libao sound backend
2017-04-01 12:15:17 +13:00
Matthew Parlane
587ed3213c
Merge pull request #5189 from stenzek/gl-msaa
...
OGL: Fix MSAA being forced to 1x
2017-04-01 12:14:51 +13:00
Michael Maltese
af63235dc4
Remove libao sound backend
...
A single person uses it[0], and it sometimes messes up the Linux
buildbots ("ninja: error: 'ao', needed by 'Binaries/dolphin-emu', missing
and no known rule to make it").
[0]: https://analytics.dolphin-emu.org/stats/popular-audio-backends.txt
2017-03-31 14:59:57 -07:00
JosJuice
020618a427
Move DVDInterface's pure (stateless) math code to a new file
2017-03-31 17:27:23 +02:00
JosJuice
f106ba70d4
Move DVD code to a new directory
2017-03-31 17:27:23 +02:00
Stenzek
5326a18fdf
OGL: Fix MSAA being forced to 1x
...
This was a regression from the remove-everything-static-from-renderer
PR. As the comment indicates, it would be nice to move all of this logic
out of the Renderer constructor, but this is a much larger change.
2017-03-31 21:55:26 +10:00
Matthew Parlane
9b2c6e9a9a
Merge pull request #5186 from lioncash/frame
...
DolphinWX/Frame: Remove GetGameListCtrl()
2017-03-31 20:51:14 +13:00
Mat M
006381bb47
Merge pull request #5184 from leoetlino/dead-code
...
Common: Remove dead code in NandPaths
2017-03-31 00:21:49 -04:00
Mat M
6b198679bc
Merge pull request #5129 from ligfx/breakpointprintf
...
Breakpoints.cpp: fix format string warnings
2017-03-31 00:13:06 -04:00
Mat M
80a812322e
Merge pull request #5152 from ligfx/disciomaybeuninitialized
...
DiscIO: initialize out args to ReadSwapped (fixes warning)
2017-03-31 00:11:53 -04:00
Lioncash
6495becaf7
Frame: Remove GetGameListCtrl()
...
This is currently unused and shouldn't actually be a part of the frame's
public interface. The event system should be used instead to dispatch
messages to the game list control if necessary.
2017-03-30 16:05:20 -04:00
Léo Lam
e1020cb674
Common: Remove dead code in NandPaths
2017-03-30 18:48:50 +02:00
Matthew Parlane
de6c9404fc
Merge pull request #5182 from leoetlino/ios-enums
...
IOS: Move ES return codes
2017-03-30 14:57:03 +13:00
Matthew Parlane
595c1f5597
Merge pull request #5179 from lioncash/cast
...
Fifo: Remove unnecessary integral casts
2017-03-29 10:55:52 +13:00
Lioncash
497292cb1b
MainMenuBar: Amend MEGA signature help tooltip
...
Keeps it consistent with the regular signature DB option
2017-03-28 17:14:04 -04:00
Lioncash
5637bbd1cf
MEGASignatureDB: Remove unused variable in Apply
2017-03-28 16:19:19 -04:00
Lioncash
eec4b705d5
MEGASignatureDB: Move objects where applicable
...
Signatures during loading and strings during reference retrieval can be
moved.
2017-03-28 16:18:31 -04:00
Lioncash
c0171975ea
MEGASignatureDB: Move implementation details into the cpp file
...
These functions aren't dependent on any database state and can be hidden.
2017-03-28 15:43:21 -04:00
Anthony
fee2577e25
Merge pull request #5088 from sepalani/mega_signature
...
SignatureDB: Support for WiiTools MEGA files added
2017-03-28 12:28:21 -07:00
Sepalani
4cb84d06f0
SignatureDB: Support for WiiTools MEGA files added
2017-03-28 20:16:09 +01:00
Léo Lam
68cd8fc910
IOS: Move ES return codes
...
This keeps all of the return codes in the same place and exposed
publicly (as they are not internal to ES).
I have also added proper IOSC error codes and renamed some codes
for more consistency. (Unix ones have an E prefix, others do not.)
2017-03-28 20:02:26 +02:00
Anthony
bcb1729dc9
Merge pull request #5124 from leoetlino/more-accurate-import
...
IOS/ES: Handle imports more accurately
2017-03-28 09:20:28 -07:00
Anthony
cdd3ac023c
Merge pull request #5133 from leoetlino/ugh-windows
...
Fix issues introduced by cpp-optparse on Windows
2017-03-28 09:17:02 -07:00
Anthony
2c531889b2
Merge pull request #5139 from lioncash/bitfield
...
BitField: Minor cleanup
2017-03-28 09:15:37 -07:00
Lioncash
8d98ac6509
CPU: Convert state enum to an enum class
...
Gets enum constants out of the immediate namespace. Also makes it
strongly typed like the other state enums.
2017-03-28 11:48:28 -04:00
Lioncash
41fbc659bf
Fifo: Remove unnecessary integral casts
...
FIFO_SIZE is a u32, so %u can just be used instead.
2017-03-28 10:35:26 -04:00
Matthew Parlane
85d74a506f
Merge pull request #4951 from waddlesplash/haiku-2
...
Initial support for Haiku.
2017-03-28 17:19:35 +13:00
Augustin Cavalier
0831dad467
Initial support for Haiku.
2017-03-27 23:46:19 -04:00
Matthew Parlane
8c23888968
Merge pull request #5174 from lioncash/vi
...
VideoInterface: Minor changes
2017-03-28 16:15:59 +13:00
Matthew Parlane
94dd435336
Merge pull request #5176 from lioncash/retval
...
VertexLoader: Return debug strings by value
2017-03-28 15:38:32 +13:00
Matthew Parlane
3000cc7c05
Merge pull request #5175 from lioncash/fifo
...
Fifo: const correctness
2017-03-28 15:37:18 +13:00
Matthew Parlane
3eff869937
Merge pull request #5156 from sepalani/gen-sym
...
Generate Symbols From menu added
2017-03-28 15:36:33 +13:00
Sepalani
5b88782e30
Generate Symbols From menu added
2017-03-28 02:05:27 +01:00
Matthew Parlane
22256d1bd8
Merge pull request #5170 from leoetlino/bt-fix
...
libusb fixes (mostly for IOS)
2017-03-28 13:47:47 +13:00
Lioncash
9ebd84e54a
VertexLoaderManager: Return debug strings by value
...
This also renames AppendListToString to VertexLoadersToString.
2017-03-26 23:50:09 -04:00
Lioncash
9859533ab4
VertexLoaderBase: Return debug strings by value
...
An out parameter for this sort of thing is a C++03 hold-over. This also
renames AppendToString to ToString.
2017-03-26 23:49:59 -04:00
Lioncash
d44844ba29
XFStructs: Get rid of an unnecessary pointer cast
...
Also gets rid of implicit sign conversions.
2017-03-26 23:09:30 -04:00
Lioncash
62db55dee2
Fifo: const correctness
...
PushFifoAuxBuffer only memcpys data using ptr as the source pointer, so
it can be a pointer to const data because of that.
2017-03-26 23:08:33 -04:00
Matthew Parlane
dc2d11c1a7
Merge pull request #5172 from lioncash/dsp
...
DSPIntMultiplier: Place translation unit local functions in an anonymous namespace
2017-03-27 16:06:39 +13:00
Lioncash
8033a72f0b
VertexLoaderBase: Use std::array where applicable
2017-03-26 22:12:20 -04:00
Lioncash
adbffc24e9
VideoInterface: Make clock frequency array constexpr
...
This is only ever read from.
2017-03-26 19:30:44 -04:00
Lioncash
ec5637fe46
VideoInterface: Utilize std::array where applicable
2017-03-26 19:28:56 -04:00
Lioncash
ae29cd042e
VideoInterface: Initialize union members directly where applicable
2017-03-26 18:42:09 -04:00
Lioncash
0a7a6142eb
GCMemcardDirectory: Move flush interval constant into the cpp file
...
This isn't necessary to be within the header.
2017-03-26 17:55:30 -04:00
Lioncash
a5c5645bed
DSPIntMultiplier: Place translation unit local functions in an anonymous namespace
...
Unlike inline, this makes the functions internally linked.
2017-03-26 16:42:35 -04:00
Léo Lam
69705e3a41
IOS/ES: Handle imports more accurately
...
A set of small changes to handle title imports more accurately.
* Clean up the import directory after an import, exactly like IOS.
This should prevent the title directory from having useless leftover
contents, which could confuse the emulated software.
* More robust failsafe in case an import does not complete normally.
IOS checks for stale imports and handles them appropriately on boot.
We now do the same.
* Create all directories as IOS does. This includes the data directory.
2017-03-26 22:17:31 +02:00
Matthew Parlane
76cece8157
Merge pull request #5115 from leoetlino/proper-location-for-es-stuff
...
IOS/ES: Move shared content map, uid.sys code
2017-03-27 08:53:14 +13:00
Léo Lam
9aaaa2b924
IOS/USB: Unref libusb devices manually
2017-03-26 15:58:30 +02:00
Léo Lam
32a1b5068a
Revert "Use a single libusb context"
...
This reverts commit c8a6dc6c23
.
libusb on Windows isn't really safe to use from different threads
with a single context.
2017-03-26 15:58:30 +02:00
BhaaL
a9afd5b243
fix incomplete end-tag
2017-03-26 14:44:42 +02:00
Léo Lam
6c62cfb1aa
IOS/BTReal: Properly check for libusb failures
2017-03-26 12:22:29 +02:00
Léo Lam
7b17163a7a
IOS/ES: Move shared content map, uid.sys code
...
These are all specific to ES and belong there.
The SharedContentMap and UIDSys classes were also modernised.
2017-03-26 12:16:28 +02:00
Léo Lam
3cfd9ea9b2
IOS/BTReal: Always use config descriptor 0
...
This may fix LIBUSB_ERROR_NOT_FOUND whenever devices end up being in
an unconfigured state. We don't need anything more than the first
config descriptor anyway.
2017-03-26 12:08:53 +02:00
Markus Wick
0b6170cc33
Merge pull request #5167 from stenzek/jit64-crash
...
Jit64: Fix crash at startup
2017-03-26 09:17:21 +02:00
Anthony
fbfb94ec79
Merge pull request #5157 from sepalani/sym-name
...
Fix wrong address in zz_ symbol name
2017-03-25 19:38:16 -07:00
Matthew Parlane
5d40daa507
Merge pull request #5123 from ligfx/fixwiimoteemu
...
WiimoteEmu: refer to settings by name, not index
2017-03-26 14:56:44 +13:00
Matthew Parlane
28916997a5
Merge pull request #5130 from ligfx/inputconfigdiagbitmapsswitchdefault
...
InputConfigDiagBitmaps: add switch empty cases (fixes warning)
2017-03-26 14:54:50 +13:00
Matthew Parlane
9dd9573ec0
Merge pull request #5148 from ligfx/iptopwarning
...
IP/Top: rename private methods à la HandleXRequest
2017-03-26 14:54:31 +13:00
Matthew Parlane
89de08d649
Merge pull request #5166 from ligfx/eglwarning
...
EGL: Fix missing-braces warning
2017-03-26 14:52:09 +13:00
Stenzek
724a8437eb
Jit64: Fix crash at startup
...
This was a regression introduced by 4d8d045
. stored_stack_pointer within
PPCSTATE was being accessed before the PPCSTATE (RBP) register was
initialized.
2017-03-26 11:37:55 +10:00
Matthew Parlane
4f160b2547
Merge pull request #5163 from lioncash/array
...
TextureCacheBase: Convert bound_textures from a C array to a std::array
2017-03-26 14:35:12 +13:00
Michael Maltese
3f8a471d64
EGL: Fix missing-braces warning
...
Fixes warning:
```
../Source/Core/Common/GL/GLInterface/EGL.cpp:57:7: warning: suggest braces around initialization of subobject [-Wmissing-braces]
EGL_OPENGL_BIT, (1 << 6), /* EGL_OPENGL_ES3_BIT_KHR */
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2017-03-25 17:09:50 -07:00
Léo Lam
c1cd7d9c0e
WX: Redirect stdout to console output
...
Thank Windows for its default console handling.
This fixes std::cout not working on Windows.
2017-03-25 23:28:45 +01:00
Léo Lam
77b389bf99
WX: Move init mutex lock to after command line
...
Calling std::exit while having a mutex locked leads to an assertion.
Moving the lock is fine, since all it protects against is really just
UICommon.
2017-03-25 23:24:02 +01:00
Markus Wick
86e6b44271
Merge pull request #5146 from ligfx/mmuwarning
...
MMU: rewrite loop to avoid warning
2017-03-25 23:18:56 +01:00
Michael Maltese
9afe3946d1
JitArm64_Integer: fix signedness comparison warning
...
Fixes warning:
```
dolphin/Source/Core/Core/PowerPC/JitArm64/JitArm64_Integer.cpp:1139:64: warning: comparison of integers of different signs: 'u32' (aka 'unsigned int') and 'int' [-Wsign-compare]
else if (gpr.IsImm(b) && gpr.GetImm(b) != 0 && gpr.GetImm(b) != -1)
~~~~~~~~~~~~~ ^ ~~
```
2017-03-25 14:51:10 -07:00
Michael Maltese
428bac6e32
JitArm64_Integer: remove unused imm_neg
2017-03-25 14:51:10 -07:00
Michael Maltese
5892ef1792
JitArm64_Integer: extract bit operation lambdas
...
Fixes warnings like:
```
dolphin/Source/Core/Core/PowerPC/JitArm64/JitArm64_Integer.cpp:132:37: warning: declaration shadows a local variable [-Wshadow]
reg_imm(a, s, inst.UIMM, [](u32 a, u32 b) { return a | b; }, &ARM64XEmitter::ORRI2R);
^
/Users/michaelmaltese/Downloads/dolphin/Source/Core/Core/PowerPC/JitArm64/JitArm64_Integer.cpp:122:7: note: previous declaration is here
u32 a = inst.RA, s = inst.RS;
^
```
2017-03-25 14:51:09 -07:00
Michael Maltese
3d7bace9da
Arm64Emitter: extract lambda to AddImmediate()
...
Fixes warning:
```
Source/Core/Common/Arm64Emitter.cpp:4108:31: error: declaration shadows a local variable [-Werror,-Wshadow]
auto addi = [this](ARM64Reg Rd, ARM64Reg Rn, u64 imm, bool shift, bool negative, bool flags) {
^
/var/lib/buildbot/slave/pr-android/build/Source/Core/Common/Arm64Emitter.cpp:4105:46: note: previous declaration is here
void ARM64XEmitter::ADDI2R_internal(ARM64Reg Rd, ARM64Reg Rn, u64 imm, bool negative, bool flags,
^
```
2017-03-25 14:21:19 -07:00
Michael Maltese
c58ba93503
Arm64: Use PRIi64/PRIx64 for printf
2017-03-25 14:20:44 -07:00
Michael Maltese
4cd9a2ef1e
DiscIO: make sure to initialize out args to ReadSwapped
...
Fixes warnings:
```
../Source/Core/DiscIO/VolumeGC.cpp: In member function 'virtual u8 DiscIO::CVolumeGC::GetDiscNumber() const':
../Source/Core/DiscIO/VolumeGC.cpp:178:10: error: 'disc_number' may be used uninitialized in this function [-Werror=maybe-uninitialized]
return disc_number;
^
../Source/Core/DiscIO/VolumeWiiCrypted.cpp: In member function 'virtual u8 DiscIO::CVolumeWiiCrypted::GetDiscNumber() const':
../Source/Core/DiscIO/VolumeWiiCrypted.cpp:258:10: error: 'disc_number' may be used uninitialized in this function [-Werror=maybe-uninitialized]
return disc_number;
^
../Source/Core/DiscIO/VolumeWiiCrypted.cpp: In member function 'virtual IOS::ES::TMDReader DiscIO::CVolumeWiiCrypted::GetTMD() const':
../Source/Core/DiscIO/VolumeWiiCrypted.cpp:123:20: error: 'tmd_address' may be used uninitialized in this function [-Werror=maybe-uninitialized]
tmd_address <<= 2;
^
```
2017-03-25 13:50:23 -07:00
Lioncash
57c21b9576
TextureCacheBase: Convert bound_textures from a C array to a std::array
...
Prevents array-to-pointer decay and simplifies some code.
2017-03-25 14:53:25 -04:00
Markus Wick
4d8d0451e3
Merge pull request #5142 from MerryMage/stored_stack_pointer
...
JitAsm: Use stored_stack_pointer instead of s_saved_rsp
2017-03-25 17:37:48 +01:00
Markus Wick
3898707ef9
Merge pull request #5141 from MerryMage/ConvertDoubleToSingle
...
EmuCodeBlock: Place ConvertDoubleToSingle temporaries on the stack
2017-03-25 17:37:29 +01:00
Anthony
b099a1c02a
Merge pull request #5135 from lioncash/ini
...
IniFile: Minor changes
2017-03-24 19:33:09 -07:00
Anthony
e2a7e8a40d
Merge pull request #5143 from JosJuice/wii-menu-region-log
...
Clarify the log message for unknown Wii Menu regions
2017-03-24 19:31:52 -07:00
Sepalani
6eca605284
Fix wrong address in zz_ symbol name
2017-03-25 01:21:13 +00:00
JosJuice
f5469878ba
DVDInterface: Update comment about buffer speed
...
The actual code was changed based on mmastrac's hardware
tests, but it seems like we forgot to edit this comment.
2017-03-24 20:04:26 +01:00
Michael Maltese
a098fe57c5
IP/Top: rename private methods à la HandleXRequest
...
Fixes this warning everytime Top.h is included:
```
../Source/Core/Core/IOS/Network/IP/Top.h:76:20: warning: 'IOS::HLE::Device::NetIPTop::Close' hides overloaded virtual function [-Woverloaded-virtual]
IPCCommandResult Close(const IOCtlRequest& request);
^
../Source/Core/Core/IOS/Device.h:158:16: note: hidden overloaded virtual function 'IOS::HLE::Device::Device::Close' declared here: different number of parameters (0 vs 1)
virtual void Close();
^
```
2017-03-24 11:52:39 -07:00
Michael Maltese
8387b00f42
MMU: rewrite loop to avoid warning
...
Fixes warning:
```
dolphin/Source/Core/Core/PowerPC/MMU.cpp:278:43: warning: shift count >= width of type [-Wshift-count-overflow]
addr++, addr_translated++, val >>= 8)
```
2017-03-24 11:45:21 -07:00
JosJuice
a31bb7a27c
Clarify the log message for unknown Wii Menu regions
...
Saying just "title" made it seem like we are showing the title
ID, but what we actually are showing is the title version.
2017-03-24 16:44:38 +01:00
MerryMage
61198199cd
JitAsm: Use stored_stack_pointer instead of s_saved_rsp
2017-03-24 11:31:40 +00:00
MerryMage
918d7fa3d1
EmuCodeBlock: Place ConvertDoubleToSingle temporaries on the stack
2017-03-24 10:59:55 +00:00
Michael Maltese
0767c3d94d
DiscIO: add empty UNKNOWN_REGION case (fixes warning)
...
Fixes warning:
```
dolphin/Source/Core/DiscIO/Enums.cpp:171:11: warning: enumeration value 'UNKNOWN_REGION' not handled in switch [-Wswitch]
switch (GetSysMenuRegion(title_version))
^
```
2017-03-23 20:14:11 -07:00
Lioncash
b711daee5f
BitField: Get rid of a C-style cast
...
This can simply be the max value of the unsigned type.
2017-03-23 15:28:58 -04:00
Lioncash
e43c495ce5
BitField: Convert typedefs to using aliases
2017-03-23 15:28:50 -04:00
Lioncash
caef08988e
BitField: Make mostly constexpr capable
...
Makes the constructor and retrieval functions constexpr.
2017-03-23 11:45:45 -04:00
Markus Wick
6e2e48e9ea
Merge pull request #5137 from lioncash/arm
...
Arm64Emitter: Get rid of pointer casts in PoisonMemory
2017-03-23 15:52:58 +01:00
Markus Wick
4b5995a6e0
Merge pull request #5138 from lioncash/init
...
VertexLoaderBase: In-class initialize class members where applicable
2017-03-23 15:15:32 +01:00
Lioncash
da2e34f69b
VertexLoaderBase: In-class initialize class members where applicable
...
Same thing, less code.
2017-03-23 08:37:18 -04:00
Lioncash
a7ec2d3831
Arm64Emitter: Get rid of pointer casts in PoisonMemory
...
The previous code invokes undefined behavior.
2017-03-23 07:10:21 -04:00
Markus Wick
6d065a02b5
Merge pull request #5134 from degasus/texture_cache
...
TextureCache: Don't lock freed rendertargets for one frame.
2017-03-23 09:48:32 +01:00
Lioncash
1d6d85963f
ARDecrypt: const correctness
2017-03-22 20:35:00 -04:00
Lioncash
29ca22905b
IniFile: Replace a character erase with pop_back()
...
Same thing, more straightforward.
2017-03-22 19:32:10 -04:00
Lioncash
35959bdaf9
IniFile: Replace string joining code with JoinString
2017-03-22 19:30:15 -04:00
Lioncash
b92871111a
IniFile: std::move a std::string in GetLines
...
Also gets rid of an unnecessary string copy.
2017-03-22 19:09:25 -04:00
Lioncash
dbdf693c81
IniFile: Use character literals instead of string literals where applicable
...
Character overloads are generally better overall (range checks aren't
necessary, etc).
2017-03-22 19:03:17 -04:00
Lioncash
d8998b6392
IniFile: Provide an rvalue reference overload for SetLines
...
Allows moving in vectors instead of performing an unnecessary copy.
2017-03-22 18:49:13 -04:00
Lioncash
46d74a7760
IniFile: Make Section's string constructor instances take strings by value
...
As the name is immediately stored into a class member, a move here is a
better choice.
This also moves the constructor implementations into the cpp file to
avoid an otherwise unnecessary inclusion in the header. This is also
likely a better choice as Section contains several non-trivial members,
so this would avoid potentially inlining a bunch of setup and teardown
code related to them as a side-benefit.
2017-03-22 18:47:19 -04:00
degasus
ca8d9e2215
TextureCache: Don't lock freed rendertargets for one frame.
...
New Super Mario Bros on PAL still renders at 60 fps, but skips every 5th XFB copy.
So our detection of "per frame" fails, and we require twice the amound of texture objects.
But our pool frees unused textures after 3 frames, so half of them needs to be reallocated
every few frames.
This commit removes the lock for render targets. It was introduced to not update a texture
while it is still in use. But render targets aren't updated while rendering, so this
lock isn't needed. Non-rendertarget textures however aren't as dynamic, so the lock should
have no performance update.
2017-03-22 23:28:42 +01:00
Lioncash
99adc73383
IniFile: Make Section constructor explicit
2017-03-22 18:07:23 -04:00
Markus Wick
9ea59133b3
Merge pull request #5121 from MerryMage/children-happen
...
Jit64: Merge memory allocations into a single allocation
2017-03-22 22:42:46 +01:00
Michael Maltese
c4bb452f2b
InputConfigDiagBitmaps: add switch empty cases (fixes warning)
...
Fixes warning:
```
dolphin/Source/Core/DolphinWX/Input/InputConfigDiagBitmaps.cpp:170:13: warning: 7 enumeration values not handled in switch: 'Other', 'MixedTriggers', 'Buttons'... [-Wswitch]
switch (g->control_group->type)
^
```
2017-03-22 13:00:54 -07:00
Matthew Parlane
8804f759b9
Merge pull request #5127 from lioncash/gcode
...
GeckoCodeConfig: Minor changes
2017-03-23 07:13:45 +13:00
Markus Wick
09f4d494ef
Merge pull request #5132 from ligfx/commentoutpagetagshift
...
MMU: comment-out unused var HW_PAGE_TAG_SHIFT
2017-03-22 09:43:45 +01:00
Michael Maltese
da6a1daef6
MMU: remove unused var HW_PAGE_TAG_SHIFT
...
It's not used, so produces a warning during compilation.
2017-03-21 23:47:10 -07:00
Michael Maltese
9e430cbdd6
Breakpoints.cpp: fix format string warnings
...
Fixes warnings:
```
dolphin/Source/Core/Core/PowerPC/BreakPoints.cpp:246:89: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
debug_interface->GetDescription(pc).c_str(), write ? "Write" : "Read", size * 8,
^~~~~~~~
dolphin/Source/Core/Core/PowerPC/BreakPoints.cpp:245:50: warning: field width should have type 'int', but argument has type 'unsigned long' [-Wformat]
NOTICE_LOG(MEMMAP, "MBP %08x (%s) %s%zu %0*x at %08x (%s)", pc,
~~~^
```
2017-03-21 23:25:17 -07:00
Lioncash
2f52d04e30
GeckoCodeConfig: Use compare instead of substr for comparing substrings
...
Gets rid of an unnecessary string construction.
2017-03-21 18:12:40 -04:00
Matthew Parlane
a32a2d1a02
Merge pull request #5126 from leoetlino/version
...
UICommon: Don't print --version option twice
2017-03-22 11:10:36 +13:00
Lioncash
0d0e9f626d
GeckoCodeConfig: Amend unnecessary string literals to char literals
...
Also gets rid of an unnecessary std::string construction in a loop.
std::string already has an operator+ overload to prepend characters.
2017-03-21 18:03:06 -04:00
Lioncash
28235b5cb6
GeckoCodeConfig: Remove unused commented out code
2017-03-21 18:03:06 -04:00
Lioncash
f0fa692457
GeckoCodeConfig: Move gecko code title building to its own function
...
Keeps it separate from the rest of the saving code and also allows for
easy rvalue-reference moving into the lines vector as a side-benefit.
2017-03-21 18:03:02 -04:00
Léo Lam
3028158873
UICommon: Don't print --version option twice
...
cpp-optparse already has the --version option built-in, so having our
own version option results in --version being shown twice.
2017-03-21 22:29:01 +01:00
Lioncash
f91292eff2
GeckoCodeConfig: Return vector by value for LoadCodes()
...
Using an out-param is a leftover from C++03. Action Replay codes already
return the vector of codes by value as well.
2017-03-21 16:58:13 -04:00
Michael Maltese
7c52b8f838
WiimoteEmu: refer to settings by name, not index
...
Fixes https://bugs.dolphin-emu.org/issues/10159 "Emulated Wii remote
options not working correctly," which was introduced by PR #4856 : "Move
'Background Input' out of individual controller configurations."
2017-03-21 13:31:42 -07:00
MerryMage
cb7d9556bf
Jit64: Merge memory allocations into a single allocation
...
Instead of each component allocating their own memory, we instead allocate
the memory once and divvy that up among the components as required. This
ensures that relative memory offsets remain within architecture limits.
2017-03-21 20:16:12 +00:00
MerryMage
da434e1a1c
ConstantPool: Externalize memory allocation
2017-03-21 20:16:12 +00:00
MerryMage
615fcc621d
CodeBlock: Add support for multiple children
2017-03-21 20:16:12 +00:00
Lioncash
780dffcb13
FifoDataFile: In-class initialize member variables where applicable
2017-03-21 15:41:05 -04:00
Lioncash
4e5e7cff0a
FifoRecorder: In-class initialize member variables where applicable
2017-03-21 15:41:05 -04:00
Lioncash
eda27ee397
FifoPlayer: In-class initialize member variables where applicable
2017-03-21 15:40:56 -04:00
Lioncash
0d1bc53e55
JitBase: Rename MergeAllowedNextInstructions to CanMergeNextInstructions
...
This is more indicative that it's checking for something
2017-03-21 13:50:03 -04:00
Lioncash
f98211bfcf
JitBase: Make MergeAllowedNextInstructions a const member function
2017-03-21 13:45:18 -04:00
Markus Wick
f03fa54bcb
Merge pull request #5116 from degasus/ArmRegCache
...
JitArm64: Fix usages in conditional code.
2017-03-21 18:14:16 +01:00
MerryMage
8a788ebdd9
JitAsm: Add missing forward declaration of X64CodeBlock
2017-03-21 16:56:43 +00:00
Anthony
d2690568f9
Merge pull request #5110 from MerryMage/const-pool
...
Jit64: Implement a constant pool
2017-03-20 13:29:57 -07:00
MerryMage
4491e9b829
Jit_SystemRegisters: Add missing sizes to constant arrays
2017-03-20 20:21:43 +00:00
MerryMage
9058ccea3f
IR_X86: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
3dccc369d3
Jit64AsmCommon: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
4814c4ac5a
EmuCodeBlock: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
8b93baefb7
Jit_SystemRegisters: Use MConst for constants
2017-03-20 20:21:43 +00:00
MerryMage
0fe234ec9b
Jit_FloatingPoint: Use MConst for constants
2017-03-20 20:21:42 +00:00
MerryMage
ff441efc26
EmuCodeBlock: Use ConstantPool
2017-03-20 20:21:42 +00:00
MerryMage
9951961338
ConstantPool: Implement a constant pool
...
Constants are copied into this pool so that they live at a memory
location that is close to the code that references it. The pool allocates
memory from a provided X64CodeBlock to use.
The purpose of the pool is to overcome the 32-bit offset limitation that
RIP-relative addressing has.`
2017-03-20 20:21:42 +00:00
MerryMage
b0d6c29073
JitAsmCommon: Add missing sizes to constant arrays
...
This allows generic code to determine the size of these arrays.
2017-03-20 20:21:41 +00:00
degasus
c5b9c740c9
JitArm64: Fix gpr.R() usages in conditional code.
2017-03-20 21:18:13 +01:00
degasus
f7a52c0c35
JitArm64: Fix gpr.GetReg usages in conditional code.
2017-03-20 21:18:13 +01:00
Anthony
26bb26fe54
Merge pull request #4901 from JosJuice/filemonitor-redesign
...
FileMonitor redesign
2017-03-20 12:46:19 -07:00
Anthony
50faffc9c2
Merge pull request #5009 from aldelaro5/memcheck-fix
...
Fix memory breakpoint when checking the middle of the data
2017-03-20 12:41:02 -07:00
Markus Wick
5cc55f0fe3
Merge pull request #5096 from Armada651/anything-with-a-viewport
...
VertexShaderGen: Correct for negative viewport dimensions.
2017-03-20 10:55:56 +01:00
Anthony
b35bbdfb58
Merge pull request #4856 from ligfx/backgroundinput
...
Move "Background Input" out of individual controller configurations
2017-03-19 22:31:30 -07:00
Matthew Parlane
8eb26d298e
Merge pull request #5099 from JosJuice/wii-menu-strings
...
Display nicer version strings for the Wii Menu
2017-03-20 14:03:04 +13:00
Matthew Parlane
9da35edd15
Merge pull request #5093 from JosJuice/six-char-game-ids
...
Use 6-char game IDs for NAND tiles (if they are printable)
2017-03-20 13:38:35 +13:00
Matthew Parlane
910360f7e7
Merge pull request #5085 from leoetlino/es-nandutils
...
IOS: Add NandUtils
2017-03-20 13:27:17 +13:00
Matthew Parlane
a20b73cfb4
Merge pull request #5112 from MerryMage/quantize
...
Jit64AsmCommon: Use correct quantization table
2017-03-20 13:26:38 +13:00
MerryMage
5f59755d15
Jit64AsmCommon: Use correct quantization table
...
Stores quantize, loads dequantize.
2017-03-19 14:49:24 +00:00
Lioncash
35c230a418
NetPlayServer: const correctness
2017-03-19 09:36:40 -04:00
Lioncash
025eac9062
NetPlayClient: const correctness
2017-03-19 09:32:58 -04:00
Léo Lam
98e27ad9cb
IOS/ES: Use FindInstalledTMD instead of content loader
...
Proper semantics.
IOS only cares about the TMD and nothing else, so we should use
FindInstalledTMD, instead of reading/parsing/decrypting a bunch of
useless stuff, which is slow *and* causes issues because of the cache.
2017-03-19 11:27:34 +01:00
Léo Lam
8984112501
IOS/ES: Move GetStoredContentsFromTMD to NandUtils
2017-03-19 11:10:45 +01:00
Léo Lam
0ed8d68192
IOS/ES: Add functions to get TMDs
2017-03-19 11:10:45 +01:00
Léo Lam
194b0ae36d
IOS: Add NandUtils
...
This keeps the ES specific NAND code in a single place and makes it
reusable. Eventually, other ES specific code will be moved to it.
2017-03-19 11:10:45 +01:00
Anthony
9604a06921
Merge pull request #5102 from leoetlino/channel-title-type
...
Check whether WAD is a channel before reading names
2017-03-18 23:30:27 -07:00
Matthew Parlane
cb87b25ac6
Merge pull request #5106 from lioncash/constant
...
Memmap: Replace '0' constant with nullptr
2017-03-19 16:42:36 +13:00
Matthew Parlane
036d676230
Merge pull request #5107 from lioncash/unused
...
ES: Remove unused string format argument in LaunchPPCTitle
2017-03-19 16:41:28 +13:00
Lioncash
8e999b209a
NetPlayClient: Eliminate variable shadowing
...
Gets rid of two -Wshadow warnings
2017-03-18 22:58:07 -04:00
aldelaro5
8bf27cf42f
Fix memory breakpoint when checking the middle of the data
...
If the delimiters of a memory aren't exactly the same as an address, but their size includes the memory breakpoint delimiter, the break will not go through. This makes it so that you can specify a search for a memory breakpoint with a data size and will check if the data fits with that size on all memory breakpoints so the breaks go through.
2017-03-18 22:48:57 -04:00
Lioncash
3404057732
ES: Remove unused string format argument in LaunchPPCTitle
...
Gets rid of a -Wformat-extra-args warning.
2017-03-18 22:44:46 -04:00
Lioncash
2b8abddadf
Memmap: Replace '0' constant with nullptr
2017-03-18 22:35:35 -04:00
Lioncash
44fb429e7e
EXI: Namespace device classes
2017-03-18 21:13:12 -04:00
Léo Lam
c987f58319
Check whether WAD is a channel before reading names
...
Dolphin assumes that content 0 is opening.bnr, without checking
whether content 0 exists or if it is even supposed to be there (it's
only there for channels). This results in sometimes reading garbage.
This adds a check to only try to read names from content 0's header
if the title is a channel (channel, system channel or game channel).
2017-03-18 19:07:11 +01:00
Matthew Parlane
ce034a8186
Merge pull request #5101 from JosJuice/es-launch-wii-menu
...
Display a different error message when failing to ES_Launch the Wii Menu
2017-03-19 01:00:59 +13:00
JosJuice
998a215a0d
Display a different error message when failing to ES_Launch the Wii Menu
...
Trying to return to the Wii Menu from a game is the easiest
way to trigger this error. Just saying 0000000100000002
when that happens doesn't mean much to most users.
2017-03-18 12:13:17 +01:00
JosJuice
9d54e4a9de
Return a more meaningful type from GetSysMenuRegion
2017-03-18 10:13:36 +01:00
JosJuice
04c49aa395
Fix GetSysMenuRegion's handling of Wii Menu 1.0
...
This was a regression in 58bd129
.
2017-03-18 10:13:31 +01:00
JosJuice
19d6092847
Display nicer version strings for the Wii Menu
...
The Tools > Load System Menu option displays the version of the
installed Wii Menu. This commit changes the way we display that
version, like so: "Load System Menu 514P" -> "Load System Menu 4.3E"
The numbers are from http://wiibrew.org/wiki/System_Menu
2017-03-18 10:08:13 +01:00
Markus Wick
08351aa334
Merge pull request #5005 from aldelaro5/remove-save-load-debug
...
Don't save watches and breakpoints on stop and load on boot
2017-03-18 08:45:01 +01:00
Markus Wick
609d195822
Merge pull request #5100 from VinDuv/fix-texture-type-checks
...
OGL: Fix texture_type checks in FrameBufferManager::CreateTexture
2017-03-18 08:35:44 +01:00
Matthew Parlane
8669426b0b
Merge pull request #5092 from lioncash/namespace
...
SI: Namespace device classes
2017-03-18 19:30:38 +13:00
Vincent Duvert
bbb5945375
OGL: Fix texture_type checks in CreateTexture
...
The FrameBufferManager::CreateTexture (from the OpenGL backend) method introduced by commit 69cedf41
incorrectly compares the texture variable (which contains a name provided by glGenTextures) against GL_TEXTURE_2D_MULTISAMPLE_ARRAY and GL_TEXTURE_2D_MULTISAMPLE.
It should instead use the texture_type variable for this (as done in the first branch of the if).
2017-03-17 23:53:56 +01:00
Markus Wick
b7f605e88e
Merge pull request #5097 from MerryMage/pic
...
PIE support for the DSP JIT
2017-03-17 22:24:03 +01:00
MerryMage
5e7d01dea4
DSPJitRegCache: Remove ebp_store
...
Restoring RBP before function calls is a no-op.
2017-03-17 17:10:25 +00:00
MerryMage
14739c55c3
DSP/Jit: PIE support
2017-03-17 17:10:24 +00:00
Markus Wick
b7ba391041
Merge pull request #5084 from MerryMage/Update_SR_Register
...
DSP/Jit: Explicitly specify scratch register for Update_SR_Register
2017-03-17 17:21:21 +01:00
Matthew Parlane
47fe78a76a
Merge pull request #5094 from lioncash/magic
...
SI: Convert SI buffer from a C array to std::array
2017-03-17 20:49:26 +13:00
Matthew Parlane
9b883d999e
Merge pull request #5095 from JosJuice/simplify-getsysmenuregion
...
Simplify GetSysMenuRegion
2017-03-17 20:47:36 +13:00
Markus Wick
a0acdfc070
Merge pull request #5029 from ligfx/bboximagemask
...
OGL: implement Bounding Box on systems w/o SSBO
2017-03-16 21:39:17 +01:00
aldelaro5
4738e3195c
Fix memory breakpoints not triggering on Windows
...
For some reasons, they worked on Linux even though it was incorrect, this commit does it correctly and so it fixes that on Windows.
2017-03-16 16:31:20 -04:00
BhaaL
1470c346b6
change parameter names to match our coding style while we're at it
2017-03-16 18:22:51 +01:00
BhaaL
d0d91f2530
add the hash for the PAL v1.1 BIOS
...
reported on the forums by user hackintoshftw1
2017-03-16 18:22:51 +01:00
BhaaL
70a25bef4c
put the source reference onto its own line to avoid the awkward formatting
...
also, make them constexpr, because i guess it makes sense...
2017-03-16 18:22:51 +01:00
Markus Wick
907e73a1fc
Merge pull request #5012 from degasus/BAT
...
MMU: Create constants for our BAT flags.
2017-03-16 16:02:16 +01:00
Jules Blok
cbfb07152f
VertexShaderGen: Correct for negative viewport dimensions.
2017-03-16 12:34:19 +01:00
JosJuice
ff7425214a
Use 6-char game IDs for NAND tiles (if they are printable)
...
5.0-2712 made ES's code for setting the game ID use the
title ID converted to hex (except for disc titles) instead
of using a 6-char game ID like before. Then, 5.0-2830 made
us use that code even when loading game INIs. This breaks the
expectations of both users and the game INIs we ship with.
This commit makes Dolphin use 6-char game IDs for all
titles (unless the 6-char ID would contain unprintable
characters, which is the case with e.g. the Wii Menu).
I'm also putting unprintability checks in VolumeWad
for consistency.
2017-03-16 11:21:31 +01:00
JosJuice
58bd129987
Simplify GetSysMenuRegion
2017-03-16 10:45:57 +01:00
Lioncash
6cf3c2262c
SI: Convert SI buffer from a C array to std::array
...
Stronger typing (no implicit pointer decay), nicer aggregate
initialization.
Also gets rid of magic constants where applicable.
2017-03-16 05:37:03 -04:00
Markus Wick
bb708397db
Merge pull request #5090 from lioncash/si
...
SI: Minor cleanup
2017-03-16 09:57:04 +01:00
Lioncash
f0eeb3c63a
SI: Namespace device classes
...
Places all of the SI code under the SerialInterface namespace instead of
only the main source file. This keeps all SI code under a common name,
as well as out of the global namespace
2017-03-16 04:41:39 -04:00
Lioncash
9c3b35fccb
EXI: Move enum constants into the ExpansionInterface namespace
...
Given these are related to EXI itself, these should be within the
namespace itself.
2017-03-16 02:06:29 -04:00
Lioncash
a728d858b3
SI: Move MAX_SI_CHANNELS into the SerialInterface namespace
...
Given this constant is related to the serial interface, it shouldn't be
outside of the namespace.
2017-03-16 01:57:57 -04:00
Lioncash
46991e2bdd
SI: Amend variable naming
2017-03-16 01:37:50 -04:00
Michael Maltese
134317e07f
videoconfig: add BBoxPreferStencilImplementation
...
@JMC47 requested this to be able to do performance comparisons.
2017-03-15 17:41:33 -07:00
Michael Maltese
53224d41d0
OGL: only create stencil buffer when needed
2017-03-15 17:41:33 -07:00
Michael Maltese
ba6e917b49
OGL: implement Bounding Box on systems w/o SSBO
...
This commit should have zero performance effect if SSBOs are supported.
If they aren't (e.g. on all Macs), this commit alters FramebufferManager
to attach a new stencil buffer and VertexManager to draw to it when
bounding box is active. `BBoxRead` gets the pixel data from the buffer
and dumbly loops through it to find the bounding box.
This patch can run Paper Mario: The Thousand-Year Door at almost full
speed (50–60 FPS) without Dual-Core enabled for all common bounding
box-using actions I tested (going through pipes, Plane Mode, Paper
Mode, Prof. Frankly's gate, combat, walking around the overworld, etc.)
on my computer (macOS 10.12.3, 2.8 GHz Intel Core i7, 16 GB 1600 MHz
DDR3, and Intel Iris 1536 MB).
A few more demanding scenes (e.g. the self-building bridge on the way
to Petalburg) slow to ~15% of their speed without this patch (though
they don't run quite at full speed even on master). The slowdown is
caused almost solely by `glReadPixels` in `OGL::BoundingBox::Get`.
Other implementation ideas:
- Use a stencil buffer that's separate from the depth buffer. This would
require ARB_texture_stencil8 / OpenGL 4.4, which isn't available on
macOS.
- Use `glGetTexImage` instead of `glReadPixels`. This is ~5 FPS slower
on my computer, presumably because it has to transfer the entire
combined depth-stencil buffer instead of only the stencil data.
Getting only stencil data from `glGetTexImage` requires
ARB_texture_stencil8 / OpenGL 4.4, which (again) is not available on
macOS.
- Don't use a PBO, and use `glReadPixels` synchronously. This has no
visible performance effect on my computer, and is theoretically
slower.
2017-03-15 17:41:32 -07:00
Michael Maltese
56fe938366
extract OGL::FramebufferManager::BindLayeredTexture
2017-03-15 17:20:47 -07:00
Michael Maltese
69cedf4144
extract OGL::FramebufferManager::CreateTexture
2017-03-15 17:20:47 -07:00
Michael Maltese
de940a5fd6
VideoConfig: add bSupportsFragmentStoresAndAtomics
2017-03-15 17:20:47 -07:00
Anthony
8e6d256722
Merge pull request #5080 from leoetlino/ssl-verify
...
Default to SSL verify on
2017-03-15 13:56:56 -07:00
Markus Wick
1e7dd1ed2d
Merge pull request #5086 from lioncash/si
...
SI_Devices: Minor cleanup
2017-03-15 10:07:27 +01:00
degasus
5152c997a4
MMU: Create constants for our BAT flags.
...
This avoids a few hard-coded constants in several files.
2017-03-15 09:20:40 +01:00