Hacking Official Corbenik - Another CFW for advanced users (with bytecode patches!)

  • Thread starter Thread starter chaoskagami
  • Start date Start date
  • Views Views 286,861
  • Replies Replies 2,153
  • Likes Likes 60
Looks like the basename(char *) function isn't a thing in Windows and would need working around in upstream.

Don't worry, upstream has already been informed! Maybe they'll even give a fuck!

A quick fix would be to remove basename entirely, which should still work because of how it calls it (though make stops on error, so there could be more):

Code:
diff -urN bdfe/main.c bdfe-fix/main.c
--- bdfe/main.c   2016-06-16 18:19:00.496718800 +0000
+++ bdfe-fix/main.c   2016-06-16 18:18:06.770896500 +0000
@@ -86,13 +86,13 @@
   unsigned gmin = 32, gmax = 126;
   if (argc < 2) {
-     usage(basename(argv[0]));
+     usage(argv[0]);
     return -1;
   }
   for(int i = 1; i < argc; i++) {
     if (arg_is(argv[i], "-?", "help")) {
-       usage(basename(argv[0]));
+       usage(argv[0]);
       return 0;
     }
@@ -208,7 +208,6 @@
   char buf[16];
   sprintf(buf, "%dx%d", of.gw, of.gh);
-   file = basename(file);
   ossd_putlx(0, -1, file, OSSD_TEXT_REVERSE);
   ossd_putlx(8 - gh, -1, buf, OSSD_TEXT_UNDERLINE | OSSD_TEXT_OVERLINE);
   buf[1] = '\0';

In this case, mingw won't work then (it doesn't provide posix emulation.) You'll have to use cygwin (which does support basename)
 
Rhythm Heaven Megamix doesn't work. It should work through language emulation. I enabled this option and put this file into locale folder:
N9XUbg0.png
Still, no use

EDIT: 0A at the end to match all other files in this directory. They all have 0A as their ending byte
Also, the seed has been imported, it just blackscreens, so... maybe I should test language emulation with something else
 
Last edited by Elveman,
Rhythm Heaven Megamix doesn't work. It should work through language emulation. I enabled this option and put this file into locale folder:
N9XUbg0.png
Still, no use

EDIT: 0A at the end to match all other files in this directory. They all have 0A as their ending byte
Also, the seed has been imported, it just blackscreens, so... maybe I should test language emulation with something else
I think you actually want to type JPN JP instead, you have to put the language it's supposed to be running under, not your language.
 
  • Like
Reactions: a9lh-1user
I think you actually want to type JPN JP instead, you have to put the language it's supposed to be running under, not your language.
The language of my system is Russian, and the language of Megamix (that just got released) is English since it was released in US region. So I've put USA EN
 
I think you actually want to type JPN JP instead, you have to put the language it's supposed to be running under, not your language.

You want JPN JA, not JPN JP. I don't use the same locales as everyone else. As a side not, enabling Logging would help because I haven't thoroughly tested langemu.
 
