Splatoon 2: Difference between revisions

Created page with "=Versions= The below documents changes for USA-region updates. Any referenced game-specific symbols are from an old version. ==5.5.1== ExeFs: * main: updated * NPDM: usua..."
 
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Notes=
Voice chat via SDK PiaChat is supported, but it's only enabled when <code>Cmn::Def::getRomType()</code> returns value 0-2 or 8-9 (latter range was added at some point post-3.1.0) and <code>Lp::Utl::Matching::isLanMode()</code> must return true.
=Versions=
=Versions=
The below documents changes for USA-region updates. Any referenced game-specific symbols are from an old version.
The below documents changes for USA-region updates. Any referenced codebin symbols are from 3.1.0.
 
==1.2.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
* rtld / sdk: updated
 
RomFs: {...}
 
The Program-content [[NCA]] KeyGeneration was updated to the revision for [[3.0.1]] (was [[3.0.0]] previously), the revision in the RightsId was also updated.
 
The NintendoSDK*/NintendoWare* versions were updated from v3.4.0 to v3.4.1.
 
{...}
 
==2.0.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
SDK Pia* was updated from v5.3.8 to v5.6.2. NEX* was updated from v4.1.8 to v4.1.9.
 
{...}
 
==2.1.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
SDK Pia* was updated from v5.6.2 to v5.6.3.
 
{...}
 
==2.3.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
SDK Pia* was updated from v5.6.3 to v5.9.0. NEX* was updated from v4.1.9 to v4.3.1.
 
{...}
 
==2.3.3==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
SDK Pia* was updated from v5.9.0 to v5.9.1.
 
{...}
 
==3.0.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
SDK NEX* was updated from v4.3.1 to v4.3.3.
 
{...}
 
==3.2.0==
ExeFs:
* main: updated
* [[NPDM]]: usual update
 
RomFs: {...}
 
Symbols were stripped from the main-codebin - the last version with full codebin symbols was 3.1.0.
 
SDK NEX* was updated from v4.3.3 to v4.3.5.
 
{...}
 
==4.5.0==
ExeFs:
* main: updated
* [[NPDM]]: Usual update, and also: The demo ApplicationId in FsAccessControl for read-only savedata-access was added for 01006BB00D45A000.
 
RomFs: {...}
 
SDK NEX* was updated from v4.3.5 to v4.3.11.
 
{...}
 
==5.2.0==
ExeFs:
* main: updated
* [[NPDM]]: Usual update, and also: the demo ApplicationId in FsAccessControl for read-only savedata-access was changed from 01006BB00D45A000 to 01002120116C4000.
 
RomFs: {...}
 
SDK Pia* was updated from v5.9.1 to [[Switch_System_Flaws#Pia|v5.9.3]].
 
{...}


==5.5.1==
==5.5.1==
Line 11: Line 118:
Codebin changes:
Codebin changes:
* A bunch of funcs had {clamp to max value} added:
* A bunch of funcs had {clamp to max value} added:
** This is done with a func which calls a vfunc.
** This is done with <code>enl::ContentTransporterCommon<enl::SystemInformation>::readyReceiveStream()</code> and <code>enl::ContentTransporterCommon<enl::SystemRequestInfo>::readyReceiveStream()</code>. These funcs call <code>sead::ReadStream::readMemBlock</code>, with the returned value now being clamped to a max value.
** <nowiki>enl::PiaTransportManager::receiveFromLib()</nowiki>: Now clamps the output size returned by nn::pia::transport::UnreliableProtocol::Receive() against the input size which was passed to Receive(), instead of using it directly.
** <code>enl::PiaTransportManager::receiveFromLib()</code>: Now clamps the output size returned by <code>nn::pia::transport::UnreliableProtocol::Receive()</code> against the input size which was passed to Receive(), instead of using it directly.
** Two constructors and the associated dtors now have value clamping.
** Two sets of two deconstructors now have value clamping: <code><enl::WriteStream::~WriteStream()></code> and <code><enl::RamWriteStream::~RamWriteStream()></code>.
* <nowiki>enl::TransportManager::updateReceiveBuffer_()</nowiki>:
* <code>enl::TransportManager::updateReceiveBuffer_()</code>:
** This now properly returns when the loop fails to find an entry, instead of null-deref.
** This now properly returns when the loop fails to find an entry, instead of null-deref.
** This now checks <code>if(size_from_header>0x442) {return}</code>. Likewise if the ptr loaded from the array-entry is NULL.
** This now checks <code>if(size_from_header>0x442) {return}</code>. Likewise if the ptr loaded from the array-entry is NULL.
* <nowiki>enl::Buffer::set()</nowiki>: Added a bounds check, returning on fail before the memcpy.
* <code>enl::Buffer::set()</code>: Added a bounds check, returning on fail before the memcpy.


No SDK versions were changed, and the the .nss module string wasn't changed either (which contains a version).
No SDK versions were changed, and the the .nss module string wasn't changed either (which contains a version).