Acceder

Ver la Versión Completa : Nuevo herramienta de mapeo


tartessio
04/03/13, 15:50:38
Bueno, decir que petete forero de dingoonity ha realizado una aplicación alternativa para el mapeo de los botones de la tableta.

Aquí os dejo un enlace de descarga (hay que tener instalado el Aptoide): http://tincore.store.aptoide.com/app/market/com.tincore.and.keymapper/2/2666343/JXD%20S7300B%20Keymapper

Saludos.

Deen0X
04/03/13, 16:13:00
exacto. la herramienta he tenido oportunidad de probarla, y decir que en principio se ve mucho mas completa que la que viene por defecto por JXD... el problema que tiene es la ausencia de drivers para tener un soporte total de los controles de la tablet.

pero desde luego, una gran aplicación si que es.

ahora toca ver si JXD va a prestar algo de soporte para poder implementar esta herramienta...

wizardice
04/03/13, 16:38:01
yo creo que estos de jxd no sueltan prenda

tartessio
04/03/13, 20:19:46
Nueva revisión de la herramienta. En este enlace os la podéis descargar: http://tincore.store.aptoide.com/app/market/com.tincore.and.keymapper/3/2667965/JXD%20S7300B%20Keymapper

petete7
04/03/13, 22:44:26
Hola,

Cualquier sugerencia me la comentais.

Ya he intentado ponerme en contacto con JXD a ver que pasa. Es conveniente por que mas tarde o mas temprano actualizaran el driver y cambiara la forma de interactuar con el.

Por cierto que no tengo muy claro como va Aptoide por que acabo de mirar y solo encuentra 0.0.1 asi que mejor usad el enlace.

bylez
04/03/13, 23:13:49
Dios ojala que sea lo que yo creo que es...

Quiquelin
04/03/13, 23:40:39
¿Pero ya permite mapeo diferenciado del analógico y digital izquierdo y del analógico derecho?

bylez
04/03/13, 23:56:28
¿Pero ya permite mapeo diferenciado del analógico y digital izquierdo y del analógico derecho?

Si tio yo por lo menos he semi mapeado juegos que era incapaz¡

Los que lo habeis instalado es posible que no minimice la aplicacion que quereis mapear? esque le doy para mapearla pero se minimiza y es un poco coñazo

Durgeoble
05/03/13, 01:42:47
según el autor de momento solo mapea los mismos botones que la herramienta de jxd, la función de driver pending solo deja poner unos cuantos botones extra sin función alguna
eso si, va por muy buen camino, solo faltan algunos detalles para que sea perfecta
- incluir "dinamic dpad" para los juegos que determinan el centro del pad allí donde tocas
-reverse y-axys hay gente que esto les resulta muy cómodo
-fijar el stic derecho como si fuese una cruceta (lo mismo que hace split pero de una pieza)
-crear una región que actúe como hasta ahora con el stick derecho (toda la pantalla, media pantalla, seleccionar región)
-en lugar de menú flotante que al mantener pulsado el botón que se quiere modificar salga un cuadro de opciones para ese boton
-posiblidad de eliminar botones
con eso y un aspecto visual ligeramente mas cuidado, seria genial

petete7
05/03/13, 08:01:38
según el autor de momento solo mapea los mismos botones que la herramienta de jxd, la función de driver pending solo deja poner unos cuantos botones extra sin función alguna
eso si, va por muy buen camino, solo faltan algunos detalles para que sea perfecta
- incluir "dinamic dpad" para los juegos que determinan el centro del pad allí donde tocas
-reverse y-axys hay gente que esto les resulta muy cómodo
-fijar el stic derecho como si fuese una cruceta (lo mismo que hace split pero de una pieza)
-crear una región que actúe como hasta ahora con el stick derecho (toda la pantalla, media pantalla, seleccionar región)
-en lugar de menú flotante que al mantener pulsado el botón que se quiere modificar salga un cuadro de opciones para ese boton
-posiblidad de eliminar botones
con eso y un aspecto visual ligeramente mas cuidado, seria genial

- Dynamic pad: No lo entiendo. Puedes explicarlo con mas detalle.
- Reverse axis : Hay que implementarlo en el driver.
- Stick como cruceta: ??? Quieres decir que funcione como un stick y no como un raton? Si es eso es codigo de driver.
- Modo region: Eso es el modo raton ajustando el area de funcionamiento. Otra que no se puede hacer sin soporte en el driver.
- El menu flotante es necesario por que sino hay operaciones que no se podrian hacer.
- Eliminar botones. Esta en la lista. Tengo que ver como presentarlo de una forma compacta porque no quiero que el menu flotante sea demasiado grande.
- Podrias listar que crees que no esta bien en el aspecto visual?



-

Durgeoble
05/03/13, 12:01:35
- Dynamic pad: No lo entiendo. Puedes explicarlo con mas detalle.
- Reverse axis : Hay que implementarlo en el driver.
- Stick como cruceta: ??? Quieres decir que funcione como un stick y no como un raton? Si es eso es codigo de driver.
- Modo region: Eso es el modo raton ajustando el area de funcionamiento. Otra que no se puede hacer sin soporte en el driver.
- El menu flotante es necesario por que sino hay operaciones que no se podrian hacer.
- Eliminar botones. Esta en la lista. Tengo que ver como presentarlo de una forma compacta porque no quiero que el menu flotante sea demasiado grande.
- Podrias listar que crees que no esta bien en el aspecto visual?



-
-Dynamic pad -> algunos juegos no tienen una posición fija para la cruceta direccional, situan el centro alli donde pulsas antes de mover el dedo (por ejemplo final fantasy 3) asi que seria simular eso en la zona donde situes la cruceta
-stick derecho como cruceta, esto es quehaga eso, que funcione como una cruceta, sin separar cada dirección
-Modo region me refiero a que haga lo mismo que ahora pero seleccionando el area donde lo hara
-Eliminar botones--> mi idea es que los botones aparezcan cuando los pulses (muevas en el caso de los sticks) y pulsando sobre ellos aparece un menu emergente (o manteniendo pulsado el boton) esto tambien evitaria un menu emergente gigante y permitiria añadir muchas mas cosas como fuego rapido o combos
En el aspecto visual skyns y que al pulsar un boton este se vuelva del todo opaco y brillante para saber que boton estas pulsando

Por cierto, muchas gracias por tu tiempo y esfuerzo

petete7
05/03/13, 13:16:06
-Dynamic pad -> algunos juegos no tienen una posición fija para la cruceta direccional, situan el centro alli donde pulsas antes de mover el dedo (por ejemplo final fantasy 3) asi que seria simular eso en la zona donde situes la cruceta
-stick derecho como cruceta, esto es quehaga eso, que funcione como una cruceta, sin separar cada dirección
-Modo region me refiero a que haga lo mismo que ahora pero seleccionando el area donde lo hara
-Eliminar botones--> mi idea es que los botones aparezcan cuando los pulses (muevas en el caso de los sticks) y pulsando sobre ellos aparece un menu emergente (o manteniendo pulsado el boton) esto tambien evitaria un menu emergente gigante y permitiria añadir muchas mas cosas como fuego rapido o combos
En el aspecto visual skyns y que al pulsar un boton este se vuelva del todo opaco y brillante para saber que boton estas pulsando

Por cierto, muchas gracias por tu tiempo y esfuerzo

Ok

Dynamic Pad - Quieres decir que funciona como definiendo un vector desde el punto de pulsacion hasta donde tienes el dedo?

Los items que son del driver los omito. Por cierto que si tal os paso la fuente del driver y si os animais lo arreglamos entre todos.

El modo region es una de las cosas que mas facil se pueden arreglar en el driver. Tambien es necesario definir que pasa cuando llegas al borde y la posicion del centro si lo hay.

El tema de hacer aparecer y desaparecer botones con su pulsacion es una buena idea. Lo pongo en la lista.

La opacidad y los skins tambien van a la lista.

Lo mas importante que debeis tener en cuenta es que todo esto viene siendo una perdida de tiempo si no se arregla el driver. La principal razon por la que he hecho la herramienta de mapeo es intentar motivar a otros desarrolladores para mejorarlo.

Durgeoble
05/03/13, 14:16:29
yo estaria encantado de arreglar el driver si supiese o tubiese la mas minima idea de como hacerlo, desafortunadamente, no es asi, puedo echarle un vistazo al codigo fuente, pero lo mas seguro es que lo entienda igual que el chino, nada de nada