Hm, can you enable verbosity & logging and post your loader.log?
You want JPN JA, not JPN JP. I don't use the same locales as everyone else. As a side not, enabling Logging would help because I haven't thoroughly tested langemu.
boot.log
Config file loaded.
Loading firmware...
FIRM load triggered.
NATIVE_FIRM
[l__fp]
Ver: 00000021, 1
TWL_FIRM
[l__fp]
Ver: 00000000, 1
AGB_FIRM
[l__fp]
Ver: 00000000, 1
Patching firmware...
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500002
find 6 ...
l:0 g:0 e:0 f:1 m:3 o:0x0002a3aa
c:0x0000000a m:0x240aa6aa n:2450000a
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0002a3aa
c:0x0000000b m:0x240aa6aa n:2450000b
fwd 5
l:0 g:0 e:0 f:1 m:3 o:0x0002a3af
c:0x0000000d m:0x240aa6af n:2450000d
set 1, ...
l:0 g:0 e:0 f:1 m:3 o:0x0002a3b0
c:0x00000010 m:0x240aa6b0 n:24500010
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500011
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500013
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9c
c:0x00000008 m:0x240bae9c n:24500019
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9c
c:0x00000009 m:0x240bae9c n:2450001a
set 2, ...
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9e
c:0x0000000d m:0x240bae9e n:2450001e
rewind
l:0 g:0 e:0 f:1 m:3 o:0x00000000
c:0x0000000e m:0x24080300 n:2450001f
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x00034331
c:0x00000014 m:0x240b4631 n:24500025
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x00034331
c:0x00000015 m:0x240b4631 n:24500026
back 1
l:0 g:0 e:0 f:1 m:3 o:0x00034330
c:0x00000017 m:0x240b4630 n:24500028
set 4, ...
l:0 g:0 e:0 f:1 m:3 o:0x00034334
c:0x0000001d m:0x240b4634 n:2450002e
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:2450002f
rel 1
l:0 g:0 e:0 f:0 m:1 o:0x00000000
c:0x00000002 m:0x24300000 n:24500031
find 6 ...
l:0 g:0 e:0 f:1 m:1 o:0x0009df64
c:0x0000000a m:0x2439df64 n:24500039
abortnf
l:0 g:0 e:0 f:1 m:1 o:0x0009df64
c:0x0000000b m:0x2439df64 n:2450003a
set 6, ...
l:0 g:0 e:0 f:1 m:1 o:0x0009df6a
c:0x00000013 m:0x2439df6a n:24500042
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500043
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500045
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbc
c:0x00000008 m:0x2409c2bc n:2450004b
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbc
c:0x00000009 m:0x2409c2bc n:2450004c
back 1
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbb
c:0x0000000b m:0x2409c2bb n:2450004e
back 255
l:0 g:0 e:0 f:1 m:3 o:0x0001bebc
c:0x0000000d m:0x2409c1bc n:24500050
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7a
c:0x00000013 m:0x2409c27a n:24500056
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7a
c:0x00000014 m:0x2409c27a n:24500057
set 4, ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7e
c:0x0000001a m:0x2409c27e n:2450005d
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:2450005e
rel 2
l:0 g:0 e:0 f:0 m:2 o:0x00000000
c:0x00000002 m:0x24100000 n:24500060
n3ds
l:0 g:0 e:1 f:0 m:2 o:0x00000000
c:0x00000003 m:0x24100000 n:24500061
jmpeq 6
l:0 g:0 e:1 f:0 m:2 o:0x00000000
c:0x00000006 m:0x24100000 n:24500064
seek 1465700
l:0 g:0 e:1 f:0 m:2 o:0x00165d64
c:0x0000000b m:0x24265d64 n:24500069
set 6, ...
l:0 g:0 e:1 f:0 m:2 o:0x00165d6a
c:0x00000013 m:0x24265d6a n:24500071
seek 1525578
l:0 g:0 e:1 f:0 m:2 o:0x0017474a
c:0x00000018 m:0x2427474a n:24500076
set 2, ...
l:0 g:0 e:1 f:0 m:2 o:0x0017474c
c:0x0000001c m:0x2427474c n:2450007a
seek 1529150
l:0 g:0 e:1 f:0 m:2 o:0x0017553e
c:0x00000021 m:0x2427553e n:2450007f
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175542
c:0x00000027 m:0x24275542 n:24500085
seek 1529504
l:0 g:0 e:1 f:0 m:2 o:0x001756a0
c:0x0000002c m:0x242756a0 n:2450008a
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x001756a4
c:0x00000032 m:0x242756a4 n:24500090
seek 1530510
l:0 g:0 e:1 f:0 m:2 o:0x00175a8e
c:0x00000037 m:0x24275a8e n:24500095
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175a92
c:0x0000003d m:0x24275a92 n:2450009b
seek 1530522
l:0 g:0 e:1 f:0 m:2 o:0x00175a9a
c:0x00000042 m:0x24275a9a n:245000a0
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175a9e
c:0x00000048 m:0x24275a9e n:245000a6
seek 1530534
l:0 g:0 e:1 f:0 m:2 o:0x00175aa6
c:0x0000004d m:0x24275aa6 n:245000ab
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175aaa
c:0x00000053 m:0x24275aaa n:245000b1
seek 1530770
l:0 g:0 e:1 f:0 m:2 o:0x00175b92
c:0x00000058 m:0x24275b92 n:245000b6
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175b96
c:0x0000005e m:0x24275b96 n:245000bc
jmp 185
l:0 g:0 e:1 f:0 m:2 o:0x00175b96
c:0x000000b9 m:0x24275b96 n:24500117
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500118
rel 1
l:0 g:0 e:0 f:0 m:1 o:0x00000000
c:0x00000002 m:0x24300000 n:2450011a
find 4 ...
l:0 g:0 e:0 f:1 m:1 o:0x000d8b88
c:0x00000008 m:0x243d8b88 n:24500120
abortnf
l:0 g:0 e:0 f:1 m:1 o:0x000d8b88
c:0x00000009 m:0x243d8b88 n:24500121
fwd 2
l:0 g:0 e:0 f:1 m:1 o:0x000d8b8a
c:0x0000000b m:0x243d8b8a n:24500123
set 1, ...
l:0 g:0 e:0 f:1 m:1 o:0x000d8b8b
c:0x0000000e m:0x243d8b8b n:24500126
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500127
VM exited without issue
reboot: proc9 mem @ 08028000
reboot: firmlaunch @ 240dcde0
reboot: fopen @ 08059d21
reboot: NATF @ 240dcf0c
reboot: TWLF @ 240dcf10
reboot: AGBF @ 240dcf14
reboot: rebc @ 240dcef8
svc: 0x7B (backdoor) missing.
Svc: backdoor is 40 bytes
Svc: Read code to 24064268
svc: Injected 0x7B.
module: Grow 2 units
Module: Injecting 610271512
Module: injected modules.
Updated keyX keyslots
Copied FIRM
loader.log
Title: 0004013000008002
validated params
patched cpu
patch: /corbenik/cache/loader/0004013000008002
exec
rel
find
abortnf
set
find
abortnf
set
next
Title: 0004013000002202
validated params
Title: 0004013000001702
validated params
Title: 0004013000001B02
validated params
Title: 0004013000001E02
validated params
Title: 0004013000001F02
validated params
Title: 0004013000002102
validated params
Title: 0004013000002302
validated params
Title: 0004013000003102
validated params
Title: 0004003000008A02
validated params
patch: /corbenik/cache/loader/0004003000008A02
exec
rel
find
abortnf
set
find
abortnf
set
find
abortnf
set
find
abortnf
set
next
Title: 0004003000009802
validated params
patch: /corbenik/cache/loader/0004003000009802
exec
rel
find
abortnf
back
set
next
Title: 0004013000001D02
validated params
Title: 0004013000001802
validated params
Title: 0004013000001A02
validated params
Title: 0004013000001502
validated params
Title: 0004013000001C02
validated params
Title: 0004013000004202
validated params
Title: 0004013000001602
validated params
Title: 0004013000002702
validated params
Title: 0004013000002002
validated params
Title: 0004013000003302
validated params
Title: 0004013000002D02
validated params
Title: 0004013000002E02
validated params
Title: 0004013000002902
validated params
Title: 0004013000002F02
validated params
Title: 0004013000002602
validated params
Title: 0004013000003202
validated params
Title: 0004013000002402
validated params
Title: 0004013000003402
validated params
Title: 0004013000003802
validated params
Title: 0004013000003502
validated params
Title: 0004013000002B02
validated params
Title: 0004013000002C02
validated params
patch: /corbenik/cache/loader/0004013000002C02
exec
rel
find
abortnf
set
next
rel
find
abortnf
set
next
Title: 0004013000002802
validated params
Title: 000400000018A400
validated params
Title: 0004013000004002
validated params
Title: 0004013000003702
validated params
patch: /corbenik/cache/loader/0004013000003702
exec
rel
find
abortnf
set
find
abortnf
set
find
abortnf
set
next
Title ID of Megamix is 000400000018A400. It is an USA title with EN language
 
