A ver...
Todos los juegos tienen BCA... la cosa es que hasta ahora no habían llamadas a ese dato.
La BCA por lo visto almacena datos de región, país o algo parecido... (vamos, un código de barras en toda regla) por lo que NO puede ser todo cero.
Por cierto el BCA de New Super Mario
NO es este:
000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 0000000100000000 0000000000000000
Mirad, un BCA de cualquier juego sigue esta estructura:
000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 000000XXab89e754 3047b3f157d44132
Hasta ahora en la posición de las XX habían ceros (00) pero curiosamente NSMB lleva un byte "extra" que casualmente es el único que comprueba el ejecutable cada cierto tiempo (tiempo impreciso por otra parte, lo que hace que casi nunca se cuelgue igual)
O sea, que NSMB tiene un BCA así:
000000000000000 0000000000000000 0000000000000000 0000000000000000
0000000000000000 0000000000000000 00000001ab89e754 3047b3f157d44132
Pero como sólo se comprueba el byte rojo, el juego se lo traga sin rechistar si sólo ponemos
01 en la posición que toca.
Bien... si el resto de juegos siguen esta estructura, la comprobación del BCA será siempre en la misma posición 33.
Si la protección es la misma, wiikey2 se encarga de parchear automáticamente ese dato si recibe la "llamada del ahorro", por lo que debería funcionar el juego sin meter datos a la iso... como veo que ocurre.
Lógicamente si el byte cambia de posición o de valor, poniendo el dato a mano basta para que uLoader/flat*/Wasabi lo vean y lo parcheen... (Wiikey2 tendrá que limitarse a fallar)