tartessio
05/03/13, 14:20:16
Pasa el source de los drivers y así podríamos echarle un vistazo, y en función de nuestros conocimientos, ir intercambiando información y poder apañarlo a tu estupenda aplicación.

Podrías subir la aplicación a Google Play, es una sugerencía.

Gracias por el buen trabajo hecho.

petete7
05/03/13, 14:49:27
Pasa el source de los drivers y así podríamos echarle un vistazo, y en función de nuestros conocimientos, ir intercambiando información y poder apañarlo a tu estupenda aplicación.

Podrías subir la aplicación a Google Play, es una sugerencía.

Gracias por el buen trabajo hecho.

Por lo que he visto Google play cobra una tasa de 25 dolares para poder subir aplicaciones asi que, de momento, va a ser que no :risitas:

He anadido el codigo del driver a este mensaje. En mi opinion la mayoria sino todos los cambios hay que hacerlos en adc_js.c

tartessio
05/03/13, 14:57:37
Por lo que he visto Google play cobra una tasa de 25 dolares para poder subir aplicaciones asi que, de momento, va a ser que no :risitas:

He anadido el codigo del driver a este mensaje. En mi opinion la mayoria sino todos los cambios hay que hacerlos en adc_js.c

Gracias por la aclaración sobre Google Play :(.

También se puede subir la aplicación a BlackMart y Mercamarket (pregunto).:ok:

Durgeoble
05/03/13, 15:43:25
vale, he encontrado algo, la definión completa del stick analogico derecho asi como lo que lo hace volver, se encuentra en las lineas de la 594 a la 597
if (tmp_x > LCD_SCREEN_X || tmp_x < 0 || tmp_y > LCD_SCREEN_Y || tmp_y < 0) {
tmp_x = (LCD_SCREEN_X+XCENTER) / 2;
tmp_y = LCD_SCREEN_Y / 2;
}
según entiendo yo ahi, y corregirme si me equivoco, si tmp_x supera la longitud de la pantalla por lo alto o lo ancho lo devuelve al centro
según parece, todo el codigo del stick derecho empieza en la linea 490 y parece que incrementa o decrementa el valor para hacerlo continuo

petete7
05/03/13, 15:59:02
Algunos ajustes nuevos

http://tincore.store.aptoide.com/app/market/com.tincore.and.keymapper/4/2673385/JXD%20S7300B%20Keymapper

petete7
05/03/13, 16:05:31
vale, he encontrado algo, la definión completa del stick analogico derecho asi como lo que lo hace volver, se encuentra en las lineas de la 594 a la 597
if (tmp_x > LCD_SCREEN_X || tmp_x < 0 || tmp_y > LCD_SCREEN_Y || tmp_y < 0) {
tmp_x = (LCD_SCREEN_X+XCENTER) / 2;
tmp_y = LCD_SCREEN_Y / 2;
}
según entiendo yo ahi, y corregirme si me equivoco, si tmp_x supera la longitud de la pantalla por lo alto o lo ancho lo devuelve al centro
según parece, todo el codigo del stick derecho empieza en la linea 490 y parece que incrementa o decrementa el valor para hacerlo continuo

Si claro. Es que esta mas o menos todo ahi.

El array de 21 elementos es la configuracion que viene de la herramienta de mapeo. Hay que ampliarlo.

Como veras no es dificil anadir los botones que no estan. Tan solo hace falta encontrar sus codigos.

Hacer que el stick derecho e izquierdo se comporten como raton o stick analogico esta ahi tambien. Hay que duplicar las variables y poner parametros para los modos de funcionamiento.

Y, por ultimo, fijar limites al comportamiento como raton es anadir parametros para definir coordenadas superior derecha/inferior izquierda y centro.

Yo lo que veo mas lioso es montarme el entorno de desarrollo que otra cosa. Al final creo que no hay que escribir mucho codigo nuevo. Es mas modificar lo que ya hay.

Durgeoble
05/03/13, 17:00:56
He modificado un poco al "tun tun" el codigo, pero no sé que hacer ahora con él, si funciona el semicopypaste que hecho modificando algunos valores los cambios serian los siguientes:

- Botones select y start como SELECT y START (no space y enter como ahora)
-stick derecho como 4 botones (C_UP, C_DOWN, C_RIGTH, C_LEFT)
si los codigos estan mal solo deberia cambiarlos por los codigos buenos ganando al menos 4 botones
basicamente he copiado los canales 2 y 3 correspondientes a los axys Z e Y del stick izquierdo y los he cambiado a los canales 0 y 1 que creo que se corresponden al stick derecho

Un poco de documentación para quien quiera leerla http://source.android.com/tech/input/keyboard-devices.html
Vale, tras leer un rato en la página que he linkeado me he dado cuenta que los archivos no son el driver pues no se corresponden con lo que dice la documentación ¿alguien tiene las fuentes completas para buscar en ellas?

skelton
05/03/13, 17:36:44
Si haceis cambios del driver y quereis probarlos, pasadme el archivo a ver que puedo hacer con él. Recompilar un nuevo kernel con nuevo driver debería ser fácil supongo.

Durgeoble
05/03/13, 17:47:38
skelton estare mas que encantado de ayudar en lo que pueda con mis limitados conocimientos ^_^
Te paso el archivo tan pronto cambie algunos detalles para que funcione como debe (en teoria :S)
De todos modos estoy bastante seguro de que faltan cosas en ese archivo, debe haber mas por ahi

http://pastebin.com/nwgUYKMs

Espero que funcione cruzar los dedos
Eso si, necesito los nombres de los botones para poner los adecuados :S

petete7
05/03/13, 19:23:03
Gracias por la aclaración sobre Google Play :(.

También se puede subir la aplicación a BlackMart y Mercamarket (pregunto).:ok:

Pues supongo que si. Aptoide no es bueno? Son mejores BlackMart of Mercamarket?

Es mi primera aplicacion para Android asi que la subi a donde primero pude.

petete7
05/03/13, 19:25:08
Si haceis cambios del driver y quereis probarlos, pasadme el archivo a ver que puedo hacer con él. Recompilar un nuevo kernel con nuevo driver debería ser fácil supongo.

Cojonudo! Los mensajes del driver saldrian por el syslog?

tartessio
05/03/13, 21:11:42
Pues supongo que si. Aptoide no es bueno? Son mejores BlackMart of Mercamarket?

Es mi primera aplicacion para Android asi que la subi a donde primero pude.

Ni mejores ni peores diferentes, es para tener un mayor abanico de fuentes. :ok:

xylocopa42
05/03/13, 21:19:00
aptoide tiene mas cantidad, pero mas fakes. Blackmarket tiene menos cantidad y merkamarket no lo he usado.

wizardice
05/03/13, 21:35:40
merkamarket va de lujo, salvo cuando se colapsa y no va.
blackmarket y aptoide hay que tener cuidado ya que hay muchos fakes

petete7
05/03/13, 22:31:09
skelton estare mas que encantado de ayudar en lo que pueda con mis limitados conocimientos ^_^
Te paso el archivo tan pronto cambie algunos detalles para que funcione como debe (en teoria :S)
De todos modos estoy bastante seguro de que faltan cosas en ese archivo, debe haber mas por ahi

http://pastebin.com/nwgUYKMs

Espero que funcione cruzar los dedos
Eso si, necesito los nombres de los botones para poner los adecuados :S

Te envie un PM.

Yo estoy intentando compilar una imagen para ver si puedo montarme un entorno de desarrollo.

petete7
06/03/13, 08:17:11
Explico como se envian parametros al kernel para configurar el mapeo.

El driver lee el contenido de este fichero (que es virtual) /sys/devices/platform/mx-adcjs.0/key

En este momento hay que escribir una secuencia de 21 numeros que el driver guarda en este array.

//enable, circle_x, circle_y, r, ax, ay, bx, by, xx, xy, yx, yy, lx, ly, rx, ry, l2x, l2y, r2x, r2y, view
static long key_param[21];

Lo carga a traves de esta funcion:

static ssize_t key_write(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
{
sscanf(buf, "%ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld %ld", \
&key_param[0], &key_param[1], &key_param[2], &key_param[3], \
&key_param[4], &key_param[5], &key_param[6], &key_param[7], \
&key_param[8], &key_param[9], &key_param[10], &key_param[11], \
&key_param[12], &key_param[13], &key_param[14], &key_param[15], \
&key_param[16], &key_param[17], &key_param[18], &key_param[19], &key_param[20]);
if (key_param[20] == 0)
key_param[20] = X3;

if (key_param[20] == X1)
key_param[20] = VX1;
else if (key_param[20] == X2)
key_param[20] = VX2;
else if (key_param[20] == X3)
key_param[20] = VX3;
else if (key_param[20] == X4)
key_param[20] = VX4;
else if (key_param[20] == X5)
key_param[20] = VX5;

return count;
}


Por esto es que una de los cambios es alargar el array (o usar otra estructura mas legible) para anadir
select.x, select.y,
start.x, start.y,
vol_up.x, vol_up.y,
vol_down.x, vol_down.y,
digital_mode,
analog_0.mode, analog_0.x, analog_0.y, analog_0.radio,
analog_0.x1, analog_0.y1, analog_0.x2, analog_0.y2,
analog_1.mode, analog_1.x, analog_1.y, analog_1.radio,
analog_1.x1, analog_1.y1, analog_1.x2, analog_1.y2,
y todas las coordenadas para split
digital_up.x, digital_up.y, digital_left.x, digital_left.y etc...

Durgeoble
06/03/13, 11:17:07
cruceta 4, sticks derecho e izquierdo 4, botones ABXY 4, LRL2R2 4, SELECT START VOL+ VOL- 4 eso hacen 20 valores, creo que no me falta ninguno asi que el array esta completo pero mal definido ya que realmente no son necesarios mas botones a no ser que se quiera que por ejemplo los sticks analogicos reporten 4 estados "digitales" cada uno lo que nos daria 8 "botones nuevos"
Cuento los ejes XY de cada stick como un unico valor que va de 0 a 1024

petete7
06/03/13, 12:55:52
cruceta 4, sticks derecho e izquierdo 4, botones ABXY 4, LRL2R2 4, SELECT START VOL+ VOL- 4 eso hacen 20 valores, creo que no me falta ninguno asi que el array esta completo pero mal definido ya que realmente no son necesarios mas botones a no ser que se quiera que por ejemplo los sticks analogicos reporten 4 estados "digitales" cada uno lo que nos daria 8 "botones nuevos"
Cuento los ejes XY de cada stick como un unico valor que va de 0 a 1024

Creo que no te sigo. Te explico como lo veo yo que a lo mejor estoy equivocado.

Cada cruceta en modo digital o analogico combinado necesita centro (X Y) mas radio eso son 3 valores por cruceta. Una mejora si son analogicas seria anadir el radio de la zona muerta (otro valor mas)

Cada cruceta en modo digital separado son 4 botones como has dicho y eso hace 8 valores (4 pares X Y) En ese modo las diagonales serian dobles pulsaciones.

Cada boton son dos valores (X Y) Como hay 12 botones eso solo ya hace un total de 24.

Ademas hacen falta valores para indicar al driver en que modo funcionan las crucetas asi que 3 valores mas, uno por cruceta.

Y que no se me olvide!! El modo raton se define por un area rectangular mas un origen de coordenadas y si resetea o no puede iren el modo de funcionamiento asi que 3 puntos que hacen 6 valores.

Asi que un super driver con todas las funcionalidades del mundo mundial me da un total de

3x3+
8x3+
12x2+
3x1+
6x2
--------
72 o 74 con las zonas muertas si he contado bien.

Lo mejor sera, al menos, definir constantes para los indices del array por que usar el numero es totalmente ilegible.

skelton
06/03/13, 13:07:43
Con lo fácil que hubiese sido usar el mando como USB como es en la Archos, en vez de mezcla de extraña de teclado y ratón....

wizardice
06/03/13, 13:13:12
skelton, por favor cocinanos una rom como dios manda.X-D

victoresp
06/03/13, 13:44:45
Skelton anímate y saca una ROM para que vean de lo que eres capaz :D

petete7
06/03/13, 13:47:20
Con lo fácil que hubiese sido usar el mando como USB como es en la Archos, en vez de mezcla de extraña de teclado y ratón....

Eso serviria en juegos que soportan joysticks pero supongo que sigues necesitando una herramienta para los que no. Estoy seguro que para la Archos la herramienta de mapeo funciona de una forma parecida.

Es necesario solventar esto a nivel del kernel para evitar lags y problemas de seguridad. Una aplicacion que se mostara encima de otra y fuera capaz de transmitir los eventos de teclado y pantalla a la aplicacion de debajo es un agujero de seguridad muy serio.

Sigo intentando compilar el kernel. :(

Durgeoble
06/03/13, 14:00:37
Creo que no te sigo. Te explico como lo veo yo que a lo mejor estoy equivocado.

Cada cruceta en modo digital o analogico combinado necesita centro (X Y) mas radio eso son 3 valores por cruceta. Una mejora si son analogicas seria anadir el radio de la zona muerta (otro valor mas)

Cada cruceta en modo digital separado son 4 botones como has dicho y eso hace 8 valores (4 pares X Y) En ese modo las diagonales serian dobles pulsaciones.

Cada boton son dos valores (X Y) Como hay 12 botones eso solo ya hace un total de 24.

Ademas hacen falta valores para indicar al driver en que modo funcionan las crucetas asi que 3 valores mas, uno por cruceta.

Y que no se me olvide!! El modo raton se define por un area rectangular mas un origen de coordenadas y si resetea o no puede iren el modo de funcionamiento asi que 3 puntos que hacen 6 valores.

Asi que un super driver con todas las funcionalidades del mundo mundial me da un total de

3x3+
8x3+
12x2+
3x1+
6x2
--------
72 o 74 con las zonas muertas si he contado bien.

Lo mejor sera, al menos, definir constantes para los indices del array por que usar el numero es totalmente ilegible.

el que no te sigue, soy yo ya que si hay 21 valores actualmente y como dices solo los 12 botones ya son 24 algo hay mal en esa cuenta, tal como lo veo yo, cada boton puede tener un valor variable (1 o 0 para indicar que esta pulsado o no por ejemplo) de modo que, con el driver actual sin modificar me salen:
cruceta + dpad = de dos a cuatro valores
botones = doce valores
stick derecho de dos a cinco valores
si los sticks usan 2 valores entonces tenemos un total de 16 valores
yo creo que los stick usa el izquierdo 3 valores (X,Y + dead zone) y el derecho 5 (X,Y, dead zone, area y centro) que suman los 20 que actualmente tenemos, el valor que sobra (el 21) puede ser el boton de ON/OFF
Siendo asi me salen las cuentas, solo hay que descubrir que hace realmente cada boton y como lo recibe el software, el hardware esta claro que no cambia solo hay que cambiarle el mapeo para que funcione como debe

petete7
06/03/13, 14:26:12
el que no te sigue, soy yo ya que si hay 21 valores actualmente y como dices solo los 12 botones ya son 24 algo hay mal en esa cuenta, tal como lo veo yo, cada

Ah vale!

Estamos hablando de cosas diferentes!

Yo lo de lo que te estoy hablando es de la informacion que necesita adc_js.c para poder convertir las pulsaciones del boton en pulsaciones en pantalla.

Por ejemplo:
Pulsa A --> Click en pantalla en coordenadas (X,Y) Luego 2 valores en el array de configuracion.

Por cierto que el algoritmo en el caso de las crucetas analogicas creo que esta un poco mal pero es bien facil de arreglar. Me parece que cuando rotas una cruceta en la pantalla se dibuja una forma cuadrada y no circular equidistante al centro de coordenadas de la cruceta. Vamos que no normalizan el producto escalar. Ya te digo que es algo que podemos arreglar despues.

skelton
06/03/13, 14:47:31
Skelton anímate y saca una ROM para que vean de lo que eres capaz :D

Hsy un team que va a continuar el trabajo de la Skelrom, están en ello, e incluirá alguna cosita nueva por lo q tengo entendido (lleva nuevo kernel). Pero no os puedo contar mucho más porque tampoco sé mucho más. xD

petete7
06/03/13, 20:01:11
Ya he puesto algo precido en dingoonity.

Estoy totalmente bloqueado. No soy capaz de compilar el kernel para poder arreglar el driver para el mapeo. La verdad es que necesito ayuda de verdad con eso.

petete7
06/03/13, 20:08:51
Editr: dupe

balastegui
15/03/13, 00:42:54
Nada nuevo?

petete7
15/03/13, 17:52:45
Nada nuevo?

Pues si.

http://www.htcmania.com/showthread.php?t=571162

:D

balastegui
15/03/13, 18:44:37
Pues si.

http://www.htcmania.com/showthread.php?t=571162

:D

Si, ya lo vi.
Muchas gracias máquina