viernes, 13 de agosto de 2010

PS2PSXe: emulador de Psx para Ps2

ffgriever, después de varios años de haber aplazado por diversos
motivos su proyecto de crear un emulador de Psx que diera soporte a todos
los dispositivos de carga, finalmente a publicado una primera versión alpha
disponible solo para línea de comandos
, mientras continua el desarrollo de la
versión beta, la cual para entonces debería incluir una básica interfaz gráfica.

Actualmente esta es una versión sin acabar, un tanto compleja de usar. En esta entrada vamos a explicar su funcionamiento para que cualquier usuario pueda disfrutar de jugar a psx desde hdd, usb, red, etc...

Aquí pues descargar un pack con todas las cosas que se utilizan en este tuto.

Contenido:
iomanx.irx Driver recomendado para que cargue el emulador
ps2psxe preview.zip Emulador, primera versión pública
ps2psxe_r168a.zip Versión un poco más actualizada del emulador
PS2Client_for_uLE_rev8.rar Programa para compartir archivos por red PC-PS2
PS2LINK.ELF Programa que hay que cargar en la consola para usar Ps2Client
radshell.zip Línea de comandos para ps2, similar a msdos, lo usaremos para cargar desde usb
scph7502.bin Bios necesaria para el emulador
abrir.cmd Manera fácil de abrir cmd en windows


Empezando, cosas que debemos saber sobre el emulador:

* La bios recomendada para que funcionen los juegos es la PAL SCPH-7502
* Se recomienda usar el emulador en modo PAL (ya que NTSC no está muy testeado y necesita más velocidad en los juegos)
*
A veces puede haber fallos al pulsar los botones, o que las escenas de vídeo se
queden en negro, prueba suerte esperando o pulsa los botones start, equis y
círculo para saltártelas, (por lo general suele funcionar).

Lista de comandos:

-cdimage=PATH
Ruta de acceso a la imagen del cd. 2352 bytes/sector de imágenes soportados.
Los formatos soportados son CUE y CCD.
Soporta múltiples pistas de CCD/CUE, pero sólo si todas las pistas están en un
solo archivo (no en varios archivos).
Para varios archivos simplemente apunta a la primera pista (que contiene los datos).
La ruta puede ser relativa al ejecutable de ps2psxe o una ruta completa.

-exePath=PATH
Lanza el archivo ejecutable de PSX (para intros, demos y esas cosas).

-Bios=PATH
Ruta de la BIOS (por defecto bios/scph7502.bin).

-digitizepad
Cambia internamente los mandos al modo digital (visible para el código PSX).
Si a continuación activas manualmente el modo analógico (pulsando el pequeño
botón de analógico que hay en el centro del mando), entonces el joystick analógico
izquierdo actuará como la cruceta digital y el joystick analógico derecho actuará
como R1/L1 horizontalmente. Es una buena característica para los juegos que no
son compatibles con los joysticks analógicos, (como el FF7).

-spfix
Puntero de corrección. Pruébalo si algo va mal. Puede ser que consiga arreglar
algunos juegos.
Lo que hace es desactivar una de las optimizaciones, (de todos modos no hay
muchos juegos que la usen...).

-xoff=OFFSET y -yoff=OFFSET
Indican las posiciones de la pantalla en el televisor. Se puede utilizar para corregir
la posición de la imagen si tu televisor por ejemplo, deja franjas negras en el lado
derecho o izquierdo.

-sub
Activa el soporte de subcanal. Sólo es realmente necesario para los juegos
protegidos con libcrypt.
Es algo obsoleto ya que el emulador tiene un parche automático para libcrypt,
por lo que juegos sin parchear como el FF9 PAL funcionarán incluso sin datos
de subcanal.
El archivo subcanal tiene que tener el mismo nombre que el img/bin/ccd/cue, sólo
que con la extensión ".sub" (por lo que si la imagen es ff9pald1.cue, entonces el
subarchivo tiene que ser ff9pald1.sub). Ya no es necesario.

-excep
Desactiva algunas cosas excepcionales. Úsalo si aparecen problemas con los
juegos. Creo que esta opción ya no debería ser más necesaria, pero la dejé...
No he visto un juego que la necesite en un año más o menos.

-4ever
Desactiva la mayoría de los parches automáticos libcrypt (no todos).
En realidad está ahí sólo para testeo. No tendrás que usarlo a menos que
quieras testear el archivo de apoyo del subcanal.

-32bpp
Cambia al modo de 32bpp. Realmente RECOMIENDO usarlo hasta que el juego
tenga problemas de texturas.
No está activado por defecto sólo porque no es el formato nativo de PSX. Así que úsalo hasta que cause problemas.

-nofps
Desactiva la visualización de la resolución/modo/fps, (la basura amarilla en la
parte superior).

-nosprtf
Desactiva los filtros para los sprites, (para las imágenes 2d, aunque no todas las
imágenes 2d son sprites).
Es necesario para los fondos y escenarios 2d presentes en muchos juegos,
(una necesidad para todos los final fantasy).

-nopolyf
Desactiva los filtros para todos los polígonos que no son sprites.

Si especificas ambos, -nosprtf y -nopolyf, no se usarán filtros.

-nodith
Desactiva el dithering (interpolación/entramado) en el modo de 16 bits.

-ntsc
La pantalla cambia al modo NTSC.
NO lo utilices a menos que realmente tengas que hacerlo.

El guardado de partidas (savestates), no funcionan por el momento.

