28362 Commits

Author SHA1 Message Date
Admiral H. Curtiss
f0fb8c22b0
Updater: Check for write permissions in directory of Updater.exe. 2022-11-22 01:28:02 +01:00
Pokechu22
8f5a58f8be
Merge pull request #11285 from K0bin/cp-checks
VideoCommon:VertexLoaderManager: Reduce CPConfig checks
2022-11-21 15:35:06 -08:00
JMC47
22bcf134bf
Merge pull request #11139 from JosJuice/jit64-nans-no-freg
Jit64: Don't use fregsIn in HandleNaNs
2022-11-20 13:47:02 -05:00
Admiral H. Curtiss
5d03577189
Memmap: Fix initialization of PhysicalMemoryRegion. 2022-11-18 06:57:54 +01:00
Robin Kertels
f179fd9c33
VideoCommon:VertexLoaderManager: Reduce CPConfig checks
A bit of a micro optimization:
CheckCPConfiguration is called 350 times instead of 35k times.
2022-11-18 01:42:30 +01:00
Léo Lam
f1c9774159
Merge pull request #11240 from noahpistilli/es_v1_ticket
IOS/ES: Add support for V1Ticket
2022-11-18 00:25:47 +01:00
Sketch
2fd9852ca8 IOS/ES: Add support for V1Ticket 2022-11-17 17:54:06 -05:00
Admiral H. Curtiss
99a918d884
Merge pull request #11280 from Pokechu22/efb-cache-cleanup
VideoCommon/FramebufferManager: Further EFB cache cleanup
2022-11-16 02:22:53 +01:00
Admiral H. Curtiss
43e90ca023
Merge pull request #11105 from vpelletier/si_ignore_setGameId
SI: Ignore non-standard setGameID command
2022-11-16 02:08:39 +01:00
Pokechu22
1fdf15a1be VideoCommon/FramebufferManager: Rename m_efb_cache_tiles_wide to m_efb_cache_tile_row_stride
This also initializes it in the non-tiled case just for consistency, although it's not actually read in that case.
2022-11-15 16:04:41 -08:00
Pokechu22
55e1c3b51d VideoCommon/FramebufferManager: use !IsUsingTiledEFBCache() in GetEFBCacheTileRect
This is for readability only, and should behave identically.
2022-11-15 15:48:56 -08:00
Pokechu22
90d05fe37e VideoCommon/FramebufferManager: Always update frame access mask on depth peeks
0e02ddcf52ed86060ac1a0a85fa144738fa5163c removed separate logic for tiled versus non-tiled EFB peek caches, and as part of that made it so that color peeks updated the frame access mask even when a non-tiled cache is in use. However, the same change was not made for depth peeks. I'm not sure if this affected anything in practice.
2022-11-15 15:34:03 -08:00
JMC47
8a1c28be63
Merge pull request #11172 from K0bin/efb-refresh
VideoCommon:FramebufferManager: Mark cache as valid after refresh
2022-11-15 16:33:46 -05:00
Admiral H. Curtiss
d7593dd721
Merge pull request #11243 from Sintendo/arm64mul
JitArm64: Optimize multiplication
2022-11-15 04:05:49 +01:00
Admiral H. Curtiss
c9e74801ed
Merge pull request #11269 from vabold/dolphindevice-get-time
Add DolphinDevice::GetSystemTime to allow for accurate Unix timestamp generation
2022-11-15 03:48:57 +01:00
Admiral H. Curtiss
6c9b9cbf95
Merge pull request #11255 from JosJuice/disable-sd-convert
Disable SD card conversion while emulation is running
2022-11-15 03:44:49 +01:00
Admiral H. Curtiss
09c0321997
Merge pull request #11184 from Lobsterzelda/save-all-nand-files-to-save-state
HostFileSystem: Set all NAND folders to be saved in save states
2022-11-15 03:42:26 +01:00
Admiral H. Curtiss
b6503d7585
Merge pull request #11018 from Dentomologist/add_updater_error_messages
Add updater error messages
2022-11-15 01:08:55 +01:00
Admiral H. Curtiss
5bdb291d90
Qt/Updater: Remove unused member variable. 2022-11-15 00:56:08 +01:00
Admiral H. Curtiss
f05b0ad669
Merge pull request #11271 from jordan-woyak/mapping-button-expanding
DolphinQt: Allow mapping buttons to expand horizontally.
2022-11-15 00:53:02 +01:00
Admiral H. Curtiss
2a81fa6c26
Merge pull request #11015 from TryTwo/Conditional_Breakpoints
Conditional breakpoints
2022-11-13 01:06:52 +01:00
vabold
083b8172e0 Replace std::time with std::chrono::system_clock 2022-11-12 05:36:49 -05:00
vabold
ff1c71cc38 Fix inaccurate function name, add old function 2022-11-12 05:36:49 -05:00
Jordan Woyak
6044bc32a8 DolphinQt: Allow mapping buttons to expand horizontally. 2022-11-11 23:14:03 -06:00
Lobsterzelda
ed54e1905a HostFileSystem: Set all NAND folders to be saved in save states when a movie is active 2022-11-10 14:02:29 -05:00
TellowKrinkle
37a51f1d09 VideoCommon: Add an option to disable mipmaps
Needed by M1 fifoci to work around a minor non-determinism bug
2022-11-07 22:18:56 -06:00
Admiral H. Curtiss
a98df18947
VideoCommon: Hold ImGui lock while initializing and shutting down ImGui. 2022-11-06 21:48:55 +01:00
Pokechu22
e37aa3ed90
RenderWidget: Fix random crash due to missing ImGui context
`ImGui::GetIO` performs an assertion that a context exists, and if one doesn't then things will likely crash.  Unfortunately this crash is hard to consistently reproduce.
2022-11-06 21:41:07 +01:00
Admiral H. Curtiss
c931529e7a
Merge pull request #11225 from iwubcode/graphics-mod-textureload-callable
VideoCommon: call texture load graphics mod hook when textures are loaded
2022-11-06 18:58:51 +01:00
Admiral H. Curtiss
1348337277
Merge pull request #11246 from tellowkrinkle/PVDMemset
VideoCommon: Zero PortableVertexDeclarations on initialization
2022-11-06 18:54:21 +01:00
Admiral H. Curtiss
c75b53c7ed
Merge pull request #11250 from AdmiralCurtiss/memory-widget-menu
MemoryWidget: Split Actions into Import and Export.
2022-11-06 18:50:02 +01:00
JosJuice
de93b4dc13 DolphinQt: Disable SD card conversion while emulation is running 2022-11-06 17:48:55 +01:00
Admiral H. Curtiss
db679ab620
Merge pull request #11249 from JosJuice/load-dol-elf-after-mem
Boot: Load DOL/ELF after memory setup
2022-11-06 05:40:54 +01:00
Admiral H. Curtiss
e1f5eb3d8d
Merge pull request #11233 from AdmiralCurtiss/netplay-split-save-sync-function
NetPlay: Split SyncSaveData() into two parts.
2022-11-06 05:39:26 +01:00
Admiral H. Curtiss
e9caa09f7b
NetPlay: Split SyncSaveData() into two parts.
This allows the 'save collection' part to run even if no clients are connected. Fixes issue 13095.
2022-11-06 01:51:01 +01:00
Admiral H. Curtiss
cf533df814
MemoryWidget: Split Actions into Import and Export. 2022-11-05 23:05:15 +01:00
Admiral H. Curtiss
89bc1649e3
Merge pull request #11111 from TryTwo/PR_MemoryView_TableUpdates
MemoryViewWidget refactor memory table
2022-11-05 22:59:44 +01:00
JosJuice
fb916a4c33 Boot: Load DOL/ELF after memory setup
I recently talked to a homebrew developer who was trying to add exception
handlers at link time but found out that Dolphin was overwriting their
exception handlers. I figure that's not the usual way to do exception
handlers, but... making us load the executable after setting up memory
rather than before is easy, and matches what we do when booting discs,
so I suppose there's no reason not to do it. It also matches the intent
of why Dolphin is writing default exception handlers – we're writing
them because some homebrew relies on exception handlers being left
around from whatever program was running before it (see 3dd777be70).
2022-11-05 13:55:17 +01:00
TellowKrinkle
d9ed9ae331 VideoCommon: Zero PortableVertexDeclarations on initialization
Fixes an issue where the default initializer wouldn't initialize padding, making for fun non-determinism
2022-11-05 02:02:53 -05:00
Admiral H. Curtiss
431301add3
Merge pull request #10771 from TryTwo/PR_AutoStep
Debugger: Implement base code tracing logic. and feature to auto-step through code.
2022-11-04 23:32:54 +01:00
Admiral H. Curtiss
26b68f1f84
Merge pull request #11228 from Pokechu22/statistics-macros
VideoCommon/Statistics: Require semicolons after statistics macros
2022-11-04 23:15:52 +01:00
Admiral H. Curtiss
8b4e315fb7
Merge pull request #11242 from Sintendo/arm64cmp
JitArm64: Optimize cmp
2022-11-04 23:13:09 +01:00
Robin Kertels
0e02ddcf52
VideoCommon:FramebufferManager: Cleanup 2022-11-04 01:18:23 +01:00
Robin Kertels
371935d61e
VideoCommon:FramebufferManager: Mark cache as valid after refresh
Otherwise we might never hit the early return
if either depth or color doesnt have any active
tiles.
2022-11-04 01:18:23 +01:00
TellowKrinkle
83ca1ad8a6 VideoBackends:Metal: Headless render support 2022-11-03 02:35:24 -05:00
Admiral H. Curtiss
1d07332657
Merge pull request #11193 from jordan-woyak/ciface-input-backend-interface
ControllerInterface: Add InputBackend interface.
2022-11-03 04:42:05 +01:00
Bram Speeckaert
274e34ddf1 JitArm64: MultiplyImmediate - Handle -(2^n) + 1
Let's take advantage of ARM64's input register shifting one last time,
shall we?

