Nand corruptas. Posible "solución"

Hola, voy a contaros mi odisea con la extracción de la nand por puerto paralelo. Espero que a alguien le sirva de algo :)

Hice todo según el tutorial de VDF_Demon (mil gracias por el gran trabajo que has hecho) y procedi a extraer la nand. Cuando llevaba 3 extracciones (nand1.bin, nand2.bin, nand3.bin) esto eran los resultados:
- nand1.bin y nand2.bin: 2 diferencias (testeadas con el totalcommander en binario).
- nand1.bin y nand3.bin: 1 diferencia
- nand2.bin y nand3.bin: 1 diferencia

De aquí deduje que, ¡¡¡nand3.bin era una copia correcta!!! ¿por qué? Pues, suponiendo que los errores se producen aleatoriamente y que la probabilidad de que se produzca exactamente el mismo error en 2 extracciones (es decir, que modifique exáctamente el valor de los mismos bits) es 0... la única posibilidad es que nand3.bin sea correcta :) Si os quereis entretener podeis pensar un poquillo y veréis que es la única opción :)

PD:
- evidentemente lei una 4 vez la nand y nand4.bin esta vez me salió igual que nand3.bin.
- mientras se extraia por 4ª vez la nand (me aburria) y combrobé con un editor hexadecimal que:
* Los bits que diferian entre nand1.bin y nand3.bin, en nand2.bin eran iguales que en nand3.bin (que lio).
* Los bits que diferian entre nand2.bin y nand3.bin, en nand1.bin eran iguales que en nand3.bin.
- Se puede hacer un programa bastante sencillo que a partir de varias extracciones (3 o más) regenere una nand en teoría correcta (si la suposición anterior es cierta). Basta con poner en cada byte el valor que se repita en todas las extracciones o todas las extracciones menos una. Si este byte varía en más de una extracción cuidado!!!

Edit:
Bueno, como han dicho más abajo, el programa ya existe y además se ha hablado de él en el foro:
http://www.elotrolado.net/hilo_nand-compare-1-1_1345534
Hay una aplicación que hace eso pero ahora mismo no recuerdo dónde lo vi, aunque creo que fue en xboxhacker.
No sabía de ese programa. Edito el mensaje principal :)

dagoar escribió:bad block mover?


El bad block mover supongo que será para arreglar bloques defectuosos de la nand. A lo que yo me refiero es a errores producidos en la lectura de la nand debido principalmente al uso del puerto paralelo.
Ya me he dado cuenta... [fumando]
5 respuestas