emulador

Imagen de Diskover

Nueva actualización del emuladro Mesen

Y por sorpresa ha aparecido una nueva versión del que es probablemente el mejor emulador de la NES actualmente para Windows y GNU/Linux. Hablamos de Mesen, que acaba de actualizarse a su versión 0.9.9.

Entre las mejoras incluidas en esta nueva versión, esta la prácticamente total compatibilidad con todos los mappers que han aparecido en la NES (unos 290 ha día de hoy), así como emulación de distintos periféricos, filtros de vídeo, salvado de partida, grabación, y un fantástico depurador ideal para todo aquel que pretenda programar en esta consola.

Si quieres obtener la última versión, pincha aquí: Mesen 0.9.9

Podeís obtener más información en este enlace: https://www.mesen.ca

Imagen de Diskover

Nintendo Mini Classic por dentro

Ya queda menos para la puesta en venta de la versión pequeña de nuestra querida NES. El viernes 11 de noviembre por fin podréis haceros de una Nintendo Mini Classic, como ya os informamos hace unos meses.

En varios sitios de todo el globo ya se ha puesto a la venta y algunos ya se han atrevido a destriparla. De esta forma podemos confirmar que la Nintendo Mini Classic por dentro esta compuesta de un procesador Allwinner R16 (4x Cortex A7, Mali400MP2 GPU), 256 MB de RAM DDR3, y una memoria flash de 512 MB, que es la que contiene los treinta juegos instalados.

Lamentablemente, esta memoria flash viene soldada a la placa de la consola y en principio va a ser imposible modificarla para añadir otros juegos.

Básicamente, es un ordenador Raspberry pi corriendo una distribución GNU/Linux bajo licencia de código abierto (bajo GNU GPL2). Los juegos instalados son meras roms funcionando en un emulador programado para tal propósito.

Al parecer este emulador no esta dando buenos resultados con algunos juegos que hacen uso del canal de sonido noise de la NES para reproducir ciertos efectos o sonidos, representándolos de manera distinta o directamente omitiéndolos; cosa que ha llamado bastante la atención tratándose de un producto Nintendo cuyo códigos fuentes son propios y no deberían tener ningún problema para emular al 100% una máquina propia.

Llama la atención la potencia de la máquina, cuyo procesador es más potente que el de una Nintendo Wii (2006) o una Nintendo 3DS (2011). Esta potencia viene justificada (en principio) por la necesidad de hacer compatible la maquina con las grandes resoluciones HD de los televisores de hoy en día.

Recordad que su precio rondara los 60€ y que este viernes ya puede ser vuestra.

Imagen de DJ Syto

La NES en el Bolsillo

Emulador NES en movil

¿Cuántas veces habremos soñado con jugar con los juegos de la nes en cualquier parte? ¿Cuántas veces hubiéramos deseado tener esas Nintendos piratas portátiles que se vendían? Yo desde luego muchas!.

Bueno amigos de RetroNES, en este reportaje quería hablaros sobre los emuladores de NES que han aparecido recientemente para diversos sistemas portátiles, como la GP 32, o móviles tales como N - Gage, Nokia7650, 3650, y 6600 (estos al compartir sistema operativo, el emulador es el mismo).

 

Little John

Empezaremos hablando por el Little John, que es el mejor emulador de NES para GP 32. Hay otros como el FNes32 o el InfoNes, pero no funcionan tan bien como el primero.

Arriba tenéis respectivamente la pantalla de titulo del emulador y la pantalla de carga de las roms. Al elegir las roms tenemos la opción de ver el nombre del archivo *.nes o de ver el nombre del juego completo que se incluye en la cabecera de las roms mismas, así en vez de poner mario3.nes por ejemplo, pondría Super Mario Bros. 3. Todos los juegos que he probado funcionan perfectamente, únicamente da problemas con algunas roms de multicartuchos de aquellos piratas de la NASA, que iban 10 en uno (o 700 en uno también XD), pero con roms de juegos sueltos no ha habido ningún problema.

Como podéis ver en esta imagen, la ultima versión del “JUANITO” incluye hasta soporte para la emulación de la  famosa pistola de luz Zapper. Con lo que podemos jugar al Duck Hunt perfectamente, manejando el cursor con el jostick de la consola. ¿Quién no recuerda aquel truco de disparar siempre al centro de la pantalla para matar a los patos? Así que ya no hay excusa para no disparar al maldito perro que tanto se burlaba de nosotros.

Como podéis observar por las fotos, el emulador no es del todo a pantalla completa, tiene un pequeño marco negro por los bordes. Existe una opción para estirar la pantalla, pero en mi opinión queda demasiado pixelado, y prefiero jugarlo de la forma normal aunque no se vea toda la pantalla (no se ve, pero casi).

La emulación es casi perfecta, (digo casi, por no decir perfecta del todo). El sonido es perfecto, y funcionan todos los juegos perfectamente a frameskip 1, (incluido el Super Mario Bros. 3 que es el que más problemas suele dar con los emuladores). Además incluye la opción de poder grabar partidas en el momento que queramos en cualquier juego y también permite poner turbo a los botones y muchísimas cosas más.

 

YEWNES

Pasemos a comentar el emulador para dispositivos móviles basados en symbian 6. (N - Gage, 7650, 3650...).

Para este sistema el único emulador de NES que ha aparecido por el momento es el YewNes, y nada mas empezar a hablar de él me gustaría decir que no va ni de lejos tan bien como el de la GP 32. La N - Gage tiene mucha menos resolución que la NES, por lo que si queremos jugar a pantalla completa, perdemos un poco de margen por los lados de la pantalla y un poco por arriba. También podemos elegir el modo escalado de la pantalla, pero se pierde mucha definición, aunque es perfectamente jugable.

Tiene 5 modos de velocidad, desde muy lento hasta muy rápido, pero en realidad lo que esto hace es aumentar el frameskip, para jugar en condiciones al Mario 3 por ejemplo, debemos poner el modo más rápido, puesto que lo que hace es saltarse frames e ir mas a golpes, pero al menos conseguimos una velocidad jugable (si bajamos la velocidad, ira mas suave, pero mucho mas lento).

