jueves, 23 de febrero de 2012

Xnp2, emulador PC-98 nativo para linux (para jugar Touhou)

Como vieron en la entrada anterior, he estado jugando 東方(Touhou) en los últimos días.
Una de las particularidades de 東方 es que sus primeros 5 juegos no salieron para Windows, sinó para un computador que en los 80s y 90s fue muy popular en japón, el PC-9801.
Para este PC se hicieron cientos de juegos, muchas VisualNovels sobre todo. De hecho, en japón fue tal el paso de esta plataforma, que aun se sigue trabajando en emuladores para esta plataforma. Para Windows uno de los más populares es Anex86, pero su web y desarrollo quedaron estancados, por lo que buscando proyectos de emuladores para PC-98 más activos, di con uno muy interesante:

Neko Project II

ねこープロジェクト(Neko-Purojekuto), es un emulador para PC-98 muy especial, ya que a la fecha es el único que al parecer mantiene su desarrollo gracias a... si, que su Código Fuente está libreado bajo licencia BSD. Esto ha permitido que el proyecto se mantenga a flote, y no solo eso, sinó que también ha propiciado que se mantenga activo su desarrollo para Windows, MacOSX, y también otros sistemas Unix.

XNekoProject2 (xnp2)
La versión para otros sistemas Unix (como lo es Linux) se llama xnp2, ya que está hecha para trabajar sobre las plataformas en las que trabaja XWindows.
Web: http://www.asahi-net.or.jp/~aw9k-nnk/np2/

Compilando xnp2
Como uso Debian, daré por sentado que el Ubuntu será igual. Para otros sistemas (Arch, Fedora...), la cosa es similar.

Descargar el código fuente: El código fuente se descarga de la web del proyecto. Debe descargarse la ultima instantánea que haya (en este momento, la del 7 de febrero de 2012). Se descomprime el .tar.bz2, y vamos a la carpeta X11.

Dependencias de compilación: Las dependencias de compilación son GTK2, SDL, SDL_mixer, y también otras cosas:
$ sudo aptitude install build-essential nasm checkinstall libsdl1.2-dev libsdl-mixer1.2-dev libgtk2.0-dev libxxf86vm-dev

Configurar y compilar: dentro de la carpeta X11, debemos configurar la compilación para que tenga soporte para IA-32, sino, no correrá los juegos de Touhou. Luego construimos el emulador, pero no lo instalaremos aun.
$ ./configure --enable-ia32
$ make

Empaquetar con checkinstall: checkinstall es un programa que ayuda a empaquetar código compilado. Es muy útil ya que en nuestro caso, nos creará un .deb que podremos repartirle a nuestros amigos, y nos mantendrá más limpio el sistema, al poder actualizar más adelante si es necesario.

El checkinstall podemos iniciarlo con sudo checkinstall, que nos hará construir el paquete de forma interactiva [recomendado].

Pero si queremos que lo haga de forma desatendida, primero debemos crear un archivo llamado description-pak en la carpeta X11, y dentro de este archivo escribiremos la descripción del paquete. Luego, podemos ejecutar lo siguiente modificando los parámetros que están en negrilla por los pertinentes según sea el caso (versión del paquete, mantenedor, etc...).
$ sudo checkinstall -D -y --fstrans --maintainer=tu_correo@mail.net --pkgname=xnp2 --pkgversion=20120207 --pkglicense=BSD --pkgsource=xnp2 --reset-uids=yes --provides=xnp2 --requires=libgtk2.0-0,libsdl1.2debian,libsdl-mixer1.2,libxxf86vm1 --install=yes

Ya con esto, tendremos el paquete xnp2 activo, que podremos iniciar desde un terminal y jugar los primeros 東方 :D



Acabado de instalar hay que configurar algunas cosas, pero quizás hable luego de ello.
Saludos, y espero que sea de utilidad.

EDIT>: Dejo el .deb que hice para AMD64.

3 comentarios:

Unknown dijo...

Wow, muy buena informacion, yo siempre visito tu web se ve muy
cool,
Saludos

Izabel dijo...

Buenísima la info muchas gracias Eru-sama

Anónimo dijo...

Al_eXs says:

=O también usas Checkinstall, en serio que es bien útil, porque así es fácil desinstalar limpia y fácilmente todo lo que se compila, así como actualizarlo.

y se ve interesante eso de que sacaron juegos y novelas visuales en esa época, vamos que eran los 80's y 90's...