]> Chaos Git - corbenik/corbenik.git/commitdiff
Static offset based twl/agb patches (some bits need more context for dynamic. Unless...
authorchaoskagami <chaos.kagami@gmail.com>
Tue, 7 Jun 2016 14:47:38 +0000 (10:47 -0400)
committerchaoskagami <chaos.kagami@gmail.com>
Tue, 7 Jun 2016 14:54:36 +0000 (10:54 -0400)
patch/agb_sig.pco [new file with mode: 0644]
patch/twl_fix_new.pco [new file with mode: 0644]
patch/twl_fix_old.pco [new file with mode: 0644]

diff --git a/patch/agb_sig.pco b/patch/agb_sig.pco
new file mode 100644 (file)
index 0000000..c0c4373
--- /dev/null
@@ -0,0 +1,51 @@
+# $name  AGB Patches
+# $desc  Patches signatures and bootscreen in AGB firm
+# $ver   01
+# $uuid  35
+
+# TODO - Make dynamic.
+#        This is also terribly inconvienent without labels.
+
+rel agb
+
+# #############################
+
+# Sigs (1)
+seek  0009DF64
+test  C117491C31D0
+jmpne 0006
+set   00204EB070BD
+jmp   000D
+
+# OLD3DS Sigs (6)
+seek  0009D2A8
+test  C117491C31D0
+jmpne 000B
+set   00204EB070BD
+jmp   000D
+# Failed to set sigcheck.
+
+# Abort due to failure. (11)
+rewind
+back  01
+
+# The above rewinds the file and moves backwards
+# one byte (which triggers the underflow error in
+# the VM)
+
+# ##############################
+
+# Bootscreen (13)
+seek  000D8B8A
+test  01
+jmpne 0012
+set   26
+jmp   0016
+
+# OLD3ds bootscreen (18)
+seek  000D7A12
+test  01
+jmpne 000B
+set   26
+
+# End (22)
diff --git a/patch/twl_fix_new.pco b/patch/twl_fix_new.pco
new file mode 100644 (file)
index 0000000..13611cc
--- /dev/null
@@ -0,0 +1,42 @@
+# $name TWL_FIRM patches (New3DS)
+# $desc 
+# $ver  01
+# $uuid 34
+
+# TODO - Make dynamic
+
+# Relative to twl_firm
+rel  twl
+
+# Disable main signature checks
+seek 00165D64
+set  00204EB070BD
+
+# Patch RSA function to not report invalid signatures
+seek 0017474A
+set  0120
+
+# Disable header Nintendo logo check (not generally needed)
+seek 0017553E
+set  00200000
+
+# Disable whitelist check
+seek 001756A0
+set  00200000
+
+# Disable cartridge blacklist check (mostly, if not entirely, demo carts)
+seek 00175A8E
+set  01200000
+
+# Disable save type check
+seek 00175A9A
+set  01200000
+
+# Disable DSi cartridge save exploit check
+seek 00175AA6
+set  01200000
+
+# Stub function commonly used to compare SHA hashes to always succeed
+seek 00175B92
+set  01207047
+
diff --git a/patch/twl_fix_old.pco b/patch/twl_fix_old.pco
new file mode 100644 (file)
index 0000000..ba3bb3b
--- /dev/null
@@ -0,0 +1,43 @@
+# $name TWL_FIRM patches (Old3DS)
+# $desc 
+# $ver  01
+# $uuid 36
+
+# TODO - Make dynamic
+
+# Relative to agb_firm
+rel  twl
+
+# Disable main signature checks
+seek 001650C0
+set  00204EB070BD
+
+# Patch RSA function to not report invalid signatures
+seek 00173A0E
+set  0120
+
+# Disable header Nintendo logo check (not generally needed)
+seek 00174802
+set  00200000
+
+# Disable whitelist check
+seek 00174964
+set  00200000
+
+# Disable cartridge blacklist check (mostly, if not entirely, demo carts)
+seek 00174D52
+set  01200000
+
+# Disable save type check
+seek 00174D5E
+set  01200000
+
+# Disable DSi cartridge save exploit check
+seek 00174D6A
+set  01200000
+
+# Stub function commonly used to compare SHA hashes to always succeed
+seek 00174E56
+set  01207047
+
+# end