El sonido del emulador era inexistente hasta la ultima versión a la que añadieron el soporte de audio, pero la verdad es que no merece la pena activarlo, ya que la velocidad desciende mucho, y el sonido llega a ser horrible (en un 7650 el sonido es ruido puro).

En las imágenes de arriba podemos ver la pantalla de selección de roms, el menú, y el Super Mario Bros funcionando a pantalla completa. (Como veis el indicador de vidas no aparece porque no cabe en la pantalla xDD). También sea dicho que da algunos problemas gráficos en la emulación de algunos mappers, como en el Super Mario Bros 3, pero aun así es jugable completamente (aunque cuando volemos, no veremos el marcador XD).

A continuación os pongo imágenes de varios juegos funcionando en modo escalado o en pantalla completa, para que podáis observar la diferencia:

Cabe destacar que este emulador no es gratuito, es de pago, la versión gratuita no incluye soporte para sonido y algunas otras opciones, además de que a los 5 minutos de jugar se reinicia el emulador, pero si pagas tendrás el sonido (aunque es penoso, jejej) y tiempo ilimitado para jugar. El emulador cuesta 23 euros, lo cual me parece un robo, puesto que el emulador no es ni mucho menos perfecto... (pero bueno, siempre lo puedes conseguir de tapadillo XD).

El emulador no tiene soporte para grabar partidas, aunque esperemos que esta opción sea incluida en futuras versiones. A los fans locos de la NES como Diskover y yo, a quien les gustaría jugar en cualquier parte a sus juegos de NES, les recomendaría que se compraran una GP 32, ya que solo por su emulador de NES (gratuito además) merece ampliamente la pena.

Pero para los que ya tengan una N - Gage o un teléfono móvil s60, o estén pensando en hacerse con uno, les recomiendo también que prueben el emulador, ya que yo NO llevo siempre la GP 32 encima, pero si que llevo el móvil, y anda que no flipa la gente cuando me ven jugando al Super Mario Bros 3 jajaja :D. Si tenéis alguna duda podéis escribirme a DJ_Syto@hotmail.com (mandadme emails pero no me agreguéis al Messenger por favor).

Imagen de Diskover

Entrevista a Emilio, programador del emulador EmilNES (17- 1- 04)

Entrevista a Emilio

El articulo siguiente recoge la entrevista que le hice a Emilio, un joven programador de 20 años que se ha metido a hacer un emulador de NES. La cita se hizo mediante el MSN Messenger el día 17 de enero de 2004 y duro cerca de 40 minutos. a continuación aquí dejo el bis a bis:

Diskover dice:

¿Bueno, como fue que te dio por empezar a programar un emulador sobre la NES? (Cuenta toda la historia)

Emilio dice:

Pues mira había hecho un par de intentonas de un emulador, sin proponerme mucho el que. Primero emule una CPU que yo mismo me invente, bueno la verdad no hacia gran cosa solo ejecutaba media docena de instrucciones sencillas y tal. Luego lo adapté para un procesador que usábamos en las practicas de mi facultad (un motorola 88110) que tampoco lo acabe nunca XD, y paso cosa de un año o así sin que hiciese nada de nada hasta que un día me propuse que ya sabia lo suficiente como para intentarlo y lo intente con... la Mega Drive (Genesis) XDDDD, pero al cabo de unos días ví que no me gustaba como iba eso y que no me aclaraba así que me decidí a ver la NES por 2 razones: porque era mas antigua (y pensé que mas fácil de emular aunque luego no te creas, eh) y sobre todo porque estaba muchísimo mas documentada, y nada pues me puse a leer y a leer paginas y paginas sin entender mucho al principio y en cosa de un mes o así me puse a escribir el emulador a partir del código que tenia del 88110 y bueno, pues nada, añadir que la emulación siempre me ha gustado bastante desde que la descubrí hace cosa de 4 o 5 años, no recuerdo bien. A parte de por el lado técnico, porque trae muy buenos recuerdos XD.

 

Diskover dice:

¿Cuando empezaste a programar el emulador?

 

Emilio dice:

A mediados de Noviembre empecé a codificar. Digamos que desde principios de Noviembre.

 

Diskover dice:

¿Que es el 88110?

 

Emilio dice:

Es una CPU de Motorola. La de la Mega Drive es el Motorola 68000. Pues este es un sucesor suyo que la verdad no se si se ha usado en alguna consola.

 

Diskover dice:

Creo que no

 

Emilio dice:

Si, yo también creo que no.

 

Diskover dice:

La NES utiliza como CPU el 6502, ¿que tiene que ver el 88110 en todo esto?

 

Emilio dice:

Que podía reutilizar la estructura del código que tenia ya.

 

Diskover dice:

¿Se entienden entre ellos?

 

Emilio dice:

No, pero son 2 CPUs con su memoria, sus registros y tal. El caso es que tenia un código del que partir

 

Diskover dice:

Entonces supongo que son muy parecidos, ¿no?

 

Emilio dice:

No, no era un código muy esquemático, tan esquemático que lo podía adaptar a cualquier CPU. Eran tan solo cosa de 300 líneas de código o así, pero ya no me tenia que pensar muchas cosas y eso me animo.

 

Diskover dice:

Antes has dicho que estudias en la Universidad, ¿Que carrera haces y de donde eres?

 

Emilio dice:

Ingeniería Informática en la UPM en Madrid (de Madrid)

 

Diskover dice:

¿Sabes que eres de los pocos españoles que están programando o han programado un emulador?

 

Emilio dice:

Si esa es otra de las cosas que me animo. Aquí la gente no se anima mucho a esas cosas, solo el 5% de mis visitas (a su pagina) son españolas aprovecho para decir.

 

Diskover dice:

Volviendo al tema central, ¿Como empiezas a programar el emulador de NES, como te organizas, que pasos has de seguir?

 

Emilio dice:

Pues bueno, primero fueron los 2 años de carrera y un pico del 3º pero eso no se hace apropósito XD. Primero lo que te digo, pensé un poco como hacer un emulador en líneas generales, basándome en una practica que teníamos que venia a ser hacer un pequeño emulador pero de una forma bastante extraña, y entonces pensé que podía hacerlo. empecé a buscar en Internet como programar un emulador y la verdad que no encontré demasiado, no hay muchos libros sobre el tema XD, o al menos que yo sepa. Luego me baje códigos de emuladores ya hechos y aunque saque poco en claro me guiaron un poco. Luego hice el apaño este que te digo para el 88110 y cuando ví que "funcionaba" pensé que ya estaba listo para emular algo mas tangible así que llegamos a donde antes. Me imprimí cosa de 200 folios de documentación de la NES y me los fui leyendo poco a poco

 

Diskover dice:

Supongo que debiste visitar muchísimas paginas en ingles sobre la NES

 

Emilio dice:

Unas cuantas pero si me dejas mencionar una...

 

Diskover dice:

Adelante

 

Emilio dice:

Sobre documentación técnica: Nesdev

 

Diskover dice:

Oh, si, la conozco

 

Emilio dice:

Ahí tienes prácticamente toda la información de hardware de la NES.

 

Diskover dice:

Conozco el sitio, además hacen demos para la NES

 

Emilio dice:

Creo que apenas 2 documentos de los que tengo no son de ahí, además la comunidad aun sigue viva y eso ayuda, claro.

 

Diskover dice:

Bueno, actualmente ¿que partes has hecho del emulador?

 

Emilio dice:

Pues esta hecha la CPU entera, (aunque tiene que tener algún bug aun) y la PPU esta prácticamente hecha quitando el tema del scroll y algún detalle mas (que debo reseñar que son unos temas huesos) y el chip de sonido esta sin estrenar aun porque mis conocimientos al respeto son mas bien escasos pero todo será ponerse.

 

Diskover dice:

Por ahora ¿que es lo que te ha parecido mas complicado?

 

Emilio dice:

Mmm... la depuración de la CPU es complicada porque me tuve que hacer un depurador solo para eso y además hay contradicciones en la documentación que tengo y también es complicado optimizar el código y que siga siendo legible

 

Diskover dice:

¿Que has conseguido emular por ahora?

 

Emilio dice:

Pues unas cuantas demos de Nesdev, pantallas de títulos de bastantes juegos y actualmente el único juego que es medianamente jugable: Donkey Kong.

 

Diskover dice:

Es un gran avance. Sobre los mappers ¿Por ahora solo emula el 0, no?

 

Emilio dice:

Si, emula el 0 que viene a ser no Mapper, aunque según he leído el mapper 2 y 3 son fáciles de emular.

 

Diskover dice:

Explica que es un mapper para que la gente se aclare

 

Emilio dice:

Pues un mapper y aunque la verdad no es un tema del que este muy documentado actualmente viene a ser un componente hardware del cartucho que usa la NES cuando las ROMs son mas grandes que la RAM de la NES. Esta segmenta la ROM y la carga por partes en la RAM. Algunos mappers también añaden alguna función extra para hacer alguna gracia grafica extra y tal.

 

Diskover dice:

¿Cuanta memoria tiene la NES para cargar un juego sin mapper?

 

Emilio dice:

Pues en teoría FFFF bytes que en decimal ahora mismo creo q son cosa de 65KB pero luego es mucho menos. En la practica son 32KB de RAM de Datos PRG y 16KB de CHR (PROgram y CHaRacter).

 

Diskover dice:

Entonces, los mapper "amplían" esta memoria, metiendo datos por partes para que los juegos sean mas grandes, a parte de añadir alguna función grafica, como habías dicho, ¿no?

 

Emilio dice:

Básicamente, no la amplían pero no hace falta tener ocupada tanta memoria así que la hacen cachitos para que la NES se los pueda tragar. Pero si, claro, permite juegos mas grandes.

 

Diskover dice:

Sobre lo del sonido, la NES esta compuesta de 5 canales diferentes, uno de ellos digital de 8 bits, ¿lo ves muy complicado el emularlo?

 

Emilio dice:

Veo mas complicada entenderlo que emularlo. Uso una librería llamada SDL que tiene funciones de sonido. Imagino que no será muy difícil de hacer, pero es que actualmente no se muy bien ni que define un pulso "musical": creo que la frecuencia y la intensidad pero vamos no se mas de eso. Me tocara leerme unas cuantas paginas.

 

Diskover dice:

Cambiando de tema, si acabas el emulador ¿Probaras a hacer alguna demo o juego para la NES? ¿Es difícil?

 

Emilio dice:

No creo, programar una NES es bastante coñazo la verdad, solo programo para ella lo mínimo para comprobar mi emulador. No es difícil hacer cosas tontas del tipo poner hola en la pantalla y mover una cuadrito pero hacer algo como un Mario eso ya es otro cantar.

 

Diskover dice:

Explica como se programa en la NES, que se utiliza.

 

Emilio dice:

Pues ensamblador del 6502 y un editor de teselas (8x8pixeles). Yo las teselas ni las creo las "mango" de otras demos o juegos porque para probar el emulador no me hace falta que quede bonito.

 

Diskover dice:

¿Que es un tesela?

 

Emilio dice:

Es un cuadrito de 8x8 pixels. La VRAM la NES esta llena de eso.

 

Diskover dice:

Creo que en otra ocasión me habías comentado que programar en C para la NES no resultaba bueno. ¿Puedes explicarme esto y el por que?

 

Emilio dice:

Pues hombre, es tirar piedras contra mi propio tejado pero hace un emulador lento, aunque claro para la NES y con los PCs q hay hoy en día, mi emulador puede correr bien en un 350MHz o 400MHz pero claro para una NES eso es un poco pasote.

 

Diskover dice:

¿Y en BASIC, podría ser que se pudiese programar un juego para la NES?

 

Emilio dice:

Si encuentras un compilador si, pero el juego seria lento lento, no se si hay compiladores de BASIC para NES.

 

Diskover dice:

Vamos, que no hay mas cojones que hacerlo a pelo con el código maquina

 

Emilio dice:

Pero vamos no conozco a nadie que halla hecho una demo en BASIC, mas bien.

 

Diskover dice:

Los programadores de juegos de NES de hace años debían de ser dioses o algo por el estilo

 

Emilio dice:

Pues si porque hacer el Mario en ensamblador resulta difícil de imaginar XD. Aun así todavía algunos juegos de hoy en día se optimizan haciendo partes en ensamblador (o eso nos dijeron los de Pyro Studios).

 

Diskover dice:

Ja ja ja ja

 

Diskover dice:

Oye, ¿Pondrás un entorno grafico a tu emulador?

 

Emilio dice:

Si consigo integrarlo sí, pero eso es algo de momento a medio plazo. Por ahora tocara arrastrar la ROM encima del EXE.

 

Diskover dice:

¿Mas o menos, para cuando podrás tener una primera versión buena del emulador (Me refiero a que ya emule varios juegos y tenga sonido)?

 

Emilio dice:

Pues no sabría decirte porque creía que en llegar a donde estoy ahora tardaría 6 meses y he tardado 3, así que te diré otros 6, pero puede que sean menos (o mas).

 

Diskover dice:

Bueno, te doy muchas gracias por prestarme un rato tu tiempo. Espero que salga adelante tu emulador. Suerte Emilio y ya sabes que aquí estamos para ayudar.

 

Emilio dice:

De acuerdo, gracias a ti. Bye.

Imagen de Jote

La NES en tu GBA

GBA 1

1. INTRODUCCIÓN

En este artículo me gustaría enseñaros cómo podéis jugar con vuestra GameBoy Advance (de ahora en adelante GBA) o Nintendo Dual Screen (de ahora en adelante NDS) a la NES. Lo cierto es que poder jugar a la NES en un vehículo de transporte o en la playa es todo un sueño hecho realidad. Lo he elaborado porque en el artículo titulado “La NES en el Bolsillo” (realizado por DJ SYTO) no se habla de la emulación de la NES en la GBA. A día de hoy está bastante conseguida la emulación de los juegos, si bien es cierto que no es perfecta. Pese a ello, podremos disfrutar con la mayor parte de los juegos sin muchos errores.

Sólo voy a hablar del emulador PocketNES, por ser uno de los mejores. Dicho emulador está basado en otro, también de NES, para MS-Dos: se trata de LoopyNES. PocketNES nos ofrece prácticamente las mismas opciones y posibilidades que un emulador de PC, tales como grabar y cargar partidas en tiempo real, usar turbo en los botones, cambiar los modos de video o modificar la frecuencia y velocidad de los juegos. Además, es gratuito y funciona muy bien, al contrario que pasa con los emuladores de NES para los teléfonos móviles, que son de pago y funcionan muy mal.

Antes de empezar quiero aclarar que es un emulador para GBA y no para NDS, pero como la NDS es compatible con los juegos/aplicaciones de GBA pues entonces también podremos jugar con ella.

 

2. ELEMENTOS NECESARIOS

Aquí voy a hacer un listado con explicaciones de lo que vamos a necesitar:

- Una GBA o NDS. Si estás leyendo este artículo es muy posible que ya tengas una de las dos o estés pensando en hacerte con una.

- Un cartucho Flash. Un cartucho Flash es un cartucho de aspecto y proporciones similares o idénticas (según el modelo) a las de un cartucho de GBA convencional. En ellos es posible grabar/“escribir” datos, de tal forma que se pueden grabar aplicaciones, juegos freeware, copias de seguridad de juegos comerciales en propiedad... y posteriormente ejecutarlos/jugarlos en una GBA/NDS real. Será en un cartucho de estos donde podremos grabar nuestra compilación del PocketNES. Hay muchos tipos de cartuchos Flash, unos mejores que otros, y con diversas capacidades. No obstante han avanzado mucho y los actuales modelos son muy buenos.

- Un Flash Linker: Flash Linker es el dispositivo que nos permite grabar/”escribir” datos en el cartucho Flash. Al igual que los cartuchos Flash, los Flash linkers han ido evolucionando con los años, y ha habido muchos modelos: desde unos que consistían de un grabador de cartuchos a otros que usaban la propia GBA como grabador. Estos sistemas daban bastantes fallos, pero hoy día por suerte es difícil hacerte con ellos. Ahora ya la mayoría van por el puerto USB y graban directamente en el cartucho, el cual tiene una entrada para unirlo con el PC y transferir datos. Para que os hagáis una idea aquí podéis ver el cartucho Flash y el Flash Linker que yo tengo:

La verdad es que no es precisamente el mejor, pero yo lo compré hace algunos años y para entonces era de los mejores. Sin embargo, hoy día está sumiso en la más absoluta obsolescencia.

- Software para Flashear: Se trata del programa que nos va a permitir grabar datos en el cartucho Flash a través del Flash Linker. Cada tipo y modelo de cartucho suele tener su propio software con sus determinadas opciones. Por lo general basta con indicar donde están las aplicaciones/juegos de extensión *.gba y pulsar algún botón que ponga “Write Flash” o algo similar. Para saber cómo usarlo lo mejor es que consultes la documentación del autor del programa o del fabricante del cartucho Flash.

- El emulador PocketNES: Se trata del emulador que nos va a permitir emular la NES en nuestra portátil. Podemos descargar la última versión en su web oficial: http://www.pocketnes.org/downloads.html

- Algunas roms de NES: Lógicamente si vamos a emular la NES necesitamos algunas roms. El creador del emulador recomienda usar roms de USA o de Japón antes que las Europeas. Esto es debido a que si usamos roms Europeas es posible que los juegos vayan muy rápido. Pese a que hay una opción para solventar este problema, no siempre lo soluciona. De todos modos, esto no debería suponer un problema, pues la mayor parte de los juegos son iguales en USA que en Europa.

- El PocketNES ROM Builder 1d2B: Este programa nos permite hacer una compilación del emulador y las roms de NES. Con él obtendremos un sólo archivo de extensión *.gba. Existen varios programas para crear compilaciones, e incluso existe una versión superior de este del que os hablo, pero yo prefiero usar esta versión ya que para mí ofrece muchas cosas y ventajas que otros no tienen; entre ellas está la posiblidad de “hackear” las roms para obtener trucos (como si usáramos un GameGenie). Con todo, la emulación no se verá afectada por el compilador que usemos sino por la versión del emulador. Podéis descargarlo de aquí: PocketNES_ROM_Builder-v1d2-BETA.rar

- Un emulador de GBA: Una vez que hayamos hecho nuestra compilación y estemos listos para grabarla en el cartucho Flash es bastante recomendable testearla antes en un emulador para no llevarnos sorpresas. He encontrado que las compilaciones finales no funcionan con todos los emuladores, y dentro de los que funcionan hay algunos que no lo hacen del todo bien. Yo recomiendo testear la compilación con el no$gba (podéis descargar una versión gratuita aquí: http://work.typo3.work.de/nocash/gba.htm). Ese emulador ejecuta muy bien la compilación del PocketNES. También es posible testearla con el Visual Boy Advance (se puede descargar de http://vba.ngemu.com/), aunque he encontrado que con algunas versiones no funciona, y con las que sí lo hace la emulación es lentísima. En realidad esto no debe importarnos, ya que como simplemente queremos ver si funciona, con que arranque la rom que crearemos  nos basta.

Estos son los elementos fundamentales que vamos a necesitar.

 

3. CONSTRUYENDO LA COMPILACIÓN

Lo primero de todo tenemos que tener descomprimido en una carpeta el PocketNES y el PocketNES ROM Builder 1d2B, amén de tener en la misma o en otra las roms de NES que vayamos a usar.

Dentro del archivo comprimido del PocketNES encontraremos varios archivos, pero el que nos interesa es el que se llama “pocketnes.gba”. Ése es el emulador.

A continuación procedemos a abrir el PocketNES ROM Builder 1d2B haciendo doble clic sobre “PocketNES_ROM_Builder.exe”. Si nos sale algún error al abrir el programa es porque necesitamos algunas “librerías”. Según leemos en el archivo “PocketNES_ROM_Builder.txt”, el autor dice que las librerías que necesitamos tener en nuestro PC son msvbvm60.dll, Comdlg32.ocx y tabctl32.ocx. Si tenéis cualquier problema leed ese documento en el que se explica de dónde bajar esas librerías y cómo instalarlas. Una vez abierto nos pregunta por un archivo, pero le daremos al botón de “Cancelar”. Nos encontramos con la ventana principal, la cual vamos a explicar:

1) Aquí simplemente es para guiar al programa hasta el directorio donde tenemos las roms de NES. Si sale en blanco entonces pulsaremos el botón de “Dir” para que salga el “árbol” de directorios de nuestro disco duro. Una vez lleguemos a la carpeta donde están, la tenemos que seleccionar en azul y pulsar el botoncito de la izquierda que pone “Files”. En la foto no sale ese botón ya que cuando lo pulsamos entramos a la carpeta de las roms y el botón cambia de llamarse “Files” a llamarse “Dir”. Si pulsamos “Dir” entonces volvemos al “árbol” de carpetas de nuestro disco duro. Cuando queramos añadir una rom, la señalamos con un clic y luego le damos al botoncito que pone “Add”, o simplemente hacemos doble clic sobre la rom en cuestión. Las roms que añadamos se irán a la pantalla de la derecha, donde pone 2. Es posible que cuando añadamos alguna rom nos salga un aviso tal que así:

En estos casos le decimos que “Sí”. Esto se debe a que el programa tiene una base de datos de los juegos de NES, y si ponemos uno muy nuevo, como algún hack de esos de China, es posible que no los reconozca.

2) Aquí salen las roms que hemos añadido en 1. Los botones “Up” y “Down” son para mover a una rom y cambiarla de sitio (“Up” la mueve hacia arriba y “Down” hacia abajo). El botón “Del” es para borrar la rom que tengamos seleccionada. Arriba os indica el nº de roms que lleváis añadidas. Yo recomiendo poner como máximo en un pack 26 roms. Más adelante explicaré el motivo de esto.

3) Aquí encontramos 3 pestañas:

- Roms Options Editor:

Aquí podemos ver información relacionada con la rom que hayamos seleccionado en azul en 2. También podemos hackear la rom en tanto en cuanto a la velocidad se refiere. Por lo general nunca tocaremos esas opciones, ya que si se toca sin saber luego obtendremos resultados no deseados. Sólo debemos tocar estas casillas si vemos que el juego va lento, pero es mejor en tal caso buscar información en foros relacionados con PocketNES en los que la gente dice qué casillas marcar para cada juego que tenga problemas. También hay una casilla llamada “Use PAL timing”. Esta casilla la tenemos que activar cuando añadamos una rom que sea Europea. De esto ya hablamos antes; esta casilla hará que los juegos Europeos funcionen sin problemas de velocidad, aunque no siempre suele funcionar.

- Hacks:

Esta es la opción más interesante de todas, y también hace que este compilador sea mi favorito. Con esta pestaña podemos hackear la rom en tanto en cuanto a trucos GameGenie se refiere, siempre y cuando esté soportada la rom. Si la rom tiene trucos, podemos activarlos en sus casillas correspondientes. Lo único malo es que siempre estarán activados y no nos será posible desactivarlos u activar otros. Eso ya depende de las manías que tenga cada uno. Si os fijáis algunos trucos son del tipo “Empieza con XX vidas”. “XX” es un número que podéis elegir vosotros. Cuando vallamos a construir la compilación nos saldrá una ventanita en la que podemos elegir el valor deseado:

Yo recomiendo elegir un valor en donde pone “Select” en vez de escribir uno nosotros. Esto se debe a que si escribimos un valor que no es compatible luego tendremos problemas, pero si lo elegimos de la lista no hay problemas porque en ella salen los valores compatibles.

- Information:

Aquí vemos información relativa a la rom sobre la compatibilidad. Nos dice si presenta fallos gráficos y si es jugable o no. De todas formas como este programa es algo viejo esas informaciones están obsoletas y las podemos ignorar tranquilamente.

4) Aquí vemos un recuento de cómo llevamos la compilación. Nos dice el nº de roms añadidas y el espacio que ocupan, el cual es bastante complicado de interpretar, por lo que no le haremos caso.

5) Aquí hay tres aspectos importantes:

- Splash Screen: La “Splash Screen” es una foto que sale cuando ejecutamos la compilación que hemos creado. Simplemente es una imagen de inicio que está durante unos segundos y luego desaparece. Por ello se puede prescindir de ella. En el archivo comprimido del PocketNES se incluyen un par de fotos ya hechas por el autor en las que sale el logo del emulador y alguna cosilla más.

Si queremos podemos crear nuestras propias fotos. Para ello simplemente marcamos la casilla que hay a la izquieda de “Splash Screen” y se nos abre una ventana en la que podemos abrir cualquier foto (*.jpg, *.bmp ...). Luego la aplicación la analiza y te da la opción de reducir la foto a las dimensiones de la pantalla de la GBA. Por último te pide un lugar para guardar la nueva foto en formato *.raw. Será esta imagen *.raw la que tendremos que indicarle para que la incluya en la compilación.

Yo he hecho una que me gusta bastante. Podéis descargarla lista en formato *.raw de aquí: Fondo.raw

Aquí podéis ver cómo es por si os gusta y os la queréis poner:

- PocketNES Rom File: Aquí le tenemos que decir la ruta en donde tenemos el emulador PocketNES (es el archivo llamado “pocketnes.gba”).

- Renaming Tools:

En este botón encontramos varias opciones para renombrar las roms que hemos añadido a nuestra compilación. A esto no le doy mucha importancia y por eso no voy a perder tiempo explicándolas. Esto sólo es bueno si tenemos las roms con nombres raros o si tienen guiones bajos en lugar de espacios y así con otras cositas. Con todo ello el nombre de las roms no influye en la emulación, pero sí que es bueno que tengan sus nombres para que las puedas identificar fácilmente.

6) Hay tres botones:

- Build:

Hay a su vez 2 opciones:

+ Build PocketNES ROM (v8): Este botón te crea una rom de extensión *.gba que es el resultado de la compilación (emulador + roms). Este es el resultado final. Cuando ya hayamos añadido todas las roms que queramos y esté todo listo pulsaremos aquí para guardar la compilación.

+ Build PogoNES Directory: Esto crea algo similar a lo anterior pero es un directorio especial para usar con un programita llamado PogoShell. El PogoShell es como una especie de sistema operativo para la GBA, en el que podemos navegar por carpetas y ver el contenido de las mismas (tendrán los archivos que hayamos grabado en nuestro cartucho Flash). Tampoco voy a dar más detalles de esto. Quien conoce el PogoShell sabe usarlo, y quien no lo conoce pues no pasa nada porque con la primera opción es mucho más cómodo y menos complicado.

 

-  Options:

En esta ventana de opciones no pasa nada si no la tocamos ni le hacemos caso. Son pequeñas cositas que no afectan a la emulación. Sólo son para facilitar algunos aspectos y hacer las cosas más cómodas. Por ejemplo, las dos primeras opciones sirven para ejecutar el emulador y el programa de Flashear al compilar la rom; así no tienes que estar minimizando las ventanas y abriendo los otros programas. Para ello debes localizar a dichos programas previamente marcando la casilla que tienen a su izquierda y luego pulsando el botón con 3 puntitos para indicarle dónde está el archivo ejecutable del programa.

Una buena idea es marcar las 2 casillas que yo he puesto en la foto. La primera nos avisa si añadimos una rom por segunda vez (si la repetimos). La segunda lo que hace es marcar la casilla de “Use PAL timing” cada vez que añadamos una rom Europea de forma automática. Esto viene bien para que no tengamos que estar pendientes de activarla nosotros mismos.

También hay una cosa en la derecha que añade un * a las roms que son menores de 192 Kb. Esto más adelante veremos para qué sirve...

- Exit: para salir del programa.

 

4. TESTEO Y GRABACIÓN DE LA COMPILACIÓN

Ahora ya sólo falta comprobar si funciona la rom *.gba creada antes en un emulador, y si es que sí pues entonces procederemos a flashearla al cartucho Flash. Si no funciona es que hemos hecho algo mal. A mí me ha funcionado sin problema alguno:

Tras esto procedemos a grabar la compilación con el software de flasheo proporcionado por el fabricante de nuestro cartucho Flash y luego viene la hora de la verdad; mete el cartucho en tu GBA/NDS y empieza a alucinar:

 

5. MANEJO DEL EMULADOR

En esta sección vamos a explicar los comandos para movernos por el emulador. Nada más arrancar el emulador nos sale nuestra flamante foto de presentación y luego un menú con el listado de las roms que hayamos grabado. Cuando seleccionamos un juego, éste empieza a ejecutarse en el fondo. Esto puede ser algo molesto ya que nos impide leer con claridad los títulos disponibles. Para empezar a jugar seleccionamos el rom deseado y pulsamos “Start”.

Los controles en el juego son los mismos que en una NES, es decir, la cruceta de la GBA equivale a la cruceta de la NES, los botones “A” y “B” de la GBA equivalen a los “A” y “B” de la NES y lo mismo con el “Select” y “Start”.

Las opciones interesantes aparecen al pulsar simultáneamente R+L durante un juego:           

- Autofire (con A o B): Si está en “ON” indica que hemos activado el turbo (el turbo es que cuando tienes pulsado el botón, éste actúa como si lo estuviéramos pulsando repetidas veces muy rápido sin parar). Si está en “OFF” es que está desactivado, y si está en "with R" entonces es que si tenemos pulsado “R” y luego presionamos el botón, éste actuará como turbo, y si no tenemos presionado “R” pues entonces es normal (sin turbo). Esta última opción es la más atractiva y útil.

- Controller: Esto es para seleccionar el control del jugador 1 ó 2 y cuando usas el cable link. Si vais a jugar a un juego de dobles en los que se van turnando los jugadores entonces es buena opción elegir la opción de 1P+2P para no tener que estar cambiando cada vez de “1P” a “2P”. Si juegas con otra consola a dobles entonces uno se tendrá que poner el control de “1P” y el otro el de “2P”.

- Display:

Aquí podemos elegir entre varios modos de video. El más óptimo es el “SCALED (w/sprites)”, que muestra la pantalla completa ajustada a la de la GBA. Esto hace que las cosas se vean un poco achatadas, con la consecuencia de que los textos serán difícilmente interpretables, pero a cambio vemos todo en la pantalla.

El “UNSCALED” muestra la imagen en tamaño enorme, pero por desgracia no cabe en la pantalla de la GBA y por ello perderemos parte de la pantalla. Una buena idea es seleccionar el “UNSCALED (Auto)”; en este modo la pantalla se ve también en grande, pero va siguiendo lentamente al personaje, lo que hace que más o menos no pierdas de vista por donde pisas.

La ventaja del modo “UNSCALED” es que las letras y las cosas salen con la resolución original y se leen perfectamente.

Aquí unos ejemplos:

SCALED (w/sprites):

UNSCALED:

UNSCALED (Auto):

 

En resumen: si en el juego los textos no importan elegid el SCALED (w/sprites), y si son importantes pues el UNSCALED (Auto).

En cuanto a “Scaling”, la segunda opción, la tendremos que activar/desactivar si vemos que el juego “vibra” arriba y abajo. Yo noto mejores resultados con “No Flicker”.

La tercera opción, “Gamma”, es el brillo/luminosidad. Si vemos muy oscuros los juegos podemos aumentarla, pero por defecto viene en un buen nivel.

- Other Settings:

Aquí encontramos varias opciones con menor importancia:

+ Vsync: Lo dejamos en ON.

+ FPS-Meter: Si lo ponemos en ON entonces durante el juego veremos los “frames” por segundo a los que va la emulación. Si no sabes lo que significa esto entonces no te preocupes ni te compliques la vida por saber qué es.

+ Autosleep: Si la activamos, al pasar el tiempo indicado la consola entra en modo “ahorro de energía” (siempre y cuando no se toque ningún botón). Para “despertarla” tenemos que presiona a la vez “Start”+”Select”. Por defecto vienen 5 minutos. Yo prefiero subirlo unos minutos más. Para que lo entendáis, es como el salvapantallas del ordenador.

+ EWRAM Speed: Lo dejamos como está.

+ Swap A-B: Si está activada (“ON”) entonces el botón A es el B y viceversa. Opción bastante rara así que mejor la dejamos en OFF.

+ Autoload state: Si está activada, cuando abramos un juego se cargará la última partida (savestate) que hayamos grabado automáticamente. Por defecto está desactivada. Más adelante veremos qué es eso del “savestate”.

+ Region: Nos indica la región (el país) de la rom que estemos ejecutando.

- Link Transfer: Esta opción envía el emulador y la rom a la que estés jugando a otra GBA que esté conectada por el cable Link para jugar varios jugadores. La otra GBA debe estar en modo “multiboot” (la consola encendida sin ningún cartucho). Esto sólo es posible con las roms que ocupan menos de 192 kb. Si os acordáis, esto ya lo vimos antes en el compilador, el cual nos permitía ponerle un * al nombre de las roms de 192Kb o menos para identificarlas con mayor facilidad. Esto es debido a que la GBA cuenta con una especie de memoria interna muy pequeñita en la que se pueden grabar cosas sin necesidad de tener un cartucho Flash. Si las roms ocupan más de 192 kb entonces necesitaremos en la otra GBA otro cartucho Flash con otra compilación del PocketNES (que sea la misma versión) y con el mismo rom. Para más información sobre cómo actuar paso a paso para conectar dos o más consolas visitad este enlace: http://www.pocketnes.org/howto.html#linking

- Save State: Nos lleva al menú de guardar partidas en tiempo real. Esto es una maravilla, ya que, al igual que los emuladores de ordenador, nos permite grabar una partida en cualquier momento y continuarla cuando queramos. Estas partidas se guardan en la memoria del cartucho, por lo que aunque apaguemos la consola no se borrarán. Para no tener que estar yendo al menú de grabar, es bueno saber que pulsando “R”+”Select” durante una partida se guarda automáticamente. Esto es muy cómodo y útil. Sin embargo, como ya os comenté antes, sólo se pueden tener alrededor de 26 partidas grabadas a la vez por cada compilación, por lo que es mejor crear varias compilaciones del PocketNES con distintas roms si queremos grabar partidas de todos los juegos.

- Load State: Un menú igual que el de antes pero esta vez para cargar las partidas que hayamos guardado previamente. Podemos cargar la partida del juego en cuestión rápidamente pulsando “R”+”Start”. Aunque tengamos varias partidas, cuando carguemos usando el atajo “R”+”Start”, se cargará la partida correspondiente al juego al que estemos jugando, es decir, el emulador identifica y reconoce el juego y su partida o savestate.

- Manage SRAM: Nos permite ver las partidas guardadas de los juegos que realmente tienen opción de guardar (por ejemplo el Zelda). También se pueden borrar dichas partidas pulsando “Select” sobre la partida en cuestión.

- Sleep: Hace que la consola entre en modo “ahorro de energía”. Esto viene bien cuando no vamos a jugar durante un rato, ya que hará que se gaste muy poca batería. Si recordáis antes ya vimos una opción para hacer que entre en este modo pasado cierto tiempo (siempre y cuando que no se pulse botón alguno). Para “despertarla” tenemos que presiona a la vez “Start”+”Select”.

- Restart: Nos lleva al menú de selección de juego.

- Exit: Esta opción nos permite salir del emulador y volver al menú de selección del cartucho Flash. Esto es útil si por ejemplo hemos grabado en un cartucho varios juegos de GBA y la compilación del PocketNES. Así no hace falta apagar la consola y volver a encenderla. En el caso de que estemos usando el PogoShell pues entonces nos llevará de nuevo a él. No obstante no funciona con todos los tipos de cartuchos.

Por último comentaros que si presionáis “L”+”Start” durante un juego podemos modificar su velocidad y hacer que valla más lento.

 

6. OTRAS UTILIDADES DEL POCKETNES ROM BUILDER 1D2B

Si creíais que ya habíamos visto a fondo el maravilloso PocketNES ROM Builder 1d2B entonces estáis equivocados. Todavía quedan algunas utilidades en el menú que tiene llamado “Tools”:

- Raw to BMP viewer/converter:

Esta utilidad nos permite ver fotos en formato *.raw. Son el tipo de fotos que emplea el PocketNES para la “Splash Screen” que ya vimos anteriormente. Simplemente hay que pulsar sobre “Open File” para que salga el explorador de Windows y podamos buscar la foto que queramos ver. También tenemos la opción de convertir la foto a formato *.bmp una vez ésta haya sido abierta. La ventaja del formato *.bmp es que se puede visualizar con cualquier programa de imagen, pero el formato *.raw sólo podemos verlo con esta utilidad y algún que otro programa avanzado de imagen. Recuerda que el PocketNES sólo admite fotos de extensión *.raw.

- ROM Splitter:

Esta utilidad nos permite sacar las roms de NES que tengamos dentro de una compilación del PocketNES. Para ello tenemos que abrir la compilación (de extensión *.gba) haciendo clic en el botón de los 3 puntitos. Luego presionamos “Make List” y entonces abajo saldrán todas las roms de la compilación. Ahora ya sólo hay que elegir las que queramos y pulsar sobre “Extract Selected”. Esto puede ser útil ya que si previamente hemos hackeado las roms con trucos, cuando las saquemos seguirán estando los trucos. Es una forma sencilla de hackear las roms. Por lo demás pues no es muy útil ya que si tenemos las roms en nuestro disco duro no hace falta estar sacándolas. Lo que hay que dejar claro es que aunque saquemos las roms, éstas siguen estando en la compilación. Además no es posible añadir más roms a la misma.

- Save State/SRAM Manager:

 

Esta utilidad nos permite gestionar las partidas grabadas con el PocketNES, bien las grabadas en tiempo real con el emulador o bien las de los juegos que tienen batería. Para modificarlas tenemos que tener el archivo *.sav de la compilación. Este archivo se crea en el cartucho Flash cuando grabamos las partidas. Los cartuchos, siempre que el juego/aplicación tenga opción de grabar, crean un archivo *.sav. Con el software de Flasheo deberías poder “coger” ese archivo para poder usarlo en el PC. La forma de hacerlo depende del cartucho y del software.

Suponiendo que tengas ya el *.sav pues nos centramos en la parte izquierda del programa (donde pone “Source”) y lo cargamos pulsando el botón de los 3 puntitos para buscarlo y luego le damos a “Load”. Abajo aparecerán todas las partidas grabadas que tengamos en ese archivo, y cuando marcamos una, más abajo nos aparece más información: nos dice lo que ocupa la partida, el tiempo jugado que llevamos, si es un Save State (cuando grabamos en tiempo real) o SRAM Save (cuando el juego tiene batería)...

Si queremos “sacar” (lo pongo entre comillas porque aunque digo sacar luego los originales siguen estando) las partidas basta con seleccionarlas y pulsar el botón “>>”. Veremos que pasa a la derecha del programa. También tenemos en esta parte un botón para borrar (“Del”) y otros de “Up” y “Down” para ordenar los saves que hayamos pasado. Todo esto sirve para sacar las partidas y poder incluirlas en otra compilación que hagamos y continuar por donde grabáramos la última vez.

Cuando ya hemos elegido las partidas pulsamos el botón de los 3 puntitos (estamos en la parte derecha, donde pone “Destination”) para decirle dónde queremos guardar el nuevo *.sav. Luego pulsamos “Save” y nos creará el *.sav donde le hayamos indicado. Con todo ello, si no sabes muy bien desenvolverte con los archivos *.sav es mejor que no toquetees por si acaso los estropeas. Se puede prescindir de esto perfectamente.

- PogoNES: En esto no me voy a detener porque sólo sirve si usas el PogoShell. Si no sabes lo que es no te preocupes, y si lo sabes entonces deberías saber usar estas cosillas. Dentro de este menú hay otras 2 opciones:

+ Extension Renamer: Sirve para renombrar las roms de NES y ponerles la extensión en mayúsculas o minúsculas. Esto es debido a un bug que tienen/tenían algunas versiones del PogoShell, ya que sólo reconocían archivos con la extensión en letras mayúsculas.

+ ROM Separator: Sirve para separar las roms que ocupan menos de 192 Kb de las que ocupan más en diferentes directorios. Esto está relacionado con el multiboot del que ya hablamos. De todas formas estas opciones ya digo que no interesan a la mayoría de los usuarios.

- Quick Run: Esto es para abrir con una sóla tecla (la que aparece entre paréntesis) bien el emulador de GBA (para testear la compilación) o bien el software de flasheo (para grabar la compilación). Esto ya vimos cómo activarlo antes, cuando explicamos las opciones del PocketNES ROM Builder 1d2B.

 

7. CONCLUSIONES FINALES. EL CIERRE

Bueno, pues aquí concluyo este extenso y detallado manual/artículo para conseguir emular la NES en tu GBA/NDS. Lo cierto es que la NES es una de las consolas mejor emuladas en la GBA, por lo puede servirte para desempolvar tu consola en caso de la hubieras dado de “baja”.

A la pregunta de si vale la pena comprar una GBA para emular la NES pues depende bastante: aparte del precio de la consola, debéis saber que el cartucho Flash viene costar más que la propia consola, por lo que estamos hablando de una elevada inversión. No obstante también depende de lo que te guste la NES; si te encanta pues yo creo que vale la pena, pese a que no sea 100% perfecta la emulación. Si la NES simplemente te entretiene o te llama la atención… pues a lo mejor no es tan buena idea...

Por último me gustaría despedirme con una curiosidad: cuando durante un juego accedemos al menú (pulsando simultáneamente “R”+”L”), abajo a la derecha es posible leer un texto: “PocketNES vX.XX on GBA” (las X corresponden a los números de la versión). Pone eso cuando jugamos con una GBA, pero si lo hacemos en una NDS entonces pone “PocketNES vX.XX on NDS.”

Bien, pues la cuestión es que cuando ejecutamos la compilación en los emuladores nos llevamos una sorpresa:

Si jugamos con el emulador no$gba vemos todo correcto:

Sin embargo, cuando jugamos con el Visual Boy Advance nos encontramos esto:

Pone “PocketNES vX.XX on Crap” (las X corresponden a los números de la versión). Esto es un claro insulto hacia en emulador Visual Boy y su programador (“crap” significa mierda).

En fin, con esta nota de “humor” me despido. Cualquier cuestión o comentario podéis escribirlo en el foro.

Etiquetas: 
Imagen de Diskover

Novedades en emuladores

Para el que le interese acabo de hacer un fantástico tutorial para hacer un CD con el emulador de NES para la PSX, I might by NES v.1.3, dado el buen resultado que da. Imaginad poder jugar a todos vuestros roms de NES en vuestro televisor con una PSX, increíble. Os lo recomiendo.

El emulador lo podréis encontrar en la sección Emuladores y el tutorial en esta misma sección un poco mas abajo. Es muy fácil.

Etiquetas: 
Suscribirse a RSS - emulador