Custom IOS con USB 2.0

1, 2, 3
anonimo200 escribió:Parece que ya han modificado el MPlayer para que aproveche el cios usb 2.0. Echad un vistazo a http://www.ps3news.com/Nintendo-Wii/nin ... -released/ o mejor http://gbatemp.net/index.php?showtopic=139683
Saludos

Edito para preguntar si el menu 3.3v1 tiene el bug trucha (parece ser que el cios usb2 lo requiere) Creedme, he buscado en los foros y no lo encuentro, y eso que creo recordar haber leido un post de comepiedras al respecto...
Tambien me gustaria saber si se puede quitar este cios una vez instalado.
Gracias por todo

Si, 3.3v1 tiene TODOS los IOS truchas que existen, excepto IOS30, es decir, los IOS desde el 36 (incluido) para abajo (menos IOS30) tienen trucha. Lo mejor que se puede hacer con estas versiones es meter un cIOS por si alguna vez actualizamos algo, asi no perdemos trucha.
Como siempre, comepiedras al rescate.
Gracias
¿Para cuando habilitar en BL Gamma la carga mediante USB? ¿Como se complicado puede ser? El día que se pueda cargar por USB o SD la Wii será,para mí, mi consola predilecta de esta generación :p :p

Quién quiere la Wii para usar copias piratas ya lo hace a día de hoy con el BL, sin necesidad de USB 2.0. Lo que me parece impresionante es poder cargar tus propios backups SIN USAR LENTE. Yo tengo unos cuantos juegos que me duele en el alma oír a mi Wii cargar y cargar y cargar (COD 5 es un escándalo en mi Wii) y no dejo de tener la sensación de que al final me la cargo. Con USB 2.0 sería,sencillamente, la bomba. Incluso ahora,con las restricciones y siendo semejante a 3x ya es igual o mejor que lo que tenemos ahora.
¿ Alguien se ha molestado en probarlo ?
Porque yo lo he probado y el usb va rapidísimo, por lo menos a mí. No se si habré hecho algo mal pero he usado el mismo programa que siempre para los test de velocidad y me ha dado 27000kb/s (un poco mas, no recuerdo) antes de 720kb/s no pasaba.
Pero..., aquí viene el pero
cuando tengo el dispositivo usb conectado el wiimote no sincroniza, pero si arranco la aplicación con el dispositivo desconectado entonces si funciona, peeeeero entonces cuando pincho el usb este no es capaz de inicializarse.
Conclusión, por ahora este cios no es util
El driver es para discos duros, sd, sdhc, solo para dispositivos conectados mediante usb?

Si se pudieran leer imágenes desde la SD usando el wiiscruber 1.4 sería la leche.
Hay un foro de softmods. Si quereis discutir hipotéticos softmods que no existen, mejor hacerlo ahí.
rodries escribió:¿ Alguien se ha molestado en probarlo ?
Porque yo lo he probado y el usb va rapidísimo, por lo menos a mí. No se si habré hecho algo mal pero he usado el mismo programa que siempre para los test de velocidad y me ha dado 27000kb/s (un poco mas, no recuerdo) antes de 720kb/s no pasaba.
Pero..., aquí viene el pero
cuando tengo el dispositivo usb conectado el wiimote no sincroniza, pero si arranco la aplicación con el dispositivo desconectado entonces si funciona, peeeeero entonces cuando pincho el usb este no es capaz de inicializarse.
Conclusión, por ahora este cios no es util

Talvéz aún no funcione correctamente este cIOS (aparte de ser un beta) pero, la "proeza" de haber roto la barrera de transmisión de datos (y por muy encima) es algo que podría beneficiar a los dispositivos USB de alta velocidad en un corto plazo, ya que la limitante actual de la transmisión de datos del USB 1.0 podría pasar a la historia... y muy pronto.

Saludoz :cool: !
Pregunta noob: ¿Se puede usar esto sin instalar custom ios?

A mi lo que me interesa es que se implemente junto a reproductores para reproducir .avi y sobretodo .mp4 desde un HDD externo de forma decente. Pero paso de custom ios y demás guarradas.
Para usar esto hace falta instalarlo. Mejor te esperas a BootMii, que dará a WiiLinux la posibilidad de usar un USB decente (mas velocidad que este driver) sin instalar nada mas que BootMii en si, cargando el resto desde SD.
marcan42 escribió:Para usar esto hace falta instalarlo. Mejor te esperas a BootMii, que dará a WiiLinux la posibilidad de usar un USB decente (mas velocidad que este driver) sin instalar nada mas que BootMii en si, cargando el resto desde SD.

He conseguido unos 28000kb/s usando read ahead cache o leyendo bloques grandes de información y desactivando la cache interna de newlib(1kb) con setbuf(f, NULL) en las funciones tipo fopen o usando directamente open para no usar bufferes, ¿tu crees que se puede conseguir más velocidad?
En linux con dd he sacado del mismo usb device unos 30MB/s que es muy parecido, supongo que la perdida de velocidad será debido a la comunicación entre el ppc y el arm.
Un consulta.
Si uso IOS_Reload y DI_Init ¿tendré problemas? ¿Cúal debería ir primero?
soy nuevo en esto y no se como se instala esto del usb k me ase falta para el Mplayer
Ah, amigo, pero es que tu estás probando con bloques grandes de información, que no lo son todo. Como ves ya tiene incluso en ese caso algo de pérdida comparado con Linux.

Lo que se puede conseguir son muchos mas IOPS, que le viene muy bien a cualquier sistema tipo Linux por ejemplo, e incluso podrías usar el USB como swap. Por poner un ejemplo: los IOPS son vitales siempre que quieras enumerar un gran número de directorios, como podría ser al listar una colección de música. Claro, si el hard te da tus 480mbps vas a tirar bien con bloques grandes sin importar lo malo que sea el driver, pero se va a notar las la diferencia cuando estés obligado a usar bloques pequeños. Otro problema de este driver es que creo que no usa interrupciones, asi que te bloquea todo el starlet al usarlo.
marcan42 escribió:Ah, amigo, pero es que tu estás probando con bloques grandes de información, que no lo son todo. Como ves ya tiene incluso en ese caso algo de pérdida comparado con Linux.

Lo que se puede conseguir son muchos mas IOPS, que le viene muy bien a cualquier sistema tipo Linux por ejemplo, e incluso podrías usar el USB como swap. Por poner un ejemplo: los IOPS son vitales siempre que quieras enumerar un gran número de directorios, como podría ser al listar una colección de música. Claro, si el hard te da tus 480mbps vas a tirar bien con bloques grandes sin importar lo malo que sea el driver, pero se va a notar las la diferencia cuando estés obligado a usar bloques pequeños. Otro problema de este driver es que creo que no usa interrupciones, asi que te bloquea todo el starlet al usarlo.

Eso de no usar las interrupciones es una putada, ya que entonces bloquearía el bluetooth mientras está leyendo, no se si el wiimote tiene buffers para recuperar la información pero aun así se perdería sensibilidad.
rodries escribió:
marcan42 escribió:Ah, amigo, pero es que tu estás probando con bloques grandes de información, que no lo son todo. Como ves ya tiene incluso en ese caso algo de pérdida comparado con Linux.

Lo que se puede conseguir son muchos mas IOPS, que le viene muy bien a cualquier sistema tipo Linux por ejemplo, e incluso podrías usar el USB como swap. Por poner un ejemplo: los IOPS son vitales siempre que quieras enumerar un gran número de directorios, como podría ser al listar una colección de música. Claro, si el hard te da tus 480mbps vas a tirar bien con bloques grandes sin importar lo malo que sea el driver, pero se va a notar las la diferencia cuando estés obligado a usar bloques pequeños. Otro problema de este driver es que creo que no usa interrupciones, asi que te bloquea todo el starlet al usarlo.

