Instalación de Dingux en Dingoo A320

Por Tragy, publicado el 16 de marzo, 2010 | 40 comentarios

Hace ya unos meses que habita la pequeña Dingoo A320 en mi casa, pero hasta hace unos días no me ha dado por sacarle todo lo que puede dar de si. Para ello es necesario instalar Dingux, una versión de Linux diseñada específicamente para esta portátil china. Con Dingux tendremos acceso a cientos de juegos y aplicaciones gratuitas, así como a más y mejores emuladores que los que la portátil incluye de serie.

Dingoo A320

El proceso de instalación es muy sencillo, y al terminarlo obtendremos un precioso arranque dual con el que mantendremos el acceso al firmware original de la consola. Cabe mencionar la mayor desventaja, y es que Dingux no tiene soporte para la salida TV-Out hasta la fecha, y es poco probable que se le añada a corto plazo. La verdad, a cambio de los nuevos emuladores y juegos, la posibilidad de overclock, y sumando que seguiremos manteniendo el acceso al firmware original… Tampoco es que suponga un problema, pero saberlo de antemano os ahorrará una pequeña decepción.

Instalación del arranque dual.

Lo primero será instalar el gestor de arranque, para lo que necesitaremos este paquete de aquí, que contiene el instalador. No está de más que echéis un vistazo a la sección de descargas del proyecto, pues es posible que pasado un tiempo exista una versión más reciente de los archivos.

Necesitamos saber qué modelo de pantalla tiene nuestra Dingoo. Para ello la encendemos, vamos al menú de Configuración (Setup), y ahí pulsamos en Información (About). Veremos unas cuantas líneas con información sobre la consola, pero para que aparezcan los datos que nos interesan debemos pulsar Arriba, Derecha, Abajo, Arriba, Derecha, Abajo. La pantalla cambiará, y habrá una línea que indique el LCD MODULE. Puede ser ILI9331, o ILI9325. En cualquier caso, tomamos nota, pues lo necesitaremos más adelante.

Los pasos a seguir son muy sencillos, tal y como aparecen en el readme oficial. Aunque estas instrucciones son para equipos con Windows, la instalación se puede realizar desde Linux o Mac (click aquí para más información):

  1. Desconectar la Dingoo.
  2. Ponerla en modo USB Boot: para ello hay que presionar el botón de reset mientras se mantiene el botón B pulsado. La pantalla permanecerá apagada de momento.
  3. Conectar la Dingoo al PC con el cable USB. Cuando nos pida un driver, debemos indicar que lo busque en la carpeta donde tengamos descomprimido el contenido del instalador. Si hay algún problema a la hora de instalar el driver, quizá esto sea de ayuda.
  4. Abrir una línea de comandos, e ir al directorio en el que tenemos los archivos del instalador. Una vez ahí, ejecutamos estos dos comandos:
    • Si nuestra pantalla es 9325:
      usbtool-win 1 hwinit.bin 0×80000000
      usbtool-win 1 zImage_dual_boot_installer_ILI9325 0×80600000
    • Si nuestra pantalla es 9331:
      usbtool-win 1 hwinit.bin 0×80000000
      usbtool-win 1 zImage_dual_boot_installer_ILI9331 0×80600000
  5. Hecho esto, la pantalla de la Dingoo se encenderá y veremos el programa de instalación del gestor de arranque. Solo queda seguir las instrucciones que aparecen en pantalla. Si la pantalla de la Dingoo sigue negra como el carbón, podéis echar un vistazo aquí para intentar solucionarlo.

Una vez terminados estos pasos, el arranque dual queda preparado, pero no hemos terminado todavía. Falta colocar los archivos de Dingux en si, y en este punto tenemos dos opciones: hacer una instalación limpia, o descargar un pack pre-configurado con un menú y diversas aplicaciones. Obviamente, la segunda opción es mucho más sencilla.

Instalación de los archivos de Dingux.

Si decidimos hacer una instalación limpia…

  1. Lo primero será dejar nuestra mini-sd formateada en FAT-32.
  2. Podemos descargar desde la web del proyecto el sistema de archivos original, y descomprimirlo en la raíz de nuestra mini-sd.
  3. Una vez descomprimido todo, renombramos el archivo “zImage-ILI-XXXX” que corresponda a nuestra pantalla a “zImage“, y borramos el otro.
  4. Encendemos la Dingoo manteniendo pulsado el botón Select, y veremos como se inicia Dingux. Pasado un rato, veremos como la misma línea se repite una y otra vez en pantalla, pues intenta arrancar el programa “principal”, y no hemos configurado ninguno. Lo más cómodo será elegir entre uno de los menús disponibles para Dingux, como dmenu, Gmenu2X, o DinguXMB.
  5. Pondremos de nuevo la tarjeta mini-sd en nuestro PC, y colocaremos el programa que queremos que arranque al iniciarse Dingux. Tendremos que crear un directorio /local/sbin/ en el que debemos colocar nuestra aplicación principal, con nombre main, pues es el archivo que intenta ejecutar Dingux. Para ver las instrucciones concretas para instalar Gmenu2X, podéis pulsar aquí.

Si decidimos descargar un local (sistema pre-configurado)…

  • Igual que antes, debemos formatear la mini-sd en FAT-32
  • Cada local tiene sus instrucciones específicas, pero por lo general el proceso consiste en extraer el contenido en la mini-sd, y renombrar el zImage-XXXX correspondiente a nuestra pantalla a zImage. Lo normal es que incluyan su propio rootfs, zImage, y la carpeta local. En caso contrario, debería haber instrucciones sobre que archivos hay que añadir a mayores.
  • Los local incluyen un menú que arrancará al iniciar Dingux, con varias aplicaciones y/o funciones ya configuradas.
  • Recomiendo que echéis un vistazo a Santino local pack, Gmenu2X Nuke, o que pidáis el local de jonit en este hilo.

¡Todo listo!

Llegados a este punto, tenemos Dingux instalado y configurado en nuestra Dingoo. Podremos arrancarlo manteniendo pulsado Select mientras encendemos la consola, o acceder al firmware original encendiendola como de costumbre. Ahora solo queda sacarle partido a la enorme cantidad de juegos y emuladores que hay disponibles, sobre los que cuando se me vuelva a quitar la pereza de encima escribiré algo. Os dejo con una serie de enlaces en los que podréis encontrar todo tipo de información sobre Dingoo y Dingux :)

Dingoo (Web Oficial)
Dingux (Web Oficial)
Dingux (Web del proyecto en Google Code)
OpenHandhelds (Cientos de aplicaciones y juegos para Dingoo y Dingux)
Foros de Dingoo A320 en GP32Spain
Foro Dingoonity (en inglés)

Inspirado en el turorial de dj syto para GP32Spain.

———————————————————————————–

Anexo: Problemas con el instalador del arranque dual.

Es posible que siguiendo los pasos de la instalación, tras ejecutar los comandos del punto 4 la pantalla de la Dingoo no se encienda. Para solucionarlo, podemos descargar este paquete de aquí (+info). Extraemos el contenido junto al resto de archivos del instalador, y ejecutamos lo siguiente desde una línea de comandos:

  • Para el modelo 9331:
    usbtool-win 1 hwinit_2_9331.bin 0×80000000
    usbtool-win 1 zImage_dual_boot_installer_ILI9331 0×80600000
  • Para el modelo 9325:
    usbtool-win 1 hwinit_2_9325.bin 0×80000000
    usbtool-win 1 zImage_dual_boot_installer_ILI9325 0×80600000

Hecho esto, debería encenderse la pantalla de la Dingoo y mostrar las instrucciones para instalar el gestor de arranque. Solo queda seguir las instrucciones en pantalla para terminar el flasheo.

Haz click aquí para volver.

Anexo: Problemas con la instalación del driver.

Mayormente pueden aparecer dos problemas a la hora de instalar el driver para el modo USB Boot.

El primero de ellos se da en Windows Vista/7, y viene dado por la falta de firma en el controlador. Si tras intentar el proceso el sistema indica que no se puedo instalar el driver al no poder comprobar la firma del controlador, podemos intentar deshabilitar la comprobación. Para ello, pulsaremos F8 durante el arranque del PC, y seleccionaremos la opción que habilita el uso de controladores no firmados. Si sigue sin reconocer el dispositivo, podemos intentarlo colocando antes de empezar el proceso este driver en C:/Windows/system32/drivers/

Es posible que ya exista un archivo USBSTOR.sys en esa carpeta, del que sería buena idea hacer una copia de seguridad por si luego lo queremos restaurar. Si conseguimos que el driver se instale correctamente, podemos continuar con el proceso de instalación. De lo contrario, lo más aconsejable sería utilizar un ordenador con Windows XP, pues no presenta estos problemas.

El segundo problema que se puede dar es que ya tengamos un driver instalado para el modo USB Boot, con lo cual no aparecerá ninguna pantalla solicitando un driver para el dispositivo. Para eliminar el driver habrá que ir al administrador de dispositivos, buscar la Dingoo, y hacer click derecho/desinstalar. Una vez eliminado, podemos continuar con la instalación del nuevo driver.

Haz click aquí para volver.

Anexo: Instalación de Gmenu2X.

Gmenu2X requiere estar instalado en la carpeta /local/gmenu2x/ de nuestra mini-sd, pues de lo contrario no funcionará correctamente. Descargamos el programa desde aquí, y lo extraemos a nuestra mini-sd dentro de la carpeta /local/ (la tendremos que crear si no existe), pues ya viene todo dentro de una carpeta llamada gmenu2x.

Ahora necesitaremos convertirlo en nuestro main, para ello colocaremos en /local/sbin/ este script que arrancará el menú (click derecho en el enlace, guardar como…). Una vez colocado todo en la mini-sd, podemos ponerla en la consola y arrancar Dingux (mantenemos pulsado Select mientras la encendemos) y arrancará Gmenu2X. Pulsando el botón Select podremos acceder al menú desde el que podremos hacer una búsqueda de aplicaciones .dge, o añadir enlaces hacia ellas manualmente. Para más información, os dejo la documentación oficial de la versión para GP2X, y el hilo de la release para Dingux, en donde hay más información sobre como configurar el menú.

Haz click aquí para volver.

Anexo: Instalación desde Linux/Mac.

Aunque no lo he probado, en el readme oficial se indica que para la instalación desde Linux o Mac basta con conectar la Dingoo en modo USB Boot al equipo, y ejecutar los comandos indicados en el proceso para Windows sustituyendo usbtool-win por:

sudo ./usbtool-linux en el caso de Linux

./usbtool-osx en el caso de Mac (sin comprobar por el autor)

Haz click aquí para volver.

| | |

Overclock con drivers ForceWare

Por Tragy, publicado el 22 de enero, 2009 | Añadir comentario
Si tienes una tarjeta gráfica nVidia, probablemente estés usando los drivers ForceWare y ni lo sepas. Con estos drivers se puede aplicar un sencillo overclock a la tarjeta usando algunos programas como RivaTuner. Si te ha dado por hacer click en el enlace anterior, verás que desde ahí lo puedes descargar e instalar.

Este programa, con múltiples utilidades, detectará al abrirlo la versión de los ForceWare que tenemos instalados. Si la versión de los drivers no ha sido probada a conciencia por los creadores, saltará un breve mensaje de advertencia.

El mismo mensaje de advertencia os doy yo: Si estáis leyendo esto, y sois unos manazas, o tenéis cierta tendencia a que se incendie todo lo que tocáis… Olvidaos de esto, pulsad en cerrar la pestañita, y a leer otra cosa. En serio, la gráfica puede quedar dañada de manera permanente, luego que no venga nadie llorando.

Obviamente es uno de los riesgos del overclock, y es que si modificamos la velocidad de funcionamiento de algo, lógicamente se elevará también su temperatura. Y si la temperatura sube en exceso, las cosas se funden. Y si se funde, puedes prender fuego a tu casa. Bueno, tanto no creo, pero exagerar no está de más para alejar a 2 o 3 manazas que aún siguen leyendo.

Total, que estabamos con el programa recién abierto.

Hacemos click sobre la flecha al lado de customize (primera imagen) y después en la primera opción del recuadro (segunda imagen)

Nos encontramos ante este cuadro, en el que tenemos que seleccionar Performance 3D en el recuadro de arriba a la derecha.

Los valores en la captura sobre estas lineas, son los que vienen por defecto en la nVidia 8600GT de 512MB (DDR2) que lleva mi portátil. Lo único que hay que hacer ahora, es asegurarse de que está marcada la casilla Enable driver-level hardware overclocking, e ir subiendo ambas barras poco a poco, comprobando tras cada cambio (que guardamos pulsando en aplicar) que el sistema sigue estable. Es recomendable dejar unidas la velocidad de Core y Shader, con la casilla Link clocks, pues sino se pueden generar ciertas asincronías no deseadas, a no ser que seas rarito y te guste quemar cosas (¿que haces aquí aún?)

Para comprobar la estabilidad, podemos utilizar cualquier tipo de benchmark, algo que ponga a trabajar como dios manda nuestra GPU. Por ejemplo, FurMark. Este en concreto tiene una casilla para realizar una prueba de estabilidad, que viene a ser lo mismo que la de rendimiento, pero infinita. Debemos vigilar la temperatura que nos marca, no hay un límite genérico en cuanto a temperaturas, pero cuanto más baja sea, mejor. Al trabajar a menores temperaturas, más tiempo aguantará la tarjeta antes de pasar a mejor vida.

Después de realizar unas cuantas pruebas, estos son los valores que he dejado en mi portátil.

Realmente, se mantuvo estable hasta por encima de los 600MHz de Core y 500MHz en las memorias, pero más vale prevenir que lamentar. Siempre es bueno dejar un pequeño margen, y repasar de vez en cuando que las temperaturas sigan sin elevarse en exceso. En el caso de PCs de sobremesa, con una buena refrigeración se pueden obtener resultados impresionantes.

Método de refrigeración avanzado para portátiles. En serio, funciona, aunque no sea recomedable.

Dicho sea de paso, estos valores los mantengo solamente en invierno. Ojito cuando llegue la calor del verano, que el PC suele sufrir algo más por las temperaturas, no se os vaya freír llegado el momento. Además, hay algunos juegos que son excesivamente sensibles al overclocking (Bioshock, S.T.A.L.K.E.R.) con lo que mantener los valores originales quizá sea la opción más recomendable, y solo elevarlos cuando realmente lo necesitemos.

Es todo, para cualquier duda/corrección/incendio, como siempre, a los comentarios.

| | | |

C&C Red Alert 2: Jugar en una red Hamachi

Por Tragy, publicado el 19 de noviembre, 2008 | 93 comentarios

Los servidores de Westwood para Command & Conquer: Red Alert 2, hace tiempo que dejaron de funcionar, así que hay que tirar de soluciones alternativas para poder jugar por internet a este juegazo.

Existen formas de parchear el juego para que use otros servidores, pero lo más cómodo para jugar con gente que conozcas, es tirar de redes Hamachi, que simulan una red LAN a través de internet.

Lo primero, descargar el juego, nos valdrá por ejemplo la versión RIP.

Descargamos este archivito, y lo descomprimimos dentro de la carpeta del juego. Sirve para reemplazar el protocolo IPX que trae el juego original por el UDP, que ya viene de serie activado en Ventanucos XP.

Hecho esto, toca instalar Hamachi.

En Panel de Control/Conexiones de Red, nos aseguramos de que todas nuestras conexiones tienen el protocolo IPX desactivado, o que simplemente no aparece en la lista (Click derecho en cada conexión, Propiedades)

Ahora, en Conexiones de Red, vamos a Opciones Avanzadas/Configuración Avanzada. Ahí movemos la red Hamachi hasta que esté en la parte más alta de la lista.

Le damos un reinicio al PC, y abrimos Hamachi. Tras un par de tonterías que nos pide, podemos escoger entre crear una red, o unirnos a una existente. Si queréis, podéis uniros a la red Tragy-Red Alert, con contraseña 000000.

Por fin, podemos abrir el juego. Vamos a opciones/red local, y nos aseguramos de que todo está así, para luego pulsar en Hecho.

Y listo, si estáis conectados todos a la misma red Hamachi, podéis entrar al juego y crear una partida en red, y ya os veréis unos a otros como si estuvierais en la misma LAN.

Y ahora….
Unit Ready…. Unit Ready…. Unit Ready….

| | | |

[GH] Cambiar los nombres de las canciones

Por Tragy, publicado el 29 de octubre, 2008 | 7 comentarios

Como añadido al tutorial principal, en el que se explica como colocar las canciones personalizadas, podemos cambiar el nombre y artista que aparecen a la hora de jugar.

Para ello, solo necesitamos editar un archivo con Guitar Hero DTB Tools

Lo primero, es extraer del juego el archivo que contiene los nombres de las canciones, sus ajustes por defecto, tiempos de previsualización en el menú, etc.

Para ello, abrimos Guitar Hero Explorer, y vamos a /main/config/gen/songs.dtb, hacemos click derecho, para luego pulsar en Extract.

Guardamos el archivo en donde queramos.


El programa que tenemos que usar forma parte de las herramientas de edición de DTB, se trata de GH2 Name Editor. Está incluido en este .zip, que debemos extraer en una carpeta. Después, abrimos GH2ne.exe.

Vamos a File/Open File, y abrimos songs.dtb.


A partir de aquí, es cosa de ir sustituyendo los parámetros por defecto por los que nosotros queramos. Cuando acabemos, pulsamos en Save, y ya podemos salir del programa.

Solo queda volver a meter el archivo en el juego, para ello, abrimos GH Explorer, y vamos de nuevo a /main/config/gen/songs.dtb, solo que ahora hacemos click derecho, y Replace.

Esperamos, y ya reemplaza el archivo original por el nuestro personalizado.

¿Alguna duda?

| | |

[GH] Tutorial de FeedBack: Eventos y Secciones

Por Tragy, publicado el 6 de octubre, 2008 | 40 comentarios

Después de un primer tutorial para principiantes, continúo con la creación de canciones personalizadas para Guitar Hero.

Empezaré por los eventos, que sirven para manejar las animaciones de los personajes durante la canción, efectos varios de luces, y alguna que otra información necesaria para que todo funcione correctamente. Después secciones, útiles si queremos que nuestra canción sea medianamente compatible con el modo práctica, a la par que cómodas para desplazarse mientras creamos la canción.

EVENTOS

En Guitar Hero existen dos tipos de eventos durante las canciones: Los que afectan a toda la canción en general, juegues en el modo que juegues, como pueden ser los efectos de luces; y las que afectan a un modo en concreto, por ejemplo que el guitarrista toque un solo.

Por si no interesa mucho el tema de las animaciones, resalto que conviene echar un vistazo al evento end , que es imprescindible en cualquier canción.

Para colocar un evento, basta con desplazarse hasta el punto en que se quiere poner, y pulsar la tecla E o W, para colocar unos u otros respectivamente. Escribimos el nombre del evento, y pulsamos Intro. Si todavía no tienes muy claro como desplazarte por el chart, quizá deberías echar un vistazo a lo más básico.

Si colocamos el evento con la letra E, afectará a absolutamente toda la canción. Por ejemplo, si colocamos un efecto de luz en donde estamos poniendo las notas de la guitarra, afectará a todas las pistas por igual: cooperativo, bajo, el resto de las dificultades…

Sin embargo, colocándolo con W, afecta únicamente a la pista en donde está colocado. Sirven principalmente para controlar las animaciones de cada personaje por separado. Por ejemplo, podemos hacer que en el mismo momento el guitarrista y el bajo hagan cosas distintas, colocando los eventos en sus correspondientes pistas. Eso si, basta con ponerlos en una de las dificultades, que en el resto se aplicarán automáticamente.

Vamos entonces con la lista de posibles eventos, y su efecto:

band_jump: Todo el grupo da un salto al unísono. Lo harán al principio del compás continuo al evento, y caerán 1/4 de compás después.

chorus: Indica el comienzo del estribillo.

crowd_double_tempo: El público se mueve al doble de la velocidad (que depende del BPM del momento)

crowd_half_tempo: El público se mueve a la mitad de la velocidad.

crowd_lighters_fast: El público agita sus mecheros rapidamente.

crowd_lighters_slow: El público agita sus mecheros lentamente.

crowd_lighters_off: Off=Apagado, Lighter=Mechero, os hacéis una idea, ¿no?

crowd_normal_tempo: Devuelve al público a su ritmo normal.

end: El más importante de todos, tiene que colocarse SIEMPRE al final de la canción, indicando el momento en el que termina. La canción debe terminar antes de que termine de reproducirse el audio que metamos al juego, de lo contrario se quedará colgado.

half_tempo: El guitarrista/bajista se mueve a la mitad de velocidad.

idle: El guitarrista/bajista deja de tocar.

lighting (): Enciende las luces del escenario.

lighting (blackout): Apaga las luces.

lighting (chase): Centra las luces sobre el guitarrista.

lighting (color1) y lighting (color2): Cambia los colores de los focos. El color en concreto depende del local en que estés tocando.

lighting (flash): Efecto de luz, un flash en el escenario por nota.

lighting (flare): Efecto de luz, una llamarada desde el escenario por nota.

lighting (strobe): Otro efecto de luces, con varios flashes por cada nota (Gracias a quien dejó el comentario confirmando estos dos últimos :) )

lighting (sweep): Barrido de luces por el escenario.

music_start: Se usa para indicar que el grupo empieza a tocar.

normal_tempo: El guitarrista/bajista vuelve a moverse a velocidad normal.

ow_face_on: Cambia el gesto de la cara del guitarrista.

ow_face_off: El guitarrista vuelve a poner su cara de siempre (obvio, ¿no?)

play: El personaje toca la guitarra. Se alterna con idle para indicar cuando toca y cuando no.

solo: Indica el comienzo de un solo

solo_on: Hace que empiece la animación de cada personaje para los solos.

solo_off: Termina la animación de los solos.

sync_head_bang: Todo el grupo agita la cabeza al unísono. Dura 4 compases.

sync_wag: Como el anterior, pero agitando la cabeza hacia los lados.

verse: Indica el comienzo de una estrofa.

wail_on: Otra animación del guitarrista.

wail_off: Desactiva la animación anterior.

**Nota**

Sobre los efectos de iluminación: antes de usar cualquiera de esos efectos, debe haber colocado un evento music_start. Además, los efectos se comportarán de manera distinta dependiendo del último evento verse/chorus/solo que hayamos puesto.

Existen algunos eventos más, aunque estos son los que FeedBack incluye por defecto, y son

más que suficiente. Si queremos eliminar un evento, basta con ponernos sobre el evento que queramos eliminar, y pulsar Suprimir.

SECCIONES

Las secciones sirven para dividir nuestra canción en tramos. Esto nos servirá para dos cosas: hacerlas compatibles con el modo práctica del juego, y permitirnos un desplazamiento más cómodo mientras creamos las canciones.

Para colocar una sección, nos desplazamos hasta el punto donde queremos que empiece, y pulsamos R. En el recuadro, escribimos el nombre de nuestra sección, y pulsamos Intro.

Así de simple, ya tenemos creada una sección. Podemos desplazarnos de una sección a otra pulsando Alt+Arriba, o Alt+Abajo, lo cual es muy cómodo para no tener que ir compás por compás hasta que lleguemos al punto en el que queramos cambiar algo.

Dos eventos, y una sección.

Y hasta aquí la segunda parte. Para cualquier duda, podéis dejar un comentario que os contestaré en el menor tiempo posible.

| | |

ePSXe y el sonido CDDA

Por Tragy, publicado el 5 de octubre, 2008 | 4 comentarios

Uno de los enormes problemas que tenía hasta hace poco ePSXe, tremendo emulador de PSX, era la reproducción de audio en formato CDDA. Pasaron más de cuatro años entre la versión 1.6.0 (Agosto/2003) y la 1.7.0 (Mayo/2008), debido al abandono del proyecto. Finalmente, y por suerte, decidieron retomarlo y sacar una nueva versión que entre otras mejoras, incluye el soporte de audio en formato CDDA desde cualquier unidad de CD, real o virtual, e incluso desde archivos de imagen.



En muchos juegos de PSX en lugar de incluirse la música codificada, se incluía como pistas de audio digital, reproducibles en cualquier lector de CDs estándar.

Para mejorar el rendimiento, y por cuestiones de compatibilidad con los lectores de CDs del momento, en ePSXe la emulación del CDDA se hacía de manera analógica (CDA). Para ello, era necesario tener conectado un cable desde el lector en cuestión, hasta la entrada analógica de la tarjeta de sonido.


Con el paso del tiempo, esta conexión fue quedando un poco en el olvido, y gracias a dios en la versión 1.7.0 del emulador ya no es necesaria para nada. En su lugar, se hace uso del audio digital, y está implementado en los plugins internos del emulador. Por lo tanto, para que el CDDA se reproduzca correctamente, bastará con seleccionar como plugin de sonido el ePSXE SPU core 1.7.0. Usamos la opción Run ISO, que nos permitirá escoger el .cue del juego a emular.

Por si no diera buenos resultados, nos queda la opción de montar la imagen en una unidad virtual, y configurar el ePSXe CDR core para que busque en esa unidad. Esta vez para arrancarlo, usamos Run CDROM, y cruzamos los dedos para que de mejor resultado que con el cargador de imágenes. En principio, debería funcionar mejor, o eso dicen los desarrolladores del emulador.

De todas formas, si por cualquier motivo necesitas usar una versión anterior del emulador, existen varias soluciones para disfrutar del CDDA:

a) Cargar el juego desde un lector de CD con el cable analógico conectado a la tarjeta de sonido.

b) Usar Daemon Tools para simular una unidad de CD con audio analógico. En las últimas versiones han eliminado esta opción, aunque con las de este link funciona bastante bien.

c) Usar el plugin CDR Mooby, que permite reproducir el CDDA desde una imagen en formato .bin+.cue.

De entre estas opciones, la más recomendable por su sencillez y buen funcionamiento, es usar el plugin CDR Mooby, que nos ahorrará más de un dolor de cabeza. De todas formas, salvo problemas de compatibilidad con algún juego en concreto, lo mejor es usar la versión 1.7.0 del emulador, que para algo han vuelto a trabajar en él.

Si tenéis cualquier problema, podéis usar los comentarios, e intentaré responderos en el menor tiempo posible.

| | | |

En Guitar Hero, cada canción del juego está compuesta básicamente por dos archivos: un .mid, y un .vgs. Si ya habéis echado un vistazo al tutorial que publiqué hace un tiempo en este mismo blog, ya sabréis que el .vgs contiene el audio dividido en 4 o 5 pistas, así como un mp3 común tiene dos, una para el altavoz izquierdo y otra para el derecho.

El .mid, debe estar creado expresamente para ser introducido en el juego. No sirven los típicos politonos en formato midi, ya que no tienen datos que el juego pueda reconocer.

En este tutorial, vamos a usar un programa llamado FeedBack. Los archivos que se obtienen con él son .chart, aunque cumplirán la misma función que el .mid del juego: contendrán la posición de cada nota, las animaciones de los personajes en cada momento de la canción, efectos de luces, secciones para el modo práctica… Resumiendo, lo que hace falta para la canción.

Una vez creado el .chart, podremos ponerlo en el juego usando el Guitar Hero Explorer, o convertirlo a otros formatos para usarlo en Guitar Zero, o Frets on Fire.

En fin, tras una breve y aburrida introducción, vamos a lo que interesa. Habrá mucho texto, pero es necesario para analizar a fondo este fantástico programa.


CREAR CANCIONES PARA GUITAR HERO USANDO FEEDBACK


Con este programa, podremos crear archivos .chart, que ya contendrán todo lo necesario para poder meterlos en el juego. Sobre estas lineas, hay una captura del aspecto del programa, con la interfaz sobre la que se crean las canciones. Bastante parecido a Guitar Hero, digamos. De ahí que resulte tan intuitivo colocar las notas que luego tocaremos en el juego.

Lo primero es descargar el programa en cuestión y descomprimirlo en una carpeta, a nuestro gusto. Echando un vistazo, vemos que dentro de la carpeta, hay un par de ejecutables, y la carpeta Songs, entre otras cosas. Nos interesa FeedBack.exe (o FeedBack_OpenGL.exe, si conoces la diferencia sabrás cual es el que mas te conviene). Al hacer doble clic en este archivo, nos llevará a la pantalla de selección de idioma, y tras una pequeña pantalla de ayuda, de la que saldremos pulsando Esc, encontramos una pantalla similar a la que comentaba antes.

Antes de empezar, si queréis echad un vistazo a las opciones que tiene el programa. Lo básico, es pulsar Esc para acceder al menú, e ir navegando por las opciones con las flechas hacia arriba o abajo, pulsando Intro para seleccionar una opción.

Si por error, tocamos alguna opción que modifique el comportamiento del programa en general, podemos borrar el archivo Config.ini que está en la carpeta principal, que al abrir el programa de nuevo se generará solito como si fuera la primera vez que lo ejecutamos.

El siguiente paso, será crear un archivo nuevo para empezar una canción.

CREAR UNA CANCIÓN NUEVA

Vamos a crear una canción empezando de cero. Para ello, colocamos la canción en si dentro de la carpeta Songs, ya sea en formato mp3 o ogg. Hecho esto, abrimos FeedBack y pulsamos Esc para ir al menú, para seleccionar Nuevo Chart. En el menú que aparece, seleccionamos el audio que acabamos de copiar, y nos permitirá cambiar unos cuantos ajustes del .chart que se va a crear.


Podemos poner nuestro nombre, el tipo de canción que es, y varios ajustes más, o pulsar Esc para dejarlo todo por defecto y empezar lo interesante: crear la canción.

Ahora, lo que tenemos que escoger es en que sección del .chart irán colocadas las notas. Para ello, podemos usar las teclas desde F1 a F11. Cada una de estas secciones puede contener notas distintas para la misma canción. Veo que en esta última versión incluyen pistas para batería, voz, etc… Por lo que intuyo que tiene funciones para Rock Band, aunque todavía me tengo que informar bien sobre esto, tras lo cual actualizaré esta información.

Además, dentro de cada sección, podemos pulsar Shift + F1 a F4, para escoger la dificultad en la que vamos a trabajar. De nuevo, se pueden colocar notas distintas en cada dificultad, y así aparecerán luego en el juego.

Dicho esto, pasamos un poco a la acción, que es lo interesante.

COLOCAR NOTAS Y CAMBIAR BPM

Lo más básico a la hora de crear el .chart, será colocar las notas en la plantilla, y cambiar la velocidad a la que transcurren por la pantalla. Vamos primero con las notas.

Para movernos por la plantilla, pulsamos arriba y abajo. Con izquierda y derecha cambiamos el parámetro Paso, que viene a ser la distancia que nos movemos cada vez que pulsamos arriba (o abajo). 1/1 equivale a un compás, y si entendemos un mínimo de fracciones (que ya no digo de música), no habrá problemas con esto.

Para colocar o quitar una nota, pulsamos 1 2 3 4 5. Cada tecla corresponde a una nota, 1 al verde, 2 al rojo… Se entiende, ¿no? Pues pulsando izquierda, derecha, arriba, abajo, y colocando notas, ya sabemos lo básico para ir colocándolas.
Además, para poner notas sostenidas, podemos hacerlo manteniendo pulsada la tecla de la nota que queramos colocar, y sin soltarla, pulsamos hacia arriba las veces necesarias hasta que cubra el espacio suficiente. Si cubre mas espacio del que necesitamos, podemos acortar el espacio recorrido con cada pulsación pulsando derecha o izquierda, siempre sin soltar la tecla de la nota.

Vamos ahora con el BPM (Beats Per Minute, o ‘Pulsos’ por minuto). Cuanto mas grande sea este número, mas rápido transcurren las notas. Podemos cambiarlo pulsando ? o ¿, en cualquier momento de la plantilla que estamos creando. Por e
jemplo, establecemos un BPM al principio de la canción, pulsamos arriba un par de veces, y cambiamos el BPM. Hasta el segundo cambio, la canción transcurre con el primer BPM que pusimos. Aprender a jugar con este parámetro es muy importante, para poder sincronizar las notas y ajustarlas al sonido de la canción.

Para mas precisión, podemos pulsar:
Shift + ?/¿ Para cambiar el BPM en décimas.
Ctrl + ?/¿ Para cambiarlo en centésimas.
Ctrl + Shift + ?/¿ O en milésimas.

Mas adelante, veremos que se puede utilizar una técnica llamada Anchors (o ‘puntos de ancla’), con la cual marcaremos la primera nota de una sección, y la última. Después, con sincronizar solamente esas dos notas, FeedBack se encargará de colocar los BPM necesarios en esa sección para que lleve un ritmo constante. De todas formas, para poder comprender bien como funciona este método, lo mejor es aprender primero a manejarse con el cambio manual de BPM.

PREVISUALIZAR NUESTRO TRABAJO

Está muy bien colocar notas a ojo de buen cubero, pero FeedBack incluye la opción de previsualizar la canción. Ésta es la opción más útil que tiene el programa, ya que nos permitirá reproducir nuestra plantilla al mismo tiempo que la música, y así podemos ver si las notas están bien colocadas.

Para empezar la previsualización, pulsamos Espacio, y empezará a desplazarse la plantilla tal cual lo vemos en Guitar Hero. Pulsando de nuevo Espacio, paramos, y podemos volver a editar la pista. Si queremos reproducir desde el principio la canción, podemos hacerlo con Shift + Espacio.

Además, hay un par de opciones muy útiles durante la previsualización, que nos ayudarán a sincronizar mejor las notas.

Pulsando M activamos/desactivamos un metrónomo, con el que podemos asegurarnos de que estamos haciendo nuestra pista al ritmo real de la canción. No es necesario seguirlo al 100%, pero si que hará que las notas queden mucho mejor distribuidas.

Con N activamos las ‘palmadas’, que hará que suene una ‘palmada’ cada vez que una nota que hemos colocado pase por la linea, es decir, justo cuando tendríamos que tocarla en el juego. Está bastante claro que se sincroniza mejor de oído que visualmente, y activando esta opción durante la previsualización será mas fácil saber que notas están fuera de lugar.

Como pequeño inciso, podemos cambiar el volumen de estos dos efectos pulsando V, y moviendo la correspondiente barra con izquierda o derecha. Por si no oímos la canción con tanto efecto, vamos.

Bueno, y hasta aquí la primera parte del tutorial. Podemos pulsar S para guardar el .chart en cualquier momento, y cargarlo de nuevo cuando queramos (en lugar de pulsar en Nuevo Chart, pulsamos en Cargar Chart)

Id trasteando un poco, que pronto pondré más información sobre como usar el programa: animar los personajes, colocar la energía estrella, secciones para el jugador uno y dos, y mas trucos para hacer más fácil la creación de canciones.

Si queréis algunas canciones, podéis descargarlas aquí mismo. Además, si aún no sabéis como ponerlas en el juego, tenéis este fantástico tutorial (cof, cof…) para insertarlas en Guitar Hero 2 de PS2.

Un saludo, y nos vemos!

Actualización: Ya está lista la siguiente parte del tutorial: Eventos y Secciones.

| | |

Una de Tearing, V-Sync, y Triple Buffering, por favor …

Por Tragy, publicado el 14 de septiembre, 2008 | 6 comentarios

Una de las pequeñas putadas de tener un monitor de mierda para jugar, es que por mucho que tu tarjeta gráfica genere frames y frames, no todos pasaran por la pantalla. En mi caso, la LCD del portátil funciona a 60Hz, por lo que no podrá mostrar mas de 60 imágenes en pantalla por segundo, por muchas mas que la tarjeta gráfica genere, lo cual puede dar lugar a cosas como esta:

Por suerte, todo tiene su solución, con sus pros y contras, pero solución al fin y al cabo.

Este efecto se conoce como Tearing, y ocurre cuando se pierde la sincronía entre la tarjeta gráfica y el monitor. En el buffer, donde se encuentran los frames, se acumulan mas frames de los que el monitor puede mostrar, y terminan por mostrarse “solapados” unos sobre otros. Ocurre especialmente cuando la acción ocurre a gran velocidad, aunque la forma mas común de encontrarse con este molesto efecto es en cualquier FPS, al mover la cámara rápidamente hacia los lados.

Pese al distinto funcionamiento en general de monitores CRT y LCD, afecta a ambos por igual, ya que por cuestiones de compatibilidad, en este aspecto ambos monitores se comportan igual.

Para acabar con este efecto, gran parte de los juegos traen consigo la opción de activar la V-Sync, o sincronización vertical. Al activarla, la tarjeta gráfica queda “limitada”, y no enviará un nuevo frame al monitor hasta que el anterior se haya mostrado. Para juegos que no tengan esta opción, si tenemos una gráfica nVidia, podemos forzarla desde el “Panel de Control de nVidia” para la aplicación en concreto que queramos.

El problema es que el V-Sync afecta enormemente al rendimiento, desaparecerá el Tearing, pero probablemente aparecerán ralentizaciones que antes no estaban presentes. A partir de aquí, dos opciones: o bajar la resolución, gráficos, etc… Que en realidad no es solución, sino una mierda… O activar el Triple Buffering a ver si se arregla algo.

Si el juego funciona bajo OpenGL, podremos forzarlo igualmente desde el panel de control de nVidia, poco mas abajo de donde estaba el V-Sync.

En caso de que queramos hacerlo para un juego que use D3D, podremos con un pequeño programa que viene adjunto con RivaTuner.

En la carpeta que creará en el menú de inicio, encontramos el D3DOverrider.

Bastante sencillito y claro, según las opciones que estén marcadas forzará una cosa u otra. Por defecto viene así, y no es necesario tocarle nada. Al ejecutar un juego teniendo este programa funcionando, se activarán las opciones marcadas, es decir, V-Sync y Triple Buffering, que es lo que queremos.

Para comprobar la diferencia, he aquí unas capturas de la prueba de rendimiento que incluye F.E.A.R. (por cierto, recomendadísimo, a ver si hablo algo de él). El equipo en el que hice las pruebas es el que aparece aquí, y cabe decir que la frecuencia de actualización de la pantalla es de 60 Hz (por tanto, con el V-Sync activado, se enviarán como máximo 60 frames por segundo a la pantalla)

Sin V-Sync

Con V-Sync

Con V-Sync y Triple Buffering

Como vemos, al activar el Triple Buffering se recupera prácticamente el rendimiento que teníamos con todo desactivado, y eliminamos el dichoso Tearing de la pantalla.

Sin embargo, el Triple Buffering es un arma de doble filo, pues en algunos casos puede crear “Input Lag”, es decir, una pequeña diferencia entre que pulsamos una tecla, y se ve reflejada en pantalla.
Además, puede dar lugar a distintos problemas, desde pequeños fallos visuales, a cuelgues completos. Todo es cuestión de probar, y ver que es lo que mas nos convence.

Espero que haya sido útil. Para cualquier duda, no dudéis en dejar un comentario!

| | | |

Si estás cansado de las canciones que trae por defecto el juego, te encuentras en el blog indicado, en el post indicado, en el momento indicado. Paso por paso, ahí os va el tutorial de personalización de Guitar Hero 2 para PS2.

Insertar canciones en Guitar Hero 2 (basado en el trabajo en inglés, por whiskeyface, de los foros de scorehero)

INSERTAR CANCIONES EN EL JUEGO

NECESITAMOS:

-Juego Guitar Hero 2

-Guitar Hero Explorer (en adelante, GHex) Descargalo aquí

Con este programa podremos explorar la estructura de los archivos del juego, y así reemplazar o relinkar lo que queramos.

-Un Midi (o .chart) (puedes encontrar algunos en este mismo blog)

Un archivo midi de la canción que queramos meter en el juego. Este midi debe estar específicamente creado para usar en GH, no vale un midi cualquiera (NO SIRVEN los típicos midis que se usan como tonos o politonos para móviles)

El archivo debe contener información que el juego sea capaz de reconocer, como la posición de cada nota, las acciones de la banda en cada momento, el tiempo de duración de la canción, y muchas cosas mas.

-Un archivo .mp3 o .ogg

La canción que queremos meter en el juego. No se si soporta mas formatos, así que por si acaso usad esos. Por cuestiones legales, normalmente se distribuyen las canciones creadas sin el mp3 en cuestión, pero como en este blog me paso todo por el forro de los huevos, colgaré todo junto.

-CD/DVD Rom Generator y Apache Descarga aquí

Para despues juntar de nuevo los archivos y crear un .iso que grabaremos en un dvd y meteremos en la ps2 (Y no, no va como el original, habrá que cargarlo o con un modchip o con swap, por si alguien no lo da por supuesto)

Si tenemos todo esto a mano, vamos a empezar.

Paso 1: Preparando los archivos a modificar

Metemos el dvd del Guitar Hero 2 en el pc, y copiamos todo el contenido al disco duro. Debe haber esto en el disco:

IOP(Carpeta)

GEN(Carpeta)

VIDEOS(Carpeta)

SLES_XXX.XX

System.cnf

Una vez copiados, seleccionamos todos los archivos, click derecho, y propiedades. Ahí, desmarcamos la casilla “Solo Lectura” si estuviera marcada, y aceptamos.

Paso 2: Echando un vistazo a los archivos

Instalamos el GHex, y lo abrimos. Pulsamos en File/Archive/Add, y vamos a dentro de la carpeta GEN, donde habrá un archivo Main.hdr.

Aceptamos, y si es la primera vez que añadimos el archivo, nos dirá que necesita escanearlo para comprobar que es un archivo correcto.

Por supuesto, contestamos que si, para llegar a esta pantalla.

La sección que nos interesa es songs, y pulsando se despliega una lista con los nombres de las canciones del juego. Si pulsamos sobre una de las canciones, aparecerán en pantalla sus notas, y podremos previsualizar cualquiera de las canciones del juego. Mejor familiarizarse un poco con esto, que luego nos va a hacer falta para comprobar si va bien la canción.

Desplegamos la canción que queramos substituir, y nos encontraremos con algo parecido a esto…

Los archivos importantes son el .mid, y el primer .vgs, el que tiene el mismo nombre que la canción que hemos desplegado. Estos son las notas y la canción que el juego tiene puestos.

Paso 3: Substituyendo las notas

Hacemos click derecho en el .mid de una canción de la lista. Yo voy a hacerlo con X-Stream. Seleccionamos Import, y buscamos el midi que hemos descargado. Puede usarse un midi, o un .chart, que son los generados por Feedback, programa para crear canciones personalizadas.

Después de escoger el midi, aparecerá una pantalla como esta, en la cual se informa de qué se incluirá en cada sección del juego. Tardará un poco en reemplazarlo, de 1 minuto a 5. Paciencia….

Vemos que en PART GUITAR, en cada nivel de dificultad se incluirá la correspondiente dificultad, y en PART BASS mas de lo mismo.

Cuando termine, si previsualizáis la canción, veréis que se sigue oyendo la música original del juego, pero las notas que aparecen ya son las de la canción que queremos insertar.

Paso 4: Substituyendo el audio

En la lista, hacemos click derecho sobre nombrecancion.vgs, y le damos a importar.

Sobre el recuadro de arriba, pulsamos con el botón derecho, y le damos a “add”.

Buscamos el mp3 y le damos a aceptar. Ahora vemos que aparece en la lista, y abajo aparecen una serie de pestañas, en las cuales se puede escoger por que altavoz sonará cada instrumento. Porque aparece esto? Pues porque las pistas del juego contienen varios canales de sonido. Por tanto, se puede escoger que la guitarra solista suene por el altavoz izquierdo, y el bajo o guitarra rítmica por el derecho. Lo mas probable es que el archivo que vamos a meter al juego sea monocanal, “todo sonará en todos los canales”. Para asegurarnos de que todo sonará bien, repartimos el sonido entre los altavoces derecho e izquierdo, poniéndolos así:

Pulsamos en aceptar, y empezará a mover los archivos para introducir la música personalizada. De nuevo, tardará un buen rato en convertir el archivo a .vgs, e insertarlo en el juego, así que mas paciencia…

NOTA AÑADIDA: Según la forma en que usemos insertemos los MP3 en el juego, obtendremos distintos resultados, a saber:

-Si solo incluimos el mp3 en 0/1(Altavoces Izquierdo y Derecho para el sonido general de la canción) obtenemos como resultado siempre el mismo volumen durante toda la canción, acertemos o no al tocar las notas durante el juego.

-Si incluimos el mp3

en 0/1, y también en 2/3 (que debería incluir únicamente sonido de guitarra) obtendremos como resultado un volumen alto cuando toquemos bien las notas, y cuando fallemos, se bajará un poco el volumen. Como desventaja, no se puede usar la barra de vibratto, ya que desde el momento en el que se use, el sonido pasará a ser bastante malo, como con eco, y en general, desagradable.

-Si incluimos el mp3 solo en 2/3, que son las pistas del sonido de guitarra, 0/1 quedará vació, y por lo tanto mientras toquemos bien las notas la canción sonará bien, pero cuando fallemos alguna nota todo se quedará en silencio (es muy complicado retomar el ritmo si uno se pierde)

Dicho esto, que cada uno escoja su opción preferida.

Una vez acabe, previsualizamos para ver si todo está bien. Jugando un poco con la velocidad a la que se previsualiza, nos fijamos si las notas se iluminan al ritmo de la canción.

Ahora puede pasar tres cosas. O va todo perfecto, o va todo mal, o va a ratos bien a ratos mal.

–>Si está perfecto, el siguiente paso no es necesario.

–>Si va un rato bien un rato mal, mejor olvidarse. El creador de la canción es un paquete, y la ha hecho mal. Otra opción es que el mp3 no corresponda con el que usó el autor, de canciones conocidas hay muchas ediciones, con pequeños cambios.

–>Si la canción empieza a sonar antes de que empiecen las notas, o al revés, las notas aparecen antes de que suene, podemos hacer que se sincronice. Para eso es el siguiente paso.

En el caso de esta canción, la música empieza a sonar antes de que lleguen las notas, por tanto tendremos que hacer que la canción empiece a sonar mas tarde. Vamos a ver ahora como.

Paso 5: Ajustando el comienzo del audio

Volvemos a hacer click derecho sobre nombrecancion.vgs, y de nuevo le damos a import. Escogemos el mp3, y cuando nos encontremos en la pantalla en la que podemos escoger por que altavoz sale cada sonido, hacemos click derecho en el mp3 y le damos a Propierties.

En el recuadro podemos poner una cantidad en milisegundos, que hará que la canción empiece a sonar antes o después (ojo, SONAR, las notas no se moverán de su sitio)

Si ponemos un numero positivo, la canción empezará a sonar X milisegundos mas tarde, si ponemos un numero negativo, la canción empieza X milisegundos antes.

Para esta canción en concreto, con poner 2000 aproximadamente quedará bien sincronizado.

Le damos a aceptar, y hará lo mismo que antes, convertir a .vgs y substituir el archivo en el juego. Esta vez ya tardará mucho menos, porque el archivo ya ha sido movido al final del main.hdr, y ahora está mas accesible.

Previsualizamos de nuevo y:

a)Va bien–> Seguimos adelante

b)Sigue dessincronizada–>Pues venga, a repetir este paso y probar otro numerito hasta que vaya bien.

Y así hemos introducido una canción en el juego. Ahora tan solo quedaría grabarlo, y disfrutar del juego. Pero bueno, si como en mi caso, no sois ricos, y os parece que grabar un dvd para una sola canción es un poco abusivo, nos vamos a otra canción de la lista, y repetimos los pasos 4 y 5.

Una vez terminado, cerrad el programa para dejar libres los archivos, ya que ahora veremos como crear una iso con los archivos modificados para que la ps2 reconozca el juego sin problemas.

Paso 6: Creando el .iso

Instalamos y abrimos CD/DVD Rom Generator. Escogemos crear nuevo proyecto, y de tipo DVD Rom.

Arrastramos desde la carpeta donde tengamos los archivos hasta la ventana del programa por este orden:

GEN

IOP

VIDEOS

SLES_XXXXX

SYSTEM.CNF

Luego pulsamos en la pestaña Volume, en Disc Name le ponemos SLES XXXXX (54442 en el pal, si el juego es de otra región, es el nombre del archivo sles que hay en la carpeta)

En Producer Name ponemos PLAYSTATION, y en License Area, pues ponemos la correspondiente, en mi caso Europe.

Así queda:

Vamos a File/Export Iml, y guardamos el .iml donde queramos.

Abrimos Apache, y le damos a File/Import IML. Escogemos el iml que guardamos antes, y luego le damos a File/Build ISO. Ahora le decimos donde queremos que se guarde el ISO, y le damos a aceptar… Tras un ratito, tendremos un precioso archivo .ISO donde hayamos indicado. ¡Hay que esperar a que llegue la barra al 100%, eh!

Tan solo queda usar nuestro programa favorito para grabarlo (DVD Decrypter, Alcohol 120%, Nero…… Será por opciones…) Ya sabéis, como siempre, hay que grabar a una velocidad razonable, para que luego la lente no sufra al leer el disco.

Actualizado: Cambiar los nombres de las canciones.

Un saludo, y para cualquier duda, ahí están los comentarios!

| | |

Crackeando una wep con Intel/Pro 3945 …

Por Tragy, publicado el 29 de marzo, 2008 | 14 comentarios

Actualizado por última vez el 27/09/2008:

Por fin, algo de material interesante para el blog…

Primero, pongámonos en situación, y ya de paso, un poquito de teoría…
Hasta ahora, había intentado desde Windows hacer todo lo que voy a explicar, pero los resultados fueron bastante penosos… Con mi vieja tarjeta wifi, chip atheros incluído en el paquete, supuestamente no debería haber problemas. Existen drivers para colocarla en modo monitor e inyectar paquetes en la red tanto desde windows como desde linux, pero aún así nunca me puse a fondo a mirar como hacerlo.

Sumando un poco de tiempo libre y aburrimiento, me puse a buscar alguna solución para hacerlo con la tarjeta del portátil que tengo ahora, tarjeta que se está implantando bastante… Una Intel/Pro Wireless 3945abg… Que yo sepa, por ahora en windows solo soporta el modo monitor, pero no permite inyectar paquetes en la red, cosa bastante importante para personas impacientes como yo…
Por tanto, habrá que tirar un poquillo de linux. Instalé Ubuntu 7.10 (aka Gutsy Gibbon), y me puse a trastear un poquillo. Los drivers que carga por defecto esta distribución son los ipw3945, drivers no abiertos, y que permiten colocar la tarjeta en modo monitor (capturar tráfico) pero no permiten inyectar paquetes (generar tráfico falso) Ya veremos porqué es importante el hecho de inyectar paquetes, sin hacer esto, podrían pasar semanas hasta conseguir capturar suficientes datos como para desencriptar una clave wep.

Lo primero, es instalar los drivers ipwraw. Estos, nos permitirán hacer todo lo necesario, incluyen extensiones wireless, y en resumen, están muy currados. Antes de instalar los drivers, necesitamos un par de paquetes:

sudo apt-get install build-essential
sudo apt-get install libssl-dev

Descargamos los drivers de Aquí

Los descomprimimos en una carpeta, abrimos un terminal, y vamos a donde los tengamos descomprimidos.

cd ipwraw-ng (carpeta donde estén, vamos…)
make
sudo make install
sudo make install_ucode
sudo echo “blacklist ipwraw” | sudo tee /etc/modprobe.d/ipwraw
sudo depmod -ae

Con las dos últimas lineas, hacemos que no se cargue automáticamente este módulo cada vez que se inicia el equipo. Para poder iniciar el módulo, tenemos que parar antes el ipw3945. Con los drivers ipwraw no podremos conectarnos a internet, ya que están diseñados para el escaneo de redes. Por tanto, primero acabamos de instalar todo lo necesario.

sudo apt-get install aircrack-ng

Además, aunque supongo que estaréis haciendo las pruebas con vuestro propio ap, y no hay problema, descargamos macchanger, que nos sirve para cambiar la mac de nuestra tarjeta a nuestro antojo (virtualmente, por supuesto)

sudo apt-get install macchanger

Al final del tutorial añado los pasos necesarios por si necesitamos cambiar de mac, pero por ahora continuamos con lo que estabamos.

Para descargar ipw3945 y cargar ipwraw:

sudo modprobe -r ipw3945
sudo modprobe ipwraw

Comprobamos:

iwconfig

Y sale algo tal que así:

tragy@Tragy:~$ iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

eth1 unassociated ESSID:off/any
Mode:Monitor Channel=1 Bit Rate=54 Mb/s

rtap0 no wireless extensions.

Configuramos un poquito la interfaz eth1:

sudo iwconfig eth1 rate 1M

sudo iwconfig eth1 txpower 16

Así, establecemos su velocidad máxima y su potencia de transmisión. Hecho esto, ya podemos subirla.

sudo ifconfig eth1 up
sudo ifconfig rtap0 up

Aunque tenemos que subir dos interfaces, realmente las dos hacen referencia a la misma tarjeta de red. Veremos que cada una tiene su utilidad.

Vamos a ver las redes que tenemos a nuestro alrededor. De la que queramos atacar, tendremos que apuntar su canal, su bssid, y su essid.

sudo airodump-ng eth1

Una vez tengamos los datos, paramos con Ctrl+C
Además, necesitamos nuestra dirección mac:

ifconfig

Y ahí, buscamos la dirección hw, o mac.

Hecho esto, tenemos los datos necesarios para empezar el ataque. La captura de datos la realizaremos con la interfaz rtap0, y la inyección de paquetes con eth1.

Queda por establecer el canal en el que vamos a operar, que supuestamente acabas de apuntar hace un momento:

sudo iwconfig eth1 channel 11

Es importante esta vez establecer el canal, ya que aunque sea en eth1 donde lo establezcamos, rtap0 cojerá de ahí el valor que hayamos introducido.
Hecho esto, podemos empezar la captura de datos

sudo airodump-ng -c 11 –bssid 00:01:02:03:04:05 -w Archivo rtap0

Esto empieza a guardar datos sobre un ap en el canal 11, con bssid 00:01:02:03:04:05, y guardará los datos en Archivo-01.cap. Ojo, que ahora la interfaz que usamos es rtap0.

Lo que tenemos que conseguir ahora es que aumente el tráfico, porque vereis que lo que aparece en la columna “data” sube muuuuy despacio, o incluso ni se mueve. Necesitamos que el número en esa columna suba, teóricamente se necesitan entre unos 250000 ivs para una wep de 64bits, y sobre 1000000 para una wep de 128 bits. Ya digo en teoría, porque con el método que usaremos despues para analizar las capturas, la clave puede salir con unos 50000 ivs nada mas, y como veremos, será cuestión de 10 o 15 minutos conseguir esa cantidad.

