Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

SXPD Switch: Difference between revisions

From GameBrew
(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
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox Switch Homebrews
{{Infobox Switch Homebrews
|title=SXPD
|title=SXPD
|image=sxpdswitch.png
|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/05
|lastupdated=2018/06/04
|type=Hack Utilities
|type=Hack Utilities
|version=2
|version=2
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/sxpdnx.7z?k33p0fil35
|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=https://github.com/switch-stuff/Sexep
|donation=
}}
}}
{{#seo:
Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility (experimental).
|title=Switch Rom Hacks (Hack Utilities) - GameBrew
 
|title_mode=append
==User guide==
|image=sxpdswitch.png
Switch eXecutable Patch Delta format notes:
|image_alt=SXPD
 
}}
For use with .elf files generated with nx2elf from an NSO.
{{cleanup|article|Needs cleanup}}
 
Switch eXecutable Patch Delta, a new file format for exe patching + a patch utility.
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)


==Media==
This format is specifically designed for ARM instructions, and could potentially be used for real-time patching.
<youtube></youtube>


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/sxpdswitch-01.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdnx2.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-02.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-03.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-04.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-05.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-06.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-07.png
https://dlhb.gamebrew.org/switchhomebrews/sxpdswitch-08.png


==Changelog==
https://dlhb.gamebrew.org/switchhomebrews/sxpdnx3.png
'''v.1.0'''
* First Release.


== External links ==
== External links ==
* Gbatemp - https://gbatemp.net/threads/sxpd-switch-executable-patch-delta-a-new-file-format-for-exe-patching-a-patch-utility.506158/
* GitHub - https://github.com/switch-stuff/Sexep
* Github -
* GBAtemp - https://gbatemp.net/threads/sxpd-switch-executable-patch-delta-a-new-file-format-for-exe-patching-a-patch-utility.506158/
* Reddit -

Latest revision as of 04:27, 5 February 2024

SXPD
Sxpdnx.png
General
AuthorSimonMKWii
TypeHack Utilities
Version2
LicenseMixed
Last Updated2018/06/04
Links
Download
Website
Source

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

sxpdnx2.png

sxpdnx3.png

External links

Advertising: