[Actualizado 18/01] Proyecto Ingenieria inversa DIP-Plugin

Hola!

Hace un tiempo que estoy trabajando tratando de hacer ingeniería inversa sobre el DIP-Plugin para poder tener entender como funciona el mismo. El dip-plugin es la versión de Hermes, exactamente la versión que usa el uLoader 3.6A.

El proyecto esta en: http://github.com/spacemanspiff/odip-plugin

Después de realizar algunas correcciones de errores, esta versión del DIP-Plugin carga correctamente juegos desde mi Wii chipeada con el uLoader. Lamentablemente no puedo probar la lectura de backups en Wii sin chips porque no tengo una Wii sin chip.

Ahora que el DIP-Plugin que tengo funciona medianamente bien con un Chip. Estuve realizando pruebas con la carga de juegos por USB. El uLoader me detecta correctamente la partición y los juegos, los carga perfectamente (por lo menos los que probé) pero no me funcionó la instalación de juegos.

Al que le interese probarlo o ver como esta hecho este DIP-Plugin puede bajarlo de github. Para probarlo solo hay que reemplazar el dip-plugin de la versión 3.6 en el código fuente del uLoader y compilarlo.

Saludos
Si posteas esto mismo en el hilo de uLoader seguramente encuentres a mas gente que puedan probar tu trabajo e incluso ayudarte en el mismo, aparte de que es de agradecer otro "coco pensante" ;)
Resulto ser que la instalación de juegos desde el uLoader no era un problema del DIP-Plugin que estoy armando sino de que estaba registrando demasiadas cosas a la tarjeta SD y eso hacía que tarde demasiado.

Seguramente quedan varias cosas para corregir y para optimizar pero con esta versión del DIP-Plugin, puedo cargar backup de juegos en mi Wii y puedo cargar e instalar juegos x USB.

Saludos
Bueno, comento:

Esta mañana he estado hablando con Waninkoko, sobre éste tema y literalmente ha respondido:

Por mi no hay problema, es mas, es lo logico y lo correcto, asi que adelante ;)

El dia de navidad abri el repositorio para el DIP plugin pero aun no he subido el código a la espera de un par de modificaciones. Ahora mismo me importa poco lo que pueda opinar WiiGator de su publicacion, lleva mucho tiempo desaparecido, no contesta ni dice nada, y el DIP plugin actualmente tiene muchisimo mas codigo mio que suyo (y su parte de codigo fue reemplazada casi por completo por codigo mio...). De todos modos, conociendo a WiiGator, no creo que le importase ya que a el le gusta publicar el codigo de sus aportaciones.

Quizas si esta tarde/noche estoy "libre" (estoy de examenes T_T) ya subo el codigo al repositorio XD


Asi que como se suele decir: unos por los otros y la casa sin barrer XD

El caso es que he estado trabajando en el nuevo módulo importando todo lo nuevo que he metido para uLoader 4.0 y arreglando lo que no iba bien (por ejemplo, el tema de juegos DVD sin chip era un desastre porque había un puntero loco y además, el checkeo de alineación falla), aparte de otras cosas.

Reversando código es normal que se cometan éste tipo de fallos que luego se acaban puliendo revisando, pero si el que te revisa es alguien que dispone del fuente original, es una ventaja XD.

El caso es que:

Juegos WBFS: OK

Juegos FAT .CISO: OK

Juegos DVD con chip: OK

Juegos DVD Multiciso con chip: OK

Juegos DVD sin chip: OK

Juegos DVD Multiciso sin chip: OK

Para los juegos sin chip he ajustado el numero de reintentos de lectura a 32, por que con 15 (y 16), me he tragado algún error y mas vale pecar por exceso que por defecto.

Por cierto, he descubierto un pequeño bug que se me ha colado en uLoader y que me estaba matando haciendo pruebas XD.

Hoy estoy ya cansado y no quiero saber mas del tema: mañana será el día ;) (he estado mirando buscando los posibles errores y espero haberlos solucionado todos)

Saludos

EDITADO:

Waninkoko ha hecho hoy pública su versión de dip_plugin, pero lo ha hecho con licencia BSD. Yo prefiero que mis cambios sean bajo GPL y además, ya me he dado el trabajo de portarlo todo al módulo de Spaceman Spiff.

En este momento me encuentro ocupado haciendo otras cosas (llevo casi todo el día fuera) y no puedo mirar las aportaciones de Waninkoko a su dip_plugin, pero si puedo publicar los fuentes 100% funcionales de ésta nueva librería (creo que no se me ha pasado nada XD, pero fijo que funciona todo), con los cambios de la versión 4.0 de uLoader, por si alguien quiere seguir trabajando en ello.

Así que lo adjunto en éste hilo, ya que es un paquete pequeño XD.

Saludos

Adjuntos

Hermes, si que eres grande...

Ya actualice el odip-plugin con los cambios que hiciste en el repositorio de gitHub.

ahora que el código de wanin esta disponible, voy a ver si ajusto un poco algunos nombres de variables y ese tipo de cosas que no me quedaron bien de haber reversado el código sin entender del todo el código.

Saludos
5 respuestas