Commit graph

12433 commits

Author SHA1 Message Date
Admiral H. Curtiss
c310e504cb
AudioCommon: Move sound stream variables to Core::System. 2022-08-31 21:44:21 +02:00
Sepalani
7dc647fd4c BBA/BuiltIn: Add UPnP HTTP listener 2022-08-28 23:09:09 +04:00
Sepalani
7202cf2650 BBA/BuiltIn: Add SSDP multicast support 2022-08-24 21:29:57 +04:00
Sepalani
f992f8f38c BBA/BuiltIn: Make network interface consistent 2022-08-24 21:05:18 +04:00
Admiral H. Curtiss
9c9962083d
Merge pull request #10956 from Dentomologist/address_cpp20_todo_comments
Address c++20 TODO comments
2022-08-24 17:18:56 +02:00
Admiral H. Curtiss
a7d358a97b
Merge pull request #11003 from sepalani/decode-error
Move SocketManager's DecodeError to Common
2022-08-24 17:01:07 +02:00
JosJuice
299aef945b
Merge pull request #11005 from t895/cover-only
Android: Add option to disable game cover text
2022-08-23 18:24:51 +02:00
Charles Lombardo
2caa1f3b43 Android: Add option to disable game cover text 2022-08-22 13:50:39 -04:00
Admiral H. Curtiss
1845a13cbe
Merge pull request #10905 from shuffle2/netplay-hash
netplay: use sha1 instead of md5
2022-08-22 15:57:49 +02:00
Sepalani
597fb9ff6d Move SocketManager's DecodeError to Common
Fix thread safety issue
2022-08-22 14:02:26 +04:00
JMC47
498c06b85a
Merge pull request #10989 from CasualPokePlayer/fifo_reset_dual_core
Fix crashes in dual core mode on a PI_FIFO_RESET
2022-08-18 17:32:29 -04:00
CasualPokePlayer
ab8a8e6f84 Fix crashes in dual core mode on a PI_FIFO_RESET 2022-08-18 13:38:37 -07:00
Mai
39aa5f29a6
Merge pull request #10991 from Pokechu22/dsp-hle-ax-ucode-switch-state
DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
2022-08-18 10:34:57 -04:00
Pokechu22
f9e1933111 DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
Fixes https://bugs.dolphin-emu.org/issues/13017. With uCode switching, the existing instance of AXUCode is re-activated when GBAUCode is done, but if the state remains as WaitingForNextTask, it won't be able to do anything. Instead, it needs to be in WaitingForCmdListSize.