Eso de no usar las interrupciones es una putada, ya que entonces bloquearía el bluetooth mientras está leyendo, no se si el wiimote tiene buffers para recuperar la información pero aun así se perdería sensibilidad.

Creo que es lo que han comunicado más atrás un usuario; que no podía sincronizar su wiimote cuando realizaba pruebas con el driver. Como ya dijeron... es una beta "preliminar".
ArangeL escribió:Creo que es lo que han comunicado más atrás un usuario; que no podía sincronizar su wiimote cuando realizaba pruebas con el driver. Como ya dijeron... es una beta "preliminar".

He sido yo, pero no es lo mismo, yo ni siquiera hago el IOS_Open del usb y no sincroniza, es al inicializar el usb. Esto es lo que me ha respondido el autor (kwiirk):

Rodries,
That was some of my fears. The ehci module is not releasing the port
fast enough and then OH1 is unhappy.

I did not find the time to test your SpeedTest.
I was busy preparing the USB1+USB2 version of cios_usb2.
Could you please tell me if it resolve your problems?

I put back the original OH0 module and put my EHCI driver into an EHC module,
though, you have to modify usbstorage_starlet, to access /dev/usb/ehc
instead of /dev/usb/oh0
at startup, the module release all port that are not connected to USB2
devices to OH1 and OH0, so if you plug your device after startup, it
will be for OH0 (usb1)
could you please test it?

He probado un par de cios que me ha mandado pero cada vez da problemas otra cosa.

Edito:
Ya he probado la nueva beta y ya no falla, sólo tengo el problema de que si activo este cios entonces se me desactiva el dvd.

Marcan hay alguna posibilidad de hacer funcionar ambos?
O habría que modificar este cios para que cambie ese bit famoso en el starlet?

Edito:
Lo he solucionado modificando libdi, he creado una funcion especial que me permite activar el dvd y cargar el ios a la vez:
en stubload.c
s32 __DI_LoadStubIOS(int version)
{
int ret = 0;
int res;
#ifdef DEBUG_IOS
dprintf("Reloading to IOS%d\n",version);
#endif
res = __IOS_ShutdownSubsystems();
if(res < 0) ret = res;
res = __ES_Init();
if(res < 0) ret = res;
else {
res = __DI_StubLaunch();
res = __IOS_LaunchNewIOS(version);
if(res < 0) {
ret = res;
__ES_Close();
}
}
res = __IOS_InitializeSubsystems();
if(res < 0) ret = res;
return ret;
}

en di.c
int DI_InitIOS(int version){
static int init = 0;

state = DVD_INIT | DVD_NO_DISC;

if(!init){
__DI_LoadStubIOS(version); // Marcan's 1337 magics happen here!
LWP_MutexInit(&bufferMutex, false);
init = 1;
}

if(di_fd < 0)
di_fd = IOS_Open(di_path, 2);

return (di_fd >= 0)? di_fd : -1;
}
Ahora en vez de usar DI_Init() puedes usar DI_InitIOS(202) y así se cargará ese ios con soporte para dvd.
Marcan ¿ es una buena solución ? o ¿es una chapuza?
beta 2 a la calle!!! [sonrisa] en wiibrew [ginyo]
Como ya ha dicho electrux, ya ha salido la beta 2 y está en wibrew.org. ¡Esto se mueve! [plas]
Descripción del beta2:

- Agregado un módulo EHC personalizado, que implementa el IOS USB API estándar sobre /dev/usb/ehc, mas almacenamiento USB personalizado directo al API.

- Restaurado el módulo legacy OH0 de nintendo. Dispositivos externos con USB 1.1 serán tomados en cuenta por este módulo.

- Cambiado el orden de la carga del módulo ordenadamente para asegurar que la inicialización del código EHCI corra antes del OH1. Ahora el bluetooth debe trabajar con mayor fiabilidad.

- Agregado el libfat con read_ahead y USBspeedTest, cortesía de rodries del equipo de mplayer-ce.

También ha cambiado la Descripción General con lo siguiente:
"Básicamente, este cIOS habilita a los dispositivos USB 2.0 a transmitir datos a la velocidad completa (full) del USB 2.0. Anteriormente, sólo podía permitir velocidades de USB 1.1."

Saludoz [oki] !
wichoxp escribió:Descripción del beta2:



También ha cambiado la Descripción General con lo siguiente:
"Básicamente, este cIOS habilita a los dispositivos USB 2.0 a transmitir datos a la velocidad completa (full) del USB 2.0. Anteriormente, sólo podía permitir velocidades de USB 1.1."

Saludoz [oki] !

me estas diciendo que ya se ha alcanzado la velocidad de 2.0 máxima?
PiratePila está baneado por "crearse clones para trollear"
No he probado ni la beta 1 ni la 2, pero esto por el momento promete bastante.
Una preguntilla, tengo instalado el cIOS36 rev08 (El de Wanin vaya, por eso del error 02) y me gustaria saber si habria algun tipo de incompatibilidad si instalo este. Es util si mejora las velocidades, la verdad, trasteo mucho con la Wii y me seria util.

Gracias.
Darkmatius escribió:Una preguntilla, tengo instalado el cIOS36 rev08 (El de Wanin vaya, por eso del error 02) y me gustaria saber si habria algun tipo de incompatibilidad si instalo este. Es util si mejora las velocidades, la verdad, trasteo mucho con la Wii y me seria util.

Gracias.

Lo mismo pregunto, ¿se sobreescriben el uno al otro?
ios 202 asi q no no sobreescribe nada.
yo lo e puesto y me sigue todo normal ahora voy a por el Beta 2 ;)
Gracias por la respuesta, voy a instalarlo ahora mismo a ver que tal funciona XD
poxolate3 escribió:
wichoxp escribió:Descripción del beta2:



También ha cambiado la Descripción General con lo siguiente:
"Básicamente, este cIOS habilita a los dispositivos USB 2.0 a transmitir datos a la velocidad completa (full) del USB 2.0. Anteriormente, sólo podía permitir velocidades de USB 1.1."

Saludoz [oki] !

me estas diciendo que ya se ha alcanzado la velocidad de 2.0 máxima?


alguien puede verificar esto?
pues estaria bueno probar pero no tengo el adaptador para conectar mi wii a internet asi que me tendre que esperar a que salga en wad
Que yo sepa han conseguido una velocidad de lectura secuencial cercana a la máxima a base hacer lecturas muy grandes. Dudo mucho que los IOPS se acerquen a lo ideal (es decir, que para archivos grandes sin fragmentar bien; para archivos pequeños, fragmentados, o directorios, mal).
marcan42 escribió:Que yo sepa han conseguido una velocidad de lectura secuencial cercana a la máxima a base hacer lecturas muy grandes. Dudo mucho que los IOPS se acerquen a lo ideal (es decir, que para archivos grandes sin fragmentar bien; para archivos pequeños, fragmentados, o directorios, mal).


Vamos que de momento para ver pelis en el mplayer funciona de sobra pero como driver ios aun es bastante de los chinos.
Vrsquid escribió:
marcan42 escribió:Que yo sepa han conseguido una velocidad de lectura secuencial cercana a la máxima a base hacer lecturas muy grandes. Dudo mucho que los IOPS se acerquen a lo ideal (es decir, que para archivos grandes sin fragmentar bien; para archivos pequeños, fragmentados, o directorios, mal).


Vamos que de momento para ver pelis en el mplayer funciona de sobra pero como driver ios aun es bastante de los chinos.

Gracias a marcan he hecho unas correciones en libdi para detectar si se puede usar A8 o D0 en las lecturas de dvd en vez de ver si se estaba usando dvdx sobre un ios superior a 200 y ahora me funciona dvd+usb2.0 sin problemas. También he hecho un cambio en libogc (usbstorage.c) para que el uso de usb 2.0 o 1.1 sea trasparente a libfat.
Lo que dice marcan es que la comunicación a bajo nivel será lenta, pero como se leen grandes bloques solo se hace un iop para mucha informacion, es decir en caso de que la unidad esté fragmentada o se lean muchos archivos pequeños la ganacia no será tan grande.
Habría que hacer mediciones para ver la ganacia real, pero por lo que me ha comentado el autor se acerca a 10000kb/s y si se leen bloques de 1kb se alcanzan unos 1000kb/s, aunque esto es una barbaridad ya que el usb lee en bloques de 4kb.

