************************
*    Ultimate Fenix    *
*         v0.2         *
************************

Motor basado en: Fenix 0.92a

Portado de: http://fenix.divsite.net
Por: Israel López Fernández (Puck2099)
Website: http://www.gp32wip.com
Contacto y donaciones (Paypal): puck2099@gmail.com

Basado en parte en el port de Fenix de Chui para la GP32 y controles gracias a la
minilib de Rlyeh.
Tests obra de Joanvr y Quiest.

Por favor, si quieres incluir el runtime con tu juego incluye también estos archivos leeme.txt
y readme.txt

¿Qué es el Ultimate Fenix?
--------------------------
Es un intérprete para jugar a juegos realizados en dicho lenguaje de programación.

¿No había ya un Fenix? ¿En qué se diferencia?
---------------------------------------------
Sí, hasta ahora solo existía el Fenix que porté. La diferencia entre aquel y éste es básicamente
la versión de Fenix en la que está basada. Ultimate Fenix hace uso del motor del Fenix 0.92a,
mientras que el "antiguo" Fenix lo hace del 0.84

Lógicamente los juegos hechos para aquella versión necesitan ser recompilados para ésta.

Además, en este Ultima Fenix iré centrando mis esfuerzos para incorporar importantes mejoras que
permitan obtener beneficios del hardware de la consola (uso del segundo core, más RAM, RAM tweak...)

¿Cómo lo instalo?
-----------------
Descomprime los archivos en cualquier lugar de la tarjeta SD. Dentro de la carpeta uFenix vienen
varios tests de muestra para comprobar su funcionamiento. Si quieres añadir nuevos juegos, edita uno
de los archivos .gpe que acompañan el juego y crea otro basado en él para lanzar el nuevo juego.

¿Está disponible el código fuente?
----------------------------------
Sí, tal y como exige la licencia GPL, podéis descargar el código fuente en mi propia
página web. Eso sí, aviso que los cambios realizados no están lo suficientemente
"limpios" ni documentados. 
Si queréis hacer algún cambio, por favor, os agradecería que contactárais primero
conmigo para no trabajar dos personas en solucionar los mismos problemas :)

Parámetros:
----------
Este nuevo runtime incorpora la posibilidad del paso de parámetros a través del script usado en
cada juego. El uso sería el siguiente:

./ufxi juego.dcb [opciones]

Donde en opciones podéis usar los siguientes flags:

    * --nosplash -> Se salta la splash screen con información sobre la versión del runtime y 
                    velocidad de ejecución. Si no os gusta la imagen de fondo o queréis
                    personalizarla, podéis poner una imagen con el mismo nombre que el ejecutable y
                    extensión bmp, jpg, gif o png (por ejemplo, si el juego se llama bang.dcb, la
                    imagen se llamaría bang.png) en el mismo directorio que dicho ejecutable.
    * --speed XXX -> Define la velocidad a la que se ejecutará el runtime (200 Mhz si no se especifica
                     este parámetro). XXX corresponde a la velocidad en Mhz, por ejemplo, --speed 245 
		     pondrá la consola a 245 Mhz mientras se juegue.
    * --tweak -> Activa el RAM Tweak para ganar más velocidad. AVISO: Puede causar inestabilidad en
		 consolas "sensibles", es raro, pero puede ocurrir.	
    * --gp32 -> Arranca la consola en modo GP32, es decir, controlando el volumen automáticamente
                con los botones VOL+ y VOL-. Este modo se activa por defecto.
    * --gp2x -> Arranca la consola en modo GP2X, con control total sobre todos los botones.


El overclocking está limitado de 133 a 300 Mhz, con los siguientes valores debería funcionar
(siempre que lo aguante vuestra consola), pero los intermedios ya no lo sé...
133, 150, 166, 180, 200, 225, 233, 245, 250, 255, 260, 265, 266, 270, 275, 280, 285, 290, 295 y 300.

Controles:
----------
Este port admite dos modos de juego: el modo "nativo" y el modo "emulado".

En el modo "nativo", solo para la GP2X, hay que programar los juegos tomando el control como
si fuera un joystick de 19 botones, con las mismas correspondencias que en las SDL, como puede
verse en: http://wiki.gp32spain.com/index.php/Mapeo_del_joystick_en_SDL

En el modo "emulado" el port reconoce la pulsación de ciertas teclas de un teclado y las emula
con sus propios botones con la siguiente correspondencia:
Cursores -> pad
ctrl -> A
alt -> B
return -> START
space -> SELECT
backspace -> L
tab -> R
x -> X
z -> Y
a -> VOL-
s -> VOL+
c -> CLICK

Cambios en Ultimate Fenix:
-------------------------
v0.2:
-----
- Añadido soporte para pantalla táctil (usable a través de variables mouse.x, mouse.y y mouse.left).
  Gracias a Eclipse, Joyrider, Hangman, Lithosphere, Propeller, Paeryn, DJWillis y Joanvr por sus aportes
  para interpretar la pantalla táctil.
- Modificado el volumen de sonido a la mitad si detecta que se ejecuta en una F200.

v0.1:
-----
- Primera versión.
