Mario Kart Live: Home Circuit: Difference between revisions

No edit summary
No edit summary
Line 3: Line 3:
Communication with the kart is done directly over local-WLAN via [[LDN_services|lp2p:app]]. The service implementation is in the main-codebin itself, without symbols - however there are strings for this. This is the first title on retail which uses lp2p.
Communication with the kart is done directly over local-WLAN via [[LDN_services|lp2p:app]]. The service implementation is in the main-codebin itself, without symbols - however there are strings for this. This is the first title on retail which uses lp2p.


This is also the first known title on retail which uses stack cookies. This is used by main-codebin, the ssp functionality in sdknso is still not used other than being called from an initialization func.
This is also the first known title on retail which uses stack cookies. This is used by main-codebin, the ssp functionality in sdknso is still not used other than being called from an initialization func. This is implemented in the main-codebin as follows:
* The global u64 __stack_chk_guard is loaded then saved immediately before {first saved register} on stack, during func entry. During func exit, the global u64 is compared with the cookie on stack, it will call __stack_chk_fail on mismatch. __stack_chk_fail just executes an undefined instruction to trigger a crash.
* TODO: initialization


RomFs contains only two files:
RomFs contains only two files: