More actions
(Created page with "{{Infobox Switch Homebrews |title=SXPD |image=sxpdswitch.png |description=Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility. |author=SimonMKWii |lastupdated=2018/06/05 |type=Hack Utilities |version=2 |license=Mixed |download=https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch.7z |website=https://gbatemp.net/threads/sxpd-switch-executable-patch-delta-a-new-file-format-for-exe-patching-a-patch-utility.506158/ |source= |donation= }} {{#seo...") |
No edit summary |
||
Line 1: | Line 1: | ||
{{Infobox Switch Homebrews | {{Infobox Switch Homebrews | ||
|title=SXPD | |title=SXPD | ||
|image= | |image=sxpdnx.png | ||
|description=Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility. | |description=Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility (experimental). | ||
|author=SimonMKWii | |author=SimonMKWii | ||
|lastupdated=2018/06/ | |lastupdated=2018/06/04 | ||
|type=Hack Utilities | |type=Hack Utilities | ||
|version=2 | |version=2 | ||
|license=Mixed | |license=Mixed | ||
|download=https://dlhb.gamebrew.org/switchhomebrews/ | |download=https://dlhb.gamebrew.org/switchhomebrews/sxpdnx.7z | ||
|website=https://gbatemp.net/threads/sxpd-switch-executable-patch-delta-a-new-file-format-for-exe-patching-a-patch-utility.506158/ | |website=https://gbatemp.net/threads/sxpd-switch-executable-patch-delta-a-new-file-format-for-exe-patching-a-patch-utility.506158/ | ||
|source= | |source= | ||
|donation= | |donation= | ||
}} | }} | ||
Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility (experimental). | |||
==User guide== | |||
Switch eXecutable Patch Delta format notes: | |||
For use with .elf files generated with nx2elf from an NSO. | |||
Key: Start Offset, Length (in hex) | |||
[HEADER, 0x00, 0x50] | |||
0x0, 0x4 = Magic number: "SXPD" | |||
0x4, 0x4 = Number of instructions to patch (in hex) | |||
0x8, 0x20 = SHA256 hash of original .elf | |||
0x28, 0x20 = SHA256 hash of patched .elf | |||
0x48, 0x8 = Padding data, put whatever you want here | |||
[LISTINGS, 0x50, (variable length)] | |||
Each listing is 0x8 in length. | |||
0x0, 0x4 = Offset of instruction (in the .elf) | |||
0x4, 0x4 = ARM instruction (as hex) | |||
This format is specifically designed for ARM instructions, and could potentially be used for real-time patching. | |||
Notes: | |||
*Release includes 2 sample patches for Super Mario Odyssey 1.2.0 (note: the god mode patch disables online functionality for obvious reasons). | |||
*Currently it can only patch games (you can make them now if you follow the format notes). | |||
==Screenshots== | ==Screenshots== | ||
https://dlhb.gamebrew.org/switchhomebrews/ | https://dlhb.gamebrew.org/switchhomebrews/sxpdnx2.png | ||
https://dlhb.gamebrew.org/switchhomebrews/sxpdnx3.png | |||
https://dlhb.gamebrew.org/switchhomebrews/ | |||
==Changelog== | ==Changelog== |
Revision as of 13:33, 19 Haziran 2023
SXPD | |
---|---|
General | |
Author | SimonMKWii |
Type | Hack Utilities |
Version | 2 |
License | Mixed |
Last Updated | 2018/06/04 |
Links | |
Download | |
Website | |
Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility (experimental).
User guide
Switch eXecutable Patch Delta format notes:
For use with .elf files generated with nx2elf from an NSO.
Key: Start Offset, Length (in hex) [HEADER, 0x00, 0x50] 0x0, 0x4 = Magic number: "SXPD" 0x4, 0x4 = Number of instructions to patch (in hex) 0x8, 0x20 = SHA256 hash of original .elf 0x28, 0x20 = SHA256 hash of patched .elf 0x48, 0x8 = Padding data, put whatever you want here [LISTINGS, 0x50, (variable length)] Each listing is 0x8 in length. 0x0, 0x4 = Offset of instruction (in the .elf) 0x4, 0x4 = ARM instruction (as hex)
This format is specifically designed for ARM instructions, and could potentially be used for real-time patching.
Notes:
- Release includes 2 sample patches for Super Mario Odyssey 1.2.0 (note: the god mode patch disables online functionality for obvious reasons).
- Currently it can only patch games (you can make them now if you follow the format notes).
Screenshots
Changelog
v.1.0
- First Release.