boot.log
Config file loaded.
Loading firmware...
FIRM load triggered.
NATIVE_FIRM
[l__fp]
Ver: 00000021, 1
TWL_FIRM
[l__fp]
Ver: 00000000, 1
AGB_FIRM
[l__fp]
Ver: 00000000, 1
Patching firmware...
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500002
find 6 ...
l:0 g:0 e:0 f:1 m:3 o:0x0002a3aa
c:0x0000000a m:0x240aa6aa n:2450000a
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0002a3aa
c:0x0000000b m:0x240aa6aa n:2450000b
fwd 5
l:0 g:0 e:0 f:1 m:3 o:0x0002a3af
c:0x0000000d m:0x240aa6af n:2450000d
set 1, ...
l:0 g:0 e:0 f:1 m:3 o:0x0002a3b0
c:0x00000010 m:0x240aa6b0 n:24500010
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500011
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500013
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9c
c:0x00000008 m:0x240bae9c n:24500019
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9c
c:0x00000009 m:0x240bae9c n:2450001a
set 2, ...
l:0 g:0 e:0 f:1 m:3 o:0x0003ab9e
c:0x0000000d m:0x240bae9e n:2450001e
rewind
l:0 g:0 e:0 f:1 m:3 o:0x00000000
c:0x0000000e m:0x24080300 n:2450001f
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x00034331
c:0x00000014 m:0x240b4631 n:24500025
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x00034331
c:0x00000015 m:0x240b4631 n:24500026
back 1
l:0 g:0 e:0 f:1 m:3 o:0x00034330
c:0x00000017 m:0x240b4630 n:24500028
set 4, ...
l:0 g:0 e:0 f:1 m:3 o:0x00034334
c:0x0000001d m:0x240b4634 n:2450002e
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:2450002f
rel 1
l:0 g:0 e:0 f:0 m:1 o:0x00000000
c:0x00000002 m:0x24300000 n:24500031
find 6 ...
l:0 g:0 e:0 f:1 m:1 o:0x0009df64
c:0x0000000a m:0x2439df64 n:24500039
abortnf
l:0 g:0 e:0 f:1 m:1 o:0x0009df64
c:0x0000000b m:0x2439df64 n:2450003a
set 6, ...
l:0 g:0 e:0 f:1 m:1 o:0x0009df6a
c:0x00000013 m:0x2439df6a n:24500042
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500043
rel 3
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000002 m:0x24080300 n:24500045
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbc
c:0x00000008 m:0x2409c2bc n:2450004b
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbc
c:0x00000009 m:0x2409c2bc n:2450004c
back 1
l:0 g:0 e:0 f:1 m:3 o:0x0001bfbb
c:0x0000000b m:0x2409c2bb n:2450004e
back 255
l:0 g:0 e:0 f:1 m:3 o:0x0001bebc
c:0x0000000d m:0x2409c1bc n:24500050
find 4 ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7a
c:0x00000013 m:0x2409c27a n:24500056
abortnf
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7a
c:0x00000014 m:0x2409c27a n:24500057
set 4, ...
l:0 g:0 e:0 f:1 m:3 o:0x0001bf7e
c:0x0000001a m:0x2409c27e n:2450005d
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:2450005e
rel 2
l:0 g:0 e:0 f:0 m:2 o:0x00000000
c:0x00000002 m:0x24100000 n:24500060
n3ds
l:0 g:0 e:1 f:0 m:2 o:0x00000000
c:0x00000003 m:0x24100000 n:24500061
jmpeq 6
l:0 g:0 e:1 f:0 m:2 o:0x00000000
c:0x00000006 m:0x24100000 n:24500064
seek 1465700
l:0 g:0 e:1 f:0 m:2 o:0x00165d64
c:0x0000000b m:0x24265d64 n:24500069
set 6, ...
l:0 g:0 e:1 f:0 m:2 o:0x00165d6a
c:0x00000013 m:0x24265d6a n:24500071
seek 1525578
l:0 g:0 e:1 f:0 m:2 o:0x0017474a
c:0x00000018 m:0x2427474a n:24500076
set 2, ...
l:0 g:0 e:1 f:0 m:2 o:0x0017474c
c:0x0000001c m:0x2427474c n:2450007a
seek 1529150
l:0 g:0 e:1 f:0 m:2 o:0x0017553e
c:0x00000021 m:0x2427553e n:2450007f
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175542
c:0x00000027 m:0x24275542 n:24500085
seek 1529504
l:0 g:0 e:1 f:0 m:2 o:0x001756a0
c:0x0000002c m:0x242756a0 n:2450008a
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x001756a4
c:0x00000032 m:0x242756a4 n:24500090
seek 1530510
l:0 g:0 e:1 f:0 m:2 o:0x00175a8e
c:0x00000037 m:0x24275a8e n:24500095
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175a92
c:0x0000003d m:0x24275a92 n:2450009b
seek 1530522
l:0 g:0 e:1 f:0 m:2 o:0x00175a9a
c:0x00000042 m:0x24275a9a n:245000a0
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175a9e
c:0x00000048 m:0x24275a9e n:245000a6
seek 1530534
l:0 g:0 e:1 f:0 m:2 o:0x00175aa6
c:0x0000004d m:0x24275aa6 n:245000ab
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175aaa
c:0x00000053 m:0x24275aaa n:245000b1
seek 1530770
l:0 g:0 e:1 f:0 m:2 o:0x00175b92
c:0x00000058 m:0x24275b92 n:245000b6
set 4, ...
l:0 g:0 e:1 f:0 m:2 o:0x00175b96
c:0x0000005e m:0x24275b96 n:245000bc
jmp 185
l:0 g:0 e:1 f:0 m:2 o:0x00175b96
c:0x000000b9 m:0x24275b96 n:24500117
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500118
rel 1
l:0 g:0 e:0 f:0 m:1 o:0x00000000
c:0x00000002 m:0x24300000 n:2450011a
find 4 ...
l:0 g:0 e:0 f:1 m:1 o:0x000d8b88
c:0x00000008 m:0x243d8b88 n:24500120
abortnf
l:0 g:0 e:0 f:1 m:1 o:0x000d8b88
c:0x00000009 m:0x243d8b88 n:24500121
fwd 2
l:0 g:0 e:0 f:1 m:1 o:0x000d8b8a
c:0x0000000b m:0x243d8b8a n:24500123
set 1, ...
l:0 g:0 e:0 f:1 m:1 o:0x000d8b8b
c:0x0000000e m:0x243d8b8b n:24500126
next
l:0 g:0 e:0 f:0 m:3 o:0x00000000
c:0x00000000 m:0x24080300 n:24500127
VM exited without issue
reboot: proc9 mem @ 08028000
reboot: firmlaunch @ 240dcde0
reboot: fopen @ 08059d21
reboot: NATF @ 240dcf0c
reboot: TWLF @ 240dcf10
reboot: AGBF @ 240dcf14
reboot: rebc @ 240dcef8
svc: 0x7B (backdoor) missing.
Svc: backdoor is 40 bytes
Svc: Read code to 24064268
svc: Injected 0x7B.
module: Grow 2 units
Module: Injecting 610271512
Module: injected modules.
Updated keyX keyslots
Copied FIRM
loader.log
Title: 0004013000008002
validated params
patched cpu
patch: /corbenik/cache/loader/0004013000008002
exec
rel
find
abortnf
set
find
abortnf
set
next
Title: 0004013000002202
validated params
Title: 0004013000001702
validated params
Title: 0004013000001B02
validated params
Title: 0004013000001E02
validated params
Title: 0004013000001F02
validated params
Title: 0004013000002102
validated params
Title: 0004013000002302
validated params
Title: 0004013000003102
validated params
Title: 0004003000008A02
validated params
patch: /corbenik/cache/loader/0004003000008A02
exec
rel
find
abortnf
set
find
abortnf
set
find
abortnf
set
find
abortnf
set
next
Title: 0004003000009802
validated params
patch: /corbenik/cache/loader/0004003000009802
exec
rel
find
abortnf
back
set
next
Title: 0004013000001D02
validated params
Title: 0004013000001802
validated params
Title: 0004013000001A02
validated params
Title: 0004013000001502
validated params
Title: 0004013000001C02
validated params
Title: 0004013000004202
validated params
Title: 0004013000001602
validated params
Title: 0004013000002702
validated params
Title: 0004013000002002
validated params
Title: 0004013000003302
validated params
Title: 0004013000002D02
validated params
Title: 0004013000002E02
validated params
Title: 0004013000002902
validated params
Title: 0004013000002F02
validated params
Title: 0004013000002602
validated params
Title: 0004013000003202
validated params
Title: 0004013000002402
validated params
Title: 0004013000003402
validated params
Title: 0004013000003802
validated params
Title: 0004013000003502
validated params
Title: 0004013000002B02
validated params
Title: 0004013000002C02
validated params
patch: /corbenik/cache/loader/0004013000002C02
exec
rel
find
abortnf
set
next
rel
find
abortnf
set
next
Title: 0004013000002802
validated params
Title: 000400000018A400
validated params
Title: 0004013000004002
validated params
Title: 0004013000003702
validated params
patch: /corbenik/cache/loader/0004013000003702
exec
rel
find
abortnf
set
find
abortnf
set
find
abortnf
set
next
Title ID of Megamix is 000400000018A400. It is an USA title with EN language
For some reason it isn't getting patched. I can't look right now into the code, but there's no mention of that title ID.