(When the AX uCode is resumed, startpc is set to 0x0030, at least for 0x07f88145; this is the same location as MAIL_RESUME jumps to, so DSP_RESUME should be sent when the resuming happens; that's already handled by AXUCode::Update.)
2022-08-17 12:05:53 -07:00
Shawn Hoffman
4ae475b6a1 fix verifying wii dev signatures
allows verifying dev-signed discs and wads
2022-08-16 12:47:26 -07:00
Léo Lam
be33e1079d
Merge pull request #10972 from AdmiralCurtiss/ios-fs-metadata-nop
IOS/FS: Skip writing FST if SetMetadata() changes nothing.
2022-08-11 16:16:45 +01:00
Admiral H. Curtiss
0d39c4a78a
IOS/FS: Skip writing FST if SetMetadata() changes nothing. 2022-08-10 06:28:23 +02:00
Admiral H. Curtiss
dcdba11ded
Merge pull request #10962 from askew-etc/inc-dec-select-state-hotkeys
Add hotkeys for incrementing/decrementing select state slot
2022-08-10 01:41:32 +02:00
Sage King
da803adf15 Work around for compiler bug on Debian and FreeBSD 2022-08-09 16:26:54 -06:00
Sage King
66276ac61b Added type to SyncIndentifierComparison enum in SyncIdentifier.h in an
attempt to fix a failed call to operator<< in SendResponse()
2022-08-09 16:26:53 -06:00
Sage King
978b6a8724 Added comment explaining obscure folding syntax in NetPlayServer.cpp 2022-08-09 16:26:53 -06:00
Sage King
a12099404e Added SendResponseToAllPlayers() and SendResponseToPlayer() to NetPlayServer.cpp and refactored OnConnect to use them 2022-08-09 16:26:52 -06:00
Sage King
477c20e28d Updated comment explaining enet_peer_timeout's use in NetPlayClient.cpp and NetPlayServer.cpp; Corrected syntax related to PEER_TIMEOUT in NetplayClient.cpp 2022-08-09 16:26:52 -06:00
Sage King
2f367d7a9b Updated PEER_TIMOUT in NetPlayCommon.h to use chrono literals; Updated NetPlayServer.cpp OnConnect() by putting commonly used code into named functions 2022-08-09 16:26:52 -06:00
Sage King
d81756e9b9 Refactored parameter to OnConnect() in NetPlayServer.cpp from rpac to received_packet 2022-08-09 16:26:51 -06:00
Sage King
9d14d95737 Removed code duplicating comments in NetPlayServer.cpp OnConnect() 2022-08-09 16:26:51 -06:00
Sage King
5dea8aaed0 Added initializer braces to Client player; in NetPlayServer.cpp OnConnect() 2022-08-09 16:26:50 -06:00
Sage King
d11df2b700 Refactored variable declared in NetPlayServer.cpp OnConnect() from npver to netplay_version 2022-08-09 16:26:50 -06:00
Mai
c2dd58c361
Merge pull request #10959 from JosJuice/frsp-subnormal
Interpreter: Fix rounding edge case in frsp
2022-08-09 18:17:21 -04:00
Scott Mansell
4c2d707538
Merge pull request #10940 from InvoxiPlayGames/ipc-discord
Add Discord presence ioctlv to /dev/dolphin
2022-08-08 08:11:42 +12:00
askew-etc
914f38753a Add hotkeys for incrementing/decrementing selected state slot (like RetroArch) 2022-08-07 12:20:09 -05:00
Dentomologist
02cd4ecf7d Core: Use std::chrono time_since_epoch 2022-08-06 13:28:28 -07:00
Dentomologist
ff26f6435e Use structured binding for pair values
dir_path is used by PanicAlertFormatT, which prior to PR 10209 used a
lambda. Before c++20, referring to structured bindings in lambda captures
was forbidden. The problem is now doubly fixed, so put the structured
binding back in.
2022-08-06 13:28:28 -07:00
JosJuice
c5d9514cd9 Interpreter: Fix rounding edge case in frsp
Fixes the Dolphin bug mentioned in
https://github.com/dolphin-emu/hwtests/issues/45.

Because this doesn't fix any observed behavior in games (no, 1080°
Avalanche isn't affected), I haven't implemented this in the JITs,
so as to not cause unnecessary performance degradations.
2022-08-06 18:54:19 +02:00
InvoxiPlayGames
f9e39cf200 Add Discord presence ioctlv to /dev/dolphin 2022-08-06 07:32:29 +01:00
Shawn Hoffman
3ca673a675 WiiSave: protect against a stack buffer overflow 2022-08-05 17:24:03 -07:00
Tillmann Karras
b8e64b1f43 AX: fix comments and variable names (NFC)
This command does not upload the MAIN buffers to CPU memory. This was
functionally fixed in f11a40f858 without
updating the comments and variable names.
2022-08-05 15:00:17 +01:00
Admiral H. Curtiss
5508c52a95
Merge pull request #10932 from JosJuice/nfs
DiscIO: Add support for the NFS format
2022-08-04 22:20:08 +02:00
JosJuice
a87dffe52d DiscIO: Replace IsDataSizeAccurate with GetDataSizeType
Previously, we had WBFS and CISO which both returned an upper bound
of the size, and other formats which returned an accurate size. But
now we also have NFS, which returns a lower bound of the size. To
allow VolumeVerifier to make better informed decisions for NFS, let's
use an enum instead of a bool for the type of data size a blob has.
2022-08-04 22:00:59 +02:00
JosJuice
3a6df63e9b DiscIO: Add support for the NFS format
For a few years now, I've been thinking it would be nice to make Dolphin
support reading Wii games in the format they come in when you download
them from the Wii U eShop. The Wii U eShop has some good deals on Wii
games (Metroid Prime Trilogy especially is rather expensive if you try
to buy it physically!), and it's the only place right now where you can
buy Wii games digitally.

Of course, Nintendo being Nintendo, next year they're going to shut down
this only place where you can buy Wii games digitally. I kind of wish I
had implemented this feature earlier so that people would've had ample
time to buy the games they want, but... better late than never, right?

I used MIT-licensed code from the NOD library as a reference when
implementing this. None of the code has been directly copied, but
you may notice that the names of the struct members are very similar.
c1635245b8/lib/DiscIONFS.cpp
2022-08-04 22:00:58 +02:00
JosJuice
bb27d4cc95 DiscIO/VolumeWii: Decouple "is encrypted" from "is hashed"
Needed for the next commit. NFS disc images are hashed but not encrypted.

While we're at it, also get rid of SupportsIntegrityCheck.
It does the same thing as old IsEncryptedAndHashed and new HasWiiHashes.
2022-08-04 20:29:22 +02:00
Tilka
3ad6e3abc2
Merge pull request #10768 from Pokechu22/dsp-hle-gba-class
DSPHLE: Eliminate global state in GBA and AX uCode + accuracy improvements
2022-08-04 13:50:30 +01:00
Tilka
8105d0034d
Merge pull request #10821 from Pokechu22/dimar-masking
DVDInterface: Mask upper bits of DIMAR in GC mode
2022-08-04 12:50:49 +01:00
Pokechu22
bf70026728 DSPHLE: Require implementing DoState
CARDUCode, GBAUCode, and INITUCode previously didn't have an implementation of it. In practice it's unlikely that this caused an issue, since these uCodes are only active for a few frames at most, but now that GBAUCode doesn't have global state, we can implement it there. I also implemented it for CARDUCode, although our CARDUCode implementation does not have all states handled yet - this is simply future-proofing so that when the card uCode is properly implemented, the save state version does not need to be bumped. INITUCode does not have any state to save, though.
2022-08-03 17:32:12 -07:00
Pokechu22
f2e833b5c4 DSPHLE: Eliminate global state in AX uCode
This also increases accuracy as to when specific mail is allowed, and correctly handles masking of the 0xCDD1 mails.
2022-08-03 17:32:12 -07:00
Pokechu22
8d66c29f33 DSPHLE: Eliminate global state in GBA uCode + accuracy improvements
The accuracy improvements are:

* The request mail must be 0xabba0000 exactly; both the low and high parts are checked
* The address is masked with 0x0fffffff
* Before, the global state meant that after the GBA uCode had been used once, it would accept 0xcdd1 commands immediately. Now, it only accepts them after execution has finished.
2022-08-03 17:32:12 -07:00
Pokechu22
8b65e84121 DSPHLE: Make all uCode implementations final classes
(Apart from AXUCode, which is inherited by AXWiiUCode.)
2022-08-03 17:32:12 -07:00
Mai
27669fc7c8
Merge pull request #10828 from JosJuice/jitarm64-32-bit-exception
JitArm64: Pass 32-bit temp GPR to WriteConditionalExceptionExit
2022-08-03 14:36:19 -04:00
Mai
a8b2174ce6
Merge pull request #10872 from shuffle2/timer
Timer improvements
2022-08-03 14:30:29 -04:00
Mai
ebb8402a24
Merge pull request #10934 from sepalani/bba-igmp
BBA/BuiltIn: Add minimal IGMP support
2022-08-03 14:17:41 -04:00