De todas formas me han dicho que algunos dispositivos usb que antes iban ahora no van.
Ya veremos como acaba esto. Pero por ahora el mplayerce va estupendamente con usb2.0
rodries escribió:Pero por ahora el mplayerce va estupendamente con usb2.0

Esperamos que así sea y ojalá acaben los líos con las películas en alta definición [jaja] !

Pregunta, ¿con este cIOS, la velocidad de transmisión USB supera a la misma SD frontal e incluso al DVD de datos?

Saludoz [barret] !
wichoxp escribió:
rodries escribió:Pero por ahora el mplayerce va estupendamente con usb2.0

Esperamos que así sea y ojalá acaben los líos con las películas en alta definición [jaja] !

Pregunta, ¿con este cIOS, la velocidad de transmisión USB supera a la misma SD frontal e incluso al DVD de datos?

Saludoz [barret] !

Como ha explicado marcan para lecturas del tipo que hace mplayer va estupendamente.
Piensa que dvd me da 3300kb/s mientras que usb2.0 me da unos 28000kb/s que son unas 9 veces mas rápido.
El problema de la alta definicion es cosa de que la wii no da para mas.
A mplayer le vendría muy pero que muy bien a) un compilador decente con soporte de paired singles, no las versiones viejas que nos suelta WinterMute, b) alguien dispuesto a meterse a optimizar los algoritmos criticos para powerpc XD
Qué buena noticia ^^ A ver si lo tenemos pronto...
marcan42 escribió:A mplayer le vendría muy pero que muy bien a) un compilador decente con soporte de paired singles, no las versiones viejas que nos suelta WinterMute, b) alguien dispuesto a meterse a optimizar los algoritmos criticos para powerpc XD


Y que no hayan guerras ni hambre XDD
marcan42 escribió:A mplayer le vendría muy pero que muy bien a) un compilador decente con soporte de paired singles, no las versiones viejas que nos suelta WinterMute, b) alguien dispuesto a meterse a optimizar los algoritmos criticos para powerpc XD

Y creo que ademas debe pasar algo raro en el sistema de threads de libogc. No se porqué cuando le da la gana se me queda bloqueado sin razón y ademas sin codedump ni nada, sólo pantalla en negro y el audio bloqueado, no se si será algo de algun timer o del sistema de threads, tendré que experimentar, pero es que el mamoncete no me ni un codedump para darme pistas.
Lo del paired singles he hechado un vistazo mirando la implementacion de altivec, y eso es un pasote, mucho curro, ademas para hacerlo bien necesitaría un powerpc de verdad para probar y no la wii, sino es un coñazo.
Lo de hacer un toolchain me lo estaba pensando pero sheger me dijo que no obtendría beneficio a no ser que implementara simd para paired singles y la verdad es que optimizar ffmpeg para paired singles casi sólo tendría sentido para la wii, casi todos los ppc decentes usan altivec, es por esto que lo han hecho en ffmpeg. El mplayer (ffmpeg) tiene optimizaciones específicas de ppc y altivec pero nada de paired singles, es bastante curro.
Nueva versión beta 2

added a ehc custom module which implements standard ios usb API over /dev/usb/ehc, plus custom usbstorage direct api.
restored the legacy oh0 module from nintendo. External USB1.1 devices will be taken care of by this module.
changed the order of module loading in order to be sure that EHCI initialization code runs before OH1, now bluetooth should work more reliabily.
added libfat w/ read_ahead and USBspeedTest, courtesy of rodries from mplayer-ce team.



Driver limitation
The lack of a real usb stack means the driver lacks usb2 hub support. The USB2 hubs "TT" mechanism is a bit complicated, and would need a lot more work.
The driver doesn't implement the scheduled pipes, ie interrupt and isochronous pipes, which would be needed for highend webcams (I cannot think of other usb2 devices type that uses such pipes.)
The driver does not implement hotplug detection. Plug your usb2 devices before launching an application using ios 202, and it will be recognised as usb2, else, it will be recognised by usb1 driver.

http://www.mediafire.com/file/dtzctgkiznn/cios_usb2.rar
sico_pata escribió:Nueva versión beta 2

Driver limitation
The lack of a real usb stack means the driver lacks usb2 hub support. The USB2 hubs "TT" mechanism is a bit complicated, and would need a lot more work.
The driver doesn't implement the scheduled pipes, ie interrupt and isochronous pipes, which would be needed for highend webcams (I cannot think of other usb2 devices type that uses such pipes.)
The driver does not implement hotplug detection. Plug your usb2 devices before launching an application using ios 202, and it will be recognised as usb2, else, it will be recognised by usb1 driver.

http://www.mediafire.com/file/dtzctgkiznn/cios_usb2.rar


Respecto a que no tiene hotplug detection no es del todo cierto, con algunos cambios en el usbstorage mis 2 llaves usb funcionan en caliente perfectamente.
ya lo e actualizado la verdad es que no veo mejora ¬_¬
Electrux escribió:ya lo e actualizado la verdad es que no veo mejora ¬_¬

igual no estás utilizando el programa adecualdo ya que la mayoría no son compatibles por ahora, pero en el mplayerce si está implementado las cargas desde USB tienen que ser muchísimo más rápidas
Electrux escribió:tal vez sera por eso :p

con qué aplicación lo probabas tu?
Yo también lo he probado y no he notado anda pero supongo qeu es porque como bien decis no esta implementado en la mayoria de als apliciaciones.
Lo he probado con los emuladores de snes y gameboyadvance, lo que si he visto es que la carga por usb es el doble de lenta respecto la sd.
¿que aplicaciones lo tienen implementado?
dantemugiwara escribió:Yo también lo he probado y no he notado anda pero supongo qeu es porque como bien decis no esta implementado en la mayoria de als apliciaciones.
Lo he probado con los emuladores de snes y gameboyadvance, lo que si he visto es que la carga por usb es el doble de lenta respecto la sd.
¿que aplicaciones lo tienen implementado?

Que yo sepa SOLO Mplayer CE, y ni se si la versión en la que Rodries lo está metiendo es pública ya o es una beta en pruebas, asi que normal que no notes nada.
Es que este cIOS no es útil hasta que usas una aplicación que lo tiene activado para usarlo, si son viejas no sabía ni siquiera de que existía por lo que no pueden saber que tienes ese cIOS en tu wii.
Weno supongo que dentro de poco lo habilitaran por ejemplo para los emuladores

Por cierto que velocidad de transferencia tiene la sd la del usb 2.0 si la he visto pero la sd no
dantemugiwara escribió:Weno supongo que dentro de poco lo habilitaran por ejemplo para los emuladores

Por cierto que velocidad de transferencia tiene la sd la del usb 2.0 si la he visto pero la sd no

por wikipedia aparecerá, pero es bastante más baja que la del USB 2.0 aunque más alta que la del USB 1.1
poxolate3 escribió:
dantemugiwara escribió:Weno supongo que dentro de poco lo habilitaran por ejemplo para los emuladores

Por cierto que velocidad de transferencia tiene la sd la del usb 2.0 si la he visto pero la sd no

por wikipedia aparecerá, pero es bastante más baja que la del USB 2.0 aunque más alta que la del USB 1.1

Vamos, velocidad USB imaginario 1.55 XD
Hoy he probado el snes 009 y la carga por usb es mucho más rapida que en la 008 no sé si es por el cios pero carga el doble de deprisa que antes en la 008
112 respuestas
1, 2, 3