Before:
0x1280005b   mov    w27, #-0x3
0x1b1b7f18   mul    w24, w24, w27

After:
0x4b180b18   sub    w24, w24, w24, lsl #2
2022-11-02 21:53:19 +01:00
Bram Speeckaert
7073a135c6 JitArm64: MultiplyImmediate - Handle -(2^n)
ARM64's flexible shifting of input registers also allows us to calculate
a negative power of two in one instruction; shift the input of a NEG
instruction.

Before:
0x128001f7   mov    w23, #-0x10
0x1b1a7efa   mul    w26, w23, w26
0x93407f58   sxtw   x24, w26

After:
0x4b1a13fa   neg    w26, w26, lsl #4
0x93407f58   sxtw   x24, w26
2022-11-02 21:53:19 +01:00
Bram Speeckaert
1c87f040a3 JitArm64: mulli - Only allocate reg when necessary
If the destination register doesn't equal the input register, using it
to temporarily hold the immediate value is fair game as it'll be
overwritten with the result of the multiplication anyway. This can
slightly reduce register pressure.

Before:

0x52800659   mov    w25, #0x32
0x1b197f5b   mul    w27, w26, w25

After:
0x5280065b   mov    w27, #0x32
0x1b1b7f5b   mul    w27, w26, w27
2022-11-02 21:53:19 +01:00
Bram Speeckaert
20dd5cadab JitArm64: MultiplyImmediate - Add comments 2022-11-02 21:53:17 +01:00