Strings like https://github.com/chaoskagami/corbenik/blob/master/external/loader/source/patcher.c#L137 should show up after a successful patching
 
Last edited by Wolfvak,
For some reason it isn't getting patched. I can't look right now into the code, but there's no mention of that title ID.

Strings like https://github.com/chaoskagami/corbenik/blob/master/external/loader/source/patcher.c#L137 should show up after a successful patching

Ho-hum. I'll go test on another game. For all I know, I broke langemu since I don't use it very often.

Also, it only reads six bytes from the file. The first three are the region, then one gap, then two for the language code. You could put the content 'JPN_JA Imma cheezeburger hi' and it'd work properly (assuming I didn't accidentally break it) 0A is '\n' / newline.
 
Last edited by chaoskagami,
Ho-hum. I'll go test on another game. For all I know, I broke langemu since I don't use it very often.

Also, it only reads six bytes from the file. The first three are the region, then one gap, then two for the language code. You could put the content 'JPN_JA Imma cheezeburger hi' and it'd work properly (assuming I didn't accidentally break it)
I think I found an issue. It is in file patch_format.h
There's
Code:
#define PATH_LOCEMU PATH_CONFIG_DIR "/locale"  // Locale emulation config
should be
Code:
#define PATH_LOCEMU "/locale"  // Locale emulation config