Para elevar el tráfico, tenemos que inyectar paquetes en la red. Dejamos el terminal capturando datos, y abrimos uno nuevo.

En el, vamos a hacer una “autenticación falsa” con el ap. No tengo ni idea de como funciona esto exactamente, pero el caso es que el punto de acceso nos reconocerá como un cliente asociado a su red, y podremos generar tráfico dentro de ella.

sudo aireplay-ng -1 0 -e WifiDeTragy -a 00:01:02:03:04:05 -h aa:ab:ac:ad:ae:af eth1

“-1 0″ es el tipo de ataque, así que no hay que cambiarlo, WifiDeTragy es el essid del ap al que nos queremos conectar, 00:01:02:03:04:05 es el bssid que apuntamos antes, y aa:ab:ac:ad:ae:af la mac de nuestra tarjeta de red. Podemos usar la original, o la que antes hemos cambiado con macchanger.
Si todo va bien, deberíamos ver algo como:

Sending Authentication Request
Authentication successful
Sending Association Request
Association successful :-)

Si pone una y otra vez Sending Authentication Request, lo mas probable es que estemos demasiado lejos del ap (podemos ver sus datos, pero
nuestros envíos no le llegan)

Si nos pone un error de que el ap ha rechazado los paquetes, lo más probable es que haya activado un filtro por mac. La solución, esperar a ver un cliente conectado a esa red, y utilizar su mac para nuestro beneficio con macchanger.

En fin, lo dicho, si todo fue bien, podemos seguir adelante. Abrimos otro terminal, y escribimos lo siguiente:

sudo aireplay-ng -3 -b 00:01:02:03:04:05 -h aa:ab:ac:ad:ae:af eth1

Lo mismo que antes, el “-3″ es el tipo de ataque (inyección de paquetes) despues del -b va la mac del ap, y despues de -h va la mac de nuestra tarjeta de red.

Veremos en pantalla que el número de “Read packets” va subiendo. Despues de unos minutos leyendo paquetes, debería empezar a subir el número de ARP requests. (“got 0 ARP requests”, debería poner en principio) Si empiezan a subir los ARP requests, y los “sent packets”, estaremos inyectando paquetes correctamente. En la ventana que tenemos capturando datos, la columna “data” empezará a subir como la espuma, la velocidad depende de lo bien que se reciba la señal del ap. Vamos, que puede ir desde 10 paquetes/s, hasta 500 paquetes/s. Mientras siga subiendo, lo importante es no cerrar nada.

Si sigue en 0 ARP requests, puede que el router tenga algún tipo de protección, que estés demasiado lejos de él, o que te haya desautenticado. Puedes probar a asociarte a él otra vez:

sudo aireplay-ng -1 0 -e WifiDeTragy -a 00:01:02:03:04:05 -h aa:ab:ac:ad:ae:af eth1

Si se conecta otra vez, sigue esperando. Puede tardar bastante en recibir arp requests, todo es cuestión de esperar, y si no estás seguro de que el router te mantenga asociado, vuelves a ejecutar este comando. Una forma de saber si estás correctamente asociado, es mirar la pantalla que tienes capturando datos. Si estás asociado, deberías aparecer en la parte de abajo, como cliente asociado al ap que estás atacando. Si desapareces de ahí en algún momento, vuelves a ejecutar este comando. Si vuelves a aparecer ahí justo tras ejecutarlo, lo dicho, todo es cuestión de esperar y repetir esto una y otra vez.

Si este comando no te funciona, probablemente el ap tenga activado el filtro por mac. Si es así, necesitamos conocer una mac que tenga acceso al ap. En el terminal que está capturando datos, se captura también los datos de otros equipos que acceden al ap. Si alguien se conecta al ap durante nuestra captura, nos aparecerá su mac en la parte de abajo de la ventana de captura. La explicación de como usar su mac, al final del tutorial.

Bueno, supongo que ya tenemos en el terminal que está capturando un número elevado en la columna “data”, supongamos que unos 50000-100000

Abrimos otro terminal, y ejecutamos:

sudo aircrack-ng -z Archivo*.cap

Si todo va bien, en un rato debería salir:

KEY FOUND! [ 11:12:13:14:15 ]
Decrypted correctly: 100%

Si dice que falló, podemos probar de nuevo cuando hayamos capturado mas datos, o incluso probar con otro método de desencriptación:

sudo aircrack-ng Archivo*.cap

Con este último es con el que se necesitan sobre 1000000 para que desencripte una clave de 128 bits, tarda mas, pero si el parámetro “-z” no te dio la clave, siempre puedes probar sin él a ver si funciona.

Los comandos de aircrack-ng se pueden hacer sin parar la captura de datos, así mientras comprueba las claves seguirá capturando datos. Incluso si paramos la captura, y luego la iniciamos de nuevo, en lugar de guardar los datos en Archivo-01.cap, los guardará en Archivo-02.cap, de ahí que a aircrack le indiquemos que utilice los archivos Archivo*.cap

Cuando tengamos la clave, bastará con hacer:

sudo modprobe -r ipwraw
sudo modprobe ipw3945

Así volvemos a cambiar el módulo que está cargado para la tarjeta wireless, y ya nos podemos conectar a la red con la contraseña que hemos conseguido. Como consejo, practicad con el router que tengais en casita, ponedle una clave wep de 64 bits, y sin filtro mac. Si lo conseguís, para el resto de claves wep el método es el mismo, puede tardar mas o menos, pero funcionará.

Para cualquier duda o similar, ya sabeis que los comentarios están ahí para algo.

Sobre macchanger:
Partimos de una situación en la que tenemos una mac que tiene permiso para acceder al ap que queramos atacar. Está comentado mas arriba el como conseguirla.

Para poder hacer el cambio correctamente, debemos hacerlo justo después de cargar ipwraw, ya que sino no se aplicará el cambio correctamente. Entonces, los pasos son:

sudo modprobe ipwraw
sudo macchanger -m XX:XX:XX:XX:XX:XX eth1
sudo macchanger -m
XX:XX:XX:XX:XX:XX rtap0
sudo ifconfig eth1 up
sudo ifconfig rtap0 up

Esto debe hacerse con las interfaces bajadas, que es como están según se carga ipwraw. Para el caso de esta tarjeta, creará dos extensiones, eth1 y rtap0 (los nombres pueden variar, puede ser wifi0 o algo similar). Debemos ejecutar el comando para las dos interfaces.

A partir de aquí, ya tenemos nuestra mac “falseada”, y podremos continuar normalmente, configurando el rate, txpower, y subiendo las interfaces.
Por supuesto, macchanger puede usarse en cualquier momento, aunque al principio sea lo mejor. Lo único que hay que recordar es que debemos bajar las interfaces antes:

sudo ifconfig eth1 down
sudo ifconfig rtap0 down

Y después volver a subirlas, como vimos antes.

Notas mentales, y más detalles sobre lo que estamos haciendo:

La interfaz eth1 puede no llamarse así en tu equipo, ya que depende de la nomenclatura que siga tu versión de linux. Por lo que he visto, wifi0 es otro nombre bastante común para esta interfaz.

Cuando establecemos el rate de la tarjeta de red, lo que hacemos es decirle a que velocidad va a trabajar enviando y recibiendo datos. Cuanta más alta sea esta velocidad, más rápido conseguiremos inyectar paquetes. El problema es que si el ap se encuentra bastante lejos, para estabilizar la conexión necesitamos bajar la velocidad de transferencia. En el tutorial, he usado 1M como velocidad, que es el mínimo. Podemos usar valores como 2M, 9M, 11M… Aunque para asegurarnos de que todo funciona bien, es mejor usar un rate bajo y tener un poco de paciencia.

Esto es todo por ahora, aunque iré actualizándolo cada cierto tiempo con más datos y problemas que vaya encontrando. Si tenéis cualquier problema, basta con dejar un comentario y echaré un vistazo a ver si encontramos una solución. Un saludo!

| | |