PSPlorer v1.4

0) credits:
special thanks to all ps2dev guys
Thanks to testers: Anruyn, djdelarue, willy91, darkwing


1) Introduction:
PSPlorer est un explorateur de fichiers dedie a la PSP.
Bien sur il faut un CFW, mais il fonctionne sur Fat et sur Slim.

2) Licence:
PSPlorer est distribue sous licence GPL3, avec les sources.
Lire le fichier LICENCE.TXT


3) Les fonctions principales :
- exploration des fichiers sur la memory-stick, flash0, flash1 et umd
- copy, delete, move, rename de fichiers et de directories
- dump et flash securise du NAND  ATTENTION : meme si cela a ete teste sur plusieurs PSP (FAT &SLIM)
  le flash n'est pas une operation benigne et je n'accepte pas de responsabilite si vous brickez votre PSP.
- creation de backup d'umd en iso ou cso
- connexion USB
- creation de fichiers et de directories
- hexedit de fichier
- transfert de fichier de PSP a PSP par le wifi
- transfert recursif de directory de PSP a PSP par le wifi
- conversion de fihcier iso en  cso
- changement des proprietes des ficheirs (droits d'access, creation/access/modification dates

4) Limitations:
- pour l'instant on ne voie pas tout les fichiers sur le flash0
  (par exemple on ne voie pas sous flash0:/kd)
- la connexion USB, ne permet de connecter que la memory stick
- l'Hexedit ne permet d'hexediter que des fichiers qui tiennent completement en RAM

5) Principes:

- START: affiche un ecran d'aide
- X  : validation
- [] : sort de l'ecran

    Un ecran principal pour se deplacer dans la hierarchie de fichiers,
    des ecrans contextuels

6)Ecran principal
    un ecran splitte en deux parties, une partie est la partie active.
    L-TRIGGER pour que la partie active soit a gauche
    R-TRIGGER pour que la partie active soit a droite

    pour se deplacer dans l'ecran: fleche haut, fleche bas
    si vous etes sur une directory, si vous faites X, vous allez dans la diretory
    si vous etes sur .., si vous faites X, vous remontez a la directory parent
    si vous faites TRIANGLE, vous n'avez plus qu'un seul ecran, mais plus detaillee

    si vous faites O vous avez un ecran contextuel dont les fonctionalites dependent
    de l'element selectionne.


7) Ecran contextuel generalite:
    l'ecran est separe en deux parties, la partie du haut affiche des infos sur
    l'element selectionne, en bas les fonctions disponibles pour l'element.
    En particulier dans la partie du haut, il y a un champ target qui servira lorsque
    la fonciton aura besoin d'une cible par exemple la fonction copy a besoin
    d'une directory cible.


7-1) Ecran contextuel "disc0:"
    copy to     : copy les fichiers dans la cible
    reload      : recharge la hierarchie de fichiers lorsqu'on a change d'umd
    Umd backup  : cree un backup (.iso) dans la cible
    Umd backup in cso : cree un backup au format (.cso)

7-2) Ecran contextuel "flash0:", "flash1:"
    copy to : copy les fichiers dans la cible
    delete  : detruit les fichiers
    move    : deplace les fichiers dans la cible
    NAND backup: cree un backup de la NAND

7-3) Ecran contextuel "ms0:"
    copy to : copy les fichiers dans la cible
    delete  : detruit les fichiers
    move    : deplace les fichiers dans la cible
    reload  : reload la hierarchie
    Connect USB : connect la memory stick via USB au PC, dans ce mode on ne fait rien pendant
                  la connection sur la PSP
    Connect USB mode 2 : connect la memory stick via USB au PC, dans ce mode on peut continuer
                  a utiliser PSPlorer pendant la connection sur la PSP

7-4) Ecran contextuel Directory
    copy to : copy la directory dans la cible
    delete  : detruit la directory
    move    : deplace la directory dans la cible
    rename  : renome la directory
    Change Properties :  changement des proprietes d'une directory (droits d'acces , dates de creation, modification et d'access)
    Create File : cree un fichier vide
    Create Dir  : cree une Directory
    send a Directory to a PSP : envois d'une directory complete a une PSP
    receive a File or a Directory from a PSP : recoie un fichier ou une directory entiere s'une autre PSP

7-5) Ecran contextuel Fichier
    copy to : copy le fichier dans la cible
    delete  : detruit le fichier
    move    : deplace le fichier  dans la cible
    rename  : renomme le fichier
    Change Properties :  changement des proprietes d'une directory (droits d'acces , dates de creation, modification et d'access)
    Hex Edit    : Hex edit un fichier
    Flash to NAND : si le fichier est un ".bin" et si il a la bonne taille alors cette option apparait
    Create File : cree un fichier vide
    Create Dir  : cree une Directory
    Send a File to a PSP : envoie un fichier a une autre PSP
    compress to cso : convertie un fichier iso au format cso  (SEULEMENT si le fichier a une extension .iso)



8) NAND Backup et flash:
    Lors de la creation du backup, un fichier .chk est cree. Dans ce fichier on stocke
    l'adresse Mac, ainsi des clefs de controles du dump. Ainsi lorsque l'on veut reflasher
    PSPlorer compare l'adresse MAC de la PSP et du Dump pour s'assurer que l'on ne dump pas
    le nand d'une autre PSP.
    Les clefs servent a verifier que le dump n'a pas ete modifie/abime.


9) Hexedit
    []        => quit
	X         => echange le mode edition/lecture
	O         => Sauve les modifications
	UP        => field Up, en mode edit +1 sur les bits de droite
	DOWN      => field Down, en mode edit -1 sur les bits de droite
	LEFT      => field Left, en mode edit -1 sur les bits de gauche
	RIGHT     => field right, en mode edit +1 sur les bits de gauche
	START     => help
	SELECT    => met un marker
    /\        => detruit la zone marquee
	R-trigger => deplace la zone marquee avant la curseur
	L-trigger => insere une copy de la zone makee avant le curseur


