f92beb611f
VideoCommon: add game mod constants
2022-06-26 21:53:21 -05:00
3857e1fa66
Core: add GraphicsMod directory
2022-06-26 21:53:21 -05:00
4fbbd85ef4
VideoCommon: create variables for EFB/XFB copy prefix. Reword prefix to 'efb1' and 'xfb1' to match textures
2022-06-26 21:53:21 -05:00
b9995b04a0
VideoCommon: add a way to get have a graphics directory count for all games by using a special 'all.txt' instead of a 'gameid.txt' file
2022-06-26 00:45:13 -05:00
7854afe512
VideoCommon: add support for setting and getting the stage from the texture info
2022-06-26 00:45:13 -05:00
a1892a9c68
VideoCommon: add function to check whether TextureFormat is a valid value
2022-06-26 00:45:13 -05:00
76401e8ffb
BS2Emu: Initialize the last rows of postMatrices to the identity matrix
...
This fixes Datel titles having missing textures (which was an issue with the previous commit).
2022-06-25 17:29:49 -07:00
b2ddffeeb1
BS2Emu: Set HID0/1/2/4 and MSR with correct default values
...
These values were obtained by setting a breakpoint at a game's entry point, and then observing the register values with Dolphin's register widget.
There are other registers that aren't handled by this PR, including CR, XER, SRR0, SRR1, and "Int Mask" (as well as most of the GPRs). They could be added in a later PR if it turns out that their values matter, but probably most of them don't.
This fixes Datel titles booting with the IPL skipped (see https://bugs.dolphin-emu.org/issues/8223 ), though when booted this way they are currently missing textures. Due to somewhat janky code, Datel overwrites the syscall interrupt handler and then immediately triggers it (with the `sc` instruction) before they restore the correct one. This works on real hardware due to icache, and also works in Dolphin when the IPL runs due to icache, but prior to this change `HID0.ICE` defaulted to 0 so icache was not enabled when the IPL was skipped.
2022-06-25 14:27:29 -07:00
9675faa232
DSPHLE: Properly reflect initial halt state in mail handler
...
DSPHLE::Initialize sets the halt and init bits to true (i.e. m_dsp_control.Hex starts as 0x804), which is reasonable behavior (this is the state the DSP will be in when starting a game from the IPL, as after `__OSStopAudioSystem` the control register is 0x804).
However, CMailHandler::m_halted defaults to false, and we only call CMailHandler::SetHalted in DSPHLE::DSP_WriteControlRegister when m_dsp_control.DSPHalt changes, so since DSPHalt defaults to true, if the first thing that happens is writing true to DSPHalt, we won't properly halt the mail handler.
Now, we call CMailHandler::SetHalted on startup. This fixes Datel titles when the IPL is skipped with DSP HLE (though this configuration only works once https://bugs.dolphin-emu.org/issues/8223 is fixed).
2022-06-25 14:06:55 -07:00
caf0e5b3e8
DSPHLE: Add variables in CMailHandler to savestate.
2022-06-25 19:15:21 +02:00
52f32e61dc
DSPHLE: Fix build error in the libasnd uCode
...
This was a conflict between 8a144a735f
and b063f15dcc
.
2022-06-24 19:29:31 -07:00
75943a7a2c
Merge pull request #10763 from Pokechu22/dsp-hle-asnd
...
DSPHLE: Add HLE version of libasnd ucode
2022-06-24 21:51:27 -04:00
a8b5266347
VideoCommon: enable optimizer and remove debug details when converting GLSL to SPIR-V with validation layers turned off
2022-06-24 18:09:53 -05:00
dda1479ecf
VideoBackends / VideoCommon: refactor Vulkan to use new SPIRV functionality
2022-06-24 18:09:53 -05:00
c2d3b7e7f5
VideoCommon: update pixel shader output to match old D3D code
2022-06-24 18:09:53 -05:00
0eb9352579
D3D: update BoundingBox to match generated shader code
2022-06-24 18:09:53 -05:00
cad1d6ce90
VideoCommon: fix support of stereoscopic rendering after moving d3d to SPIRV generation
2022-06-24 18:09:53 -05:00
993fa3bf94
VideoCommon: update UberShaderPixel to properly support logic ops, matching the specialized shader
2022-06-24 18:09:53 -05:00
5dd2704416
D3D / VideoCommon: generate HLSL from SPIRV
2022-06-24 18:09:53 -05:00
3790c99a7d
VideoCommon: add common spirv helper functions
...
Co-authored-by: tellowkrinkle <tellowkrinkle@gmail.com >
2022-06-24 17:52:31 -05:00
1faca4bfc7
Merge pull request #10752 from tellowkrinkle/BetterShaderNames
...
VideoCommon: Better shader names
2022-06-24 15:50:48 -07:00
76f890f6b0
Merge pull request #10761 from Pokechu22/dsp-halt-mail
...
DSPHLE: Handle mail more accurately
2022-06-24 18:46:20 -04:00
ffa3bf86fb
Merge pull request #10760 from tellowkrinkle/std430
...
VideoCommon: Fix SSBO layout and remove associated "bug"
2022-06-24 18:40:47 -04:00
5d2290ba3c
Removed unused variable MAX_MSGLEN in LogManager.cpp
2022-06-24 14:57:03 +10:00
8a144a735f
DSPHLE: Add HLE version of libasnd ucode
2022-06-23 10:50:24 -07:00
0a2aabe6ec
Merge pull request #10753 from Pokechu22/dsp-hle-cdd1-constants
...
DSPHLE: Move CDD1 constants to UCodes.h
2022-06-23 13:43:57 +02:00
2bd72dfc6f
Merge pull request #10758 from shuffle2/x64-on-arm64
...
windows: detect and warn if running x64 dolphin on arm64
2022-06-23 07:34:34 +02:00
f3c8e75666
DSPHLE: Move CDD1 constants to UCodes.h
...
These are used by *all* uCodes, though not all uCodes support MAIL_RESUME or MAIL_CONTINUE.
2022-06-22 22:01:13 -07:00
29ddd0e6f0
windows: detect and warn if running x64 dolphin on arm64
2022-06-22 15:33:12 -07:00
a72fa4b9cc
DSPHLE: Don't generate new mail if the DSP is halted
...
This fixes booting Datel titles with DSPHLE (see https://bugs.dolphin-emu.org/issues/12943 ). Datel messed up their DSP initialization code, so it only works by receiving a mail later on, but if halting isn't implemented then it receives the mail too early and hangs.
2022-06-22 09:57:33 -07:00
3aeafcc70b
DSPHLE: Return last mail with top bit cleared if there is no new mail
...
This is an accuracy improvement, though I don't think it matters for anything in practice.
2022-06-22 09:56:51 -07:00
bdbb23fa1a
DSPHLE: Rename CMailHandler::m_Mails to m_pending_mails
2022-06-22 09:56:51 -07:00
0fec8ffb3c
DSPHLE: Remove empty destructors
...
Most of these were made unnecessary by the previous commit.
2022-06-22 09:56:51 -07:00
567f9bede4
DSPHLE: Remove unneeded calls to m_mail_handler.Clear()
...
It's cleared whenever the uCode changes, so there's no reason to clear it in a destructor or during initialization.
I've also renamed it to ClearPending.
2022-06-22 09:56:50 -07:00
b063f15dcc
DSPHLE: Replace CMailHandler::IsEmpty with CMailHandler::HasPending
2022-06-22 09:56:50 -07:00
c8e716234e
Merge pull request #10732 from Pokechu22/dsp-init
...
Increase accuracy of DSP initialization process
2022-06-22 14:36:04 +02:00
6ddff87d42
Merge pull request #10755 from tellowkrinkle/DebugUID
...
VideoCommon: Don't add garbage to shader uids in debug builds
2022-06-22 14:33:23 +02:00
dc61f87fe4
Merge pull request #10772 from shuffle2/morepch
...
msbuild: add pch for dolphinqt
2022-06-22 14:27:44 +02:00
ceef02ed2a
Merge pull request #10750 from Pokechu22/hermes-test
...
Enhance DSPAssemblyTest, and fix various DSPTool bugs discovered while doing so
2022-06-22 14:26:50 +02:00
430c58cf27
IOS: Use host nameserver on more BSDs
2022-06-21 21:49:02 -05:00
a2530e3b93
IOS: Use first available IPv4 nameserver
2022-06-21 21:49:02 -05:00
b39a11e23b
msbuild: add pch for dolphinqt
...
since this now includes Qt headers it's better than only using
the vanilla DolphinLib one alone (previous behavior before Qt6)
2022-06-21 13:35:14 -07:00
a334883c47
Qt/MemoryViewWidget: Don't elide text
...
Before, the Hex 32 display would get truncated on Linux.
2022-06-20 18:53:23 -07:00
f441e3ab98
Merge pull request #10723 from Pokechu22/dsp-lle-unsigned-loop-counter
...
DSP LLE Recompiler: Fix LOOP and BLOOP when the counter is between 0x8001 and 0xFFFF
2022-06-21 02:01:13 +02:00
c317f7fd22
DSPLLE: Don't log when DIRQ is set to 0
...
No interrupt is generated in this case. The homebrew liband uCode writes zero fairly frequently, so logging it results in spam.
2022-06-19 10:46:41 -07:00
2b2b8e932d
Rename FPS_REFRESH_INTERVAL in VideoCommon/FPSCounter
2022-06-17 20:11:53 -06:00
f79ac768d8
VideoCommon:ShaderCache: Add const to some local variables
2022-06-17 20:14:32 -05:00
23ed611077
Merge pull request #10729 from Pokechu22/libusb-error-wrap
...
Improve libusb error logging
2022-06-17 16:01:46 +02:00
b199108964
Merge pull request #10520 from AdmiralCurtiss/resource-pack-init-crash
...
ResourcePack: Avoid crashes on invalid packs during Init().
2022-06-17 13:55:16 +02:00
efbf5a450b
ResourcePack: Avoid crashes on invalid packs during Init().
2022-06-17 03:49:05 +02:00