EDIT: just moved "locale" folder from "corbenik" into "/corbenik/config", it worked, so here it is
 
Last edited by Elveman,
  • Like
Reactions: chaoskagami
I think i found an issue. It is in file patch_format.h
There's
Code:
#define PATH_LOCEMU PATH_CONFIG_DIR "/locale"  // Locale emulation config
should be
Code:
#define PATH_LOCEMU "/locale"  // Locale emulation config

Aha. Nice catch. Yeah, that doesn't look right. I'll fix it in git. Next release isn't gonna be big.

And by the way your fix isn't quite right per-se - it should be PATH_CFW "/locale"
 
Last edited by chaoskagami,
  • Like
Reactions: Elveman
just noticed that before you edited your message x)

This is now corrected in git, along with some work done on something...uh, new.

One of the things I've always wondered is why EmuNAND is at the front of the disk - it means you can't change the partition size easily, nor add/remove emunands. It's less than ideal.

I'm implementing reverse emunand, where the EmuNANDs are at (last sector - size) rather than the front of the disk. This isn't going to be supported by anything userland, but I can only hope it catches on once people figure out there's benefits to it (like not needing to format the partition to add EmuNANDs, growing the FAT partition to delete EmuNANDs, shrinking the FAT partition to add them.)
 
I'm implementing reverse emunand, where the EmuNANDs are at (last sector - size) rather than the front of the disk. This isn't going to be supported by anything userland, but I can only hope it catches on once people figure out there's benefits to it (like not needing to format the partition to add EmuNANDs, growing the FAT partition to delete EmuNANDs, shrinking the FAT partition to add them.)
Clever. I suppose it's done that way because it's always been done that way and noone has bothered to rethink it. One of those things that's hard to come up with but obvious in hindsight.
 
