Also, here's a couple more patches (9.2U) that may help people doing region swaps:
Set Serial in NNID and ACT
write(0xfffffd5,tuple(map(ord, "N3DS_SERIAL_HERE\0")),pid=0x7)
write(0x0013E74C,tuple(map(ord, "N3DS_SERIAL_HERE\0")),pid=0x22)
The purpose of this is to get your console to make requests with your N3DS serial and not the O3DS serial from your SecureInfo
Block Update Requests
write(0x0010DD28, (0x00, 0x20, 0x08, 0x60, 0x70, 0x47), pid=0x25)
Better patch than what's found in the other thread. The other patch may fail once in a while. This should always work.
Patch Country to US
write(0x001314F8, (0x06, 0x9A, 0x03, 0x20, 0x90, 0x47, 0x55, 0x21, 0x01, 0x70, 0x53, 0x21, 0x41, 0x70, 0x00, 0x21, 0x81, 0x70, 0x60, 0x61, 0x00, 0x20), pid=0x25)
Make RETURN requests respond with US instead of JP. This is needed AFTER you complete a NNID transfer to your japanese console since SOAP will still say your country is "JP" even though your account works in US eshop.
If you want to modify this to work with other region, here's the (lovingly) hand crafted assembly code
Code:
0: 9a06 ldr r2, [sp, #24]
2: 2003 movs r0, #3
4: 4790 blx r2
6: 2155 movs r1, #85 ; 0x55
8: 7001 strb r1, [r0, #0]
a: 2153 movs r1, #83 ; 0x53
c: 7041 strb r1, [r0, #1]
e: 2100 movs r1, #0
10: 7081 strb r1, [r0, #2]
12: 6160 str r0, [r4, #20]
14: 2000 movs r0, #0
(Note that your code is at MAX 0x16 bytes or you'll overwrite important stuff. Hence why I wrote this in assembly)
After a successful NNID transfer to your other region console, you must run those commands every time you want to access the eshop.
Also, can someone try to do these patches and create a new NNID. Then reboot, do the patches, and open eshop? I think it may allow eshop to work.