DAX ZISO Loader 0.51 (por Dark_AleX) para UMDEMULATOR 0.8c y MPHGameLoader 
-------------------------------------------------------------------------

Es una herramienta que te permite cargar las isos comprimidas (de backups de tus umd's 
originales) en formato dax (formato propio, el compresor y el descompresor estan incluidos).

Requisitos:

- Firmware 1.50

- UMDEMULATOR 0.8c (opcional, daxziso ya incorpora en su nucleo al nucleo de umdemulator) 

- Opcional: MPHGameLoader y/o RUNUMD (para juegos que requieran 2.XX)


Instrucciones:

- Copia las carpeta PSP y UMDEMULATOR en la raz de la ms.

- Comprime tu iso con la herramienta DAX Creator (para Win32) que acompaa este paquete.

- Copia tu iso comprimida (.dax) a ms0:/ISO

- Ejecuta DAX ZISO Loader. Selecciona tu iso (normal o comprimida) y pulsa X (tambin puedes 
  seleccionar "Run iserted UMD" para cargar el disco original insertado.
  Una vez hecho, estars en la pantalla de configuracin para esa iso/umd, donde tienes que
  seleccionar el modo de emulacin y otros parametros.  

* Explicacin y compatibilidad de los diferentes modos de emulacin:

  - Off: no se emular la iso y se saldr al menu del sistema. Este mtodo slo tiene sentido si
    lo que se quiere es emular las flash0 y/o flash1.

  - System Menu.  Vuelve al men del sistema, y puedes cargar la iso mediante el menu del sistema
    , u otro loader como MPHGL o FastLoader("start inserted umd").
    Es uno de los modos ms compatible de todos, es algo ms compatible que el system menu del
    UMDEMULATOR.

  - Direct load. Cargar directamente la iso. De momento parece que este modo es menos
    compatible que el "System Menu" y el "Direct Load - LoadExec", ten siempre la precaucin de
    mirar los distintos modos para ver cual es el que se adapta mejor a cada uno de tus juegos.

  - Copy load. Copiar el archivo boot.bin del juego a ms0:/UMDEMULATOR/DBOOT.BIN y lo
    ejecutar.

  - MPHGL. Para usar este modo necesitas el archivo "ms0:/MPHGameLoader/mphloader.prx"
    de la aplicacin MPHGameLoader. Parece que podra ser el modo menos compatible de todos.
    Sera ms compatible ir al system menu y ejecutar el mphgameloader, o los modos
    "System Menu - MPHGL", "MPHGL - VSH Exec" y "MPHGL - LoadExec".

  - Original UMDEMULATOR: para usar este modo necesitas copiar el EBOOT.PBP del UMDEMULATOR
    (el de la carpeta sin %) a ms0:/UMDEMULATOR y renombrarlo a "UMDEMU.ELF"

    Este modo carga el umdemulator original y le permite cargar las isos en el formato dax.
    La compatibilidad de los distintos modos de carga del UMDEMULATOR deberan ser parecidos
    a sus equivalentes en DAXZISO, aunque podra haber diferencias.

  - System Menu - MPHGL. Este modo te hace salir al menu del sistema, en ese momento puedes
    ejecutar tu umd emulado desde el menu del sistema. En lugar de ejecutarse el disco, se 
    ejcutar el archivo "ms0:/MPHGameLoader/EBOOT.PBP" que a su vez cargara dicho umd emulado.
    Para usar ste metodo necesitas copiar el EBOOT.PBP de la carpeta 
    "ms0:/PSP/GAME/[nombre de la carpeta donde tengas el MPHGL]/EBOOT.PBP" a 
    "ms0:/MPHGameLoader/EBOOT.PBP" (es posible que si usas uno de esos mods de 
    fastloader/umdemulator/devhook ya tengas esto hecho).

    La compatibilidad de ste modo es mayor que la del "MPHGL" y exactamente igual que la de 
    salir al menu del sistema y luego ejecutar el mphgl.

  - MPHGL - VSH Exec. Con este modo tu psp se reiniciara y tras el reinicio ejecutar 
    automticamente el MPHGameLoader (recuerda, "ms0:/MPHGameLoader/EBOOT.PBP"). 
    
    La compatibilidad de ste modo es mayor que la del "MPHGL" y exactamente igual que la de 
    salir al menu del sistema y luego ejecutar el mphgl.

  - DirectLoad - LoadExec. Este modo es parecido al de "Direct Load", pero en lugar de usar
    las funciones sceKernelLoad/StartModule, usa la funcin sceKernelLoadExec, por lo que el 
    sistema est menos cargado haciendo que sea mas compatible que el "Direct Load" y casi
    tan compatible como la de "System Menu". La nica pega que tiene es que siempre ejecutar
    el BOOT.BIN (incluso si esa opcin esta en off), ya que la funcin sceKernelLoadExec falla
    con los EBOOT.BIN.
    Si tienes uno de esos juegos que en el umdemulator solo funcionaban con copy load, prueba
    este modo. Carga ms rpido y existe la posibilidad de que funcione.

  - MPHGL - LoadExec. Este modo es tan compatible como "System Menu - MPHGL" y "MPHGL - VSH Exec"
    pero carga ms rpido. Sin embargo, tiene un problema: no funciona dependiendo de la 
    posicin del interruptor wlan. En mi psp funciona con la posicin del interruptor en on, 
    pero podra ser diferente en tu sistema, o incluso podra cambiar de un juego a otro.

    Este bug no es causado por DAXZISO. He probado a ejecutar el eboot.pbp del MPHGL con otros
    programas que tambin usan la funcin sceKernelLoadExec y sin emulacion de umd (con un disco
    original), y los resultados fueron los mismos: dependiendo de la posicin del interruptor,
    funcionaba o no.
    No puedo solucionar un bug que no es mio.
    
    ste mtodo tambin necesita el archivo "ms0:/MPHGameLoader/EBOOT.PBP"

  - RUNUMD - LoadExec. Este mtodo ejecutar el RUNUMD, permitiendole cargar isos. 
    Dado que un parche especial es aplicado con este modo para solucionar un problema de
    incompatibilidad del nucleo de UMDEMULATOR con RUNUMD, la emulacin de la flash0 y flash1 
    no funcionar en este modo.

    Este modo requiere que el pbp de runumd (carpeta sin %) este en ms0:/UMDEMULATOR/RUNUMD.PBP

  - System Menu - RUNUMD. Este modo vuelve al menu del sistema. Despues de eso puedes ejecutar
    el runumd con el icono del disco del firmware. Alternativamente, puedes ejecutar RUNUMD
    desde la memory stick, como siempre.

    Este modo tambien requiere el archivo ms0:/UMDEMULATOR/RUNUMD.PBP y tiene el mismo problema 
    de que la emulacin flash no funcionar.

    Nota: si usas uno de los otros modos "system menu" y despues ejecutas runumd, te seguir
    dando el famoso error de "patcher failed", porque daxziso no aplica el parche especial
    a esos modos para mantener la compatibilidad con la emulacin flash.

Observaciones:
 * Despues de que hayas salido de un juego que has jugado usando uno de los modos MPHGL, puedes
   volver a jugar al juego usando el icono del disco del firmware (desde esta versin, se aplica
   a todos los modos MPHGL)

 * Lo mismo para los modos RUNUMD.
   
- Opcin "Allocate tables in RAM". Si tu juego funcionaba bien en la versin 0.3, deja este
  parmetro a "on", ya que la descompresin ser ms rpida que si esta puesto a off. 
  Si tu juego no funcionaba en la versin 0.3, ponlo en "off", ya que eso disminuir el uso de 
  memoria RAM y aumentar la compatibilidad.

- El resto de los parmetros son manejados por el nucleo del UMDEMULATOR y su significado es el
  mismo que en UMDEMULATOR.

- Para terminar la emulacin de la ISO, ejecuta el programa y pulsa el triangulo. No es 
  estrictamente necesario terminar la emulacin de la iso si no quieres, ya que desde esta
  versin el bug que causaba un cuelgue cuando se usaba el modo sleep en el menu del sistema
  (bug originario del nucleo de UMDEMULATOR) ha sido solucionado, y no ha verdadera necesidad
  de quitar la emulacin salvo en casos especiales de que quieras ejecutar un homebrew no 
  compatible con UMDEMULATOR/DAXZISO, como es el caso de FileAssistant.

- Desde esta versin (0.51), un parche que te permite cargar pbp's sin el kxploit desde el menu
  del sistema es aplicado. El unico efecto secundario de esto es que un archivo llamado
  ms0:/_TEMPO_.ELF ser escrito cada vez que ejecutes un pbp que no use el kxploit.

El programa recordar la configuracin de cada iso (los umd's de momento solo tendrn una 
configuracin comn).
Los archivos de configuracin son salvados en el directorio ms0:/UMDEMULATOR/CONFIG con el
nombre "[nombre de la iso con extension/es].dat" (ejemplo: megaman.iso.dax -> megaman.iso.dax.dat)

Si quieres compartir la configuracin de tus juegos con tus amigos, puedes zipear la carpeta
config y enviarles el archivo zip, pero recuerda que tendreis que usar los mismos nombres de
archivo.

Tambin puedes poner un fondo para cada iso. 
Los fondos puedes ser ahora guardados de un montn de manera diferentes para hacer las cosas
mas sencillas, tanto en la carpeta ms0:/ISOMISC o la carpeta ms0:/UMDEMULATOR/BACKPIC

Mejor un ejemplo que una explicacin. Si tienes una iso llamada "Tales_Eternia.iso.dax", el 
programa buscara la imagen de fondo en el siguiente orden:

ms0:/ISOMISC/backpic_Tales_Eternia.iso.dax.bmp
ms0:/ISOMISC/backpic_Tales_Eternia.iso.bmp
ms0:/ISOMISC/backpic_Tales_Eternia.bmp
ms0:/ISOMISC/Tales_Eternia.iso.dax.bmp
ms0:/ISOMISC/Tales_Eternia.iso.bmp
ms0:/ISOMISC/Tales_Eternia.bmp
ms0:/UMDEMULATOR/BACKPIC/backpic_Tales_Eternia.iso.dax.bmp
ms0:/UMDEMULATOR/BACKPIC/backpic_Tales_Eternia.iso.bmp
ms0:/UMDEMULATOR/BACKPIC/backpic_Tales_Eternia.bmp
ms0:/UMDEMULATOR/BACKPIC/Tales_Eternia.iso.dax.bmp
ms0:/UMDEMULATOR/BACKPIC/Tales_Eternia.iso.bmp
ms0:/UMDEMULATOR/BACKPIC/Tales_Eternia.bmp

El fondo debe ser un bmp de 24 bits de profundidad de color, y con una resolucin de 480x272
pixeles. Si no cumple esas condiciones, el programa pintar el fondo de blanco, de esta forma
podrs saber que el archivo tena un formato incorrecto.


Preguntas:

- P: Soportar DAXZISO Loader otros formatos de compresin ms comunes como .zip, .rar, .gz?
- R: NO. Ya hice pruebas con archivos .zip y .gz y los resultados fueron espantosos: ms de 10
     minutos ms tarde, la iso del EXIT JAP segui cargando y cargando. El problema con esos
     archivos es que la busqueda aleatoria es muy lenta. Esa fue la principal razn por la que 
     cree un formato propio. El formato dax est basado en el concepto de los archivos 
     .Z/.Z.table, salvo que slo es necesario un archivo y otros pequeos cambios.

-P: Puede cargar DAXZISO juegos que UMDEMULATOR/MPHGameLoader no pueden?
-R: No. La emulacin de la ISO la sigue haciendo el nucleo de UMDEMULATOR, aunque la lectura de
    la  misma llegue al nucleo de DAXZISO. Sin embargo, he recibido noticias de que el modo 
    system menu es algo ms compatible en DAXZISO. (esto es debido probablemente a un parche que
    DAXZISO hace).

-P: Puede cargar DAXZISO isos normales no comprimidas?
-R: Sip, ningn problema. 


Cambios:

- 0.51. 11 de Abril.

  * Aadido soporte para runumd, tanto para isos como para umd's.
  * Solucionado un bug del nucleo del UMDEMULATOR que causaba un cuelgue cuando se usaba el
    modo sleep en el menu del sistema. (ten en cuenta, que este no es el mismo bug que causa
    que las isos comprimidas en dax se cuelguen cuando se use dicho modo; con las isos normales
    ahora puedes usar el modo sleep tanto durante el juego como en el menu del sistema; en cambio
    con las isos dax. si utilizas el modo sleep durante el juego, te dar un cuelgue tarde o 
    temprano, y si duermes en el menu del sistema, el firmware te dar un mensaje de 
    "no se puede leer el disco", pero puedes continuar usando el sistema sin reiniciar.
  * Algunos cambios en el sistema de imagenes de fondo, para hacer las cosas ms sencillas y 
    menos molestas, al mismo tiempo que se conserva la compatibilidad con la version anterior.
  * Soporte para cargar pbp's que no usen el kxploit (esta implementado dentro del nucleo de
    daxziso, asi que no necesitas ejecutar NO-KXploit mientras uses daxziso) 

- 0.5. 5 de Abril.

 * Soporte de la nueva caracterstica de DAX Creator 0.3 que incluye el uso de areas no
   comprimidas (NC) para partes de la iso que no pueden ser comprimidas. Esto puede reducir
   los tiempos de carga, y si la iso dax fue creada con la opcin "force videos to be NC areas",
   los saltos en los videos sern reducidos. Desgraciadamente, en este momento esas cosas slo
   se pueden notar cuando "allocate tables in ram" = on (ms detalles sobre las areas NC en el
   leeme de DAX Creator 0.3)  
 * La configuracin de cada iso es ahora recordada y guardad en la carpeta
   ms0:/UMDEMULATOR/CONFIG
 * Soporte para umd's originales.
 * Interfaz cambiada. Ahora soporta fondos personalizados.
 * Liberadas dos cosas para programadores o gente curiosa:
   - La librera esttica umedaxlib. Esta librera permitir a un programa usar tanto el
     nucleo de umdemulator como el nucleo de umdemulator+daxziso. Un ejemplo de un simple
     loader que usa la librera es incluido.
   - Un documento con algo de informacin sobre como el nucleo del umdemulator funciona y como
     se integr en el firmware, con un poco de cdigo descompilado (est aun lejos de estar
     terminado).

- 0.4. 24 de Marzo.
 
 * Aadidos cuatro modos de emulacin: System Menu - MPHGL, MPHGL - VSH Exec, 
   DirectLoad - LoadExec y MPHGL - LoadExec.
 * Aadida la opcin "Allocate tables in RAM". Cuando esta en off, la compatibilidad es mayor
   que en las versiones anteriores.
 * Copy Load ahora usa la funcin "sceKernelLoadExec", tal y como lo hace UMDEMULATOR.
 * El programa ahora usa un archivo de configuracin diferente al que usa UMDEMULATOR, evitando
   de esa forma que el UMDEMULATOR original lo resete a 72 bytes.
 * Eliminada una limitacin por la cual si la iso antes de comprimirse tena ms de 
  (aproximadamente) 1365 MB, DAXZISO no reservaba la memoria para las tablas.

- 0.3. 20 de Marzo.
 
 * El programa es ahora autosuficiente, y ya no necesita tantos lios como antes. 
 * Los nucleos del umdemulator y daxziso estn ahora en un solo archivo.

- 0.2. 16 de Marzo:

 * Mejorada la compatibilidad y la estabilidad.
 * El programa ahora se infiltra en la RAM del kernel al lado de umdemulator, y se ejecuta
   junto con este cada vez que se inicia o se sale de un juego o homebrew.

- 0.01 beta. 14 de Marzo: versin inicial, muy verde todava.


Lista de cosas a hacer:

- Mejorar la velocidad de descompresin/lectura cuando "Allocate tables in RAM" = off

- Corregir el molesto bug del modo sleep. Esto tiene ahora una ALTA prioridad.

- Mejorar la inerfaz. Ahora mismo, algunas palabras no son muy legibles con determinados fondos.

- Eliminar la necesidad de tener un umd metido. 

- Extender el formato de compresin DAX con ms opciones.

Creditos:

 - Los 4 primeros KB del archivo FUSEDCORE.BIN corresponden al core.bin del UMDEMULATOR.
   UMDEMULATOR esta programado por Humma Kavula.

 - El resto del programa est programado por Dark_AleX

 - Icono y background: cntrctkllr
 
 - DAXZISO Loader y DAX Creator/Dax Decompressor usan la librera zlib: http://www.zlib.net