DAX ZISO Loader 0.55 (by Dark_AleX) for UMDEMULATOR 0.8c and MPHGameLoader 
-------------------------------------------------------------------------

This is a tool that lets you load isos(backuped from your original umd's) compressed in dax 
format (a custom format, compressor and decompressor are included).


Requeriments:

- 1.50 firmware

- UMDEMULATOR 0.8c (optional, daxziso already incorporates in his core the UMDEMULATOR core)

- Optional: RUNUMD (for some 2.XX games) A modified version of MPHGL is included from 
  this release.


Instructions:

- Copy the folders PSP and DAXZISO in the root of your mem stick.

- Compress your iso with the DAX Creator tool that is in this package.

- Copy your compressed iso (.dax) to ms0:/ISO or alternatively to ms0:/UMD

- Execute DAX ZISO Loader. Select your iso (normal or compressed) or "Run inserted UMD", press
  X to start inmediatly the iso/umd with the previously saved config, or press square to go to
  the configuration screen.
  
  Configuration screen: you'll have to choose the emulation mode and other parameter.

* Explanation and compatibility of differents emulation modes:

  - Off: the iso won't be emulated and the program will exit to the system menu. This method 
    only has sense if you want to emulate the flash0 & flash1.

  - System menu. It returns to the system menu, letting you to load the game through the system 
    menu or another loader like mphgameloader or FastLoader("Start inserted UMD").
    This is one of the most compatible modes, it is more compatible than the UMDEMULATOR
    system menu.

  - Direct load. It will directly load your iso. At the moment, it seems that this mode is 
    less compatible than the "System menu" and "Direct LoadExec" ones. Be always sure 
    that you try the different modes to see which one is the best for your games.

  - Copy load. It will copy the game boot.bin file to ms0:/DAXZISO/DBOOT.BIN  and it will 
    load-exec it. 

  - MPHGL Direct. This mode needs the file "ms0:/DAXZISO/mphloader.prx" of the 
    MPHGameLoader application, which is already included. 

    Note that this is a modified version of mphloader.prx which will search the flash0 and
    flash1 in ms0:/DAXZISO/flash0 and ms0:/DAXZISO/flash1. If you want still use the older
    folders at ms0:/MPHGameLoader/flash0 and ms0:/MPHGameLoader/flash1, simply replace the
    mphloader.prx of DAXZISO with the original one from ms0:/MPHGameLoader/mphloader.prx

    It seems to be the less compatible mode of all.
    It's more compatible to use the system menu one and execute mphgameloader, or the modes
    "MPHGL System", "MPHGL VSHExec" and "MPHGL LoadExec".

  - UMDEmulator: 

    This mode requires the file ms0:/DAXZISO/UMDEMU.PBP, which is already included.

    This mode will load the original umdemulator letting it to load isos in dax format.
    The compatibility of different load modes inside UMDEMULATOR should be more or less the
    same that those from DAXZISO, although it may have some differences.

  - MPHGL System. This mode returns to the system menu: in that moment you can run
    your emulated umd from the system menu. Instead of executing the disc, the firmware will 
    execute the file "ms0:/DAXZISO/MPHGL.PBP" which will load your 2.XX game.
    
    The required file "ms0:/DAXZISO/MPHGL.PBP" is already included.
    
    The compatibility of this mode is greater than "MPHGL Direct" and exactly the same than 
    exiting to the system menu and then running mphgl.

  - MPHGL VSHExec. With this mode your psp will reboot and after that it will auomatically 
    run MPHGameLoader ("ms0:/DAXZISO/MPHGL.PBP"). 
    
    The compatibility of this mode is greater than "MPHGL Direct" and exactly the same than 
    exiting to the system menu and then running mphgl.

  - Direct LoadExec. This mode looks like "Direct Load", but instead of using the
    sceKernelLoad/StartModule functions, it uses sceKernelLoadExec; because of that, the system 
    will have more free memory, and this makes it more compatible than "Direct Load" and almost
    as compatible as "System Menu". The only problem is that it always will run the BOOT.BIN
    file (even if that option is in off), because sceKernelLoadExec fails with EBOOT.BIN.
    If you have one of those game that in umdemulator only worked with copy load, try this one,
    it loads faster and there are chances that it work.

  - MPHGL LoadExec. This mode is as compatible as "MPHGL System" and 
   "MPHGL VSH Exec", but it loads faster. However it has a problem: it doesn't work depending
    on the wlan switch position. In my psp, it works with the wlan position in on, but it may be 
    different on your psp, or even different from a game to another.

    This is NOT a DAXZISO bug. I've tried to execute the mphgl eboot.pbp with other homebrews
    programs that also use the sceKernelLoadExec function, and without iso emulation (original
    umd), and the results where the same: depending on the wlan switch position it worked or not.
    I cannot solve a bug that it's not mine.    

  - RUNUMD LoadExec. This mode will run RUNUMD, and it will let you load isos with it. 
    Because of a special patch that is applied in this mode to the UMDEMULATOR core to fix a 
    compatibility issue with RUNUMD, the flash0 and flash1 emulation are broken in this mode.

    This mode requires the runumd pbp (folder without %) to be in ms0:/DAXZISO/RUNUMD.PBP
    This file is NOT included, you'll have to provide it.

  - RUNUMD System. This mode returns to the system menu. After that, you can run RUNUMD
    with the disc icon of the firmware. You can also start runumd from the your memory stick if
    you want.

    This mode also requires the file ms0:/DAXZISO/RUNUMD.PBP and it also has the flash 
    emulation broken.

    Note: if you use one of the other "System Menu" modes and you start runumd, it will gives
    you the famous error of "patcher failed", because daxziso doesn't apply the special patch
    to those modes in order to keep compatibility with flash emulation.

  - RUNUMD Direct. This mode is like "RUNUMD LoadExec", but it doesn't reboot the firmware, so 
    it loads faster and it doesn't delete a background program from memory. The compatibility
    should be less than "RUNUMD LoadExec", although it seems still to be very good.

    
Remarks:
 * After having exited a game that you have run with a MPHGL mode, if you want to run again 
   the game, you can simply click the firmware UMD icon. (from this version, this applies to all
   mphgl modes).

 * The same for RUNUMD modes.

- Option "Allocate tables in RAM". If your game worked well in version 0.3, leave this parameter
  to "on", because decompression will be faster than in "off". If you game didn't work in version 
  0.3, set it to off: that will decrease memory use and increase compatibility.

- The other parameters are handled by the UMDEMULATOR core and their meanings are the same than
  in UMDEMULATOR.

- To quit ISO emulation, execute the loader and press triangle.   


The loader will remember the configuration of each iso (in umd it will only have a configuration
for all umd's at the moment).
The configuration files are saved in the ms0:/DAXZISO/CONFIG directory, with the name
"[name of iso including extension/s].dat" (example: megaman.iso.dax. -> megaman.iso.dax.dat)

If you want to share the settings of your games with your friends, you can zip the config
folder and send it to them, but remember that all of you have to use the same file names.

You can also have a custom background for each iso. 
Backgrounds can be stored now in a lot of manners to make things easier, in either the folder 
ms0:/ISOMISC or ms0:/DAXZISO/BACKPIC

Better an example than an explanation. If you have an iso called "Tales_Eternia.iso.dax", the
program will search a background in the following order:

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:/DAXZISO/BACKPIC/backpic_Tales_Eternia.iso.dax.bmp
ms0:/DAXZISO/BACKPIC/backpic_Tales_Eternia.iso.bmp
ms0:/DAXZISO/BACKPIC/backpic_Tales_Eternia.bmp
ms0:/DAXZISO/BACKPIC/Tales_Eternia.iso.dax.bmp
ms0:/DAXZISO/BACKPIC/Tales_Eternia.iso.bmp
ms0:/DAXZISO/BACKPIC/Tales_Eternia.bmp


The background must be 24 bits color bmp's, and with a resolution of 480x272 pixels.
Otherwise, the program will paint a white background to let you know that the file was in
an incorrect format.


FAQ:

- Q: Will support DAX ZISO Loader more common formats of compressed files like .zip, .rar, .gz?
- A: NO. I already did testings with .zip and .gz files, and the EXIT JAP iso was still loading 
     after more than 10 minutes. The problem with those files is that the seeking is really slow.
     That was the main reason behind creating an own format. The DAX format is very similar to
     the .Z/.Z.table concept, except that it's only one file and other few changes. 

-Q: Can load DAXZISO games that UMDEMULATOR/MPHGameLoader cannot?
-A: No. The iso emulation is still done by the UMDEMULATOR core, although the reading functions
    are redirected to the DAXZISO one. However, the system menu has been reported to be more
    compatible in DAXZISO (from version 0.4) than in UMDEMULATOR. (this is probably due to a
    patch that DAXZISO does)

-Q: Can DAXZISO load normal (non-compressed) isos?
-A: Yeah, no problem. 



Changelog:

- 0.55. April, 21

  * GUI changed, made text more visible and usage faster. Now X button start directly an ISO/UMD
    with the saved configuration and square button jumps to the configuration screen.
  * DAX ZISO now uses an only folder, ms0:/DAXZISO, instead of UMDEMULATOR, and also 
    subprograms must be stored in that folder. Please, read the readme to migrate from previous 
    versions. Also, isos are now searched in both, ms0:/ISO and ms0:/UMD folders.
  * ISOs are sortered alphabetically.
  * Compatibility with Hard Disks have been improved.
  * Added the mode RUNUMD Direct, which loads faster than RUNUMD LoadExec and it doesn't 
    restart the kernel (so, an app can be running in the background)
  
- 0.51. April, 11

  * Added support for runumd, for both, iso's and umd's.
  * Fixed a bug of the UMDEMULATOR core that caused a crash when sleeping in system menu.
    (Note that this is not the same bug that causes daxed isos to crash when sleeping; with 
    normal isos you can now sleep in both, in game and in system menu; with dax isos if you 
    sleep in game, it will probably end in a crash and if you sleep in system menu it will
    cause a "cannot read disc" error, but you can continue using the system without restarting).
  * A bit of changes in the backgrounds system that makes things easier and less annoying while
    keeping compatibility with the previous version.
  * Support to load no-kxploited pbp's (it's built inside the daxziso core, so no need of running
    NO-KXploit while using daxziso)

- 0.5. April, 5
 
 * Support of the new feature of DAX Creator 0.3 that includes the use of not-compressed (NC) 
   areas for parts of the iso that cannot be compressed. This can reduce the load times, and if
   the dax iso was created with the option "force videos to be NC areas", the video glitches will 
   be reduced. Unfortunaly, at this moment those things are only noticeable when 
   "allocate tables in ram" = on. (more details about NC areas in the DAX Creator 0.3 readme)
 * The configuration of each iso is now remembered and stored in the ms0:/UMDEMULATOR/CONFIG
   directory.
 * Support for original umd's.
 * Gui changed. Now it supports custom backgrounds for each iso.
 * Released two things for programmers or for curious people:
   - The static library umedaxlib. This library will let a program to use either the umdemulator
     core or the umdemulator+daxziso core. A sample of a little loader using the library is 
     included.
   - A document with some info on how the umdemulator core works and how it's embedded in the 
     firmware, with a bit of decompiled code. (it's far from complete at this moment)
 

- 0.4. March, 24.
 
 * Added 4 new emulation modes: System Menu - MPHGL, MPHGL - VSH Exec, DirectLoad - LoadExec and
   MPHGL - LoadExec.
 * Added the option "Allocate tables in RAM". When in off, compatibility will be greater than in
   previous versions.
 * Copy Load now uses the function "sceKernelLoadExec", as UMDEMULATOR does.
 * The program now uses a different configuration file than UMDEMULATOR, avoiding in this way
   that UMDEMULATOR resets it to 72 bytes.
 * Removed the limitation that caused that if before the compression the iso had more than about 
   1365 MB, DAXZISO didn't allocate the memory for the tables. 

- 0.3. March, 20
 * The program doesn't need other apps, and its use is less annoying than before.  
 * Both, the umdemulator and daxziso cores are now merged into a single file.

- 0.2. March, 16
 * Improved compatibility and stability.
 * The program now writes its core in the kernel RAM next to the UMDEMULATOR core and both
   run when a game or homebrew starts/exits.

- 0.01 beta. March, 14: Initial release, very buggy.


TODO:

- Improve the speed of the decompression/reading when "Allocate tables in RAM" = off

- Correct the annoying bug of sleep mode. It has a HIGH priority now in this list.

- remove the needing of having an umd. 

- Extend the DAX compression format with more options.


Credits:

 - The first 4 KB of FUSEDCORE.BIN file are the UMDEMULATOR core.bin. Also, included UMDEMU.PBP 
   is from UMDEMULATOR.
   UMDEMULATOR is written by Humma Kavula.

 - This release also includes the MPHGL eboot and prx. MPHGL is written by MPH.

 - The rest of the program is written by Dark_AleX.

 - Designs: SiTWulf

 - PBP Icon and background: cntrctkllr

 - Special thanks to SiTWulf and also to all people from different forums for their suggestions!
 
 - DAX ZISO Loader and DAX Creator/DAX Decompressor use the zlib library: http://www.zlib.net