This is now corrected in git, along with some work done on something...uh, new.

One of the things I've always wondered is why EmuNAND is at the front of the disk - it means you can't change the partition size easily, nor add/remove emunands. It's less than ideal.

I'm implementing reverse emunand, where the EmuNANDs are at (last sector - size) rather than the front of the disk. This isn't going to be supported by anything userland, but I can only hope it catches on once people figure out there's benefits to it (like not needing to format the partition to add EmuNANDs, growing the FAT partition to delete EmuNANDs, shrinking the FAT partition to add them.)
So what will this new implemention of EmuNAND be called? RevNAND? RemuNAND? CubiaNAND (Cause Cubia is the opposite of the Cursed Wave, but this would probably be lost on others)
 
  • Like
Reactions: gnmmarechal
I added a section about your CFW to my thread!

Yaaaaay. Pretty accurate.

Clever. I suppose it's done that way because it's always been done that way and noone has bothered to rethink it. One of those things that's hard to come up with but obvious in hindsight.

It literally requires only one line of code to reverse the layout, which is why this REALLY baffles me as a design decision. getMMCDevice(1)->total_size - offset

So what will this new implemention of EmuNAND be called? RevNAND? RemuNAND? CubiaNAND (Cause Cubia is the opposite of the Cursed Wave, but this would probably be lost on others)

Well, it's really just moving the emuNAND to a different place on the SD. Otherwise, it's still gateway emunands/rednand. I'm just calling it reverse layout, since there's nothing really changed per-se.
 
Last edited by chaoskagami,
  • Like
Reactions: Temptress Cerise
Finally! Another EmuNAND on my SD card without the agony of backing up files for an ~hour!..
Or is it? Will Corbenik work from 'both sides'? For example, one standard EmuNAND for Gateway and the reverse one for Corbenik. Will both EmuNANDs be accessible from Corbenik?
 
Last edited by Elveman,

Site & Scene News

Popular threads in this forum