Mat M
255fd14db6
Merge pull request #5316 from ligfx/cmakewxwidgets
...
Various CMake cleanups for DolphinWX
2017-04-25 21:21:54 -04:00
Michael Maltese
82d0f6edb2
FifoDataFile: static_assert that structs are right size
2017-04-25 17:43:37 -07:00
Michael Maltese
6a6bfa0dbb
FifoPlayer: subsume FifoFileStruct.h into FifoDataFile.cpp
...
There's no reason for it to be in its own file, and it's confusing.
2017-04-25 17:36:36 -07:00
Michael Maltese
f9a67fbf6f
FifoFileStruct: replace unions with explicit padding
2017-04-25 17:36:30 -07:00
Michael Maltese
b955805b2b
CMake: remove DolphinWX $DOLPHIN_EXE abstraction
2017-04-25 17:18:21 -07:00
Michael Maltese
bd4ffb680c
CMake: don't make DolphinWX link to dl
2017-04-25 17:18:21 -07:00
Michael Maltese
c214c29b01
CMake: DolphinWX cleanup
2017-04-25 17:18:20 -07:00
Michael Maltese
6e1940c404
CMake: don't globally include wxWidgets headers
2017-04-25 17:18:20 -07:00
Léo Lam
3124f3c4d8
WX: Add the ability to uninstall WADs from the game list
...
Simple quality-of-life addition that allows "uninstalling" WADs
(removing the corresponding installed title) from the NAND.
The option is only enabled when the WAD can be uninstalled
The motivation for this is actually to encourage proper usage of the
WAD launch feature (installing it to the NAND first), so we can
drop the "direct WAD title launch" hack.
2017-04-25 23:34:32 +02:00
Léo Lam
1b3b7518e6
ESFormats: Fix the first field of ticket views
...
Looking more carefully at the IOS ticket view generation code reveals
that the first field in the TicketView struct is copied over from
the ticket version, extended to 4 bytes.
2017-04-25 20:59:40 +02:00
Léo Lam
4d52df150b
Merge pull request #5317 from leoetlino/es-setuid
...
IOS/ES: Implement ES_SetUid
2017-04-25 20:00:28 +02:00
Léo Lam
7a615afe17
Merge pull request #5315 from sepalani/debug-pause
...
DoStop() shouldn't unpause in debug mode
2017-04-25 16:48:31 +02:00
Markus Wick
262adbe2bc
Merge pull request #5262 from MerryMage/mfspr-arm64
...
JitArm64: Implement timer SPRs
2017-04-25 13:31:28 +02:00
MerryMage
e3d0de7442
JitArm64: Implement timer SPRs
2017-04-25 09:20:09 +01:00
Stenzek
27ae5b8d34
VideoConfigDiag: Move post-processing shader list to post processor
...
The backends don't use this list at all, and since more than one
backend supports post-processing now, it's duplicate code.
2017-04-25 14:27:05 +10:00
Stenzek
417a4ca206
Vulkan: Implement post-processing backend
...
No new features, just parity with OpenGL.
2017-04-25 14:27:02 +10:00
Stenzek
a10e8b1ef5
VideoCommon: Move the blit methods to the backend class
...
The parameter types will be different for each backend currently,
anyway (e.g. textures/render passes/etc).
2017-04-25 14:25:41 +10:00
Léo Lam
cc40389f88
IOS/ES: Implement ES_SetUid
...
This implements ES_SetUid, which is used by the system menu to change
its own permissions. This is required for implementing permission
checks and proper NAND metadata support in the future.
2017-04-25 00:15:51 +02:00
Léo Lam
c01fda6255
IOS: Include the UID and GID in open requests
...
Accuracy change. Required to implement ES contexts properly.
2017-04-25 00:11:19 +02:00
Léo Lam
dd31a403db
Merge pull request #5285 from spycrab/fr_9952
...
Make title column toggleable (Issue #9952 )
2017-04-24 23:12:39 +02:00
Léo Lam
286e9b74ee
Merge pull request #5309 from leoetlino/ios-uid-gid
...
IOS: Implement UID/GID changes for the PPC
2017-04-24 22:50:03 +02:00
Sepalani
4a55398069
DoStop() shouldn't unpause in debug mode
2017-04-24 17:32:15 +01:00
Michael Maltese
3158a5bc35
RenderBase: clean up UpdateDrawRectangle
2017-04-24 00:39:25 -07:00
Léo Lam
24d5d89056
Merge pull request #5275 from ligfx/fixhidapithread
...
WiimoteReal: init and destroy ScannerBackends in same thread
2017-04-24 02:31:16 +02:00
Michael Maltese
4c5e283e75
WiimoteReal: init and destroy ScannerBackends in same thread
...
This fixes an error condition on macOS when HIDAPI calls
IOHIDManagerCreate and IOHIDManagerClose on different threads. The
error behavior is non-deterministic, but can cause EXC_BAD_ACCES and
kill the program.
2017-04-23 17:11:27 -07:00
Tilka
c6bc474c29
Merge pull request #5291 from Starsam80/fix-10221
...
WX: Don't specify a parent frame for the render frame
2017-04-23 23:40:32 +01:00
Tilka
a8dfb32576
Merge pull request #5304 from FRtranslator/Small_rework_Audio_cfg
...
DolphinWX: Small rework of the Audio config dialog
2017-04-23 23:37:41 +01:00
Léo Lam
dae950ff90
IOS: Implement UID/GID changes for the PPC
...
This will be required for permission checks in the future.
Note that this is only for the PPC as we do not have actual processes.
Keeping track of other modules' UIDs/GIDs is virtually useless anyway.
UID/GID changes are implemented in the following functions:
* ES_Launch
* ES_DIVerify
ES_SetUid is not implemented yet because it'd need further changes.
2017-04-23 23:09:44 +02:00
Tilka
8a559f2e58
Merge pull request #5307 from JosJuice/more-gfx-debug-strings
...
Remove more seemingly unused debug UI strings
2017-04-23 17:25:58 +01:00
Tilka
111d92c03d
Merge pull request #5303 from MerryMage/DPL2Decoder
...
DPL2Decoder cleanup
2017-04-23 17:07:14 +01:00
JosJuice
8c2e5689ad
Remove more seemingly unused debug UI strings
...
Same as 2052bb8
but for buttons.
2017-04-23 12:39:00 +02:00
MerryMage
c9f50fd4ed
DPL2Decoder: Prefer static_cast to C-style casts
2017-04-23 09:21:30 +01:00
MerryMage
4f884d0b2f
DPL2Decoder: Simplify DotProduct
2017-04-23 09:21:30 +01:00
MerryMage
42a1f7939d
DPL2Decoder: Prefer std::vector to calloc-ed array
2017-04-23 09:21:29 +01:00
MerryMage
71dc810418
DPL2Decoder: Make constant variables const in DesignFIR
2017-04-23 09:18:29 +01:00
MerryMage
751351fd20
DPL2Decoder: Simplify cut-off frequency logic in DesignFIR
2017-04-23 09:18:29 +01:00
MerryMage
24027c1d4a
DPL2Decoder: Reduce scope of variable in DesignFIR
2017-04-23 09:18:29 +01:00
MerryMage
d0e75bb438
DPL2Decoder: Remove unnecessary pointer arguments of DesignFIR
2017-04-23 09:18:28 +01:00
FRtranslator
c9c68a8fd4
DolphinWX: Small rework of the Audio config dialog
2017-04-23 02:32:04 +02:00
Mat M
9090f37347
Merge pull request #5299 from FRtranslator/Tools_menu_reorder
...
Reorder the Tools menu, with more separators
2017-04-22 17:41:01 -04:00
Mat M
4c711de309
Merge pull request #5301 from JosJuice/delete-wxinputbase
...
Delete WXInputBase
2017-04-22 17:37:38 -04:00
FRtranslator
a27b653d61
Reorder the Tools menu, with more separators
2017-04-22 20:59:42 +02:00
Léo Lam
8fe0befbc3
Merge pull request #5245 from JosJuice/top-on-top
...
Put "Top" on top of "Bottom" in the sensor bar position dropdown
2017-04-22 20:11:28 +02:00
JosJuice
26b6b78f3a
Delete WXInputBase
...
It's unused (apparently since cf8f049
). Deleting it will
lighten the load for translators.
2017-04-22 19:39:17 +02:00
MerryMage
bd4cfaaed7
Jit_Integer: Use constant pool in GenerateOverflow
2017-04-22 10:15:04 +01:00
Markus Wick
b5c857d14b
Merge pull request #5210 from leoetlino/es-shared-contents
...
IOS/ES: Implement GetSharedContents (+ count)
2017-04-22 01:55:22 +02:00
Léo Lam
bca9a9d4d9
Merge pull request #5113 from Starsam80/nand-import
...
Add BootMii NAND import functionality
2017-04-21 22:02:15 +02:00
Léo Lam
b09561ece2
IOS/ES: Implement GetSharedContents (+ count)
...
Used by the system menu when importing a title from SD.
These are probably the last two ioctlvs used by a major title.
2017-04-21 19:30:20 +02:00
Markus Wick
1035a8b697
Merge pull request #5295 from MerryMage/ACD
...
ArmCPUDetect: Add missing include
2017-04-21 12:24:41 +02:00
MerryMage
73cdf9ecb5
ArmCPUDetect: Add missing include
...
<cstring> is required for strncpy
2017-04-21 11:03:40 +01:00
Markus Wick
207a95f4dc
Merge pull request #5267 from leoetlino/more-es-ioctlvs
...
IOS/ES: Implement ES_DIGetTMD and ES_DIGetTMDSize
2017-04-21 11:08:05 +02:00
Markus Wick
50349098c1
Merge pull request #5292 from ligfx/setvolumeafterstart
...
AudioCommon: set volume _after_ starting stream
2017-04-21 10:29:21 +02:00
Mat M
4517231a1a
Merge pull request #5287 from sepalani/rso
...
Generate Symbols From RSO Modules added
2017-04-20 20:06:03 -04:00
Sepalani
694b10da11
Generate Symbols From RSO Modules added
2017-04-21 00:32:06 +01:00
Michael Maltese
c538cdcd47
AudioCommon: set volume _after_ starting stream
...
Fixes an error with the CoreAudio backend, which apparently doesn't
allow you to set the volume before starting the stream:
```
59:31:087 AudioCommon/CoreAudioSoundStream.cpp:97 E[Audio]: error setting volume
```
This shouldn't cause any problems with other backends, since the mixer
starts with silence anyways.
2017-04-20 02:06:42 -07:00
Michael Maltese
c6a90c95be
Make EXIDEVICE_MEMORYCARDFOLDER the default for slot A
...
The average user doesn't care, and for users who mix NTSC and PAL games
it avoids the "Memory Card is formatted for another market" message. For
non-average users, it's probably fine to have save data as separate
files anyways.
Might need some interface/string changes to explain what GCI Folder is
and why it's the default?
2017-04-19 19:18:53 -07:00
Starsam80
a41c0d3caa
WX: Don't specify a parent frame for the render frame
2017-04-19 20:06:33 -06:00
Sepalani
58e7415fe5
MemoryWindow: FindPrevious button added
2017-04-18 23:47:52 +01:00
Sepalani
5123dc2651
MemoryWindow: Replace Search with FindNext
2017-04-18 19:08:44 +01:00
Stenzek
d1dc9d5a0c
Merge pull request #5284 from stenzek/vulkan-videocommon-blending-state
...
Vulkan: Use BlendingState from VideoCommon
2017-04-18 22:16:32 +10:00
Stenzek
16a947a88b
Merge pull request #5270 from stenzek/vulkan-aa
...
Vulkan: MSAA and frame dumping fixes
2017-04-18 21:58:14 +10:00
Stenzek
fd896bd9e0
OGL: Drop BlendingState.dither
...
How GL_DITHER works is implementation-defined, and we handle the
non-blended case in the pixel shader.
2017-04-18 21:55:23 +10:00
Stenzek
ddc5275071
VideoCommon: Drop SetDitherMode()
...
It was a no-op on all backends apart from GL anyhow.
2017-04-18 21:55:22 +10:00
Stenzek
9dc7358395
Vulkan: Use BlendingState from VideoCommon
...
Remove the internal BlendState union. Also fixes Kirby's Return to
Dreamland shadows.
2017-04-18 21:55:22 +10:00
Stenzek
34ad5b457d
VideoCommon: Add usedualsrc field to BlendingState
...
This is because we re-use BlendingState for our internal drawing (e.g.
RasterFont) and for these shaders, we can't assume the presence of a
second color output.
2017-04-18 21:33:40 +10:00
Markus Wick
936910163a
Merge pull request #5286 from lioncash/mmu
...
MMU: Get rid of pointer casts
2017-04-18 12:35:42 +02:00
JosJuice
fd0b99be2e
Merge pull request #5273 from JosJuice/android-x86-64
...
x86-64 support on Android
2017-04-18 09:54:04 +02:00
Markus Wick
f3f9489852
Merge pull request #5277 from stenzek/glsl-token-pasting
...
OGL: Use struct for post-processing shader options
2017-04-18 09:37:34 +02:00
Lioncash
a58d5fa8ee
MMU: Get rid of pointer casts
...
These sort of casts invoke undefined behavior (u8, u16, u32, and u64 all have
completely different alignment requirements).
2017-04-17 20:52:57 -04:00
Lioncash
9cfc671c69
MMU: Get rid of unnecessary temporaries in HostRead_[8|16|32] functions
2017-04-17 19:13:47 -04:00
spycrab
72e92add8a
Make title column toggleable (Issue #9952 )
2017-04-17 19:34:14 +02:00
spycrab
01e07d7853
Lazily initialize m_main_config_dialog (Issue #10213 )
2017-04-16 13:00:11 +02:00
JosJuice
9cd9ae902a
x86-64 support on Android
...
We can do this now that the x86-64 JIT supports PIE.
JITIL is deliberately excluded from the GUI because it
doesn't support PIE yet. (JITIL will be used if it's
set in the INI, though.)
2017-04-16 11:53:33 +02:00
Mat M
d22509984c
Merge pull request #5252 from JosJuice/pitch-text
...
Update text about pitch depending on emulation speed
2017-04-16 05:48:57 -04:00
Markus Wick
b6433b2ae8
Merge pull request #5266 from JosJuice/misc
...
Rename Misc.cpp to CommonFuncs.cpp
2017-04-16 11:44:08 +02:00
Stenzek
e370f6a82a
OGL: Use struct for post-processing shader options
...
This removes the need for token pasting, which isn't supported in GLSL
ES. Shouldn't cause any issues unless people are using reserved keywords
as option names.
2017-04-16 14:00:02 +10:00
Michael Maltese
c63925dc21
AGL: small style fixes
2017-04-15 20:54:19 -07:00
Michael Maltese
4770e66811
AGL: refactor some functions
2017-04-15 20:53:47 -07:00
Michael Maltese
5298328cb1
Add headless support on macOS
2017-04-15 19:34:42 -07:00
Dwayne Slater
1b9268485c
VolumeDirectory: Pass address shift to WriteEntryData as argument
2017-04-15 14:04:17 -04:00
Dwayne Slater
108d59b131
VolumeDirectory: Correctly check name_offset alignment in assert
2017-04-15 14:04:10 -04:00
Dwayne Slater
ec9579ebcd
Boot: When loading an FST for a Wii game, update IOS_MEM1_ARENA_END
...
Without doing this, Wii games loaded as an ELF will zero out the FST.
This mirrors the behavior of the actual apploader.
2017-04-15 14:03:38 -04:00
Dwayne Slater
138b0cb14e
VolumeDirectory: Align the name table size up properly
...
If the name table isn't rounded up, a Wii game can read an incorrect
number of bytes when fetching the FST.
2017-04-15 14:03:31 -04:00
Dwayne Slater
9d633307e3
VolumeDirectory: Shift parent_entry_index by m_address_shift
...
Parent entrys were written correctly for GameCube (since the address
shift is 0), but not for Wii (since the address shift is 2).
2017-04-15 13:53:59 -04:00
Dwayne Slater
d3e9569cf0
VolumeDirectory: Compare case-insensitive file names as uppercase, not lowercase
...
Fixes file ordering in games that use ASCII characters between lowercase
'z' and uppercase 'A' (underscores).
MySims Kingdom has the files "terrainLightMapTinted.shader",
"terrainLightMapTintedGrid.shader", and
"terrainLightMapTinted_no_shadow.shader". In lowercase,
"terrainLightMapTinted_no_shadow.shader" comes before
"terrainLightMapTinted.shader" and "terrainLightMapTintedGrid.shader",
which is invalid.
2017-04-15 13:53:53 -04:00
Dwayne Slater
7908302782
VolumeDirectory: Fix off-by-one in entry count calculation
...
The size field in FSTEntry contains the total amount of children, not
including the parent, but the parent needs to be included.
VolumeDirectory: Fix off-by-one in entry count calculation
The size field in FSTEntry contains the total amount of children, not
including the parent, but the parent needs to be included.
2017-04-15 13:52:46 -04:00
Markus Wick
a389ae0711
Merge pull request #5260 from MerryMage/CheckIfSafeAddress
...
EmuCodeBlock: Make CheckIfSafeAddress PIE-compliant
2017-04-15 13:26:05 +02:00
Stenzek
3fd1e6c2f6
Vulkan: Ensure all frames are written before resizing framedump buffer
...
Prevents destroying a framebuffer that may still be in use by a previous
frame dump.
2017-04-15 20:00:40 +10:00
Stenzek
48da42b49f
Vulkan: Ensure framedump texture is incorrect layout for render/readback
2017-04-15 19:57:25 +10:00
Stenzek
69b0a31938
Vulkan: Clamp framebuffer resolve rectangle to texture size
...
This is invalid and was causing the NVIDIA driver to throw an error.
2017-04-15 19:55:32 +10:00
MerryMage
cb900106c6
IR_X86: Prefer static_cast to C-style casts
2017-04-15 10:35:40 +01:00
MerryMage
860ac52a79
IR_X86: Use PtrOffset instead of casting pointers
2017-04-15 10:35:24 +01:00
MerryMage
6d8738e6e4
IR_X86: Simplify trinary expressions
2017-04-15 10:35:01 +01:00
Markus Wick
8d4be36963
Merge pull request #5259 from MerryMage/quantload
...
Jit64: Make psq_lXX PIE-compliant
2017-04-15 11:20:09 +02:00
Markus Wick
fb805e3acb
Merge pull request #5263 from MerryMage/dcbz
...
Jit_LoadStore: Fix dbat memory access
2017-04-15 11:19:24 +02:00
Markus Wick
6b32c17d1b
Merge pull request #5268 from MerryMage/gpfifo3
...
JitArm64: Fix bugs introduced by #5257
2017-04-15 11:00:04 +02:00
Stenzek
eef7b6cf7a
Vulkan: Fix invalid resolve at swap time when MSAA is enabled
2017-04-15 18:35:58 +10:00
Stenzek
2a91b2a4dd
Merge pull request #5258 from stenzek/vulkan-out-of-range-clear
...
Vulkan: Fix incorrect render pass for out-of-range clears
2017-04-15 18:13:45 +10:00
MerryMage
03d07c36ae
JitArm64: Reserve W30 in SafeStoreFromReg and stfXX
...
Bug introduced in c45028a708
.
EmitBackpatchRoutine assumes that X30 is available as a temporary.
2017-04-15 08:23:14 +01:00
MerryMage
3fb886141d
JitArm64_LoadStore: Fix bug in writing byte to gather pipe
...
Introduced by c45028a708
.
2017-04-15 07:26:27 +01:00
JosJuice
2f9df072d6
Rename Misc.cpp to CommonFuncs.cpp
...
Because its only function is declared in CommonFuncs.h.
2017-04-15 00:41:09 +02:00
Léo Lam
183193e6ed
IOS/ES: Implement ES_DIGetTMD and ES_DIGetTMDSize
...
Used by Metroid Prime.
2017-04-15 00:39:34 +02:00
MerryMage
b792299ef1
Jit_LoadStore: Fix dbat memory access
...
Was broken by e10b715666
2017-04-14 14:06:13 +01:00
MerryMage
daa03cd106
EmuCodeBlock: Make CheckIfSafeAddress PIE-compliant
2017-04-14 12:39:12 +01:00
MerryMage
e10b715666
Jit_LoadStore: Make dcbz PIE-compliant
2017-04-14 12:33:25 +01:00
MerryMage
cac77527e9
Jit64: Make psq_lXX PIE-compliant
2017-04-14 11:52:33 +01:00
Markus Wick
05fec44ff5
Merge pull request #5257 from MerryMage/gpfifo2
...
GPFifo: Use a pointer instead of an index
2017-04-14 12:27:51 +02:00
MerryMage
c45028a708
GPFifo: Use a pointer instead of an index
...
This simplifies code generated by the jits.
x86_64 jit now emits PIC.
2017-04-14 10:37:47 +01:00
Stenzek
c8b98dca1a
Vulkan: Raise the number of texel buffer/storage image descriptors
...
Running with GPU texture decoding enabled could cause us to run out of
descriptors within a single frame.
2017-04-14 18:29:53 +10:00
Stenzek
f4bdfe3e0c
Vulkan: Fix incorrect render pass area for out-of-range clears
...
This occured when a game set an out-of-range EFB clear region.
2017-04-14 18:29:48 +10:00
Markus Wick
45e4a048ea
Merge pull request #4708 from degasus/PIE
...
Jit64: Use a temporary register for memory references.
2017-04-14 09:42:45 +02:00
MerryMage
f2e323de9c
ConfigManager: Increase default latency for OpenAL backend to 5
2017-04-13 10:41:18 +01:00
Lioncash
8811937756
JitArm64_RegCache: Use std::array where applicable
...
There's no need to use std::vector for fixed enum values.
2017-04-12 22:34:34 -04:00
Markus Wick
7e40f1757e
Merge pull request #5253 from ligfx/fixtextureconversionshader
...
TextureConversionShader: fix syntax error
2017-04-12 23:38:49 +02:00
Michael Maltese
05b4d14bf0
TextureConversionShader: fix syntax error
...
Fixes a situation where the following invalid GLSL code is generated:
```glsl
float3 texSample0 = texture(samp0, float3(uv0 + float2(0, 0) * sample_offset, 0.0)).rgb;
float3 texSample0 = floor(float3 texSample0 * 63.0) / 63.0;
float3 texSample1 = texture(samp0, float3(uv0 + float2(1, 0) * sample_offset, 0.0)).rgb;
float3 texSample1 = floor(float3 texSample1 * 63.0) / 63.0;
```
2017-04-12 14:23:25 -07:00
Mat M
733df23e98
Merge pull request #5251 from JosJuice/audio-backend-tooltip
...
Remove audio backend tooltip
2017-04-12 17:10:13 -04:00
JosJuice
741aa9d983
Update text about pitch depending on emulation speed
...
Now that we have an audio stretching option, it's possible to
change the emulation speed while still having the right pitch.
2017-04-12 21:03:53 +02:00
JosJuice
7d41b5874c
Remove audio backend tooltip
...
The audio backend option automatically gets disabled when
emulation is running, so it's pointless to tell people what
would (not) happen if they changed the audio backend while
emulation is running.
2017-04-12 21:03:36 +02:00
degasus
64ccf803bd
Jit64: Use a temporary register for memory references. Part 4.
2017-04-12 20:53:17 +02:00
degasus
0ddd90b539
Jit64: Use a temporary register for memory references. Part 3.
2017-04-12 20:53:17 +02:00
degasus
78b36921d2
Jit64: Use a temporary register for memory references. Part 1.
2017-04-12 20:53:17 +02:00
Markus Wick
60d8ee4916
Merge pull request #5250 from MerryMage/psq_st
...
Jit_LoadStorePaired: Make psq_st PIE-compliant
2017-04-12 20:52:59 +02:00
MerryMage
265f0da256
Jit_LoadStorePaired: Make psq_st PIE-compliant
2017-04-12 19:30:42 +01:00
Markus Wick
2151858fb1
Merge pull request #5241 from MerryMage/stretch
...
Pitch-Preserving Audio Stretching
2017-04-12 20:27:26 +02:00
MerryMage
cbaa00457a
Mixer: Tweak audio stretch parameters
2017-04-12 17:56:58 +01:00
MerryMage
9397fdfe95
Mixer: Use a temporary buffer when stretching audio
2017-04-12 14:58:20 +01:00
MerryMage
f5018010d3
Mixer: Calculate actual_samples based on availability in all FIFOs
2017-04-12 14:58:19 +01:00
MerryMage
ac0df5b2db
Mixer: Disable frequency shifting when stretching is enabled
2017-04-12 13:56:29 +01:00
MerryMage
71e748b68f
AudioConfigPane: Allow user-configuration of audio stretching
2017-04-12 13:56:29 +01:00
MerryMage
26514358f4
Add audio stretching as a configuration option
2017-04-12 13:56:29 +01:00
MerryMage
b8c867dd7a
Mixer: Implement audio stretching
2017-04-12 13:56:28 +01:00
MerryMage
5b81f2a31d
Mixer: Return actual number of samples mixed into buffer from MixerFifo::Mix
...
No code in the codebase currently depends on the return value of this function.
2017-04-12 13:15:00 +01:00
MerryMage
6a4945090c
OpenALStream: Remove audio stretching
2017-04-12 13:15:00 +01:00
Mat M
21544f8661
Merge pull request #5228 from JosJuice/why-did-this-exist
...
Get rid of some nonsense related to booting DOL/ELF files
2017-04-12 08:07:54 -04:00
Markus Wick
dd189f311f
Merge pull request #5244 from JosJuice/shorter-wii-pane
...
Make the Wii config pane shorter
2017-04-12 12:37:07 +02:00
MerryMage
a95010bc72
x64Emitter: Allow code alignment to arbitrary power of 2
2017-04-12 08:41:51 +01:00
MerryMage
6df8343e72
MathUtil: References can be const
2017-04-12 06:15:18 +01:00
Markus Wick
29344cb5ff
Merge pull request #5202 from stenzek/efb-copy-source-format
...
TextureConversionShader: Consider source format of EFB for EFB2RAM
2017-04-12 01:09:30 +02:00
Mat M
8ecc5e9b7a
Merge pull request #5246 from MerryMage/math-util
...
Jit64AsmCommon: Make frsqrte and fres PIE-compliant
2017-04-11 16:11:19 -04:00
MerryMage
f7ed979e30
Jit64AsmCommon: Make frsqrte and fres PIE-compliant
2017-04-11 20:25:18 +01:00
MerryMage
433999d60f
ConstantPool: Return a pointer instead of an OpArg
...
This allows for greater flexibility.
2017-04-11 20:25:18 +01:00
Anthony
464df471ff
Merge pull request #5081 from lioncash/sd
...
IOS/SDIOSlot0: Separate IOCtl/IOCtlV behavior into individual functions
2017-04-11 10:38:49 -07:00
Stenzek
5e7bd03d0b
Vulkan: Linear filter >1xIR EFB copies, matching the other backends
2017-04-12 00:11:22 +10:00
Stenzek
e9850aa0f2
VideoBackends: Support updated texture encoding shader generators
2017-04-12 00:11:22 +10:00
Stenzek
3847e226ab
TextureConversionShader: Consider source format of EFB for EFB2RAM
...
Currently, we use the alpha channel from the EFB even if the current
format does not include an alpha channel. Now, the alpha channel is set
to 1 if the format does not have an alpha channel, as well as truncating
to 5/6 bits per channel. This matches the EFB-to-texture behavior.
2017-04-12 00:11:22 +10:00
JosJuice
e6317eaa36
Put "Top" on top of "Bottom" in the sensor bar position dropdown
2017-04-11 11:43:06 +02:00
Markus Wick
4e90c5da8b
Merge pull request #5234 from lioncash/tuple
...
RenderBase: Return tuples from CalculateTargetScale and ConvertStereoRectangle instead of using out parameters
2017-04-11 10:27:16 +02:00
JosJuice
cc8976f71e
Make the Wii config pane shorter
...
This commit merges the Wii pane's Device Settings with Misc Settings
so that the whole general config window won't be so tall.
2017-04-11 10:19:19 +02:00
Mat M
ae80a7541d
Merge pull request #5239 from sepalani/is-valid-instruction
...
PPCTables: Do not consider OPTYPE_UNKNOWN as valid instruction
2017-04-10 16:50:22 -04:00
Markus Wick
34ac749b8b
Merge pull request #5144 from MerryMage/mfspr
...
Jit_SystemRegisters: Make mfspr PIE-compliant
2017-04-10 22:30:56 +02:00
Sepalani
27dcf92faa
PPCTables: Do not consider OPTYPE_UNKNOWN as valid instruction
2017-04-10 18:31:24 +01:00
Scott Mansell
e6476b805e
Merge pull request #5008 from ligfx/aspectheuristic
...
VideoCommon: rework anamorphic widescreen heuristic
2017-04-10 11:30:34 +12:00
MerryMage
4537969822
Frame: Use kIOPMAssertionTypePreventUserIdleDisplaySleep to inhibit screensaver on macOS
2017-04-09 22:14:35 +01:00
MerryMage
c9b2c29ead
Frame: Extract screensaver-related code into InhibitScreensaver/UninhibitScreensaver
2017-04-09 22:14:35 +01:00
Anthony
c6b553b6d2
Merge pull request #5220 from stenzek/small-nonsquare-mips
...
TextureCache: Fix incomplete GPU texture decoding of non-square mips
2017-04-09 13:45:38 -07:00
Starsam80
6bccc13f3b
Add BootMii NAND import functionality
2017-04-09 13:14:05 -06:00
Lioncash
c7ab6861c2
RenderBase: Return a tuple from ConvertStereoRectangle instead of using out parameters
2017-04-09 15:11:59 -04:00
Lioncash
671b5f9747
RenderBase: Return a tuple from CalculateTargetScale instead of using out parameters
2017-04-09 14:41:51 -04:00
Salehen Shovon Rahman
65250c0452
Disable screensaver on OS X
...
When playing a game on OS X, although the screen does not go to
sleep, the screensaver is still enabled, and therefore, during
gameplay, the screensaver may start running, which is not in
accordance to the behaviour on other other environments (Windows
and X11). It can be argued that the screensaver interrupting
gameplay is a nuissance to many players.
The changes in this commit are intended to allow Dolphin to disable
the screensaver during gameplay, just as intended on other platforms.
The changes have been tested on OS X 10.11 (El Capitan).
2017-04-09 15:16:52 +01:00
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
Michael Maltese
2fd63ffa9f
GeckoCodeConfig: Use Curl instead of SFML::Http
2017-04-05 12:58:42 -07:00
Michael Maltese
6a066bb2ed
Move GeckoCodeDiag download logic to GeckoCodeConfig
2017-04-05 12:48:35 -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
Lioncash
4df8ac7820
GCMemcardRaw: Amend variable naming
2017-03-15 00:16:45 -04:00
Lioncash
79246d9642
GCMemcardDirectory: Amend variable naming
2017-03-14 23:58:31 -04:00
Lioncash
647bec4c17
GCMemcard: Amend variable naming for MemoryCardBase
2017-03-14 23:58:27 -04:00
Lioncash
09d4871067
GCMemcard: Move memcard source files to their own directory
...
GCMemcard.h has quite a bit of different classes implemented within it
that could likely be split up into other files to make it a little
easier to read. However, they should be moved into their own folder
first so that they don't clutter up the base HW directory.
2017-03-14 21:55:25 -04:00
Lioncash
8b8a1f3b35
SI_DeviceKeyboard: Amend variable naming
2017-03-14 18:15:25 -04:00
Lioncash
4478b9bc9a
SI_DeviceKeyboard: In-class initialize variables
2017-03-14 18:03:36 -04:00
Lioncash
c45f8e2e3c
SI_DeviceGCSteeringWheel: Amend variable naming
2017-03-14 17:54:18 -04:00
Lioncash
89f5b3b5d9
SI_DeviceGCAdapter: Amend variable naming
2017-03-14 17:47:56 -04:00
Lioncash
e68e99ef71
SI_DeviceDanceMat: Amend variable naming
2017-03-14 17:46:09 -04:00
Léo Lam
834a3bf857
Default to SSL verify on
...
Defaulting to SSL verification off, *and* forcing it to be off even
when the emulated software asks us to enable it is very bad behaviour,
inaccurate and insecure.
Because the old option defaulted to off, we have to change the INI
option name to force the new default to be used. Unfortunate,
but without this we cannot ensure our users' security.
2017-03-14 20:57:49 +01:00
MerryMage
1020a3cb8e
DSP/Jit: Explicitly specify scratch register for Update_SR_Register
...
There were cases when the value register was RDX and thus was being
clobbered as RDX was implictly used as a scratch register.
2017-03-14 19:18:56 +00:00
Anthony
a3557ed199
Merge pull request #4964 from DisorderIy/arcode-removal-fix
...
Fix remove and add buttons not disabling after removing Action Replay code
2017-03-14 11:21:39 -07:00
Markus Wick
3aa5b8fbf6
Merge pull request #5079 from JosJuice/move-loadpatches
...
Move LoadPatches calls
2017-03-14 10:44:38 +01:00
Markus Wick
884d3973e4
Merge pull request #5083 from lioncash/si
...
SI_DeviceGCController: Minor cleanup
2017-03-14 10:37:28 +01:00
Markus Wick
c30db8eddc
Merge pull request #4932 from PEmu1/toggle-fullscreen
...
Change "Fullscreen" Menu Option to "Toggle Fullscreen"
2017-03-14 10:30:34 +01:00
Markus Wick
d05f59e31d
Merge pull request #4876 from ligfx/netplay_move_semantics
...
NetPlay: use move semantics instead of unique_ptrs
2017-03-14 10:20:47 +01:00
Lioncash
46fd06b956
SI_DeviceGCController: Amend variable names
2017-03-14 05:15:48 -04:00
Markus Wick
31bb41c532
Merge pull request #4973 from z0z0z/master
...
Disable pinned memory for AMD mesa drivers
2017-03-14 10:02:05 +01:00
Lioncash
890f799fdd
SI_DeviceGCController: In-class initialize variables
2017-03-14 03:34:52 -04:00
Jules Blok
0a2b58c896
OGL: Remove support for NV_depth_buffer_float.
...
We can't clamp the depth values to the 24-bit range while this extension is active.
2017-03-14 01:02:13 +01:00
Lioncash
225ac37f21
SDIOSlot0: Separate IOCtl/IOCtlV behavior into individual functions
...
Keeps the individual behaviors separate from one another.
2017-03-13 18:43:04 -04:00
JosJuice
09682cfaa4
Move LoadPatches calls
...
LoadPatches was apparently never being called when booting
Wii discs. Maybe this will fix the recent regression with
cheat codes not getting loaded? I don't know how this
managed to work to begin with, though...
(The call was also moved for WADs, just for consistency.)
2017-03-13 22:29:55 +01:00
Michael Maltese
1b0701e988
Make ControllerEmu::BooleanSetting non-virtual
2017-03-13 13:47:06 -07:00
Michael Maltese
c4ba046aa3
Remove unused ControllerEmu::BackgroundInputSetting
2017-03-13 13:47:01 -07:00
Michael Maltese
24a5411af5
Move 'Background Input' to controller config dialog
2017-03-13 13:43:20 -07:00
Michael Maltese
8adad0729e
Implement hotkey options group in HotkeyInputConfigDiag
2017-03-13 13:39:52 -07:00
Michael Maltese
a6bc56b626
InputConfigDiag: make m_iterate protected, not private
2017-03-13 13:22:09 -07:00
Michael Maltese
a1978c28f9
HotkeyInputConfigDiag: set DeviceRelatedSizer to wxEXPAND
...
Somehow it acts as though it has wxEXPAND, but that stops working if the
code is edited (as in the next commit).
2017-03-13 13:22:09 -07:00
Markus Wick
f0c2bae778
Merge pull request #5078 from lioncash/si
...
SI_DeviceGBA: Minor cleanup
2017-03-13 21:00:36 +01:00
Markus Wick
13d23c21b7
Merge pull request #5071 from leoetlino/reorganise-es
...
IOS/ES: Split the ES code
2017-03-13 20:51:22 +01:00
Markus Wick
3df19c6643
Merge pull request #5075 from lioncash/cruft
...
DSPLLE: Remove commented out code
2017-03-13 20:47:27 +01:00
Lioncash
deda29d7ff
SI_DeviceGBA: Amend printf formatting specifier for size_t
...
%zu is the correct specifier for printing size_t.
2017-03-13 15:28:07 -04:00
Lioncash
8d2078de2d
SI_DeviceGBA: Amend variable naming
2017-03-13 15:27:36 -04:00
Léo Lam
204703ae0d
IOS/ES: Split the ES code
...
ES.cpp was becoming pretty huge. This commit splits the ES code into
several files:
* Main ES (launch, UID, current title directory and title ID, etc.)
* Device identity and encryption (ID and cert, keys, encrypt/decrypt)
* Title management (imports, exports, deletions)
* Title contents (open/close/read/seek)
* Title information (titles, stored contents, TMDs)
* Views (for tickets and TMDs)
2017-03-13 20:01:08 +01:00
Lioncash
9f40596de5
SI_DeviceGBA: Make GBASockServer's constructor explicit
...
Prevents potential implicit construction scenarios involving ints.
2017-03-13 14:53:50 -04:00
Lioncash
14f261079f
SI_DeviceGBA: Place implementations within the cpp file
...
Prevents potential recompilation of other files if these ever need to
change.
2017-03-13 14:51:18 -04:00
Lioncash
64aa7f3b8f
SI_DeviceGBA: Use std::array class members instead of C arrays
2017-03-13 14:46:35 -04:00
Lioncash
ea59d30e9f
SI_DeviceGBA: In-class initialize variables
2017-03-13 13:52:45 -04:00
Lioncash
70b1933661
SI_DeviceGBA: Store the device number as an int
...
This prevents truncation when assigning to this member in the
constructor. This isn't size-critical code, so opting for the more
straightforward assignment is fine here.
2017-03-13 13:30:02 -04:00
Lioncash
31644eaf93
DSPLLE: Remove commented out code
...
Just throwing out the trash
2017-03-13 12:36:53 -04:00
Lioncash
f183d6759a
HW/DSP: Remove prefixed underscores from parameter names
...
Avoids stepping on potentially reserved names and is more consistent
with the rest of the surrounding code.
2017-03-13 12:27:38 -04:00
JosJuice
98b4ff12f4
FileMonitor: Move file system parsing to DVD thread
2017-03-13 17:13:20 +01:00
JosJuice
b470fa5454
FileMonitor redesign
...
Advantages:
* Simpler code in general
* No extra volume objects created
* Now actually notices if the disc or partition gets
changed while the core is running
* No longer picks up on disc access done by the GUI
(it used to do so as long as the core was running)
* Gets rid of a Core dependency in DiscIO
There are two performance disadvantages:
* FileMonitor is now a bit slower when used with VolumeDirectory
because FileMonitor now always uses the FileSystemGCWii code
for finding filenames instead of VolumeDirectory finding the
filename on its own and directly hooking into FileMonitor.
But this isn't such a big deal, because it's happening on the
DVD thread, and my currently unmerged file system PR will make
FileSystemGCWii's file finding code about as fast as
VolumeDirectory's.
* FileMonitor's creation of the file system object is now
done on the CPU thread instead of the DVD thread, and
it will be done even if FileMonitor logging is disabled.
This will be fixed in the next commit.
2017-03-13 17:13:20 +01:00
Markus Wick
8035270aa8
Merge pull request #4411 from JosJuice/blob-nullptr
...
Remove Blob nullptr checks from Volume code
2017-03-13 16:35:40 +01:00
JosJuice
652b323715
Fix VolumeIsValid being referenced even though it was deleted
...
PR #3582 removed VolumeIsValid, then PR #3582 added a call
to VolumeIsValid, then both PRs were merged without either
of them being rebased on top of the other.
2017-03-13 15:37:08 +01:00
Markus Wick
7b19475911
Merge pull request #4548 from stenzek/gcc-sse
...
Support SSSE3 texture decoders and CRC32 hashing on non-native builds (gcc)
2017-03-13 14:28:01 +01:00
JosJuice
c48ee87f0a
Merge pull request #3582 from JosJuice/disc-inside-cleanup
...
DVDInterface: Cleanup for setting/getting whether a disc is inside
2017-03-13 14:26:15 +01:00
JosJuice
acec02ffc6
Remove Blob nullptr checks from Volume code
...
There's no point in creating a volume without a blob,
since essentially all the functionality of a volume
requires a blob to be used.
Also, VolumeCreator doesn't support creating volumes
without blobs (it can't even figure out the volume type
unless it gets a blob), so it's currently impossible
for a volume to be created without a blob.
2017-03-13 14:13:55 +01:00
Markus Wick
f63d40270d
Merge pull request #5056 from JosJuice/use-readswapped
...
Volume: Use ReadSwapped more
2017-03-13 10:30:55 +01:00
Matthew Parlane
1eba936749
Merge pull request #5072 from lioncash/const
...
DSPEmitter/DSPInterpreter: Remove unnecessary const specifiers from function declaration parameters
2017-03-13 14:13:53 +13:00
Lioncash
ade7718636
DSPInterpreter: Remove unnecessary const specifiers from function declaration parameters
2017-03-12 17:38:04 -04:00
Lioncash
a33cd805f9
DSPEmitter: Remove unnecessary const specifiers from function declaration parameters
...
These only matter for types being passed by value within the definition,
not the declaration.
2017-03-12 17:37:07 -04:00
Léo Lam
2111e4dd92
IOS/ES: Fix GetStoredContentsFromTMD
...
We were checking for the wrong files (title content directory instead
of checking whether the content files themselves exist)... Whoops!
2017-03-12 14:32:01 +01:00
Starsam80
0f44d22db5
Fix `ReadCertFile` by opening as binary file
2017-03-11 23:44:30 -07:00
Matthew Parlane
b1bd231421
Merge pull request #5020 from leoetlino/es-safer-import
...
IOS/ES: Implement ES_AddTitleCancel (and slightly safer import process)
2017-03-12 16:14:17 +13:00
Matthew Parlane
c62fc192ef
Merge pull request #5027 from leoetlino/ssl-check
...
IOS/SSL: Make sure we are using a correct cert/key
2017-03-12 16:13:37 +13:00
Matthew Parlane
d042121ebd
Merge pull request #5043 from lioncash/net
...
IOS/Network/IP/Top: Separate behaviors into their own functions
2017-03-12 16:12:43 +13:00
Matthew Parlane
29cf19f3d0
Merge pull request #5066 from leoetlino/personalised-tickets
...
IOS/ES: Handle personalised tickets properly
2017-03-12 16:12:21 +13:00
Lioncash
26e9c54886
DSPEmitter: Make helper functions private
...
Given none of these are used outside of the DSPEmitter class (nor does
it really make sense to allow them to be used outside of the class),
these should all be made private.
2017-03-11 20:33:07 -05:00
MerryMage
dc1a8c46e9
DSP/Jit: Load address of m_cycles_left into register
...
On some platforms, the address of m_cycles_left exceeds the maximal 32-bit
offset from RIP.
2017-03-11 22:51:41 +00:00
Léo Lam
9c31d6f5c5
IOS/ES: Handle personalised tickets properly
...
IOS unpersonalises device-specific ("personalised") tickets prior to
storing them on the NAND.
2017-03-11 21:14:26 +01:00
Mat M
71273c05a9
Merge pull request #5054 from leoetlino/es-get-contents
...
IOS/ES: Implement ES_GetStoredContents ioctlvs properly
2017-03-11 10:52:53 -05:00
Mat M
3d041fa4ea
Merge pull request #5055 from leoetlino/es-ticket-view-fix
...
IOS/ES: Fix GetViews to not check for the TMD
2017-03-11 10:50:50 -05:00
Stenzek
27d7a1646c
Merge pull request #5065 from JosJuice/character
...
Fix issue 10146 (compilation issue because of colliding defines)
2017-03-11 18:26:26 +10:00
JosJuice
40e707348c
Fix issue 10146 (compilation issue because of colliding defines)
2017-03-11 08:59:14 +01:00
Léo Lam
3cbf47d51d
IOS/ES: Fix GetViews to not check for the TMD
...
Using DiscIO's NAND content loader is the wrong way to get the ticket
for a title, because it checks whether the TMD is present and the
validity check fails if it isn't. This is not the correct behaviour:
we should just read the ticket from /ticket without caring about TMDs.
2017-03-10 22:59:34 +01:00
Léo Lam
28519328d2
IOS/ES: Implement ES_GetStoredContents ioctlvs properly
...
* IOS doesn't rely on the number of contents indicated in the TMD.
Instead, it checks whether the contents *do* exist on the NAND.
* Implement ES_GetTMDStoredContents (and the count ioctlv).
* Drop a hack in ES_GetStoredContents, which is unnecessary now that
we do it properly.
2017-03-10 22:45:08 +01:00
Léo Lam
62ea76e04c
IOS/ES: Clear /import on ES initialization
...
Something IOS does and we didn't do.
2017-03-10 22:44:26 +01:00
Léo Lam
d6499aba50
IOS/ES: Implement ES_AddTitleCancel
2017-03-10 22:44:26 +01:00
Léo Lam
e656258949
IOS/ES: Write import files to /import first
...
This is slightly safer than writing contents to /title directly.
We still cannot rename everything in one go atomically, but this allows
implementing AddTitleCancel very easily.
Also, this ensures that when a title import fails, no incomplete files
will be left in the title directory, which can mess up the system menu.
2017-03-10 22:44:26 +01:00
Michael Maltese
418a7723c8
GLExtensions: remove NV_depth_buffer_float from OpenGL 3.0
...
Regression introduced in e99cd57
/ 4935: VideoBackends: Set the maximum
range when the depth range is oversized[1]. The NV_depth_buffer_float
extension is not part of OpenGL 3.0, and requiring it causes a hard
crash when it's not supported (e.g. macOS).
[1]: https://github.com/dolphin-emu/dolphin/pull/4935
2017-03-10 12:54:46 -08:00
Markus Wick
e99cd57eb3
Merge pull request #4935 from Armada651/depth-range-fix
...
VideoBackends: Set the maximum range when the depth range is oversized.
2017-03-10 18:05:52 +01:00
Jules Blok
3f41e6d4cf
RenderBase: Check if early ztest is enabled before falling back to vertex depth range.
2017-03-10 15:43:32 +01:00
Stenzek
42993eeabc
D3D11: Fix error on startup with >2.5xIR selected
2017-03-10 23:41:20 +10:00
Markus Wick
ae0f9c200d
Merge pull request #5038 from vladfi1/separate-nogui
...
Separate nogui
2017-03-10 10:50:08 +01:00
Lioncash
b61ce51d3b
IOS/Network/IP/Top: Separate behaviors into their own functions
...
Localizes behavior and separates the code out from the IOCtl/IOCtlV
switch blocks.
2017-03-09 20:58:45 -05:00
Markus Wick
ef74c5eabd
Merge pull request #5051 from stenzek/renderer-fixes
...
VideoBackends: Fix crashes introduced by #4999
2017-03-09 21:06:50 +01:00
JosJuice
135733e285
Volume: Use ReadSwapped more
...
Most of the Volume code was written before this
convenience function was added. Let's use it more.
Also deleting m_pReader nullptr checks that are
unnecessary because of Read (which ReadSwapped calls)
already having a nullptr check.
2017-03-09 21:03:28 +01:00
Anthony
cf848b7c42
Merge pull request #5045 from JosJuice/unify-setting-game-metadata
...
Unify the way of setting game ID, title ID, revision
2017-03-09 18:13:02 +00:00
JosJuice
ab616145c2
Get the right game ID for SSBB's Masterpiece partitions
2017-03-09 18:47:40 +01:00
JosJuice
e04245a10e
ConfigManager: Hack for getting the right revision on ES_Launch
2017-03-09 18:07:20 +01:00
Anthony
dc42f7fb28
Merge pull request #4991 from leoetlino/config-loaders
...
New config loaders
2017-03-09 16:56:14 +00:00
JosJuice
ced1614cac
Unify the way of setting game ID, title ID, revision
...
The existing code from ConfigManager, ES and MIOS is merged
into a new set of functions called SetRunningGameMetadata.
2017-03-09 15:34:14 +01:00
Stenzek
2cd240af0d
VideoBackends: Move max texture size to VideoConfig
...
This stops the virtual method call from within the Renderer constructor.
The initialization here for GL had to be moved to VideoBackend, as the
Renderer constructor will not have been executed before the value is
required.
2017-03-10 00:04:13 +10:00
Stenzek
4012166085
VideoCommon: Fix crash at startup with virtual XFB enabled
2017-03-09 23:39:48 +10:00
Léo Lam
2f02cc2996
IOS/SSL: Make sure we are using a correct cert/key
...
This adds a check to the SSL code to make sure we are using the correct
client certificate and key (and root CA).
Now, instead of silently failing, the user will be notified whenever a
file is missing or when it is invalid, i.e. when the hash does not
match; this is likely to happen for existing users as the program
linked in the network guide extracted the wrong certs :(
2017-03-09 13:57:23 +01:00
Lioncash
40cdd32760
GCMemcard: Mark class constructors explicit where applicable
...
Prevents potential implicit instantation.
2017-03-08 19:11:16 -05:00
Anthony
883bec873f
Merge pull request #4939 from sjnewbury/gamelist-text
...
Always use visible text in GameList
2017-03-08 22:38:23 +00:00
Léo Lam
dc224cba3c
IOS/ES: Partially restore hack to fake IOS titles
...
This partially restores a hack which causes ES to fake ticket views for
IOS titles.
This is necessary because we still allow users to boot games from the
game list, so, with no way of making sure the required IOSes are
installed beforehand, games may OSPanic() when they try to reload to
some IOS version and just find out that the IOS is not installed
(something which *never* happens on the real console, of course).
A warning is printed in the logs to make sure technical users know the
IOS titles are being faked. To try and keep things accurate in all
other cases, this hack is only active when it is needed (when the
current title is a disc title which was launched from the game list).
2017-03-08 23:09:10 +01:00
Matthew Parlane
cd826cee34
Merge pull request #5039 from leoetlino/es-import-hash-check
...
IOS/ES: Check the content hash during imports
2017-03-09 10:58:06 +13:00
Vlad Firoiu
68adcbd209
Don't special-case nogui exe name on Apple.
2017-03-08 13:17:49 -08:00
Markus Wick
be8de62b88
Merge pull request #5041 from JosJuice/hi-2007
...
PatchEngine: Remove an unneeded comment
2017-03-08 21:23:40 +01:00
JosJuice
08954e99f5
PatchEngine: Remove an unneeded comment
2017-03-08 21:03:10 +01:00
JosJuice
a1f874a66b
ConfigManager: Remove m_strName
...
m_strName has limited usefulness, because GetInternalName()
can be inaccurate or even completely wrong. It was almost
completely unused anyway.
2017-03-08 21:01:57 +01:00
JosJuice
ac3bf7ad0b
DVDInterface: Assert IsDiscInside() in GetVolume()
2017-03-08 19:27:04 +01:00
JosJuice
a176bf0229
DVDInterface: Remove VolumeIsValid
...
It's the same as IsDiscInside.
2017-03-08 19:27:00 +01:00
JosJuice
3b632f5990
DVDInterface: Remove SetDiscInside
...
It's only a call to SetLidOpen now.
2017-03-08 19:26:56 +01:00
JosJuice
167d16ded6
DVDInterface: Remove the SetLidOpen parameter
...
The lid must always be consistent with whether a disc is inserted.
Callers shouldn't be able to set inconsistent states.
2017-03-08 19:26:50 +01:00
JosJuice
900793ef1d
DVDInterface: Remove s_disc_inside
...
There's no point in having a variable for whether there is a disc
when it's simpler to just directly check whether there is a disc.
2017-03-08 19:26:31 +01:00
Steven Newbury
28f4793785
Always use visible text in GameList
...
Depending upon the desktop colour scheme, the light/dark
GameList backgrounds can cause the always white text
to become unreadble.
Use the common luminance approximation algorithm to
determine whether black text should be used instead.
2017-03-08 18:03:51 +00:00
JosJuice
740e4d0992
DVDInterface: Move a check from SetDiscInside to SetLidOpen
2017-03-08 18:35:40 +01:00
JosJuice
0abf875a3f
DVDInterface: Call SetDiscInside when setting volume
...
SetDiscInside is an implementation detail that callers shouldn't
have to call on their own.
2017-03-08 18:35:40 +01:00
Léo Lam
daa5ff9a81
IOS/ES: Check the content hash during imports
...
This adds a hash check for imported contents. IOS does it for security;
we do it for a somewhat different reason, to catch content decryption
bugs before incorrectly decrypted contents get written to the NAND,
which can cause titles to be corrupted.
Either way, we should have been doing this check in all cases.
2017-03-08 16:32:38 +01:00
Markus Wick
489d90b6f3
Merge pull request #4999 from stenzek/renderer-statics
...
VideoCommon: Eliminate static state in Renderer
2017-03-08 11:02:20 +01:00
Markus Wick
9c1eac1f4f
Merge pull request #4944 from vladfi1/framedump
...
Framedump extensions
2017-03-08 11:01:53 +01:00
Markus Wick
a911d256a7
Merge pull request #5018 from Tilka/trunc
...
VideoCommon: remove unnecessary trunc()
2017-03-08 11:01:17 +01:00
Vlad Firoiu
096f58b172
Save new framedump options.
2017-03-08 01:38:40 -08:00
Vlad Firoiu
bc9db6de56
Moved NoGUI out of DolphinWx.
2017-03-08 01:24:18 -08:00
Vlad Firoiu
6a89cf0201
Moved X11Utils into UICommon.
2017-03-08 01:24:10 -08:00
Markus Wick
7cc5604a2c
Merge pull request #5033 from vladfi1/nogui-user
...
Parse user directory on nogui CLI.
2017-03-08 10:04:12 +01:00
Markus Wick
ac914e939b
Merge pull request #5035 from lioncash/out-of-bounds
...
GCAdapter_Android: Fix an array bounds overrun in Read()
2017-03-08 10:01:34 +01:00
Florent Castelli
b69d3f13cb
common: Don't include intrin.h in a namespace
...
Fixes compilation with VS2017
2017-03-08 06:55:06 +01:00
Florent Castelli
cf68ecf066
core: Add missing include
2017-03-08 06:55:05 +01:00
Matthew Parlane
028da93d35
Merge pull request #5030 from sepalani/fix_pr_5002
...
Fix a vector assertion introduced by PR #5002
2017-03-07 23:23:11 +13:00
Matthew Parlane
cfc909f422
Merge pull request #4867 from lioncash/simplify
...
Boot_WiiWAD: Simplify state_checksum()
2017-03-07 18:27:50 +13:00
Matthew Parlane
52f22e240b
Merge pull request #5031 from lioncash/cast
...
CachedInterpreter: Get rid of an unnecessary cast
2017-03-07 18:11:00 +13:00
Matthew Parlane
4d02d38bf0
Merge pull request #5032 from lioncash/const
...
Memmap/PowerPC: Remove unnecessary const on function declaration parameters
2017-03-07 18:10:31 +13:00
Lioncash
b914edd441
GCAdapter_Android: Fix an array bounds overrun in Read()
...
s_controller_payload is 37 bytes long, but Read() would copy 0x37 (a.k.a
55) bytes, overrunning the array.
2017-03-06 23:05:17 -05:00
Lioncash
26f7f55a66
GeneralConfigPane: Fix analytics sizer's right side being misaligned by 5 units
2017-03-06 22:19:54 -05:00
Vlad Firoiu
ac3586f46c
Parse user directory on nogui CLI.
2017-03-06 12:24:38 -08:00
Lioncash
4d1a4ba759
PowerPC: Remove unnecessary const on function declaration parameters
2017-03-06 14:10:33 -05:00
Lioncash
248a04f68f
Memmap: Remove unnecessary const on function declaration parameters
...
const, when used on value type parameters in the declaration,
is superfluous. This doesn't really convey any information to take note
of when using the function. This only matters in the definition when you
want to prevent accidental modification.
e.g.
// Header
void CalculateSomething(int lhs, int rhs);
// Definition
void CalculateSomething(const int lhs, const int rhs)
{
// lhs and rhs can't accidentally be modified
}
2017-03-06 14:08:07 -05:00
Lioncash
a9c570a9f8
CachedInterpreter: Get rid of an unnecessary cast
...
This is only ever used to read a value and not modify data, so this can
just be constructed by value.
2017-03-06 13:18:46 -05:00
Matthew Parlane
7d681f9c93
Merge pull request #5016 from leoetlino/es-di-gettmd
...
IOS/ES: Implement ES_DIGetTMDView (and GetTMDViewSize)
2017-03-07 00:05:47 +13:00
Sepalani
bc1990ce5d
Fix a vector assertion introduced by PR#5002
2017-03-06 01:41:42 +00:00
Vlad Firoiu
71c0e30655
Appease linter.
2017-03-05 17:29:46 -08:00
Vlad Firoiu
fbff74c1eb
Warn on invalid video codec.
2017-03-05 17:08:59 -08:00
Vlad Firoiu
9155af5103
GetDumpPath function.
2017-03-05 17:08:59 -08:00
Vlad Firoiu
8c24387509
Use ffv1 if user requests it.
2017-03-05 17:08:59 -08:00
Matthew Parlane
f9f4381461
Merge pull request #4525 from RisingFog/gci_dtm
...
GCI Folder support for TAS Recording/Playback
2017-03-06 13:26:16 +13:00
Chris Burgener
5193813b50
GCI Folder support for TAS Recording/Playback
2017-03-05 19:12:09 -05:00
Mat M
029ff4d9e5
Merge pull request #5022 from lioncash/header
...
BTStub: Get rid of an unnecessary forward declaration in the cpp file
2017-03-05 19:03:56 -05:00
Léo Lam
dd8b0e3c3f
IOS/ES: Fix logging type for dumping unknown ioctlvs
2017-03-06 00:38:13 +01:00
Léo Lam
5049451a85
IOS/ES: Implement ES_DIGetTMDView (and GetTMDViewSize)
...
This is required for online updates to work in the system menu.
2017-03-05 22:44:58 +01:00
Lioncash
f80f875e27
BTStub: Get rid of an unnecessary forward declaration in the cpp file
...
This should be using the header file in order to find the function name.
2017-03-05 09:51:47 -05:00
Ryan Houdek
9373c7eca9
Update Visual Studio build files
2017-03-05 15:47:25 +01:00
Ryan Houdek
711f1cb7a3
Add core loaders to cmake
2017-03-05 15:47:25 +01:00
Ryan Houdek
b93609e1ff
Movie configuration loader
2017-03-05 15:47:25 +01:00
Ryan Houdek
1902f9f35a
NetPlay configuration loader
2017-03-05 15:47:25 +01:00
Léo Lam
b0d54a67cc
GameConfigLoader: Fix issues mentioned in code review
2017-03-05 15:47:25 +01:00
Léo Lam
fa98d07f7a
GameConfigLoader: Implement missing Save function
2017-03-05 15:47:24 +01:00
Léo Lam
4761afe179
GameConfigLoader: Ignore unknown entries
...
It's not necessarily an issue. For example, memory breakpoints are
handled in a different location.
2017-03-05 15:47:24 +01:00
Ryan Houdek
9dbb6f9022
Game configuration loader
2017-03-05 15:47:24 +01:00
Ryan Houdek
1eb11b55a0
Base configuration loader
2017-03-05 15:47:24 +01:00
Ryan Houdek
94d35ab7cb
Implement command line option setting
2017-03-05 15:47:23 +01:00
Ryan Houdek
ead8be9d19
Move IniFile section chunk handling to IniFile::Section
2017-03-05 15:47:23 +01:00
Léo Lam
b7a1c6f504
Logging: Add CORE type
2017-03-05 15:47:23 +01:00
Mat M
7fa14169e9
Merge pull request #5007 from lioncash/swap
...
Common: Move byte swapping utilities into their own header
2017-03-05 09:45:29 -05:00
Tillmann Karras
8a72e84ece
VideoCommon: remove unnecessary trunc()
2017-03-05 01:53:54 +00:00
Matthew Parlane
c2594695b8
Merge pull request #5001 from leoetlino/es-titles
...
IOS/ES: Fix ES_GetTitles and implement ES_GetOwnedTitles
2017-03-05 14:28:28 +13:00
Lioncash
0e5a367ca3
SysConf: const-correctness
2017-03-04 19:19:42 -05:00
Lioncash
1ebd2cd7c3
SysConf: Get rid of pointer casts
2017-03-04 19:06:22 -05:00
Léo Lam
52e8486b7c
IOS/ES: Refactor GetTitles into a utility function
2017-03-04 20:33:35 +01:00
Léo Lam
1525396ecf
IOS/ES: Properly handle missing TMD in GetStoredTMD
...
When the TMD doesn't exist on the NAND, IOS returns -106.
This commit also changes IsValid() to not check for the TMD validity,
since this is not always something we want. (IOS can have different
error codes when the TMD is missing, or even worse, simply assume
that the TMD is valid.)
2017-03-04 20:33:35 +01:00
Léo Lam
b1ffbef5ce
IOS/ES: Implement ES_GetOwnedTitles
2017-03-04 20:33:35 +01:00
Léo Lam
35995e98d7
IOS/ES: Fix GetTitles implementation
...
IOS determines installed titles by looking at /title, not uid.sys,
which is more like a history of installed titles. And it does not care
at all about the installed TMD (or even if it is present at all).
2017-03-04 20:33:34 +01:00
Markus Wick
7304cb0f8e
Merge pull request #5011 from stenzek/d3d-texture-corruption
...
D3D11: Use default usage for TextureCache entries
2017-03-04 15:55:58 +01:00
Stenzek
725d5bc3a1
D3D11: Drop unused method ReplaceRGBATexture2D
2017-03-04 22:37:10 +10:00
Stenzek
526fa9bc85
D3D11: Use D3D11_USAGE_DEFAULT for all TextureCache textures
2017-03-04 22:36:33 +10:00
Markus Wick
3c511f2a94
Merge pull request #5003 from lioncash/memory
...
UICommon: Make GetNewDisassembler() return a unique_ptr
2017-03-04 12:14:35 +01:00
Markus Wick
01143d761e
Merge pull request #5006 from lioncash/settings
...
ControllerEmu: Initialize settings class' values to default values on construction
2017-03-04 12:13:24 +01:00
Stenzek
4cea9a2f99
Vulkan: Fix underflow in StreamBuffer::WaitForClearSpace
...
This could cause the assertion on line 212 to fail when uploading large
amounts of data in between command buffer executions.
2017-03-04 18:07:04 +10:00
Stenzek
459a5ab554
Android: Move screenshot waiting logic to Renderer
2017-03-04 16:53:16 +10:00
Stenzek
811eafda57
VideoCommon: Store last window request width/height
...
This avoids the need to send a window resize event every frame.
2017-03-04 16:53:12 +10:00
Stenzek
00a0a91513
VideoCommon: Move last EFB scale handling to CalculateTargetSize
2017-03-04 16:53:07 +10:00
Stenzek
afc25fdca0
VideoCommon: Rename Renderer s_ prefixes to m_
2017-03-04 16:42:21 +10:00
Stenzek
238a70b006
VideoCommon: Move some common initialization logic to RenderBase
2017-03-04 16:42:16 +10:00
Stenzek
277829d842
VideoCommon: Eliminate static state in Renderer
2017-03-04 16:39:50 +10:00
Anthony
de230f3ebe
Merge pull request #4998 from stenzek/vulkan-aspect-changes
...
Vulkan: Fix issue where target rectangle changes weren't detected
2017-03-03 21:47:29 -08:00
Lioncash
552c0d8404
Common: Move byte swapping utilities into their own header
...
This moves all the byte swapping utilities into a header named Swap.h.
A dedicated header is much more preferable here due to the size of the
code itself. In general usage throughout the codebase, CommonFuncs.h was
generally only included for these functions anyway. These being in their
own header avoids dumping the lesser used utilities into scope. As well
as providing a localized area for more utilities related to byte
swapping in the future (should they be needed). This also makes it nicer
to identify which files depend on the byte swapping utilities in
particular.
Since this is a completely new header, moving the code uncovered a few
indirect includes, as well as making some other inclusions unnecessary.
2017-03-03 17:18:18 -05:00
Lioncash
b592e4887e
BooleanSetting: Initialize m_value to default_value in the constructor
...
Ensures all class state is initialized to valid values on construction.
2017-03-03 14:09:48 -05:00
Lioncash
25e70570b5
NumericSettings: Initialize m_value to default_value in the constructor
...
Ensures that all class state is initialized to valid values.
2017-03-03 14:06:16 -05:00
aldelaro5
654f582446
Don't save watches and breakpoints on stop and load on boot
...
Not only this is pretty pointless because there is a load and save button on the appropriate panels, but for the breakpoints one, it caused an error while mapping the memory since adding memory breakpoint requires to update the DBAT and this is done too early (right after boot). This also only worked if you had the right panel on making it even more useless because it would fail to laod if you didn't have the right panel on. It's better to just let the user click load and save.
2017-03-03 05:18:33 -05:00
Lioncash
13757b7d35
UICommon: Make GetNewDisassembler() return a unique_ptr
...
Much better than just returning raw memory.
2017-03-02 21:26:17 -05:00
Matthew Parlane
51e932b4ec
Merge pull request #4975 from ligfx/controlsetting
...
InputCommon: move Setting classes out of ControlGroup
2017-03-03 15:17:25 +13:00
Michael Maltese
1539ff6691
InputCommon: move Setting classes out of ControlGroup
2017-03-02 18:08:37 -08:00
Anthony
1392b88879
Merge pull request #5002 from leoetlino/es-di-ioctlvs
...
IOS/ES: Implement ES_DIGetTicketView
2017-03-02 17:54:54 -08:00
Matthew Parlane
dffb14cfc7
Merge pull request #5000 from lioncash/fwd
...
JitInterface: Convert includes into forward declarations where applicable
2017-03-03 14:54:24 +13:00
Léo Lam
34adc72d1c
IOS/ES: Implement ES_DIGetTicketView
...
One of the remaining ioctlvs that were not implemented, and which were
used by games (even though they did not really depend on the view).
2017-03-02 22:13:45 +01:00
Léo Lam
d97ae1054f
Remove useless ES wrappers from the main IOS file
...
This removes wrappers for ES_DIVerify and ES::LoadWAD. They are not
really useful as we can simply call the ES function directly, and
it is actually somewhat confusing because both functions are static
and are not tied to a particular ES instance.
2017-03-02 20:29:01 +01:00
Léo Lam
5a74343d06
IOS/ES: Add logging for title context changes
2017-03-02 20:29:01 +01:00
Léo Lam
c191fe5348
IOS/ES: Update running game info on title change
...
This allows Dolphin to stay up-to-date about what title is currently
running, which fixes savestates, screenshots, etc. after an ES_Launch.
Same limitation as with MIOS: currently, GameINIs are not reloaded,
because it's a pain with the current config system. It'll happen
when the new config system is done, and this commit makes it much
easier to do!
2017-03-02 20:29:00 +01:00
Léo Lam
9c18eea812
IOS/ES: Mark members shared between instances as static
...
Some members are shared between ES instances, and they are just global
variables in IOS.
This is more efficient than getting the installed titles or setting the
current active title tons of times for no reason.
2017-03-02 20:29:00 +01:00
Léo Lam
4d776ffa8f
IOS/ES: Keep track of the active title properly
...
This changes ES to keep track of the active title properly,
just like IOS:
* It is NOT changed on resource manager open/close.
* It is reset on IOS reload.
* It is changed by ES_DIVerify and ES_Launch.
IOS stores the active title in a structure like this:
struct ESTitleContext
{
Ticket* ticket;
TMD* tmd;
u32 active;
};
With this commit, we also do keep the Ticket and TMD around. This
makes some of the DI ioctlvs (which return data about the current
active title) trivial to implement in the future.
This fixes the System Menu not being able to see update partitions
and also allows us to change Dolphin's active game info in the future.
2017-03-02 20:28:01 +01:00
Mat M
78e7f4aae3
Merge pull request #4984 from leoetlino/content-fixes
...
IOS/ES: Title import fixes + hack removals (fix for System Menu disc updates)
2017-03-02 14:17:29 -05:00
Lioncash
c6200a5b07
JitInterface: Convert includes into forward declarations where applicable
2017-03-02 13:20:29 -05:00
Stenzek
2fd77895a2
Vulkan: Fix issue where target rectangle changes weren't detected
...
This was causing issues when toggling the crop setting, as well as some
widescreen hacks.
2017-03-02 21:53:42 +10:00
Stenzek
3390e6f258
Merge pull request #4993 from ligfx/fixsonicadventure2
...
OGL SetBlendMode: always set blend equation and func
2017-03-02 21:30:10 +10:00
Markus Wick
7982ba120f
Merge pull request #4995 from lioncash/normalize
...
CMakeLists: Normalize whitespace
2017-03-02 11:51:06 +01:00
Markus Wick
521a777ade
Merge pull request #4961 from aldelaro5/fast-memchecks
...
Make memory breakpoint faster
2017-03-02 11:13:18 +01:00
aldelaro5
9ad6c8f334
Make memory breakpoint faster
...
Currently, slowmem is used at any time that memory breakpoints are in use. This commit makes it so that whenever the DBAT gets updated, if the address is overllaping any memchecks, it forces the use of slowmem. This allows to keep fastmem for any other cases and noticably increases performance when using memory breakpoints.
2017-03-02 04:46:27 -05:00
Lioncash
ee61bd6f2e
CMakeLists: Normalize whitespace
...
Normalizes tabs to spaces to follow our codebase's indentation style.
2017-03-01 14:53:23 -05:00
Léo Lam
ac27aff9c8
Add ES::Content::IsShared to avoid hardcoding 0x8000
2017-03-01 17:36:07 +01:00
Léo Lam
3bd34008c9
IOS/ES: Fix GetTMDView when title doesn't exist
...
This fixes ES_GetTMDView and ES_GetTMDViewSize to return -106
(FS_ENOENT) if the title does not exist (and more specifically when no
TMD exists in the NAND). This allows installed (or not installed) IOSes
to be detected properly.
2017-03-01 17:36:07 +01:00
Léo Lam
90aaefaef7
IOS/ES: Drop 'fake IOS titles' hack
...
It prevents system updates from working properly, because we always
returned that the latest version of every single IOS was installed.
2017-03-01 17:36:07 +01:00
Léo Lam
e5d9bcaf43
IOS/ES: Edit uid.sys on AddTitleStart
...
This allows channels to be registered and installed properly.
(And it is what IOS does.)
2017-03-01 17:36:07 +01:00
Léo Lam
1e3f8c1a1d
IOS/ES: Add sanity checks to AddTitleFinish
2017-03-01 17:36:06 +01:00
Léo Lam
9263cb1996
IOS/ES: Handle adding shared contents properly
2017-03-01 17:34:59 +01:00
Mat M
8364a0002f
Merge pull request #4956 from leoetlino/es-checks
...
ES: Replace useless asserts with proper checks
2017-03-01 11:30:25 -05:00
Anthony
8dc96fce4d
Merge pull request #4776 from lioncash/dspemitter
...
DSPEmitter: Convert a C array to a std::array
2017-03-01 08:11:26 -08:00
Léo Lam
24e35f96fa
ES: Replace useless asserts with proper checks
...
It makes absolutely no sense to have asserts for what is obviously an
error condition. And they should definitely not cause Dolphin to crash
because it assumes that everything is valid, and Dolphin should not
report those to the user either, as it is very obviously a bug in the
emulated software and there is nothing the user (or we) can do.
This commit replaces all of the request asserts with proper checks
and adds missing checks for some ioctlvs. We still do not check sizes
yet; this will be done later.
2017-03-01 16:05:33 +01:00
Michael Maltese
db1d826ac3
OGL SetBlendMode: always set blend equation and func
...
Before #4581 , an invocation of `SetBlendMode` could invoke
`glBlendEquationSeparate` and `glBlendFuncSeparate` even when it was
setting `glDisable(GL_BLEND)`. I couldn't figure out how to map the old
behavior over to the new BlendingState code, so I changed it to always
call the two blend functions.
Fixes https://bugs.dolphin-emu.org/issues/10120 : "Sonic Adventure 2
Battle: graphics crash when loading first Dark level".
2017-03-01 00:49:14 -08:00
Jules Blok
83bd74aef0
Merge pull request #4974 from gamemasterplc/master
...
Widescreen Hack improvement
2017-03-01 02:17:33 +01:00
Michael Maltese
c277c91b29
NetPlayClient: rename variables: spac -> packet
2017-02-28 14:37:45 -08:00
Michael Maltese
1834833edd
NetPlay: use move semantics instead of unique_ptrs
2017-02-28 14:29:27 -08:00
aldelaro5
52fe05af6b
Make memory breakpoint faster
...
Currently, slowmem is used at any time that memory breakpoints are in use. This commit makes it so that whenever the DBAT gets updated, if the address is overllaping any memchecks, it forces the use of slowmem. This allows to keep fastmem for any other cases and noticably increases performance when using memory breakpoints.
2017-02-28 13:02:04 -05:00
Anthony
f4ccc11b73
Merge pull request #4988 from leoetlino/tikview
...
ESFormats: Fix calculation of the ticket start offset
2017-02-28 09:57:04 -08:00
Markus Wick
0a8b5b79ef
Merge pull request #4985 from lioncash/enum-class
...
ExpressionParser: Convert parse state enum into an enum class
2017-02-28 18:48:45 +01:00
Markus Wick
bd89c7b2c4
Merge pull request #4986 from lioncash/namespace
...
PixelEngine: Move enum constants into the PixelEngine namespace
2017-02-28 18:46:45 +01:00
Léo Lam
e9f23fbc92
ESFormats: Fix calculation of the ticket start offset
...
The signature part doesn't seem to appear more than once in a signed
ticket, so we should always add that offset regardless of the
ticket number.
2017-02-28 18:42:06 +01:00
Anthony
fcc05c0b0e
Merge pull request #4983 from degasus/jitcache
...
JitCache: Fix two block invalidation issues.
2017-02-28 09:20:24 -08:00
Lioncash
5ed55ffb34
PixelEngine: Move enum constants into the PixelEngine namespace
...
Gets some identifier names out of the global namespace.
2017-02-28 07:01:50 -05:00
Lioncash
d104e5e916
ExpressionParser: Convert parse state enum into an enum class
2017-02-28 05:07:21 -05:00
Vlad Firoiu
a3af5b09d3
error logs
2017-02-27 23:45:35 -08:00
Vlad Firoiu
6b1910a078
Appease global header warning.
2017-02-27 23:45:35 -08:00
Vlad Firoiu
f82e3de763
Dump to arbitrary URLs.
2017-02-27 23:45:34 -08:00
Vlad Firoiu
21e66e60e3
Configable dump codec.
2017-02-27 23:45:12 -08:00
Vlad Firoiu
a1a9e488a5
XVID FourCC for MPEG-4 codecs.
2017-02-27 23:44:33 -08:00
Vlad Firoiu
d4686aa1a7
More warnings for AVIDump.
2017-02-27 23:44:33 -08:00
Vlad Firoiu
86a8382376
Arbitrary dump formats.
2017-02-27 23:44:29 -08:00
Vlad Firoiu
1723645c99
guess format before allocating context
2017-02-27 23:43:15 -08:00
Vlad Firoiu
8fb2eb889d
Handle delayed frames at the end of the movie.
2017-02-27 23:43:15 -08:00
Anthony
e375c96693
Merge pull request #4982 from leoetlino/copy
...
ESFormats: Fix GetRawTicketView
2017-02-27 17:08:27 -08:00
Markus Wick
deb228f134
Merge pull request #4774 from degasus/speedhack
...
PatchEngine: Apply speedhack per PC, not only per block entry.
2017-02-27 23:51:12 +01:00
degasus
ffa61fcf57
JitCache: Also unlink exits of the current block.
...
We might still be in the current block. This is fine, but the next one might also be invalidated later on. But we may never also call the next one.
2017-02-27 23:50:16 +01:00
degasus
c1ddc2678e
JitCache: Fix removing of blocks.
2017-02-27 23:50:16 +01:00
Léo Lam
6edcba4af8
Bump the savestate version (for ES changes)
2017-02-27 21:26:30 +01:00
Léo Lam
6f79f741d5
IOS/ES: Check that m_addtitle_tmd is valid before use
2017-02-27 21:26:29 +01:00
Léo Lam
95aa48d086
IOS/ES: Implement AddTMD
2017-02-27 21:26:29 +01:00
Léo Lam
6327a29847
IOS/ES: Implement ES_Export* ioctlvs
...
This should allow channels to be copied to the SD properly.
2017-02-27 21:26:28 +01:00
Léo Lam
345d252ef3
IOS/ES: Deduplicate fields for opened content entries
...
Now that we have a proper Content structure for contents,
let's just use it instead of duplicating the fields.
2017-02-27 21:25:47 +01:00
Léo Lam
4e462d44f9
ESFormats: Fix GetRawTicketView
...
The vector was not constructed with the proper size, which results in a
buffer overflow as we were using memcpy.
This commit fixes that mistake and also uses a safer way of copying the
ticket view data (std::vector::insert instead of memcpy).
2017-02-27 21:19:05 +01:00
Anthony
c4137c2880
Merge pull request #4965 from leoetlino/delete-everything
...
IOS/ES: Implement DeleteTitle
2017-02-27 12:18:47 -08:00
Anthony
7ac95c2673
Merge pull request #4906 from leoetlino/es-launch
...
IOS: Handle ES_Launch more accurately
2017-02-27 11:51:43 -08:00
Léo Lam
fff4634a1c
IOS: Handle ES_Launch more accurately
...
This commit fixes ES_Launch to work mostly the same as the real IOS
(except temporary, internal files such as /sys/launch.sys and title
handling; the latter will be handled in a future PR).
First of all, this adds two IOS functions, which correspond to two
IOS syscalls: 0x41 (boot_ppc) and 0x42 (boot_ios).
boot_ios() writes the new version to 0x3140, loads the new kernel,
which then proceeds to reinit IPC and load modules as part of its
boot process. Note that this doesn't include writing to any of the
other constants in the 0x3100 region.
In Dolphin, this is implemented by changing the active IOS
version variable, writing to 0x3140 and resetting all devices. This
has exactly the same effect as the real syscall.
The other syscall, boot_ppc(), writes code to the EXI boot buffer,
pokes all constants to memory before bootstrapping the PPC with a
binary from the NAND.
We skip the low level stuff and just load the DOL to memory (and set
the PPC's PC to 0x3400), which is essentially what IOS does.
The other change is mostly related to how ES_Launch is handled.
With a real IOS, if the launched title type is 00000001 (system) and
the title is not 1-2 (System Menu), ES calls boot_ios().
Otherwise, ES handles the launch as a PPC title. It reads the TMD
to determine the required IOS version. If it is the same, boot_ppc()
is called directly. If not, ES saves the title to launch to the NAND
before launching the new IOS. After the new IOS has finished booting,
it will notice the flag and then launch the requested title.
What this commit does is really just implement this logic into IOS HLE.
The result is a fix for a regression introduced by SetupMemory,
where reloading an IOS would have overwritten some OS constants.
This fixes booting games from the disc channel.
2017-02-27 20:44:30 +01:00
Anthony
ed6a46a193
Merge pull request #4958 from RisingFog/avidump_bitrate
...
Add configurable video dump bitrate to INI
2017-02-27 10:15:19 -08:00
Anthony
63c5230d9b
Merge pull request #4959 from lioncash/ini
...
IniFile: Handle s64/u64 values
2017-02-27 10:02:53 -08:00
Anthony
0cac00a39c
Merge pull request #4977 from ligfx/fixwxmainmenubar
...
DolphinWX: don't refresh MainMenuBar on construction
2017-02-27 09:42:01 -08:00
Anthony
b16cebc297
Merge pull request #4978 from ligfx/avidumpclosefiles
...
AVIDump[regression]: close avio handles
2017-02-27 09:39:40 -08:00
Jules Blok
f5d14e3691
Merge pull request #4933 from Armada651/disable-cache
...
VideoBackends: Add a developer option to disable the shader cache.
2017-02-27 17:35:01 +01:00
Léo Lam
ac43836714
IOS/ES: Implement DeleteTitle
...
No idea why this wasn't implemented whereas ES_DeleteTicket and
ES_DeleteTitleContent were.
This probably fixes title deletion in old System Menus, and maybe
the new ones as well in some cases; I've seen 4.3 use this ioctlv.
2017-02-27 15:32:31 +01:00
Michael Maltese
621472336c
AVIDump[regression]: close avio handles
2017-02-26 23:26:31 -08:00
Matthew Parlane
d666363ac4
Merge pull request #4966 from RisingFog/remove_traversal_server_debug_mode
...
Turn Off Debug Mode for Traversal Server
2017-02-27 16:18:13 +13:00
Matthew Parlane
ca9504d0fa
Merge pull request #4969 from leoetlino/clear-tmp
...
IOS: Clear the /tmp directory on IOS boot
2017-02-27 16:17:49 +13:00
Matthew Parlane
48aeb5bf4b
Merge pull request #4896 from leoetlino/esformats
...
Use ESFormats for tickets, TMDs and views
2017-02-27 16:15:05 +13:00
Michael Maltese
720f0ab93f
DolphinWX: don't refresh MainMenuBar on construction
...
On startup, wxWidgets pops up an assertion error:
> ./src/osx/menu_osx.cpp(648): assert ""IsAttached()"" failed in
> Refresh(): can't refresh unatteched menubar
2017-02-26 17:50:36 -08:00
Michael Maltese
a3e3986906
DolphinWX: provide empty OnCmdLineParsed
...
Starting in #4916 , upon startup wxWidgets pops up an assertion error:
> ./src/common/cmdline.cpp(527): assert ""Assert failure"" failed in
> FindOptionByAnyName(): Unknown option verbose
Fix this by overriding wxApp::OnCmdLineParsed to disable the default
handling (since we also disable the default options in
DolphinApp::OnInitCmdLine).
2017-02-26 17:38:18 -08:00
Anthony
7bcff99d89
Merge pull request #4963 from leoetlino/sysconf
...
SysConf: Use vectors instead of raw pointers
2017-02-26 16:09:17 -08:00
Anthony
832e0501db
Merge pull request #4960 from lioncash/type
...
ControlGroup: Convert group type enum into an enum class
2017-02-26 15:56:34 -08:00
Anthony
0dde642b7d
Merge pull request #4917 from leoetlino/config
...
New configuration namespace
2017-02-26 15:54:25 -08:00
Anthony
06428c3f14
Merge pull request #4916 from leoetlino/cpp-optparse
...
Use cpp-optparse for command line parsing
2017-02-26 15:51:35 -08:00
Anthony
722ff4c020
Merge pull request #4915 from leoetlino/ini-changes
...
Expose some ways to manage an INI file
2017-02-26 15:48:53 -08:00
gamemasterplc
4c4a96bfc5
Widescreen Hack improvement
...
Fixes Projection alignment in some N64 VC games. The original code forgot to multiply rawProjection[1] and rawProjection[3].
2017-02-26 12:55:57 -06:00
Léo Lam
44a3db21e4
ES: Make sure the TMD and ticket are valid before use
2017-02-26 19:46:30 +01:00
Léo Lam
5104caf6a6
Move AES code to Common/Crypto
2017-02-26 19:46:30 +01:00
Léo Lam
c1a139e8ac
Use ESFormats for TMDs
...
We already have a TMDReader, so let's actually use it.
And move ESFormats to IOS::ES, since it's definitely part of IOS.
This adds a DiscIO dependency on Core which will be fixed in a
follow-up PR.
2017-02-26 19:46:29 +01:00
Léo Lam
bf1f70db0a
Move the ticket code to ESFormats
...
This moves some parsing code for tickets and ticket views to ESFormats
instead of duplicating it over DiscIO and Core.
2017-02-26 19:46:28 +01:00
JosJuice
a62711de55
Merge pull request #4968 from lioncash/const-parser
...
ExpressionParser: Const-correctness changes
2017-02-26 19:24:21 +01:00
JosJuice
6c869f7891
Merge pull request #4955 from leoetlino/wat
...
Fix the build on non-Windows platforms when not using WX from Externals
2017-02-26 19:19:06 +01:00
z0z0z
005e6796b8
Disable pinned memory for AMD mesa drivers
2017-02-26 10:49:28 -05:00
Léo Lam
31ebe9b080
IOS: Clear the /tmp directory on IOS boot
...
The /tmp directory is cleared every time IOS boots up (when the FS
driver is initialized), *not* when /dev/fs is opened.
Although this should have no effect, it fixes the case where files
could be left in /tmp and seen before opening /dev/fs.
2017-02-26 12:19:57 +01:00
Jules Blok
a15555fe03
VideoBackends: Use vertex shader depth range if ztexture is used.
2017-02-26 11:34:48 +01:00
Lioncash
f0203157d4
ExpressionParser: Const-correctness changes
2017-02-26 02:09:34 -05:00
Chris Burgener
bfb17d5a9e
Add configurable video dump bitrate to INI
2017-02-25 23:58:21 -05:00
Chris Burgener
4669b50e0b
Turn Off Debug Mode for Traversal Server
2017-02-25 23:41:12 -05:00
Léo Lam
a1e16c47db
SysConf: Use vectors instead of raw pointers
2017-02-26 00:39:50 +01:00
Adam Diffin
54f931e651
Fixed the remove and add buttons not disabling after removing a code.
2017-02-25 22:59:24 +00:00
Lioncash
26f17a1723
ControlGroup: Convert group type enum into an enum class
...
Gets some constants out of the ControllerEmu namespace, and modifies
ControlGroup so that it uses the enum type itself to represent the
underlying type, rather than a u32 value.
2017-02-25 01:15:04 -05:00
Lioncash
beec40f178
IniFile: Handle s64/u64 values
2017-02-25 00:03:20 -05:00
Markus Wick
51136681df
Merge pull request #4953 from lioncash/fwd
...
CachedInterpreter: Forward declare instruction struct
2017-02-24 23:36:11 +01:00
Léo Lam
6702e547cb
Fix the build on Linux when not using WX from Externals
...
No idea why we were including a Windows specific header *without* a
ifdef.
2017-02-24 18:48:26 +01:00
Jules Blok
bde8126913
VideoBackends: Remove depth range clamping hacks.
...
Oversized depth ranges are handled correctly now, we don't need to hack around them with clamps anymore.
2017-02-24 14:54:20 +01:00
Jules Blok
94522d4cf3
OGL: Add support for glDepthRangedNV to handle oversized depth ranges.
2017-02-24 14:54:16 +01:00
Markus Wick
1f04bab967
Merge pull request #4952 from ligfx/fix_10110
...
PatchEngine: check instruction at link addr is non-zero
2017-02-24 11:08:15 +01:00
Markus Wick
25fc7ed8c1
Merge pull request #4954 from lioncash/jitbase
...
JitBase: Put constructor and destructor in the cpp file
2017-02-24 11:05:57 +01:00
Lioncash
0783476464
CachedInterpreter: Forward declare instruction struct
...
Allows changes to be made to the instruction struct without recompiling
other source files.
2017-02-23 18:08:20 -05:00
Anthony
4e93002adb
Merge pull request #4800 from JosJuice/movie-dual-core-determinism
...
Remove special condition for auto dual core determinism
2017-02-23 13:19:39 -08:00
Anthony
ba5f1c6f59
Merge pull request #4864 from JosJuice/idws-on-temp-nand-only
...
WiiRoot: Only call InitializeDeterministicWiiSaves on temporary NAND
2017-02-23 13:18:23 -08:00
Anthony
27a5e33b92
Merge pull request #4877 from ligfx/forward_declare_xlib
...
Remove include X11/Xlib.h from X11Utils.h
2017-02-23 13:17:37 -08:00
Anthony
ecb7d01347
Merge pull request #4889 from ligfx/netwindow
...
NetWindow: explicitly tell wxWidgets to clean up Windows macros
2017-02-23 13:16:59 -08:00
Anthony
e9850382e3
Merge pull request #4930 from JosJuice/sideways-wiimote-name
...
Change INI keys containing "Wii Remote" back to "Wiimote"
2017-02-23 13:13:43 -08:00
Anthony
fb8369d0e0
Merge pull request #4950 from leoetlino/set-remotes-before-booting
...
Netplay: Change Wiimote sources before booting
2017-02-23 13:13:13 -08:00
Lioncash
359528b805
JitBase: Put constructor and destructor in the cpp file
...
As this is a base class with virtuals, there needs to be an out-of-line
function definition to prevent the vtable of the class being placed within
every translation unit it's used in (i.e. every JIT implementation).
2017-02-23 13:50:47 -05:00
Léo Lam
88a21dd2b9
Fix things mentioned during code review
...
Ref: https://github.com/dolphin-emu/dolphin/pull/4917
2017-02-23 18:15:12 +01:00
Léo Lam
abe6f8766a
Config: Add a few helper functions for repetitive tasks
...
Getting and setting configuration from the base config layer are common
and repetitive tasks. This commit adds some simpler to use functions to
make the new system easier to work with.
Config::Get and Config::Set are intended to make switching from
SConfig a bit less painful. They always operate on the main system.
Example usage:
// before
auto base_layer = Config::GetLayer(Config::LayerType::Base);
auto core = base_layer->GetOrCreateSection(Config::System::Main, "Core");
u8 language;
core->Get("Language", &language, 0);
SetData("IPL.LNG", language);
// now
auto base_layer = Config::GetLayer(Config::LayerType::Base);
auto core = base_layer->GetOrCreateSection(Config::System::Main, "Core");
SetData("IPL.LNG", core->Get<u8>("Language", 0));
// or simply
SetData("IPL.LNG", Config::Get<u8>("Core", "Language", 0));
2017-02-23 18:15:12 +01:00
Léo Lam
7bd34ac0b5
Config: Trigger callbacks on layer save
...
And remove an extraneous callback trigger in Config::Load.
2017-02-23 18:15:12 +01:00
Léo Lam
9c3265f1ef
Config: Keep track of deleted keys
...
This allows deleted keys to be deleted from INIs properly.
2017-02-23 18:15:12 +01:00
Léo Lam
b51c6023ba
Config: Only save settings if they have been changed
2017-02-23 18:15:12 +01:00
Ryan Houdek
8360e358ee
New configuration namespace
2017-02-23 18:15:11 +01:00
Anthony
f7a09c41a1
Merge pull request #4941 from JosJuice/no-compressed-color
...
DolphinWX: Don't use a special color for compressed games
2017-02-23 07:17:48 -08:00
Markus Wick
0a3a2fe155
Merge pull request #4922 from sepalani/more_format
...
HLE: More printf floating point types handled
2017-02-23 11:03:32 +01:00
Markus Wick
1fc2edae51
Merge pull request #4928 from lioncash/const
...
PPCAnalyst: Make SetInstructionStats' opinfo parameter a const pointer
2017-02-23 10:55:58 +01:00
Markus Wick
25a569e6e9
Merge pull request #4929 from lioncash/symboldb
...
SymbolDB: Simplify GetSymbolsFromHash
2017-02-23 10:55:28 +01:00
Markus Wick
ae8010caff
Merge pull request #4943 from lioncash/const-table
...
JIT: Make initialization instruction tables const
2017-02-23 10:27:21 +01:00
Markus Wick
51b654ed00
Merge pull request #4945 from lioncash/jit-global
...
DolphinWX: Eliminate direct usage of the JIT global
2017-02-23 10:24:55 +01:00
Markus Wick
d4453db2ea
Merge pull request #4946 from lioncash/naming
...
JitInterface: Amend ExceptionType enum value names
2017-02-23 10:23:37 +01:00
Michael Maltese
da35abbbe2
PatchEngine: check instruction at link addr is non-zero
...
Regression introduced in #4738 . Fixes
https://bugs.dolphin-emu.org/issues/10110 .
2017-02-22 21:14:57 -08:00
Léo Lam
fb46520c74
Netplay: Change Wiimote sources before booting
...
It is kind of silly to connect all of the configured Wii remotes (from
the user config; NOT netplay assigned remotes), then connect/disconnect
additional Wii remotes *after* the core has booted.
(The bWii check has been removed, because it's actually unneeded;
m_wiimote_map is always usable regardless of bWii. And we can't get
info about the currently running game without booting the core with our
current config system…)
This should fix Netplay trying to connect all configured Wii remotes.
2017-02-22 22:52:13 +01:00
JosJuice
9b0ce31906
Merge pull request #4948 from leoetlino/file
...
IOS/FFSP: Fix the "past EOF" check
2017-02-22 22:43:40 +01:00
Markus Wick
fa9b89fdf9
Merge pull request #4911 from degasus/ABI
...
JitArm64: Extract block exit link area generation.
2017-02-22 22:26:08 +01:00
Mat M
c81cf111ef
Merge pull request #4921 from waddlesplash/netmap
...
IOS/Network/Net: Use a conversion function instead of a static array for SOCKOPT mapping
2017-02-22 16:11:53 -05:00
Léo Lam
b0a132875a
IOS/FFSP: Fix the "past EOF" check
...
Fixes a logic bug I introduced as part of #4942 . We were not
handling the "read past EOF" case correctly, which caused
requested_read_length to underflow in some cases.
Also fixes a comparison (though this is unlikely to change anything).
2017-02-22 20:54:02 +01:00
Augustin Cavalier
806bb2a4d0
IOS/Network/Net: Use a mapper function instead of a static array for SOCKOPT mapping.
...
Some platforms (e.g. Haiku) define SOL_SOCKET to be -1, which obviously
does not work with static arrays. Plus, this is cleaner.
2017-02-22 10:55:38 -05:00
Lioncash
70d336d2a9
DolphinWX: Eliminate direct usage of the JIT global
...
Instead, the JitInterface namespace functions should be used instead. This
gets rid of all usages of the JIT global from the wxWidgets UI code.
The null check isn't needed as the JIT core would already need to be
initialized in order to be within a paused state. The null check is just a
remnant from 2011 that existed before the check for a paused state was
added.
2017-02-21 16:15:47 -05:00
JMC47
d320a2a067
Force Wallace and Gromit to use smaller memcard.
2017-02-21 16:09:49 -05:00
Lioncash
ff0f60c9f9
JitInterface: Amend ExceptionType enum value names
...
Since ExceptionType is an enum class, its name already acts like the
common prefix.
2017-02-21 15:40:00 -05:00
Mat M
95b2b033b0
Merge pull request #4925 from RisingFog/remove_readonly_check
...
Remove IsReadOnly check when stop recording
2017-02-21 10:53:24 -05:00
Lioncash
f65c34d63d
JitArm64_Tables: Make initialization instruction tables constexpr
2017-02-21 10:23:39 -05:00
Lioncash
4b342fbbfc
JitIL_Tables: Make initialization instruction tables const
2017-02-21 09:55:08 -05:00
Lioncash
092d21253d
Jit64_Tables: Make initialization instruction tables const
2017-02-21 09:54:51 -05:00
Pierre Bourdon
8e3e1e7750
Merge pull request #4942 from leoetlino/ios-ffsp-read
...
IOS/FFSP: Fix the read handler logic
2017-02-21 11:46:30 +01:00
Jules Blok
28e6e259ed
VideoBackends: Set the maximum range when the depth range is oversized.
...
The depth values generated by the vertex shader need to be clamped correctly.
2017-02-21 02:57:23 +01:00
Léo Lam
a6649da088
IOS/FFSP: Fix the read handler logic
...
This changes the read request handler to work just like IOS:
* To make things clearer, we now return early from error conditions,
instead of having nested ifs.
* IOS does an additional check on the requested read length, and
substracts the current seek position from it, if the read would
cause IOS to read past the EOF (not sure what the purpose of this
check is, but IOS does it, so we should too).
* The most significant one: IOS does *not* return the requested read
length, or update the file seek position with it. Instead, it uses
the *actual* read length.
As a result of simply doing what IOS does, this fixes _Mushroom Men_.
The game creates a save file, reads 2560 bytes from it, then
immediately writes 16384 bytes to it. With IOS, the first read does not
change the seek position at all, so the save data is written at
offset 0, not 2560. With Dolphin, the read erroneously set the
seek position to 2560, which caused the data to be written at
the wrong location.
Behavior confirmed by comparing IPC replies with IOS LLE and by looking
at the FS module in IOS.
2017-02-20 23:13:15 +01:00
Mat M
6fbb23e365
Merge pull request #4938 from sjnewbury/GCC7-build-fix
...
Add missing "functional" include for GCC7
2017-02-20 10:51:10 -05:00
JosJuice
a7e11db4bf
DolphinWX: Remove usage of IsCompressed() in compression code
...
What we actually care about is whether it's a GCZ file,
not whether it's compressed. (This commit doesn't change
the behavior, since the beginning of CompressSelection
discards items that aren't BlobType::GCZ or BlobType::PLAIN.)
2017-02-20 16:08:07 +01:00
JosJuice
b1589a6337
DolphinWX: Don't use a special color for compressed games
...
- There's no clear definition of what it means for a GC/Wii game
to be compressed. GC games in GCZ are obviously compressed,
but what about formats like WBFS and CISO that just discard data?
- Hardcoded colors might have bad contrast with the used theme.
- It feels Windows XP to me.
2017-02-20 16:02:30 +01:00
Steven Newbury
02681bc352
Add missing "functional" include
...
Building fails on GCC7 without an explicit
2017-02-20 14:25:55 +00:00
Pierre Bourdon
f07a6944d1
Merge pull request #4934 from leoetlino/es-cfd
...
IOS/ES: Fix the initial content FD value
2017-02-20 12:40:00 +01:00
Léo Lam
696e493acc
IOS/ES: Fix the initial content FD value
...
YYCJ is one of the last titles to be completely broken in Dolphin.
It would hang right after the Wii remote screen. Looking at the
game's debug messages reveals that it was failing to find some of
its files.
IOS LLE booted the game just fine, which confirmed that it was an issue
with IOS HLE.
By comparing the ioctlv requests and responses with IOS, it turns out
that one of the very first ES replies was different between IOS HLE and
IOS: there was a mismatch for the content fd returned by ES.
Changing the initial content FD to what IOS returns fixes the issue.
IOS
000000: 00 00 00 08 00 00 00 00 00 00 00 07 00 00 00 09 ................
000010: 00 00 00 01 00 00 00 00 01 38 66 f0 00 00 00 20 .........8f....
000020: 00 00 00 00 00 00 00 00 00 00 00 00 81 36 d3 18 .............6..
000030: 81 36 d3 18 00 00 ff ff ff ff ff ff ff ff ff ff .6..............
Dolphin
000000: 00 00 00 08 06 00 00 00 00 00 00 07 00 00 00 09 ................
000010: 00 00 00 01 00 00 00 00 01 38 66 f0 00 00 00 20 .........8f....
000020: 00 00 00 00 00 00 00 00 00 00 00 00 81 36 d3 18 .............6..
000030: 81 36 d3 18 00 00 ff ff ff ff ff ff ff ff ff ff .6..............
So where did 0x6000000 come from?
2017-02-19 15:46:51 +01:00
Jules Blok
21967b1f6e
VideoBackends: Add a developer option to disable the shader cache.
...
Makes it easier to disable the cache while working on the shaders.
2017-02-19 12:05:44 +01:00
JosJuice
298e81881f
Forward declare IBlobReader in Volume headers
...
We have to do this (or include Blob.h) since the
constructors take unique_ptr<IBlobReader> parameters.
2017-02-19 08:40:30 +01:00
PEmu1
8fde22bcc8
Change "Fullscreen" Menu Option to "Toggle Fullscreen"
2017-02-18 16:37:49 -08:00
JosJuice
f5c82adc59
Change INI keys containing "Wii Remote" back to "Wiimote"
...
4bd5674
changed "Wiimote" to "Wii Remote" in the GUI
(intentionally) but also did the same change for two INI
keys (seemingly unintentional, breaks backwards compatibility,
and is inconsistent with the INI's filename). This commit
reverts the INI keys but not the GUI strings.
This commit uses the same approach as cbd539e
used for GameCube
sticks (but I made sure to avoid the bug that 56531a0
fixed).
2017-02-18 12:59:36 +01:00
Stenzek
b8eb1080ce
Merge pull request #4924 from stenzek/vulkan-list-restart
...
Vulkan: Fix GPU hangs on AMD Polaris
2017-02-18 21:58:30 +10:00
Markus Wick
6acad27919
Merge pull request #4927 from lioncash/unique-ptr
...
VertexManagerBase: Make CreateNativeVertexFormat return a unique_ptr
2017-02-18 12:40:00 +01:00
Lioncash
2f2aab963d
SymbolDB: Simplify GetSymbolsFromHash
...
Given a std::map can't have duplicate keys, iterating over the map
explicitly isn't necessary, and find() can just be used instead.
Also, instead of manually calling push_back() for every entry to
be added, the range constructor of std::vector can be used instead to add
the whole range all at once.
2017-02-18 06:30:20 -05:00
Lioncash
aaa6430db6
PPCAnalyst: Make SetInstructionStats' opinfo parameter a const pointer
...
trivial const-correctness stuff
2017-02-18 04:14:26 -05:00
Lioncash
1fa81f24d3
VertexManagerBase: Make CreateNativeVertexFormat return a unique_ptr
...
Much safer as opposed to just returning raw allocated memory.
2017-02-18 03:16:24 -05:00
Matthew Parlane
5814d23fd9
Merge pull request #4926 from lioncash/net
...
IOS Network: Split ncd/manage code and wd/command code into their own source files
2017-02-18 21:13:24 +13:00
Matthew Parlane
4da7164f66
Merge pull request #4596 from ligfx/updateffmpeg
...
AVIDump: Updates to avoid deprecation warnings
2017-02-18 21:12:37 +13:00
Lioncash
a8eb2e2a8f
IOS Network: Split wd/command code into its own source files
2017-02-18 02:35:53 -05:00
Stenzek
e2ddb3853e
DriverDetails: Set BUG_PRIMITIVE_RESTART for AMD drivers
2017-02-18 15:07:35 +10:00
Stenzek
50fa135594
Vulkan: Handle BUG_PRIMITIVE_RESTART
2017-02-18 15:07:34 +10:00
Stenzek
4094268009
Vulkan: Use TRIANGLE_LIST when primitive restart is not supported
2017-02-18 15:07:33 +10:00
Stenzek
6965dc0481
Vulkan: Don't enable primitive restart on list topologies
2017-02-18 15:07:32 +10:00
Lioncash
ec298d9ea9
IOS Network: Split ncd/manage code into its own source files
2017-02-17 23:55:33 -05:00
Chris Burgener
8bfe2671b2
Remove IsReadOnly check when stop recording
2017-02-17 23:23:42 -05:00
Mat M
82734fffaa
Merge pull request #4910 from lioncash/netsplit
...
IOS Network: Move net/ip/top code into its own source files
2017-02-17 22:42:28 -05:00
degasus
674e7430d0
JitArm64: Extract block exit link area generation.
...
Always use 3 instructions on linking.
2017-02-17 23:07:28 +01:00
Sepalani
5f7002da5c
HLE: More printf floating point types handled
2017-02-17 10:51:10 +00:00
Léo Lam
aa9ed91bc8
IOS: Add constants for IOS40
...
This adds memory constants for IOS40.
We should now support every system menu, courtesy of Bent82:
https://github.com/dolphin-emu/dolphin/pull/4907#issuecomment-280433023
2017-02-16 20:50:02 +01:00
Ryan Houdek
c2d5fe3ec9
Move DolphinWX over to command command line parsing.
2017-02-16 17:24:59 +01:00
Ryan Houdek
36a9479c17
Change NoGUI over to using common command line parsing
2017-02-16 17:24:58 +01:00
Ryan Houdek
f61363a791
Add command line parsing to UICommon.
2017-02-16 17:24:58 +01:00
Ryan Houdek
77c7fa836f
Add the cpp-optparse project to Externals.
...
From https://github.com/weisslj/cpp-argparse
2017-02-16 14:09:13 +01:00
Ryan Houdek
85c3e677da
Expose some ways to manage an INI file.
...
This is required for our later INI file loaders and savers
2017-02-16 09:34:25 +01:00
Ryan Houdek
a2f5c3dbe0
Add some missing INI files to FileUtil
2017-02-16 09:33:50 +01:00
Phil Christensen
34b0b1b9d6
wxWidgets expects non-const
...
revert my previous change to these files and instead create a named temporary.
2017-02-15 21:20:29 -08:00
Phil Christensen
2ed61b0ee1
C++ conformance fixes (MSVC /permissive-)
...
We (the Microsoft C++ team) use the dolphin project as part of our "Real world code" tests.
I noticed a few issues in windows specific code when building dolphin with the MSVC compiler
in its conformance mode (/permissive-). For more information on /permissive- see our blog
https://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/ .
These changes are to address 3 different types of issues:
1) Use of qualified names in member declarations
struct A {
void A::f() { } // error C4596: illegal qualified name in member declaration
// remove redundant 'A::' to fix
};
2) Binding a non-const reference to a temporary
struct S{};
// If arg is in 'in' parameter, then it should be made const.
void func(S& arg){}
int main() {
//error C2664: 'void func(S &)': cannot convert argument 1 from 'S' to 'S &'
//note: A non-const reference may only be bound to an lvalue
func( S() );
//Work around this by creating a local, and using it to call the function
S s;
func( s );
}
3) Add missing #include <intrin.h>
Because of the workaround you are using in the code you will need to include
this. This is because of changes in the libraries and not /permissive-
2017-02-15 20:37:04 -08:00
Michael Maltese
88f7056a41
Remove include Xlib.h from X11Utils.h
2017-02-15 16:49:21 -08:00
JosJuice
f80f7b6f9c
Merge pull request #4883 from JosJuice/dvd-timing-address-translation-2
...
DVDInterface: Translate Wii partition offsets for timing purposes
2017-02-15 21:12:42 +01:00
JosJuice
339f6e353d
Merge pull request #4907 from leoetlino/ios-constants
...
IOS: Add constants for some missing IOSes
2017-02-15 21:09:42 +01:00
Lioncash
92e17d2eb8
IOS: Move net/ip/top code to its own source files
2017-02-15 14:42:43 -05:00
Lioncash
245de3fa4f
IOS: Move network MAC utilities to their own source files
...
All three implementations within Net.cpp currently rely on these
functions.
2017-02-15 13:38:52 -05:00
Lioncash
0da963c32c
NetKDRequest: Make lookup maps const
2017-02-15 11:50:37 -05:00
Mat M
6f272b3a4c
Merge pull request #4862 from lioncash/compile
...
CPU Backends: Make instruction table initialization private
2017-02-15 11:44:37 -05:00
Mat M
8fd16db80d
Merge pull request #4778 from leoetlino/update-mbedtls
...
Externals: Update mbedtls to 2.4.1
2017-02-15 11:30:18 -05:00
Mat M
5a53763c1a
Merge pull request #4892 from lioncash/control
...
Control: Convert raw pointer parameter into unique_ptr
2017-02-15 11:26:53 -05:00
Mat M
3d1f00e98d
Merge pull request #4874 from ligfx/movie_magic_number
...
Movie: replace magic number 8 with sizeof(ControllerState)
2017-02-15 11:25:26 -05:00
Mat M
28a6575244
Merge pull request #4900 from lioncash/netkd
...
IOS: Separate net/kd code out from Net.cpp
2017-02-15 11:21:01 -05:00
Mat M
30ee4dfcdf
Merge pull request #4908 from leoetlino/apostrophe
...
Remove C++14 optional digit separator
2017-02-14 11:06:08 -05:00
Markus Wick
032b6252a0
Merge pull request #4875 from degasus/ABI
...
JitArm64: Optimize GPR register push/pop and fix the FPR one.
2017-02-14 17:02:17 +01:00
Léo Lam
089f45212e
IOS: Add constants for some missing IOSes
...
This adds memory values for IOS11, 20, 30, 50, 51, 52, 60 and 70.
Unfortunately, IOS40 (in its working version) is not present on NUS, so
constants for that one are still missing.
2017-02-14 12:18:58 +01:00
Anthony
f966354044
Merge pull request #4898 from RisingFog/stop_recording_dtm
...
Add Stop Play/Recording Input Menu
2017-02-13 14:10:23 -08:00
Mat M
f68955502a
Merge pull request #4905 from JosJuice/rename-copy-wii-save
...
Rename "Copy Wii Save" to "Load Wii Save"
2017-02-13 09:55:54 -05:00
Léo Lam
1aae7fb9c8
Remove C++14 optional digit separator
...
It confuses GitHub and localization tools. And some people as well.
2017-02-13 14:25:14 +01:00
Matthew Parlane
d1ade5de22
Merge pull request #4904 from JosJuice/oh0-usb-state-warning
...
Don't show savestate USB warning when not using USB passthrough
2017-02-13 14:36:26 +13:00
JosJuice
fc798ca410
Rename "Copy Wii Save" to "Load Wii Save"
...
That netplay uses a separate NAND isn't obvious,
so what "copy" means might not be clear.
2017-02-12 18:40:54 +01:00
JosJuice
8a6b8f7b53
Don't show savestate USB warning when not using USB passthrough
2017-02-12 18:16:26 +01:00
Pierre Bourdon
047394c099
Merge pull request #4903 from leoetlino/usb-kbd-stub
...
IOS/USB_KBD: Re-add the Write stub handler
2017-02-12 16:33:02 +01:00
Léo Lam
5add8c23ee
IOS/USB_KBD: Re-add the Write stub handler
...
This is something I removed by mistake. It didn't break anything in
most titles, but the Mii Channel *requires* write requests to
/dev/usb/kbd to succeed before exiting, so this commit readds the stub.
2017-02-12 16:00:50 +01:00
Mat M
da5683cf27
Merge pull request #4880 from ligfx/windowsmanifest
...
Use .manifest file for apps on Windows
2017-02-12 08:44:38 -05:00
JosJuice
5e799fd469
Merge pull request #4902 from lioncash/unused
...
Boot: Remove unused game ID string
2017-02-12 14:20:05 +01:00
Lioncash
921ab22cb7
Boot: Remove unused game ID string
2017-02-12 07:55:49 -05:00
Léo Lam
b8dd3e690f
Externals: Update mbedtls to 2.4.1
...
The latest version has tons of security fixes (which is expected for a
library such as mbedtls).
Updating also allows getting rid of a few deprecation warnings.
2017-02-12 10:29:02 +01:00
JosJuice
49ec22bc42
DVDInterface: Translate Wii partition offsets for timing purposes
...
Until now, Dolphin has been using the wrong values
for calculating DVD timing for decrypted Wii reads
(which Wii games essentially always use).
2017-02-12 09:37:39 +01:00
Lioncash
40cea773bc
IOS: Separate net/kd code out from Net.cpp
...
Net.cpp is just a huge glob of network related things, this separates the
KD portion out to make things a little more manageable.
2017-02-11 23:09:08 -05:00
Lioncash
1a99e70ed7
Force: Use std::array for m_swing
2017-02-11 20:22:50 -05:00
Lioncash
df3a4580ea
Tilt: Use std::array for m_tilt
2017-02-11 20:22:42 -05:00
Mat M
0e961776e6
Merge pull request #4879 from orbea/llvm
...
CMake: Fix LLVM error
2017-02-11 20:07:34 -05:00
Mat M
3e016ecc1d
Merge pull request #4888 from leoetlino/good-bye-singleton
...
Get rid of a singleton for NAND shared contents
2017-02-11 20:02:52 -05:00
Mat M
9cdb07b2ef
Merge pull request #4886 from leoetlino/no-prefix
...
FileIO: Minor cleanup
2017-02-11 20:00:58 -05:00
Mat M
295600c86e
Merge pull request #4884 from leoetlino/wii-connect-on-boot
...
Fix connecting Wii remotes on boot
2017-02-11 19:59:50 -05:00
Chris Burgener
28c9f2a44d
Add Stop Play/Recording Input Menu
2017-02-11 19:59:19 -05:00
Anthony
bb82586a3d
Merge pull request #4897 from JosJuice/correct-es-comment
...
Correct the comment about the number of ES devices
2017-02-11 10:27:35 -08:00
JosJuice
aaa8ad330a
Correct the comment about the number of ES devices
2017-02-11 17:13:42 +01:00
JosJuice
c96bcace2f
VolumeWiiCrypted: Use constant naming style for constants
2017-02-11 12:56:48 +01:00
JosJuice
d19aabb55b
Merge pull request #4895 from lioncash/const
...
ControllerEmu: Add const to UpdateReferences() first reference parameter
2017-02-11 09:27:37 +01:00
JosJuice
e568d57022
Merge pull request #4894 from lioncash/private
...
Cursor: Make m_z private
2017-02-11 09:26:30 +01:00
Léo Lam
81b1425b52
Remove useless Wiimote reconnect code on ES_Launch
...
Turns out it is completely unneeded and it actually works better
*without* it.
Just try launching the system menu from the HBC; in current master, it
will disconnect the remote and not connect it automatically again. With
this change, it will.
2017-02-11 09:02:32 +01:00
Léo Lam
c14becd575
Fix connecting Wii remotes on boot
...
The recent IOS initialization changes caused the Bluetooth device to
no longer exist before "starting" IOS (as it should be…), which meant
that Core could not activate Wii remotes during the boot process
anymore.
But that is actually completely useless, because we can just have the
emulated Bluetooth code itself activate Wii remotes as appropriate,
at the right moment.
2017-02-11 08:58:47 +01:00
Lioncash
98145d2160
ControllerEmu: Add const to UpdateReferences() first reference parameter
...
None of these parameters are modified.
2017-02-11 00:31:49 -05:00
Lioncash
e4bdc88494
Cursor: Make m_z private
...
This isn't used directly anywhere (and really shouldn't be public
anyways).
2017-02-10 23:57:50 -05:00
orbea
6913e8c3ac
Fix LLVM error
2017-02-10 19:07:30 -08:00
Lioncash
3c071cefa0
Boot_WiiWAD: Simplify state_checksum
...
Simplifies the interface and gets rid of pointer casts.
2017-02-10 21:14:39 -05:00
Lioncash
fda235b6e3
Buttons: Use a delegating constructor
...
Basic code deduplication
2017-02-10 19:52:15 -05:00
Lioncash
d07d9f3110
Control: Convert raw pointer parameter into unique_ptr
...
Raw pointers shouldn't be used as boundaries in scenarios where ownership
is being taken.
2017-02-10 19:35:02 -05:00
Michael Maltese
2b65e41d97
NetWindow: explicitly tell wxWidgets to clean up Windows macros
...
wxWidgets headers don't play well with some of the macros defined in
Windows headers and perform their own magic to fix things, as long as
they're included entirely either before or after any Windows headers.
This file can cause a conflict in other DolphinWX files because NetPlay
headers directly include ENet headers, which leak Windows header macros.
To fix this, explicitly tell wxWidgets here that it needs to re-clean
macros.
2017-02-10 16:14:25 -08:00
degasus
8829af62cb
JitArm64: Fix for stack push/pop ABI.
2017-02-11 00:59:12 +01:00
degasus
6aa54a029e
JitArm64: Optimize GPR register push/pop.
2017-02-11 00:59:12 +01:00
Michael Maltese
715170759c
Use .manifest file for apps on Windows
...
Works with CMake, and also adds DPI awareness to DolphinQt2 (which
wasn't enabled before).
2017-02-10 14:18:45 -08:00
Léo Lam
850802ea88
Get rid of a singleton for NAND shared contents
...
This also allows shared contents to be installed to the configured root
when installing a WAD.
2017-02-10 22:46:38 +01:00
Léo Lam
f96d71ce81
FileIO: Simplify Seek()
...
We can return early from invalid conditions, which allows getting rid
of quite a few levels of indentation.
And let's not duplicate the new_position > file_size check.
2017-02-10 21:06:23 +01:00
Léo Lam
ca4d2969a0
Remove the HLE_IPC prefix from some functions
...
Those were left over during the namespacing.
2017-02-10 20:58:41 +01:00
Lioncash
68dcb0f195
ControlReference: Add missing virtual destructor
...
ControllerEmu::Control instances have a unique_ptr<ControlReference>
member, which is passed either an InputReference or OutputReference.
Without this virtual destructor, deleting a derived class through a
pointer to the base class is undefined behavior.
2017-02-10 13:58:44 -05:00
Mat M
f6d364e37b
Merge pull request #4873 from lioncash/controller-emu
...
ControllerEmu: Separate ControlGroup from ControllerEmu
2017-02-10 13:50:33 -05:00
Anthony
8f81051df3
Merge pull request #4882 from leoetlino/elf-fix
...
Fix booting Wii DOLs
2017-02-10 10:21:08 -08:00
Léo Lam
328359118c
Fix booting Wii DOLs
...
We did not set up any kind of constants in memory for Wii DOLs or even
initialize IOS, so a lot of homebrew would just crash when opening ES.
2017-02-10 19:14:34 +01:00
Léo Lam
7a1f676ef4
Always use configured root when installing WAD
...
This prevents Dolphin from writing to /sys/uid.sys (on the host; root
partition) when installing a WAD before starting emulation, because
the session root is not initialized at that moment.
Incidentally, this also gets rid of a singleton.
2017-02-10 19:12:08 +01:00
Lioncash
1ce1304d0f
CPU Backends: Make each CPU backend responsible for initializing its own
...
instruction tables
Previously, all of the internals that handled how the instruction tables
are initialized were exposed externally. However, this can all be made
private to each CPU backend.
If each backend has an Init() function, then this is where the instruction
tables should be initialized, it shouldn't be the responsibility of
external code to ensure internal validity.
This allows for getting rid of all the table initialization shenanigans
within JitInterface and PPCTables.
2017-02-10 13:08:14 -05:00
Lioncash
5da7d700ca
JIT: Make compilation functions a part of the JIT classes
2017-02-10 13:05:44 -05:00
Anthony
96e83b5d54
Merge pull request #4764 from aldelaro5/crash-fix-inputconfig
...
InputConfigDialog pass the device_cbox to the wiimote extension dialogs
2017-02-09 21:50:44 -08:00
degasus
4d3883a756
JitArm64: Handle stack faults.
2017-02-10 00:32:21 +01:00
degasus
40b7cc9252
JitArm64: Use a custom stack with proper guard pages.
2017-02-10 00:32:17 +01:00
Lioncash
6a75ea5653
ControllerEmu: Separate ControlGroup from ControllerEmu
...
ControllerEmu, the class, is essentially acting like a namespace for
ControlGroup. This makes it impossible to forward declare any of the
internals. It also globs a bunch of classes together which is kind of a
pain to manage.
This splits ControlGroup and the classes it contains into their own source
files and situates them all within a namespace, which gets them out of
global scope.
Since this allows forward declarations for the once-internal classes, it
now requires significantly less files to be rebuilt if anything is changed
in the ControllerEmu portion of code.
It does not split out the settings classes yet, however, as it
would be preferable to make a settings base class that all settings derive
from, but this would be a functional change -- this commit only intends to
move around existing code. Extracting the settings class will be done in
another commit.
2017-02-09 18:18:52 -05:00
Michael Maltese
31e3424367
Movie: replace magic number 8 with sizeof(ControllerState)
...
(Bonus points for rhyming commit message)
2017-02-09 15:07:47 -08:00
JosJuice
657639899f
Merge pull request #4872 from lioncash/scan
...
GameListCtrl: Separate some scanning code into functions
2017-02-09 20:56:29 +01:00
Lioncash
ea6e75d45f
GameListCtrl: Separate some scanning code into functions
...
Several of the things done while performing a scan are logically their own
behavior (e.g. loading a titles file, checking if an entry should be added, etc).
2017-02-09 14:50:20 -05:00
Lioncash
56531a0b7f
ControllerEmu: Fix incorrect default radius being set in AnalogStick
...
The three parameter AnalogStick constructor takes an internal name, a
display name, and a default radius argument. The delegated constructor is
the one that calls the ControlGroup constructor, setting the group type,
so passing the group type here is a logic bug.
The only reason this appeared to work despite this bug is because
GROUP_TYPE_STICK has a value of 1, and the default radius value used for
attachment sticks is 1.0.
2017-02-08 23:08:13 -05:00
Mat M
73382852b7
Merge pull request #4502 from ligfx/extractcontrolreference
...
InputCommon: Extract ControlReference from ControllerInterface
2017-02-08 20:01:18 -05:00
Pierre Bourdon
17e4b450fb
Merge pull request #4784 from leoetlino/mios
...
IOS: Implement MIOS functionality
2017-02-09 01:57:16 +01:00
JosJuice
01073946b4
Fix default audio backend on Android being "No audio output"
...
People who already have encountered the problem will need to
manually change the audio backend (or delete the config INI).
2017-02-08 21:29:27 +01:00
Lioncash
90273191da
Boot: Add missing includes
2017-02-08 10:57:24 -05:00
Lioncash
3b41d4806c
Boot_BS2Emu: Get rid of unnecessary headers
2017-02-08 10:57:16 -05:00
Lioncash
57d543b10a
ElfReader: Get rid of unnecessary includes
2017-02-08 10:57:10 -05:00
Lioncash
95a918b9f8
Boot_WiiWAD: Get rid of unnecessary includes
2017-02-08 10:43:50 -05:00
Léo Lam
a085cd431d
Adjust event times after a PPC clock change
...
This likely doesn't change much, but it makes events trigger at the
correct time after a clock change.
2017-02-08 16:22:27 +01:00
Lioncash
e6ffce3ac9
ElfReader: Make constructor explicit
...
Allowing implicit conversions here is definitely not desirable.
2017-02-08 10:20:06 -05:00
Léo Lam
fdfe57a49b
IOS: Implement MIOS functionality
...
This implements MIOS's PPC bootstrapping functionality, which enables
users to start a GameCube game from the Wii System Menu.
Because we aren't doing Starlet LLE (and don't have a boot1), we can
just jump to MIOS when the emulated software does an ES_LAUNCH or uses
ioctlv 0x25 to launch BC.
Note that the process is more complex on a real Wii and goes through
several more steps before getting to MIOS:
* The System Menu detects a GameCube disc and launches BC (1-100)
instead of the game. [Dolphin does this too.]
* BC, which is reportedly very similar to boot1, lowers the Hollywood
clock speed to the Flipper's and then launches boot2.
* boot2 sees the lowered clock speed and launches MIOS (1-101) instead
of the System Menu.
MIOS runs instead of IOS in GC mode and has an embedded GC IPL (which
is the code actually responsible for loading the disc game) and a PPC
bootstrap code. To get things working properly, we simply need to load
both to memory, then jump to the bootstrap code at 0x3400.
Obviously, because of the way this works, a real MIOS is required.
2017-02-08 15:07:34 +01:00
Léo Lam
4662e25cbb
DolphinWX: Fix overclock slider clock display
2017-02-08 15:07:34 +01:00
Léo Lam
fd49a1b2d5
Get rid of GetUsbPointer for emulated Bluetooth
...
It held a raw pointer to a IOS::HLE::Device::BluetoothEmu that is not
guaranteed to exist (and of course, nothing checked that it wasn't
nullptr), but what is more, it's totally unnecessary because we have
IOS::HLE::GetDeviceByName().
Since we cannot always inform the host that Wii remotes are
disconnected from ES, that is now done in BluetoothEmu's destructor.
2017-02-08 15:07:33 +01:00
Léo Lam
5fd5eeb82a
IOS/ES: Don't write anything to the request after ES_Launch
...
Unless IOS failed at ES_Launch, it doesn't appear to write anything
back to the request after a launch, because the request is never
actually replied to in the normal way.
So let's just drop the writes to make things less confusing.
2017-02-08 15:07:33 +01:00
Léo Lam
9e6f5b203e
IOS/ES: Implement ioctlv 0x25 (ES_LaunchBC)
...
This ioctlv is used to launch BC. Not sure if that's useful,
since only the system menu is known to launch BC and it does that
through a regular ES_LAUNCH; but let's implement it anyway.
(Implementation based on IOS59.)
2017-02-08 15:07:32 +01:00
Léo Lam
ab38be1ee2
IOS: Clarify Init, Reinit, Reset, Shutdown
...
Some minor changes to make things slightly less confusing:
* Reinit doesn't actually init anything. It just adds static devices to
the map, so let's give it an actually descriptive name. And let's not
expose it in the header when it should not be.
* Reset's parameter name was changed from "force" -- which totally does
not describe what it does -- to "clear_devices".
* Add a reload function which handles the reload process properly
(reset all devices, set up memory values, re-add devices) and
without publicly exposing implementation details.
2017-02-08 15:07:29 +01:00
JosJuice
14bb81716c
WiiRoot: Only call InitializeDeterministicWiiSaves on temporary NAND
...
Shouldn't make any difference in practice because
both IsRecordingInput and IsNetPlayRunning should
be false if a temporary NAND isn't being set up,
but doing it this way is cleaner regardless.
2017-02-08 14:26:25 +01:00
Matt Mastracci
961f84b767
DVD read chunking
...
Splits DVD reads up into smaller chunks so that data is available
before the final interrupt is triggered. This better simulates the DMA
that happens on a real device, which some games will take advantage of -
by either playing back data as it is loading or by using data that is
going to be overwritten shortly by an outstanding read.
2017-02-08 14:18:55 +01:00
JosJuice
99492c22a6
Merge pull request #4839 from leoetlino/better-warnings
...
Be less annoying when usbdk is not installed
2017-02-08 14:00:12 +01:00
Markus Wick
027719d8e2
Merge pull request #4711 from lioncash/tables
...
JIT Instruction Tables: Eliminate JIT global usages
2017-02-08 09:39:50 +01:00
Michael Maltese
2d51bf579f
ControlReference: put parsed_expression in a unique_ptr
2017-02-07 22:59:29 -08:00
Michael Maltese
492d5b6ac7
ControlReference: hide parse_error behind GetParseStatus()
2017-02-07 22:59:26 -08:00
Michael Maltese
9a632ea7b9
ControlReference: hide is_input behind function
2017-02-07 22:59:21 -08:00
Michael Maltese
813a725f68
ControlReference: move function bodies out of header
2017-02-07 22:59:14 -08:00
Michael Maltese
a509f56116
InputCommon: Extract ControlReference from ControllerInterface
...
Better separation of concerns. Relegates `ControllerInterface` to
enumerating input controls, and the new `ControlReference` deals with
combining inputs and configuration expression parsing.
2017-02-07 22:59:10 -08:00
Matthew Parlane
e2706b4381
Merge pull request #4860 from lioncash/lock
...
FifoPlayerDlg: Use std::lock_guard instead of manual mutex locking/unlocking
2017-02-08 18:59:28 +13:00
Matthew Parlane
f838d16b0c
Merge pull request #4546 from RisingFog/tas_wii_nand
...
Copy Wii save for current game for Netplay and TAS
2017-02-08 18:58:28 +13:00
Lioncash
399757a771
FifoPlayerDlg: Use std::lock_guard instead of manual mutex locking/unlocking
...
Same thing, but less error prone.
2017-02-08 00:26:32 -05:00
Matthew Parlane
4b7dd1f638
Merge pull request #4846 from aldelaro5/fix-symbols-newline
...
Fix symbols name from maps taking 2 lines instead of one
2017-02-08 18:18:56 +13:00
Matthew Parlane
7b3b8f26a3
Merge pull request #4789 from lioncash/input
...
InputCommon: Move ControllerEmu to its own directory
2017-02-08 18:16:14 +13:00
Matthew Parlane
dac6a66252
Merge pull request #4769 from lioncash/settingshandler
...
SettingsHandler: Minor cleanup
2017-02-08 18:15:37 +13:00
Matthew Parlane
f456fcec48
Merge pull request #4840 from lioncash/net
...
NetWindow: Eliminate usages of the main_window global
2017-02-08 18:12:56 +13:00
Matthew Parlane
691abc223b
Merge pull request #4859 from lioncash/opcodedecoder
...
OpcodeDecoding: Convert #defines into enum constants
2017-02-08 18:12:11 +13:00
Matthew Parlane
5b7c0d86cd
Merge pull request #4850 from lioncash/redundant
...
Core: Remove redundant returns in FifoPlayerThread() and CpuThread()
2017-02-08 18:11:30 +13:00
Matthew Parlane
f91290d702
Merge pull request #4857 from lioncash/global
...
DSPCore: Make g_cycles_left a regular member variable of DSPEmitter
2017-02-08 18:10:59 +13:00
Matthew Parlane
b41921935c
Merge pull request #4854 from lioncash/constant
...
PowerPC: Convert #defines into typed constants
2017-02-08 18:10:11 +13:00
Matthew Parlane
a027aadb24
Merge pull request #4851 from leoetlino/fix-wifi-scanning
...
IOS: Fix Wi-Fi scanning in system menu
2017-02-08 18:09:12 +13:00
Lioncash
d9d069e024
OpcodeDecoding: Convert #defines into enum constants
...
Gets several constants out of global scope.
2017-02-08 00:05:17 -05:00
Florent Castelli
2bc3ffe07d
DolphinWX: Add missing include for no-PCH builds
2017-02-08 05:24:46 +01:00
Lioncash
31f037b187
InputCommon CMakeLists: Normalize whitespace
...
Tabs -> Spaces
2017-02-07 22:15:53 -05:00
Lioncash
3a66f2c008
ControllerEmu: Move into its own directory
...
ControllerEmu is a massive class with a lot of nested public classes.
The only reason these are nested is because the outer class acts as a
namespace. There's no reason to keep these classes nested just for that.
Keeping these classes nested makes it impossible to forward declare them, which leads to quite a few includes in other headers, making compilation take
longer.
This moves the source files to their own directory so classes can be
separated as necessary to their own source files, and be namespaced under the
ControllerEmu namespace.
2017-02-07 22:12:06 -05:00
Lioncash
4260afc848
DSPCore: Make g_cycles_left a regular member variable of DSPEmitter
...
Gets rid of a global within the DSP core.
2017-02-07 21:56:57 -05:00
Florent Castelli
9ca4037ed9
UICommon: Rename HAS_LLVM to HAVE_LLVM
2017-02-08 03:30:38 +01:00
Florent Castelli
f649e26655
cmake: Move LLVM import to UICommon
...
To use it, with a modern LLVM (3.9+), set your CMAKE_PREFIX_PATH
to point to the LLVM install folder or to a LLVM build folder.
We're linking ALL of LLVM libs since I don't really know which ones we need.
LTO will take care of sliming the binary size...
2017-02-08 03:30:38 +01:00
Florent Castelli
8c82607c95
cmake: Don't use unqualified target_link_libraries
...
You can't mix unqualified and qualified link libraries (PUBLIC / PRIVATE).
Use the modern form.
2017-02-08 03:07:43 +01:00
Lioncash
13f70d4597
PowerPC: Convert #defines into typed constants
2017-02-07 20:17:15 -05:00
Florent Castelli
428d1624fa
cmake: Move BlueZ detection to Core
2017-02-08 01:08:33 +01:00
Léo Lam
e7b6b87ffe
IOS: Fix Wi-Fi scanning in system menu
...
The second output vector should not be written to for
IOCTLV_NCD_READCONFIG. If it is, the system menu will never attempt
to open /dev/net/wd/command and request a Wi-Fi scan.
2017-02-08 00:43:38 +01:00
Lioncash
06f6ca8d81
Core: Remove redundant returns in FifoPlayerThread() and CpuThread()
...
There's no need to explicitly return at the end of a void function.
2017-02-07 17:59:03 -05:00
Florent Castelli
c1dcd06043
cmake: Move PulseAudio detection to AudioCommon
2017-02-07 23:35:44 +01:00
Matthew Parlane
22fbcc67fc
Merge pull request #4773 from lioncash/ucode
...
UCodes: Eliminate unnecessary includes in header
2017-02-08 10:54:12 +13:00
Matthew Parlane
47ccf52c5e
Merge pull request #4845 from ligfx/addbraces
...
JitIL/IR.cpp: add braces around std::array initalizers
2017-02-08 09:42:48 +13:00
Matthew Parlane
2112acf500
Merge pull request #4847 from lioncash/exi
...
EXI_DeviceAD16: Minor changes
2017-02-08 09:40:59 +13:00
Lioncash
31dc2b9cc1
GCPadEmu: Make constructor explicit
2017-02-07 15:12:15 -05:00
Lioncash
a2a188533a
GCKeyboardEmu: Make constructor explicit
2017-02-07 15:11:49 -05:00
Lioncash
9f8177c9ac
UCodes: Eliminate unnecessary includes in header
2017-02-07 15:08:57 -05:00
Michael Maltese
64405f26a8
lint JitILCommon/IR.cpp
2017-02-07 12:08:25 -08:00
Lioncash
1f14b7f907
EXI_DeviceAD16: Amend variable naming
...
Drops Hungarian Notation type prefixing and prefixed underscores.
2017-02-07 14:58:23 -05:00
Lioncash
2f74a6f552
EXI_DeviceAD16: In-class initialize member variables
...
Same thing, less code.
2017-02-07 14:54:54 -05:00
Mat M
3cda4e1d9c
Merge pull request #4822 from ligfx/copysys
...
CMake: add CMAKE_CONFIGURE_DEPENDS on Data/Sys
2017-02-07 10:41:25 -05:00
Mat M
db9720d038
Merge pull request #4842 from ligfx/fix_prix64_es
...
ES: use PRIx64 to print m_addtitle_tmd.GetTitleId()
2017-02-07 10:39:29 -05:00
aldelaro5
9dc9033b76
Fix symbols name from maps taking 2 lines instead of one
...
Symbols map may not only end with a \n, but they may also end with \r\n and only the \n would get removed. This is the case with the Super Mario Sunshine map file which resulted in a weird looking symbols list and thus made it harder to scroll through it. This removes the \r after the \n has been removed if it's present.
2017-02-07 09:56:19 -05:00
Michael Maltese
8048716efb
JitIL/IR.cpp: add braces around std::array initalizers
...
Fixes the following warnings on macOS Clang:
```
Building CXX object Source/Core/Core/CMakeFiles/core.dir/PowerPC/JitILCommon/IR.cpp.o
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1374:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
LoadCR, LoadLink, LoadMSR, LoadGReg, LoadCTR, InterpreterBranch,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1378:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
StoreLink,
^~~~~~~~~~
Source/Core/Core/PowerPC/JitILCommon/IR.cpp:1419:9: warning: suggest braces around initialization of subobject [-Wmissing-braces]
BranchCond,
^~~~~~~~~~~
3 warnings generated.
```
2017-02-07 01:10:43 -08:00
Michael Maltese
fc0d88817f
CMake: make option ENABLE_SDL work again
...
Broken in PR #4755 / commit f978765
2017-02-06 20:59:58 -08:00
Michael Maltese
58f01e60d6
ES: use PRIx64 to print m_addtitle_tmd.GetTitleId()
...
Fixes a warning on macOS with Clang.
2017-02-06 20:31:28 -08:00
Michael Maltese
04158dfe15
AVIDump: use a separate AVCodecContext
...
Using the AVCodecContext contained in AVStream for muxing is officially
discouraged[1] and AVStream::codec was deprecated in favor of
AVStream::codecpar in libavformat 57.33.100 / 57.5.0.
1: [FFmpeg-cvslog] lavf: replace AVStream.codec with AVStream.codecpar: https://ffmpeg.org/pipermail/ffmpeg-cvslog/2016-April/099152.html
2017-02-06 20:23:37 -08:00
Michael Maltese
867d6134c5
AVIDump: open codec before stream
...
Minor oversight in the existing code.
2017-02-06 20:23:37 -08:00
Michael Maltese
dd3d8c7a4e
AVIDump: use avformat_free_context
...
This function frees all associated streams and codec contexts, and
has existed since libavformat 52.96.0 (February 2011).
2017-02-06 20:23:37 -08:00
Michael Maltese
ac214190fd
AVIDump: Replace deprecated avcodec_encode_video2
2017-02-06 20:23:37 -08:00
Florent Castelli
d1eaa59a8e
cmake: Move detection of OpenAL to AudioCommon
2017-02-07 03:42:43 +01:00
Florent Castelli
cbb7e4072a
cmake: Move AO detection to AudioCommon
2017-02-07 03:42:43 +01:00
Léo Lam
b6d526ba2e
IOS: Do not init libusb unless passthrough is enabled
2017-02-07 00:47:21 +01:00
Léo Lam
6a0bf24e0b
Move libusb context initialization to on first use
...
This prevents libusb warnings from showing up even when the user is
not using Bluetooth or USB passthrough, or the Wii U GC adapter.
2017-02-07 00:47:21 +01:00
Léo Lam
db7ee668ff
Notify user that USB won't work if libusb init fails
2017-02-07 00:47:21 +01:00
Lioncash
c41f587c29
Frame: Hide functions that don't need to be exposed
...
Any functions left exposed are used elsewhere through the main_window
global. May as well prevent any more functions from being used in that
manner where possible.
2017-02-06 18:29:26 -05:00
Lioncash
ead076d335
NetWindow: Get rid of direct use of the main_window global
...
Utilizes the event system (which is what should have been done here
initially), in order to prevent coupling between two different window frames.
This also makes booting games more versatile using the UI event system,
as the event can just act as a carrier for the filename, making directly
calling boot functions unnecessary. All that's needed is for the event to
propagate to the frame.
2017-02-06 18:29:20 -05:00
Michael Maltese
1fd1620e4e
CMake: add CMAKE_CONFIGURE_DEPENDS on Data/Sys
...
Since files from Data/Sys are collected and added to a built macOS .app
bundle using GLOB, any new files won't get picked up until the next time
CMake is run. Tell CMake it should re-run itself every time the directory
is touched.
2017-02-06 13:55:35 -08:00
Léo Lam
f5a3aac8e1
IOS: Check if libusb can be used instead of asserting
...
This prevents panic alerts from showing up three times when starting
Wii emulation whenever libusb could not be initialized. The user has
already seen a warning at startup -- no need to warn them 3 more times.
2017-02-06 22:09:43 +01:00
Markus Wick
eb3c172b95
Merge pull request #4618 from Helios747/bounding_box_check
...
[Video] Warn when booting a bounding box game on an unsupported GPU
2017-02-06 21:58:19 +01:00
Matthew Parlane
d244597b42
Merge pull request #4408 from leoetlino/usb
...
IOS: USB support (OH0, USB_VEN, USB_HID)
2017-02-07 09:17:05 +13:00
Matthew Parlane
2835cfde52
Merge pull request #4836 from lioncash/enum
...
DSPCore: Convert the DSPCoreState enum into an enum class
2017-02-07 09:14:22 +13:00
Anthony
0c7d9bbb73
Merge pull request #4837 from lioncash/npd
...
NetWindow: Make chat messages queue private
2017-02-06 10:20:29 -08:00
Lioncash
2597d2b69b
NetWindow: Make chat messages queue private
...
This doesn't need to be publicly accessable.
2017-02-06 13:03:35 -05:00
Mat M
f978765bf0
Merge pull request #4755 from Orphis/cmake_sdl
...
cmake: Modernize SDL discovery
2017-02-06 11:55:03 -05:00
Lioncash
063e4df5a1
DSPCore: Convert the DSPCoreState enum into an enum class
2017-02-06 11:47:19 -05:00
Mat M
e4c17f126c
Merge pull request #4835 from ligfx/configurefilescmrev
...
CMake: use configure_file to generate scmrev.h
2017-02-06 11:14:08 -05:00
Michael Maltese
acc8dae2b3
CMake: use configure_file to generate scmrev.h
...
The built-in `configure_file` command correctly handles the case where
none of the variables change and scmrev.h doesn't need to be rebuilt.
This saves a full re-link of Dolphin any time CMake is re-run.
2017-02-05 22:26:49 -08:00
Lioncash
259f827e34
Core: Actually make the State enum an enum class
...
It helps if I actually make it a strongly typed enum.
2017-02-06 01:13:07 -05:00
Matthew Parlane
b9fc79020d
Merge pull request #4817 from sepalani/debug_print_case
...
Handle another case with HLE_GeneralDebugPrint
2017-02-06 17:40:44 +13:00
Matthew Parlane
abe7081337
Merge pull request #4818 from ligfx/bundleutilities
...
CMake: use BundleUtilities to fix up Dolphin.app
2017-02-06 17:39:46 +13:00
Matthew Parlane
d022913fb3
Merge pull request #4828 from lioncash/state
...
Core: Convert State enum into an enum class
2017-02-06 17:38:46 +13:00
Matthew Parlane
516ddc1d0c
Merge pull request #4820 from JosJuice/translate-swedish
...
Translate Swedish in example strings to English
2017-02-06 17:36:41 +13:00
Florent Castelli
a7c4fd9bf0
cmake: Move discovery of SDL to InputCommon
2017-02-06 05:02:45 +01:00
Chris Burgener
5224771dac
Copy Wii save for current game for Netplay and TAS
2017-02-05 13:17:05 -05:00
Mat M
1f1a232546
Merge pull request #4629 from JosJuice/es-movie-title-id
...
Don't call Movie::SetTitleId from ES
2017-02-05 09:26:08 -05:00
Mat M
af33c9714e
Merge pull request #4825 from Orphis/cmake_alsa
...
CMake: Updates to AudioCommon & ALSA discovery
2017-02-05 08:50:34 -05:00
Lioncash
e07383a783
Core: Convert State enum into an enum class
2017-02-05 08:32:23 -05:00
Matthew Parlane
c4d470cbf2
Merge pull request #4827 from Kurausukun/master
...
Support Setting CPU Overclock via GameINIs
2017-02-06 01:36:05 +13:00
Matthew Parlane
4df22e03ca
Merge pull request #4823 from lioncash/tlb
...
PowerPC: Rename tlb_entry struct to TLBEntry
2017-02-06 00:59:39 +13:00
Kurausukun
2479fe6e53
Support Setting CPU Overclock via GameINIs
2017-02-05 06:16:32 -05:00
Léo Lam
b63b6111b3
IOS: Implement USB_VEN (/dev/usb/ven)
2017-02-05 11:36:49 +01:00
Léo Lam
c9f4889437
IOS: Re-implement USB_HIDv4 (/dev/usb/hid)
...
This reimplements the USB HID v4 IOS device using the new common
USB code (to reuse more code and allow emulated HIDs to be added
more easily in the future).
The main difference is that HIDs now have to be whitelisted, like
every other USB device for OH0 and VEN.
2017-02-05 11:36:49 +01:00
Léo Lam
ee188a1d5a
IOS: Implement OH0 (/dev/usb/oh0)
2017-02-05 11:36:48 +01:00
Léo Lam
c8a6dc6c23
Use a single libusb context
...
libusb on Windows is limited to only a single context. Trying to open
more than one can cause device enumerations to fail randomly.
libusb is thread-safe and we don't use the manual polling support (with
`poll()`) so this should be safe.
2017-02-05 11:36:48 +01:00
Léo Lam
73e55ccf44
IOS: Add base Host and USB::Device classes
...
The Host class will be used by the OH0, VEN and HID implementations
as the base class for the IOS HLE device. It handles scanning devices,
detecting device changes and everything that will be needed for OH0,
VEN and HID to be implemented, while mostly abstracting libusb away.
The Device class is for actual USB devices. This commit adds a
LibusbDevice which interacts with a real USB device and enables
USB passthrough.
2017-02-05 11:36:47 +01:00
Léo Lam
b8c651eac4
IOS: Store the active IOS title ID
...
This allows us to get back the current active IOS version and expose
only devices which exist/can be used in that version.
2017-02-05 11:36:47 +01:00
Léo Lam
e246afb049
IOS: Add UpdateWantDeterminism to devices
...
This will be useful for the USB devices to disconnect and hide any real
devices when Core::g_want_determinism is true.
2017-02-05 11:36:47 +01:00
Léo Lam
b7cc25535f
DolphinWX: Add USB passthrough settings
...
Allows adding/removing devices from USB passthrough.
2017-02-05 11:36:47 +01:00
Léo Lam
69a13a12e2
Add USB passthrough setting and USBUtils
...
This adds a USB passthrough setting to ConfigManager and everything
needed for the UI to show and manage the whitelist properly.
2017-02-05 11:36:46 +01:00
JosJuice
e4d20647d4
Merge pull request #4824 from lioncash/coremode
...
PowerPC: Convert CoreMode enum into an enum class
2017-02-05 08:25:12 +01:00
Florent Castelli
2fceb016b4
cmake: Move ALSA detection to AudioCommon
2017-02-05 02:55:05 +01:00
Florent Castelli
d615c0f868
cmake: Add imported target to FindALSA
2017-02-05 02:55:05 +01:00
Florent Castelli
9ebfaa9324
AudioCommon: Move logic for default sound backend there from ConfigManager
...
This way, we don't have to leak the HAVE_ALSA define there.
2017-02-05 02:55:04 +01:00
Florent Castelli
31dfaafe0b
AudioCommon: Remove checks against NullSound::isValid()
...
The NullAudio backend is guaranteed to be compiled in, so no reason
to check it.
In addition to that, if it wasn't valid, it wouldn't work as a fallback
in InitSoundStream as there are uses to g_sound_stream later.
2017-02-05 02:55:04 +01:00
Florent Castelli
ee8a21f1d0
cmake: In AudioCommon, append sources and dependencies to a real target
2017-02-05 02:55:04 +01:00
Florent Castelli
f1ba7832a5
cmake: Reindent AudioCommon
2017-02-05 02:55:04 +01:00
Lioncash
f7b9db9846
PowerPC: Convert CoreMode enum into an enum class
...
Prevents constants from polluting the namespace.
2017-02-04 19:34:56 -05:00
Lioncash
4b091f5872
MMU: Use references to TLBEntry instances instead of pointers
...
Same behavior, less verbosity.
2017-02-04 19:03:22 -05:00
Lioncash
52b45a3933
PowerPC: Rename tlb_entry struct to TLBEntry
...
Makes it consistent with our naming style.
2017-02-04 18:58:45 -05:00
JosJuice
bc2b9f4c3c
Translate Swedish in example strings to English
2017-02-04 22:51:01 +01:00
Helios747
4c22e6387d
[Video] Warn when booting a bounding box game on an unsupported GPU
2017-02-04 10:08:52 -08:00
Markus Wick
3be364073d
Merge pull request #4713 from JosJuice/core-init-gameini
...
Don't load game INIs in Core::Init
2017-02-04 08:32:03 +01:00
Markus Wick
2ad62bf5df
Merge pull request #4777 from lioncash/dspstack
...
DSPCore: Convert DSP stack register enum into an enum class
2017-02-04 08:27:11 +01:00
Markus Wick
72d887cb20
Merge pull request #4816 from lioncash/pair
...
FramebufferManagerBase: Return a std::pair from GetTargetSize
2017-02-04 08:21:52 +01:00
Michael Maltese
38816bf51d
CMake: use BundleUtilities to fix up Dolphin.app
2017-02-03 22:27:19 -08:00
Florent Castelli
fb02a321b6
cmake: Move OpenSLES detection to AudioCommon through find_package()
2017-02-04 03:38:11 +01:00
Sepalani
e280f5615a
Handle another case with HLE_GeneralDebugPrint
2017-02-03 23:30:37 +00:00
Matthew Parlane
529dc6aa53
Merge pull request #4811 from lioncash/memcardmanager
...
MemcardManager: Minor changes
2017-02-04 10:09:01 +13:00
Matthew Parlane
e2b0197ff6
Merge pull request #4807 from leoetlino/ios-version-for-wads
...
Remove unneeded write to 0x3140/0x3188 for WADs
2017-02-04 10:08:29 +13:00
JosJuice
edcf6819e2
Don't load game INIs in Core::Init
...
The game INIs are already loaded in BootManager::BootCore,
which is executed right before. Let's put the g_aspect_wide
code there instead.
2017-02-03 21:56:45 +01:00
JosJuice
c847a5258f
BootManager: Use local SConfig reference when possible
2017-02-03 21:55:02 +01:00
Matthew Parlane
87c73cbeb3
Merge pull request #4812 from lioncash/define
...
PowerPC: Move page #define constants to MMU.cpp
2017-02-04 09:49:48 +13:00
Lioncash
c85e0a2586
FramebufferManagerBase: Return a std::pair from GetTargetSize
...
Keeps associated data together. It also eliminates the possibility of out
parameters not being initialized properly. For example, consider the
following example:
-- some FramebufferManager implementation --
void FBMgrImpl::GetTargetSize(u32* width, u32* height) override
{
// Do nothing
}
-- somewhere else where the function is used --
u32 width, height;
framebuffer_manager_instance->GetTargetSize(&width, &height);
if (texture_width != width) <-- Uninitialized variable usage
{
...
}
It makes it much more obvious to spot any initialization issues, because
it requires something to be returned, as opposed to allowing an
implementation to just not do anything.
2017-02-03 15:27:53 -05:00
JosJuice
e572fb102f
Move ES_DIVerify's Movie-related code to a more logical place
2017-02-03 19:53:35 +01:00
JosJuice
6aa41ebc55
Movie: Put Wii s_bClearSave handling in a more logical place
2017-02-03 19:53:23 +01:00
JosJuice
88e0a5e418
Don't call Movie::SetTitleId from ES
...
Movie basically just wants to get the title ID of
the initally booted game, so let's set the title ID in
ConfigManager at boot like we do with the regular game ID.
Aside from being cleaner, this should make the approach to
title IDs compatible with booting non-disc software (WADs).
2017-02-03 19:52:25 +01:00
Michael Maltese
fa9881f0d2
CMake: actually call deploy-mac.py, don't just echo it
2017-02-03 09:22:30 -08:00
Lioncash
a30c653f3d
D3D: Add CommonTypes include to D3DTexture.h
...
Resolves a compile error on the Windows CMake build.
2017-02-03 12:07:53 -05:00
Lioncash
c67d095787
PowerPC: Move page #define constants to MMU.cpp
...
These are only ever used here.
This also converts them into typed constants.
2017-02-03 11:48:42 -05:00
Lioncash
5ce82583f8
MemcardManager: Get rid of prefixed double-underscores from an identifier
...
Identifiers with prefixed double-underscores are reserved by the C++
standard.
2017-02-03 11:30:39 -05:00
Lioncash
9d523f52f2
MemcardManager: Convert C arrays to std::array
2017-02-03 11:15:46 -05:00
Florent Castelli
ca42f08e7d
cmake: Copy resources next to the DolphinWX binary on Windows
2017-02-03 04:54:54 +01:00
Florent Castelli
1a4f044e9e
cmake: Add RC file on Windows to DolphinWX
2017-02-03 04:54:54 +01:00
Florent Castelli
3842a9b71c
OpenAL: Move Windows binaries to lib folder and fix CMake detection
...
The module FindOpenAL is looking for the dll in a folder called lib, not x64.
This is only used on Windows x64, it's fine to remove the platform name.
2017-02-03 04:54:54 +01:00
Mat M
1b9b1a356b
Merge pull request #4805 from Orphis/cmake_macos
...
CMake macOS fixes
2017-02-02 20:53:22 -05:00
Matthew Parlane
7f2753362f
Merge pull request #4802 from lioncash/header
...
ShaderGenCommon: Remove unnecessary includes
2017-02-03 14:52:41 +13:00
Matthew Parlane
8b1fc5b753
Merge pull request #4806 from lioncash/memcard-dlg
...
MemcardManager: Use unique_ptr over raw pointers
2017-02-03 14:50:55 +13:00
Léo Lam
767cbcafb1
Remove unneeded write to 0x3140/0x3188 for WADs
...
This is unnecessary now that IOS::HLE is responsible for writing the
values to memory; removing the writes also prevents the IOS minor
version from being mangled (by the write to 0x3142).
2017-02-02 22:05:36 +01:00
Lioncash
d72cf81dea
MemcardManager: Use unique_ptr over raw pointers
2017-02-02 14:33:01 -05:00
degasus
384efb0cb2
JitArm64: Initial implementation of the BLR optimization.
2017-02-02 09:06:34 +01:00
Florent Castelli
e9aac53cec
macOS: Update how resources are copied in the bundle
...
Instead of using install() commands, we use the MACOSX_PACKAGE_LOCATION
property, which will allow the files to be identified and updated individually
by the build system without having to remove the entire folder and copy it
each time.
deploy-mac.py is now idempotent and should be working properly, so we'll
call it all the time from now on.
2017-02-02 03:51:32 +01:00
Florent Castelli
0f9a6697fb
DolphinWX: Update how localization files are installed
...
On macOS, we want them copied in the bundle directly, otherwise we will
install them later in the system folder.
Obviously not working for Windows, but that's not any different from before!
2017-02-02 03:51:32 +01:00
Florent Castelli
62c439814f
cmake: Move Qt5 search to DolphinQt build script
2017-02-01 21:49:26 +01:00
Lioncash
468f623d27
ShaderGenCommon: Remove unnecessary includes
2017-02-01 12:19:55 -05:00
Mat M
c5d4ae6163
Merge pull request #4801 from JosJuice/wii-remote-rumble
...
"Wii Remote Motor" -> "Wii Remote Rumble"
2017-02-01 10:41:33 -05:00
JosJuice
91fe332036
"Wii Remote Motor" -> "Wii Remote Rumble"
...
I've never heard any user call this motor. Let's use the word
that Nintendo uses and people actually recognize.
2017-02-01 16:19:03 +01:00
JosJuice
045de7dd26
Remove special condition for auto dual core determinism
2017-02-01 15:43:47 +01:00
Markus Wick
543120c88e
Merge pull request #4799 from lioncash/light-headered
...
LightingShaderGen: Remove unnecessary includes
2017-02-01 15:23:18 +01:00
Markus Wick
f558ae4dd1
Merge pull request #4790 from lioncash/sram
...
Sram: Make SRAM dumps const
2017-02-01 13:27:03 +01:00
Markus Wick
094a75f3cb
Merge pull request #4791 from degasus/temp
...
DSPLLE: Only enable the DSP JIT on x64.
2017-02-01 13:04:18 +01:00
Lioncash
273ace7bb7
LightingShaderGen: Remove unnecessary includes
2017-02-01 01:06:00 -05:00
Matthew Parlane
a9627ac881
Merge pull request #4797 from lioncash/cast
...
RenderBase: Get rid of unnecessary casts
2017-02-01 17:18:12 +13:00
Mat M
6fd0e96ea3
Merge pull request #4785 from lioncash/ios-fs
...
IOS FS: Move behavior to separate functions
2017-01-31 22:28:42 -05:00
Mat M
84d81a4b7a
Merge pull request #4792 from sepalani/fix_isctype_assert
...
Fixes std::isprint undefined behavior
2017-01-31 21:53:12 -05:00
Sepalani
44196f6a55
Fixes std::isprint undefined behavior
2017-02-01 02:30:29 +00:00
Mat M
5b782b9f2d
Merge pull request #4795 from sepalani/fix_sock
...
Fixes a crash when closing a socket
2017-01-31 20:30:26 -05:00
Lioncash
1f24cf2a2d
RenderBase: Get rid of unnecessary casts
2017-01-31 20:25:50 -05:00
Sepalani
3fd08b6cee
Fixes a crash when closing a socket
2017-02-01 00:11:19 +00:00
Markus Wick
24951fde2b
Merge pull request #4793 from lioncash/asm-disasm
...
DSPAssembler/DSPDisassembler: Make constructors explicit
2017-01-31 00:25:27 +01:00
Lioncash
a9db9fd217
DSPDisassembler: Make constructor explicit
2017-01-30 18:17:48 -05:00
Lioncash
546cd5d4be
DSPAssembler: Make constructor explicit
2017-01-30 18:16:59 -05:00
degasus
2c69e976d0
DSPLLE: Only enable the DSP JIT on x64.
...
The x64 JIT is hardcoded right now, and it seems unlikely that we'll support another arch here soon.
So let's just disable the DSP JIT.
2017-01-30 23:53:58 +01:00
Lioncash
093b61139b
Sram: Make SRAM dumps const
...
This is only used internally, and isn't written to.
2017-01-30 17:44:03 -05:00
Matthew Parlane
1603191145
Merge pull request #4786 from lioncash/fwd
...
IOS STM: Get rid of forward declarations in the cpp file
2017-01-30 22:20:58 +13:00
Markus Wick
2020928fd8
Merge pull request #4783 from degasus/temp
...
JitArm64: Fix immediate versions of cmpl.
2017-01-30 09:22:56 +01:00
Markus Wick
4f6dd2631d
Merge pull request #4787 from booto/dcbz_arm64
...
Add LowDCBZHack and DCBZOFF to JitArm64
2017-01-30 08:54:27 +01:00
Lioncash
b7e59f4e55
AVIDump: Rename CloseFile to CloseVideoFile
...
Retains symmetry with CreateVideoFile.
2017-01-29 22:05:12 -05:00
booto
9c4621d2b5
Forgot to add to JitArm64.
...
Also adds DCBZOFF to JitArm64.
2017-01-29 22:05:07 -05:00
Mat M
548e2d6353
Merge pull request #4709 from lioncash/exi-device
...
EXI_Device: Minor cleanup
2017-01-29 19:50:42 -05:00
Lioncash
1801180a30
IOS STM: Get rid of forward declarations in the cpp file
...
Forward declaring functions from a completely different header inside a cpp
file can lead to linker errors. Forward declaring also doesn't really
provide any benefit within cpp files unless it's to bring an internally
linked function within the same file into scope.
2017-01-29 19:30:56 -05:00
Lioncash
d2da1897e7
IOS FS: Move behavior to separate functions
2017-01-29 18:32:59 -05:00
degasus
89cefe3103
JitArm64: Fix immediate versions of cmpl.
2017-01-29 18:38:43 +01:00
Stenzek
3b218c64b1
Vulkan: Refactor initialization to only use a single instance
...
Hopefully will fix the crash in vkDestroyInstance on the NV Shield TV,
and likely reduce boot times slightly for drivers that take a while
to create instances.
2017-01-29 22:18:53 +10:00
Matthew Parlane
e823a9d80c
Merge pull request #4779 from lioncash/fileio
...
IOS FileIO: Move GetFileStats code to its own function
2017-01-29 21:53:11 +13:00
Matthew Parlane
a8c51d99f1
Merge pull request #4780 from booto/dcbz_hack
...
Hack to stop dcbz/dcbi over low MEM1 trashing memory.
2017-01-29 21:51:15 +13:00
Lioncash
5fd41716ae
ec_wii: Make default data constexpr
...
None of these are modified anywhere.
2017-01-28 18:46:15 -05:00
Lioncash
926c9f995a
ec_wii: Amend function casing
2017-01-28 18:46:14 -05:00
Lioncash
650071c3e4
ec_wii: Make getter functions const member functions
2017-01-28 18:45:56 -05:00
Lioncash
5b998ee9b0
ec_wii: Move implementation details into cpp file
...
Gets rid of the need for an include in the header file.
2017-01-28 18:45:04 -05:00
booto
2fbdf2a3ce
Hack to stop dcbz/dcbi over low MEM1 trashing memory.
2017-01-28 18:04:44 -05:00
Lioncash
4c31bfef76
FileIO: Correct printf specifier in GetFileStats
2017-01-28 17:43:19 -05:00
Lioncash
6f0cabb1c5
FileIO: Move GetFileStats code to its own function
2017-01-28 17:41:40 -05:00
Mat M
66160c2781
Merge pull request #4743 from lioncash/es
...
ES: Separate IOCtlV code out into constituent functions
2017-01-28 15:33:34 -05:00
Markus Wick
69c4e6de41
Merge pull request #4767 from lioncash/mmio
...
MMIO: Get rid of a TODO regarding tuples
2017-01-28 15:38:49 +01:00
Lioncash
10d73988e7
DSPCore: Convert DSP stack register enum into an enum class
...
Makes it more self-documenting which stack is being loaded or stored to,
as C, D, and magic numbers are extremely vague. It also enforces a
strongly-typed API instead of accepting arbitrary integral values.
It also adds the two other missing stack register names -- loop address
and loop counter.
2017-01-28 09:17:27 -05:00
Lioncash
4846f26916
DSPEmitter: Convert a C array to a std::array
2017-01-28 07:39:22 -05:00
Markus Wick
3405f0ba01
Merge pull request #4739 from AdmiralCurtiss/auto-adjust-window-size-16-9
...
Make the "Auto Adjust Window Size" option respect the current game's aspect ratio.
2017-01-28 13:02:54 +01:00
Markus Wick
b96b592c76
Merge pull request #4775 from lioncash/unused
...
DSPEmitter: Remove unused class member variable
2017-01-28 12:44:07 +01:00
Mat M
ede9c6255a
Merge pull request #4770 from degasus/fifo
...
CommandProcessor: Limit scope of ugly SCPFifoStruct.
2017-01-28 06:43:23 -05:00
Lioncash
7959f900ed
DSPEmitter: Remove unused class member variable
2017-01-28 06:36:54 -05:00
degasus
c2822ef7d3
PatchEngine: Apply speedhack per PC, not only per block entry.
...
This makes speedhacks indepdent of block assembly / inlining / conditional continue.
2017-01-28 12:36:13 +01:00
Markus Wick
04c3db8bfa
Merge pull request #4771 from lioncash/dspemitter
...
DSPCore: Move emitter cycle code into DSPEmitter itself
2017-01-28 12:25:34 +01:00
Lioncash
be3f9f7431
DSPEmitter: Fix -Wreorder warnings
2017-01-28 06:07:25 -05:00
Admiral H. Curtiss
b2c40bf4c4
RenderBase: Let the Auto Adjust Window Size option request the final image size rather than the raw framebuffer size.
2017-01-28 11:40:53 +01:00
Admiral H. Curtiss
e1fa6c374f
RenderBase: Extract the framebuffer size to display size code into function.
2017-01-28 11:40:53 +01:00
Lioncash
f5fe387a20
DSPEmitter: Make emitter dispatcher pointers private
2017-01-28 03:55:56 -05:00
Lioncash
0d42cbc923
DSPCore: Move JIT cycle code to DSPEmitter
...
Moves x86-specific emitter code out of DSPCore.
2017-01-28 03:55:40 -05:00
degasus
ca10cf5afe
PPCAnalyst: Update comments
2017-01-28 03:03:04 +01:00
degasus
4855764345
JitArm64: Implement leaf inlining.
...
There is no BLR stack, so this is quite trivial.
2017-01-28 02:48:56 +01:00
degasus
f31b25fe39
Jit64: Enable branch following.
2017-01-28 02:48:56 +01:00
degasus
3787af9ee9
CommandProcessor: Limit scope of ugly SCPFifoStruct.
...
It's only used as an interface between two classes. So no need to declare
it in the backend export header.
2017-01-27 19:04:56 +01:00
Lioncash
c748158182
SettingsHandler: Make GenerateSerialNumber static
...
This doesn't depend on class internals.
2017-01-27 10:29:57 -05:00
Lioncash
98291cd843
SettingsHandler: Add Open and Save member functions
2017-01-27 10:29:49 -05:00
Lioncash
d680d1f81e
MMIO: Get rid of a TODO regarding tuples
2017-01-27 02:54:07 -05:00
Markus Wick
f37c5f1f1c
Merge pull request #4766 from lioncash/dspemitter
...
DSPCore: Move CompileCurrent to the DSPEmitter
2017-01-27 08:09:52 +01:00
degasus
ba1decf7bc
PixelEngine: Use a DirectRead for the token.
...
No need to call a std::function, and a few games poll this value very often.
2017-01-27 07:49:47 +01:00
Lioncash
4003360bcb
DSPCore: Move CompileCurrent to the DSPEmitter
...
This is only ever used here.
2017-01-27 01:36:29 -05:00
aldelaro5
334e33d4fa
InputConfigDialog pass the device_cbox to the wiimote extension dialogs
...
This fixes a crash when trying to open the advanced input config dialog on the wiimote extensions. The device_cbox wasn't initialised and it should have been with the wiimote one.
2017-01-27 01:06:38 -05:00
Matthew Parlane
017e8050b6
Merge pull request #4746 from JosJuice/volumedirectory-sort-case-insensitive
...
VolumeDirectory: Use case-insensitive comparison when sorting
2017-01-27 18:23:14 +13:00
Matthew Parlane
3d5821a9a7
Merge pull request #4745 from JosJuice/always-valid-region
...
ConfigManager: Always set a valid m_region
2017-01-27 18:18:37 +13:00
Matthew Parlane
06728ad687
Merge pull request #4757 from lioncash/dsptables
...
DSPTables: Hide remaining opcode tables
2017-01-27 18:17:36 +13:00
Matthew Parlane
a0e598be10
Merge pull request #4763 from lioncash/dspemitter
...
DSPEmitter: Make most public variables private
2017-01-27 18:10:02 +13:00
Matthew Parlane
64b0773fc0
Merge pull request #4651 from leoetlino/bt-pass-savestates
...
Fix savestates in Bluetooth passthrough mode
2017-01-27 18:07:33 +13:00
Lioncash
be52fcf651
DSPEmitter: Make most public variables private
...
Dispatchers and m_unresolved_jumps is utilized in code outside of the
emitter, so these are left as is for the time being.
2017-01-26 20:32:57 -05:00
Lioncash
970d969f63
DSPEmitter: Make conditional JIT functions in DSPJitBranch part of the emitter
...
These quite clearly have a dependency on the emitter itself, so these
should be a part of the emitter itself.
The template function can be modified to just simply take functions as a
parameter.
2017-01-26 20:32:34 -05:00
Lioncash
16aac00b8a
DSPEmitter: Move private variables below function declarations
2017-01-26 19:25:49 -05:00
Lioncash
ef52451954
DSPJitRegCache: Convert DSPJitSignExtend into an enum class
...
Prevents general names like SIGN, ZERO, and NONE from polluting the
surrounding namespace.
2017-01-26 18:33:50 -05:00
Lioncash
bdd7034fcb
DSPJitRegCache: Move allocation order array to the cpp file
...
As it's a private static implementation detail that doesn't rely on any
other internals of DSPJitRegCache, it can be hidden.
2017-01-26 17:12:55 -05:00
Lioncash
8f5ce50a25
DSPAssembler: Migrate VerifyParams over to an OpcodeType param instead of bool
2017-01-26 05:17:05 -05:00
Lioncash
6cb6707a4e
DSPTables: Hide remaining exposed opcode tables
...
All opcode tables are now internal.
2017-01-26 05:17:01 -05:00
Markus Wick
0a07df13d2
Merge pull request #4753 from lioncash/dspjit
...
DSPEmitter: Amend member variable naming
2017-01-26 10:33:03 +01:00
Lioncash
ac973e61bb
ES: Separate behavior of IOCtlV into separate functions
...
This function is exceptionally large. Everything within a switch like this
also makes it quite error prone. Separating the functions out makes it
easier to change a certain request implementation as well as improving
code locality.
2017-01-25 19:39:22 -05:00
Lioncash
3c88c248dd
ES: Convert typedef into a using alias
2017-01-25 19:31:13 -05:00
Lioncash
3cf3b50ab0
ES: Minor header reorganization
...
Places elements in the order:
- Structs/Enums definitions
- Functions
- Member variables
2017-01-25 19:31:13 -05:00
Lioncash
f4415dd99c
DSPEmitter: Amend member variable naming
...
Amends the variable names to follow our coding style.
2017-01-25 19:26:57 -05:00
Lioncash
c2e3bd8d2f
DSPAssembler: Amend printf specifiers in ShowError
...
code_line is a u32.
2017-01-25 17:20:25 -05:00
Lioncash
992b7f7ac0
DSPAssembler: Replace char buffer + sprintf with StringFromFormat
2017-01-25 17:20:21 -05:00
booto
c889c81d8f
58 is 0x3a in hex, not 0x31
2017-01-26 01:52:10 +08:00
Léo Lam
0df2ca702b
IOS: Get rid of static state in BT passthrough
2017-01-25 15:31:28 +01:00
Léo Lam
18957bdb0a
IOS: Fix savestates for Bluetooth passthrough
...
This fixes savestates when using Bluetooth passthrough by keeping track
of pending transfer commands and discarding them on state load, so that
the emulated software receives a reply to IOS requests as expected.
With this change, savestates in BT passthrough should work as long as
no Wiimote is connected when creating the savestate and when
restoring it. Yes, I know this is an important limitation -- but
that is probably the best we can do, and it's still better than
completely broken savestates.
2017-01-25 15:31:28 +01:00
Florent Castelli
103361c846
cmake: Change endforeach(.*) to endforeach()
2017-01-25 15:07:32 +01:00
Florent Castelli
87380c1c2c
cmake: Change endif(.*) to endif()
2017-01-25 15:07:32 +01:00
JosJuice
104faa9fb3
VolumeDirectory: Use case-insensitive comparison when sorting
...
This fixes a regression from 5.0-1556, but I don't know why
the regression occurred or why this fixes it. (Many games
failed to fully boot - I tried Metroid Prime and Twilight
Princess (both GC), and they never got to the title screen.)
2017-01-25 15:07:07 +01:00
Markus Wick
3c184dcf8d
Merge pull request #4742 from lioncash/dspasm
...
DSPAssembler: Replace malloced output buffer with std::vector
2017-01-25 14:49:36 +01:00
JosJuice
188d36ff26
ConfigManager: Refactor setting the region into a new function
2017-01-25 14:42:11 +01:00
Pierre Bourdon
18968abbd7
Merge pull request #4723 from booto/ios-init
...
Set up IOS RAM information area with real values.
2017-01-25 11:41:26 +01:00
Matthew Parlane
54e7d4a3dd
Merge pull request #4748 from lioncash/dspregcache
...
DSPJitRegCache: Make GetReg return by value
2017-01-25 22:49:16 +13:00
booto
d16ca2e5c8
Load IOS from TMD when launching non-IOS title.
2017-01-25 01:11:48 -05:00
Lioncash
3734d6f16c
DSPJitRegCache: Make GetReg return by value
...
Using out-references for this sort of thing is a C++03-ism.
2017-01-24 23:10:34 -05:00
degasus
d3aee2de08
JitCache: Split off JIT call from dispatcher.
...
This avoid flushing the BLR optimization stack on fast_block_cache misses.
2017-01-25 01:51:19 +01:00
JosJuice
8475b03bd8
ConfigManager: Always set a valid m_region
...
Fixes a regression from f85266d
that made WADs
with no detectable region not boot correctly.
The non-WAD code was already handling this correctly.
2017-01-24 16:34:08 +01:00
booto
3ba388138d
Set up IOS RAM information area with real values.
2017-01-24 09:48:21 -05:00
Markus Wick
eed64bb0fe
Merge pull request #4744 from ligfx/cleanup-osx-cmake
...
CMake: Cleanup macOS-related logic
2017-01-24 14:36:10 +01:00
Markus Wick
63f56ccd02
Merge pull request #4741 from Orphis/cmake_cleanup
...
CMake cleanup
2017-01-24 14:35:05 +01:00
Stenzek
214aea1aea
DSPHWInterface: Use SSSE3 function targeting
2017-01-24 20:04:55 +10:00
Stenzek
d315052552
AudioCommon: Remove unused _M_SSE test
2017-01-24 20:04:55 +10:00
Stenzek
0f978227f5
Common: Use function-level targeting for CRC32 (SSE4.2)
2017-01-24 20:04:55 +10:00
Stenzek
b74029ec57
TextureDecoder: Use target attributes on SSSE3 decoders
2017-01-24 20:04:55 +10:00
Stenzek
0f1b5a05ea
Common: Support for function-specific instruction set target on x64
2017-01-24 20:04:55 +10:00
Michael Maltese
0ab3b1a3ff
CMake: use CMAKE_OSX_DEPLOYMENT_TARGET
2017-01-24 01:27:41 -08:00
Matthew Parlane
221be63cb4
Merge pull request #4734 from leoetlino/info-ios-version
...
DolphinWX: Show the required IOS version in info panel
2017-01-24 18:47:14 +13:00
Florent Castelli
a917d247ed
DolphinWX: Remove HAVE_WX preprocessor define
...
I think we don't have to double check it when building the WX target.
2017-01-24 05:48:08 +01:00
Lioncash
ed627a8cff
DSPAssembler: Replace malloced output buffer with std::vector
...
Same thing, less manual memory management.
2017-01-23 22:03:40 -05:00
Florent Castelli
0baf1c78c0
vs: Move defines out of Common.h to the build system
2017-01-24 03:55:46 +01:00
Florent Castelli
a7bf9271b5
Fix missing includes
2017-01-24 03:31:51 +01:00
Florent Castelli
c649bf104b
cmake: Prevent HAVE_OPENAL and HAVE_PORTAUDIO to be redefined
2017-01-24 03:22:03 +01:00
Florent Castelli
cac53603c5
DolphinWX: Put wx related headers before including anything else
...
Including Windows.h before them creates compilation errors.
2017-01-24 03:22:03 +01:00
Matthew Parlane
f70a1a27fa
Merge pull request #4726 from ligfx/addingwindowsheaders
...
Fix building without PCH on Windows
2017-01-24 13:47:36 +13:00
Michael Maltese
0bc40cacda
No longer need to //clang-format off for Windows headers
2017-01-23 16:23:37 -08:00
Matthew Parlane
00c993143f
Merge pull request #4738 from EmptyChaos/pe-stackcheck-fix
...
PatchEngine: Fix potential crashing during stack probe
2017-01-24 11:27:44 +13:00
Matthew Parlane
98c4ceb3d1
Merge pull request #4737 from lioncash/bpmem
...
BPMemory: Minor changes
2017-01-24 11:00:25 +13:00
Lioncash
7a58a82a37
BPMemory: Add const specifier to member functions where applicable
2017-01-23 16:07:03 -05:00
Lioncash
1f596a23af
BPMemory: Eliminate union type punning
...
This is undefined behavior in C++.
2017-01-23 16:05:32 -05:00
EmptyChaos
49873b1287
MMU/PatchEngine: Fix potential crash during stack probe
...
TryReadInstruction doesn't validate the address it resolves, that
can result in Memory::GetPointer failing and returning nullptr
which then leads to a nullptr dereference and a crash.
Created PowerPC::HostIsInstructionRAMAddress which works the same
way as PowerPC::HostIsRAMAddress for the IBAT.
2017-01-24 08:05:11 +11:00
Léo Lam
3d21280ab4
DiscIO: Fix out-of-bounds access in NANDContentDataBuffer
...
Accessing buffer[start + size] triggers an error (and a crash) in debug
builds. Using std::copy_n fixes this.
2017-01-23 21:49:26 +01:00
Matthew Parlane
86b758d7ca
Merge pull request #4733 from leoetlino/expose-wad-tmd
...
VolumeWad: Implement GetTMD()
2017-01-24 09:20:14 +13:00
Léo Lam
b892d78872
VolumeWad: Implement GetTMD()
...
This allows getting useful info like the required IOS version for WADs
(for showing it in the UI, for example).
2017-01-23 20:59:02 +01:00
Léo Lam
ceb1797977
DolphinWX: Show the required IOS version in info panel
...
This is useful to know which IOS version is required by a title without
having to look at the TMD manually.
The IOS version row will only appear if there is a TMD, of course.
2017-01-23 20:42:36 +01:00
Léo Lam
1cb87a9e43
DolphinWX: Simplify item creation in InfoPanel
2017-01-23 20:42:36 +01:00
degasus
7f6b8e3555
JitCache: Extract ErasePhysicalRange as function.
2017-01-23 20:33:44 +01:00
degasus
70caf447b9
JitCache: Get physical addresses from PPCAnalyst.
...
So we support all kind of degenerated blocks now, not just range+length based ones.
2017-01-23 20:33:44 +01:00
degasus
3529af61c4
JitAnalyzer: Remove jit block cache workaround.
2017-01-23 20:33:44 +01:00
degasus
f3ed993747
JitCache: Use a map with macro blocks for the occupied memory regions.
...
This also allow fast invalidation, without any restritions on the blocks itself.
So we can now implement inlining.
2017-01-23 20:33:44 +01:00
degasus
dc0fbc15f0
JitCache: Drop block_map.
...
It is only used for invalidation, and in a bad way. Just scan over all elements,
as it is still in O(n), this shouldn't matter much.
2017-01-23 20:33:44 +01:00
Matthew Parlane
98311cd9f4
Merge pull request #4728 from lioncash/virtual-dtor
...
ControllerEmu: Add missing virtual destructor to BooleanSetting
2017-01-24 08:19:23 +13:00
Matthew Parlane
ee065181d7
Merge pull request #4730 from leoetlino/tmdreader
...
TMDReader: Add a way to get the required IOS version
2017-01-24 08:19:07 +13:00
Matthew Parlane
d97a2aba8d
Merge pull request #4731 from leoetlino/volumewad
...
Minor cleanup to VolumeWad
2017-01-24 08:18:02 +13:00
Lioncash
70cf774a5c
RenderBase: Forward declare EFBAccessType
2017-01-23 12:41:26 -05:00
Léo Lam
f89aaee91a
VolumeWad: Remove useless else after return
2017-01-23 18:17:34 +01:00
Léo Lam
2cd287baf7
VolumeWad: Add missing forward declaration
2017-01-23 18:17:34 +01:00
Léo Lam
6128679396
VolumeWad: Clean up variable naming
2017-01-23 18:07:23 +01:00
Léo Lam
6d909b3e30
VolumeWad: In-class initialise member variables
2017-01-23 18:07:21 +01:00
Léo Lam
0d8ddfb7d9
TMDReader: Add a way to get the required IOS version
2017-01-23 17:44:24 +01:00
Markus Wick
1c854f2daa
Merge pull request #4727 from lioncash/enum-class
...
VideoBackendBase: Convert EFBAccessType and FieldType into enum classes
2017-01-23 17:14:06 +01:00
JosJuice
6d879f7f3a
Merge pull request #4729 from lioncash/table
...
ES: Move the key table into the cpp file
2017-01-23 15:51:42 +01:00
Mat M
93faf26217
Merge pull request #4721 from RisingFog/remove_dead_audiodump_code
...
Remove dead audio dumping code
2017-01-23 09:17:11 -05:00
Chris Burgener
dd9709509c
Remove dead audio dumping code
2017-01-23 09:11:48 -05:00
Lioncash
fd772f6726
ES: Move the key table into the cpp file
...
This is a static implementation detail, so there's no need to bind it to the class directly.
This also makes the tables read-only.
2017-01-23 08:16:28 -05:00
Markus Wick
c0e8280240
Merge pull request #4706 from lioncash/dspasm
...
DSPAssembler: Minor cleanup
2017-01-23 12:12:01 +01:00
Lioncash
a9da2d9e20
ControllerEmu: Add missing virtual destructor to BooleanSetting
2017-01-23 05:08:19 -05:00
Markus Wick
4436011c50
Merge pull request #4725 from lioncash/attachments
...
Attachments: Minor cleanup
2017-01-23 10:55:04 +01:00
Lioncash
34768617d2
Attachment: Make constructors explicit where applicable
2017-01-23 04:42:27 -05:00
Lioncash
34262ee3d8
Attachment: Move implementation details into the cpp file
2017-01-23 04:42:26 -05:00
Lioncash
c87ee2a00e
Attachment: Use std::array over C arrays
2017-01-23 04:42:21 -05:00
Michael Maltese
713ec5ffd5
Add includes for building on Windows without PCH
2017-01-23 01:37:41 -08:00
Lioncash
940aa6f32d
VideoBackendBase: Convert FieldType into an enum class
2017-01-23 03:54:01 -05:00
Lioncash
5b461f50af
VideoBackendBase: Convert EFBAccessType into an enum class
2017-01-23 03:53:38 -05:00
Michael Maltese
c3a1547d9a
AVIDump: rename CreateFile -> CreateVideoFile (conflict with windows.h)
2017-01-23 00:35:18 -08:00
Matthew Parlane
836f43038a
Merge pull request #4722 from lioncash/si-device
...
SI_Device: Minor cleanup
2017-01-23 21:28:58 +13:00
degasus
819ebfb213
JitCache: Freeing hotfix.
...
Sorry, I'm too stupid to test my code.
2017-01-23 06:58:02 +01:00
Markus Wick
9cd34c7985
Merge pull request #4717 from degasus/arm
...
JitArm64: Fix dcbz.
2017-01-23 06:32:11 +01:00
Lioncash
4b2f40a634
Attachment: Make class members non-public
2017-01-22 23:53:13 -05:00
Lioncash
fbcf86870d
SI_Device: Remove const specifiers from SIDevice_Create declaration's parameters
...
These are only relevant on the definition of the function.
2017-01-22 22:34:23 -05:00
Lioncash
0adb0dfeef
SI_Device: Move implementation details into the cpp file
...
Any changes to the base class' default behavior now won't require
all SI device source files to be recompiled.
2017-01-22 22:33:27 -05:00
Lioncash
fb8f19f553
SI_Device: Amend variable naming
2017-01-22 22:20:16 -05:00
Lioncash
f41e5eac2e
SI_Device: Move protected interface below public interface
2017-01-22 22:10:43 -05:00
Lioncash
7f4ef74542
SI_Device: Move the null device implementation to its own source files
2017-01-22 21:18:51 -05:00
degasus
a19993c2a0
JitArm64: Fix dcbz.
...
This fixes the hidden wall in xenoblade.
2017-01-23 00:26:38 +01:00
Matthew Parlane
ba5c3f4c46
Merge pull request #4582 from iwubcode/per_game_wii_lang
...
Add support for specifying the GC/Wii system language per-game
2017-01-23 11:51:37 +13:00
Matthew Parlane
ef7a809fad
Merge pull request #4678 from degasus/jitcache
...
JitCache: Store the JIT blocks in the std::map.
2017-01-23 11:49:46 +13:00
Matthew Parlane
5cee3f99ce
Merge pull request #4710 from leoetlino/save-stm-hook
...
IOS: STM: Save event hook to savestates
2017-01-23 11:11:08 +13:00
iwubcode
a7a8e35823
Add support for specifying the GC/Wii system language per-game
2017-01-22 12:00:45 -06:00
Markus Wick
90ee85f4e8
Merge pull request #4714 from JosJuice/wbfs-file-entry
...
Fix -Wshadow warning for file_entry
2017-01-22 17:56:51 +01:00
Léo Lam
6291cd0bce
IOS: STM: Save event hook to savestates
...
This allows a STM event hook to be saved and restored correctly and
fixes the power/reset button after loading a state in some cases.
2017-01-22 17:29:39 +01:00
JosJuice
79f3b5c5ff
Fix -Wshadow warning for file_entry
...
This struct didn't follow our naming convention,
so let's rename the struct itself instead of
the variable that triggered the warning.
2017-01-22 17:27:37 +01:00
degasus
8e00c411a3
JitCache::Rename iCache to fast_block_map.
...
iCache sounds too much like emulation.
2017-01-22 17:10:28 +01:00
degasus
830ae6a2c1
JitCache: Store the JitBlock in the std::map.
2017-01-22 16:50:46 +01:00
degasus
43cdbab515
Jit64: Add a switch for easier fallback to the C++ dispatcher.
2017-01-22 16:50:46 +01:00
degasus
9b77a39767
JitCache: Only call DestroyBlock on valid blocks.
2017-01-22 16:50:46 +01:00
degasus
113d6b3b84
JitCache: Use a multimap for block_map and start_block_map.
...
We may have duplicated entries here because of MSR mismatch. Just
store both and validate the matching one on cache access.
2017-01-22 16:50:46 +01:00
degasus
9d58127dec
JitCache: Move JitBlock config variable.
2017-01-22 16:50:46 +01:00
degasus
352909fc4c
JitCache: Track the ICache entry of jit blocks.
...
This guarantees that no invalidated jit block is still in the icache.
2017-01-22 16:50:14 +01:00
Lioncash
a97aef2e94
Jit: Eliminate JIT global usages
2017-01-22 06:01:30 -05:00
Lioncash
a18ab5e154
JitArm64_LoadStore: Eliminate JIT global usages
2017-01-22 05:59:38 -05:00
Lioncash
4601499179
JitArm64_LoadStoreFloating: Eliminate JIT global usages
2017-01-22 05:57:44 -05:00
Lioncash
b4e00115c5
JitArm64_Tables: Eliminate usages of the JIT global
2017-01-22 05:54:33 -05:00
Lioncash
b0605c24d3
JitIL_Tables: Eliminate usages of the JIT global
2017-01-22 05:43:40 -05:00
Lioncash
3ee31890d3
Jit64_Tables: Eliminate usages of the JIT global
2017-01-22 05:43:34 -05:00
degasus
c9c5437cb8
JitCache: Fix links_to updates on destroying blocks.
2017-01-22 11:37:22 +01:00
Lioncash
6cddc1be95
EXI_Device: Get rid of an unnecesary cast
2017-01-22 04:28:49 -05:00
Lioncash
2e85ddef60
EXI_Device: Remove unnecessary const on EXIDevice_Create declaration parameters
...
These are only relevant on its definition.
2017-01-22 04:28:48 -05:00
Lioncash
07a61b0d15
EXI_Device: Move implementation details into the cpp file
...
Any change to the default behavior of any device methods now won't require
the recompilation of all EXI devices.
2017-01-22 04:28:44 -05:00
Lioncash
e41a6ac9a3
EXI_Device: Amend variable naming
2017-01-22 04:08:49 -05:00
Lioncash
4115d93c71
EXI_Device: Move destructor to beginning of public section
...
Constructors and destructors should be the first thing shown in a public
interface.
2017-01-22 02:35:20 -05:00
Lioncash
a5c0409050
EXI_Device: Move private details below the public interface
2017-01-22 02:30:10 -05:00
Lioncash
7c0b96f638
EXI_Device: Move the dummy implementation to its own source files
2017-01-22 02:15:36 -05:00
Lioncash
d6bdbfe90e
DSPAssembler: Use std::string instead of malloced char buffers in AssembleFile
2017-01-22 01:15:36 -05:00
Lioncash
cbe1ec51df
DSPAssembler: Make AssembleFile take a std::string
...
File paths passed to it would have been implicitly converted to std::strings
prior to this function being reached, so it gets rid of some string churn.
It also makes it safer since nullptr can't be passed in.
2017-01-22 01:15:31 -05:00
Matthew Parlane
d9c873bc8b
Merge pull request #4704 from lioncash/exi-channel
...
EXI_Channel: Minor cleanup
2017-01-22 16:53:09 +13:00
Lioncash
d2ff34e510
EXI_Channel: Remove const qualifiers from member function declaration parameters
...
Const used on value types only really has a use when used within the
definition.
2017-01-21 22:36:09 -05:00
Lioncash
387769b4e2
EXI_Channel: Move SetEXIINT implementation into the cpp file
2017-01-21 22:36:09 -05:00
Lioncash
edf8a79005
EXI_Channel: Make constructor explicit
2017-01-21 22:36:09 -05:00
Lioncash
5a85001d30
EXI_Channel: Amend variable casing
2017-01-21 22:36:04 -05:00
Matthew Parlane
2252b7a355
Merge pull request #4705 from lioncash/mmu
...
MMU: Change '0' literals to 'false' in IsOptimizableGatherPipeWrite
2017-01-22 16:24:49 +13:00
Lioncash
0dee9bc4f0
MMU: Change '0' literals to 'false' in IsOptimizableGatherPipeWrite
2017-01-21 21:16:41 -05:00
Matthew Parlane
507715f316
Merge pull request #4700 from degasus/videoconfig
...
VideoConfig: Fix boolean default values.
2017-01-22 14:52:37 +13:00
Lioncash
688225616e
EXI_Channel: In-class initialize variables
2017-01-21 18:44:54 -05:00
Lioncash
489e4c49bc
EXI_Channel: Move private interface below public interface
2017-01-21 18:42:18 -05:00
BhaaL
07d1f18f53
CompressFileToBlob: add an explicit seek to make sure we're at the start
2017-01-21 21:42:58 +01:00
BhaaL
30e0f3d9ca
DecompressFileToBlob: don't assume success if decompression failed
2017-01-21 21:42:58 +01:00
BhaaL
24be8c0814
IsGCZBlob: try to leave the file position where it was before
...
callers that don't seek afterwards might be missing a few bytes that way.
2017-01-21 21:42:57 +01:00
Léo Lam
3eb81ad219
Netplay: Fix wrong mapping info being used in dialog
...
Obvious fix for a small mistake.
2017-01-21 20:42:30 +01:00
degasus
65e3aa796e
VideoConfig: Fix boolean default values.
2017-01-21 11:31:44 +01:00
Matthew Parlane
7ebfd357b5
Merge pull request #4699 from Orphis/cmake_cleanup
...
CMake cleanup (but wait, there's more!)
2017-01-21 16:38:09 +13:00
Florent Castelli
59fb8042d1
cmake: Add XInput file to the InputCommon target
2017-01-21 02:44:18 +01:00
Florent Castelli
6c197a8f6a
cmake: Rename variable for libxi to X11_INPUT
2017-01-21 02:44:18 +01:00
Lioncash
794d0a9d7c
Core: Move SI source files to their own directory
2017-01-20 19:33:24 -05:00
Matthew Parlane
71ea457874
Merge pull request #4696 from Orphis/cmake_cleanup
...
CMake cleanup for Windows (moar!)
2017-01-21 13:09:52 +13:00
Matthew Parlane
a945b4ea9b
Merge pull request #4691 from lioncash/dsptables
...
DSPTables: Hide/Eliminate some extern variables
2017-01-21 12:39:47 +13:00
Florent Castelli
b6a7216b07
cmake: Mark DolphinWX target as a Windows application (instead of console)
2017-01-21 00:35:55 +01:00
Florent Castelli
2ff10ad021
cmake: Add missing Windows file to common
2017-01-21 00:35:55 +01:00