Utiliza (L1 + L2 + R1 + R2 + triángulo + círculo) para guardar una captura de
pantalla en el directorio "snap"
.
Siempre se utiliza el ejecutable (slesxxxxx) con contador, (siempre está comprobando
los archivos que existen, por lo que no sobrescribirá los archivos si se usa durante
varias sesiones).
Las capturas de pantalla se guardan en formato TIM2.



Y ahora empezaremos con la carga del emulador. Hay dos métodos, aquí esplico para cargar todo por red, más abajo está explicado como cargar por pendrive usb.



1- PS2PSXe desde conexión de red con Ps2client/Ps2link

  • Primero se descomprime el emulador, el ps2client y los juegos que queramos probar en una misma carpeta, por ejemplo C:\ps2psxe\ . Incluimos tambien el abrir.cmd del pack.


  • Ahora metemos la bios (archivo scph7502.bin del pack) en la carpeta C:\ps2psxe\bios\

  • Cargamos el PS2LINK.ELF en la consola (usar el del pack, con otras versiones he tenido problemas). Si no tenemos el IPCONFIG.DAT, la ip por defecto será 192.168.0.10, recuerda que la de tu pc debe ser igual pero cambiando el último numero, y es recomendable desactivar el firewall.

  • Abrimos abrir.cmd, y escribimos ps2client -h 192.168.0.10 reset (si tu ip no es esa tienes que poner la tuya, lógicamente) para comprobar que tenemos conexión con la ps2, si todo está bien la ps2 reiniciará el programa.

  • Si todo ha ido bien ya podemos cargar nuestro juego de ps1 en la ps2. Para ello excribimos ps2client -h 192.168.0.10 execee host:ps2psxe.elf -cdimage=host:juego.bin , donde juego.bien es el nombre de nuestra imagen del juego. Recomiendo usar nombres sin espacios, y usar siempre bin/cue para los juegos. Para cargas de otros modos solo hay que añadir los comandos, por ejemplo para eliminar la pantalla de fps, y el modo 32bpp, sería asi: ps2client -h 192.168.0.10 execee host:ps2psxe.elf -cdimage=host:juego.bin -nofps -32bpp



2- Iniciar PS2PSXe desde pendrive usb con Radshell sin teclado usb ni red
para todas las consolas.

Pasos a seguir:

  • Descomprimimos el emulador en un pendrive o disco duro usb
  • Metemos la bios scph7502.bin en la carpeta bios del emulador
  • Descomprimimos el programa RadShell en el pendrive
  • Metemos el driver iomanx.irx en la carpeta irx del pendrive
  • Creamos una imagen bin/cue de nuestro juego y lo metemos al pendrive
  • Abrimos el archivo radshell.rsh con el bloc de notas. Borramos todo lo que tiene y ponemos esto:
load irx/iomanx.irx
run ps2psxe.elf -cdimage=juego.bin

(En realidad cargar el driver iomanx.irx no es obligatorio, pero el autor lo aconseja)

Donde juego.bin es el nombre que le pusimos a la imagen del juego. Tambien podemos añadir opciones de carga del emulador como -nofps ó -32bpp


  • Conectamos el pendrive a la ps2, y desde ule cargamos el archivo radshell.elf

Aunque tarda un poco en arrancar (a veces hasta 15 segundos), una vez cargado el juego va fluido.



3- Iniciar PS2PSXe y cargar juegos desde Hdd, solo consolas Fat y slim con hdconnect/combo. Nuevo!!


En cuanto a carga desde hdd El_Patas ha descubierto ya una manera, os la explico por encima:

Meter programa radshell en la memory card
Añadimos los archivos iomanx.irx y filexio.irx a la carpeta irx del radshell
Meter juego.bin en una particion del hdd, junto con el emulador
Editar radshell.rsh de modo que quede así:

fontsize 0.6
border 2 2
store reset.rsh
store mc.rsh
store mcx.rsh
store irx/usbhdfsd.irx
store irx/iomanx.irx
store irx/filexio.irx
store mass.rsh
store irx/poweroff.irx
store irx/ps2dev9.irx
store dev9.rsh
store irx/ps2atad.irx
store irx/ps2hdd.irx
store irx/ps2fs.irx
store hdd.rsh
store irx/romdir.irx
store rom.rsh
script int:reset.rsh
set prompt "$$CD>"
set RSH_DIR "$CD"
set reboot "run rom0:OSDSYS"
set reset "script int:reset.rsh"
cls
version
iopreset
load rom0:SIO2MAN
load rom0:MCMAN
load rom0:MCSERV
load int:iomanx.irx
load int:filexio.irx
load int:poweroff.irx
load int:ps2dev9.irx
load int:ps2atad.irx
load int:ps2hdd.irx -o 4 -n 20
load int:ps2fs.irx -m 4 -o 10 -n 40
mount pfs0: hdd:
Nombre de la partición
run pfs0:/ps2psxe.elf -cdimage=pfs0:/Nombre-del-juego.bin
(Mejor ponerlo sin espacios)

Y ya está, desde ule lanzamos el elf del radshell que está en la mc y enseguida cargará nuestro juego desde el hdd


Dar las gracias a El_Patas, que ha traducido la info del emulador (la información original estaba en inglés) y quien ha descubierto el modo de cargar juegos de hdd. Su guía está aquí.

Espero que sea de utilidad, saludos ;)

2 comentarios:

  1. amigo me parece fantastico que slaga esta version aunque un poco Nativa pero ya se ira actualizando, lo voy aprobar segun los pasos, y regreso luego Saludos..!

    ResponderEliminar
  2. hize todo como lo escribiste pero la pantalla quedo negra, el juego que use era vagrant story version ntcs, la consola es slim 70.xxx y tiene el chip matrix infinity

    ResponderEliminar