Yodajr
20/07/2007, 15h58
Tout d'abord le titre de ce tuto laisse à penser qu'il n'est destiné qu'aux codeurs, mais j'ai rien trouvé d'assez court pour parler à tout le monde, mais en fait il est vraiment destiné à tout possesseur de PSP.
Tant pis pour ceux qui ne me lisent pas donc :rolleyes:
[B]1. Concept
Beaucoup de ceux qui ont exploité les capacités avancées de devhook ou certains plugins des custom firmwares de Dark Alex savent déja de quoi il s'agit quand je parle d'usbhost, mais appliquée aux homebrews.
Pour les autres, il s'agit d'une procédure qui permet à la PSP de lancer des applications placées sur le disque dur du PC via le port USB, un peu comme si le PC était une grosse memory stick.
Avantages :
0 transfert à faire sur la MS à chaque test
lancement immédiat de l'eboot
possibilité de debug
screenshot à tout moment
plus jamais besoin de redémarrer la PSP en cas de plantage
Même hors du cadre du dev, c'est très intéressant pour tester les homebrews, car on met rien sur la MS, tout reste sur le PC, c'est pratique.
Par exemple pour tester les évolutions de l'émulateur N64, plus besoin de mettre à chaque fois sur sa MS 4 ou 5 roms de 30Mo juste pour tester.
Je vous ai convaincu je pense (les autres ont déja fermé l'onglet), donc passons à l'installation ! :w00t:
[B]2. Installation
Récupérez d'abord cette archive (http://www.playeradvance.org/img/tuto_pa/psplink/psplink2.0.zip), puis décompressez la quelque part.
Sur la PSP, copiez le dossier psplink présent dans le dossier PSP/GAME au même endroit sur la MS (si vous êtes en kernel 1.50). Si vous n'êtes pas en kernel 1.50 ou si vous ne savez pas de quoi je parle, copiez le dossier dans PSP/GAME150 sur la memory stick.
Sur le PC, copiez n'importe où (mais je trouve plus propre de le mettre dans le dossier du projet) le contenu du répertoire PC
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink03.png
Puis copiez dans le répertoire projet qui s'y trouve les fichiers de votre application ou d'un homebrew quelconque (vous pouvez bien sur renommer le dossier projet mais pensez à modifier le psplink.bat en conséquence)
Pour l'exemple j'y ai copié l'eboot et les fichiers du tuto oslib n°4 :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink04.png
Ensuite lancez sur la PSP l'application PSPLink :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink06.png
Vous aurez normalement ce simple message à l'écran :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink05.png
Et connectez la PSP au PC via le câble USB.
La PSP sera alors détecté en type B.
Si vous avez déjà fait ça, sautez cette étape, sinon vous savez quoi faire, c'est pas la première fois que vous installez un driver, si ? :huh:
Le driver se trouve dans l'archive fournie plus haut.
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink01.png
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink02.png
[B]3. Utilisation
Il n'y a qu'a lancer le client PC : double cliquez sur le psplink.bat
Si tout c'est bien passé, vous devez obtenir ceci :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink07.png
L'host0 est censé pointer sur le dossier projet, vérifions en tapant "ls"
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink08.png
Parfait. :)
Maintenant lançons l'eboot !
C'est simple, il suffit de taper "./eboot.pbp"
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink09.png
Si tout continue à bien se passer, le sample se lance immédiatement sur la PSP :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink16.png
Testons la prise de screenshot : la commande est "ss" suivie d'un nom et de l'extension BMP :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink10.png
Le screen se place immédiatement dans le dossier du jeu :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink11.png
Encore un truc marrant, c'est la commande "power" qui liste des trucs qui peuvent s'avérer utile :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink12.png
Bon, une fois fini le test, vous pouvez quitter le jeu comme d'habitude via la touche home, ou alors utiliser la commande "reset" (je préfère utiliser le combo alt+R)
Ca affiche ça :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink13.png
Et la PSP quitte le jeu pour revenir à l'écran d'accueil de PSPLink.
Maintenant voyons le truc le plus intéressant de cette méthode : le crash handling !
Si vous codez sur PSP, ça vous est forcément déjà arrivé au moins une fois : vous avez oublié de copier un fichier sur la memory stick, oublié de charger une image, remplit la mémoire sans faire attention... bref, le plantage, avec reboot de la PSP obligatoire... >_<
Grâce à cette méthode, ça n'arrivera (quasiment) plus jamais ! :ange:
Testons. Effacez un des fichiers .png du répertoire du sample, lancez l'eboot (les commandes tapées précédemment sont sauvegardées, utilisez les flèches haut et bas) et validez l'écran d'avertissement.
On y coupe pas, la PSP plante.
Mais hooo comme c'est étrange (:oha:), sur le client PC de drôles de trucs sont apparus :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink14.png
Toutes ces informations sont certainement très utiles à qui sait les déchiffrer, mais moi à cet instant je ne vois qu'un seul truc à ma portée : taper "reset" (ou alt+R)
Magie ! la psp revient à l'écran d'accueil de PSPLink et le client est prêt à recevoir la prochaine commande B) :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink15.png
Une fois que vous avez fini tous vos tests, tappez "exit" pour quitter, le client PC se fermera et la PSP reviendra au XMB :)
[B]4. Automatisation
Si vous utilisez un fichier .bat pour copier votre eboot sur votre PSP ou dans le repertoire PSPLink de votre projet, vous pouvez également faire en sorte que l'eboot soit lancé automatiquement dès la fin de la compilation !
Pour cela rien de plus simple, mettez l'executable SendPspCommand.exe (merci à Brunni !) dans le répertoire de votre projet et modifiez le comme dans l'exemple ci dessous (un extrait du .bat qui est lancé à chaque compilation)
copy eboot.pbp Projet /y > nul
IF ERRORLEVEL 1 GOTO END
SendPspCommand ./eboot.pbp
:END
(le errorlevel empêche de lancer l'eboot si la compilation ne s'est pas bien passée)
[B]5. Plus loin
Consultez la doc de psplink (le fichier pdf dans l'archive) c'est bien complet, et y'a la liste complète des commandes à taper dans le client PC.
On y apprend également à débugger avec (bon courage, j'ai jamais vraiment essayé perso)
Et aussi à utiliser le wifi en lieu et place de l'USB (amusez vous si ca vous chante, je préfère de loin l'USB, bien plus rapide et fiable)
Grand merci à Tyranid pour ce logiciel qui ne quitte plus aucune de mes memory stick ! ^^
Merci également à Brunni pour son SendPspCommand très utile ;)
Tant pis pour ceux qui ne me lisent pas donc :rolleyes:
[B]1. Concept
Beaucoup de ceux qui ont exploité les capacités avancées de devhook ou certains plugins des custom firmwares de Dark Alex savent déja de quoi il s'agit quand je parle d'usbhost, mais appliquée aux homebrews.
Pour les autres, il s'agit d'une procédure qui permet à la PSP de lancer des applications placées sur le disque dur du PC via le port USB, un peu comme si le PC était une grosse memory stick.
Avantages :
0 transfert à faire sur la MS à chaque test
lancement immédiat de l'eboot
possibilité de debug
screenshot à tout moment
plus jamais besoin de redémarrer la PSP en cas de plantage
Même hors du cadre du dev, c'est très intéressant pour tester les homebrews, car on met rien sur la MS, tout reste sur le PC, c'est pratique.
Par exemple pour tester les évolutions de l'émulateur N64, plus besoin de mettre à chaque fois sur sa MS 4 ou 5 roms de 30Mo juste pour tester.
Je vous ai convaincu je pense (les autres ont déja fermé l'onglet), donc passons à l'installation ! :w00t:
[B]2. Installation
Récupérez d'abord cette archive (http://www.playeradvance.org/img/tuto_pa/psplink/psplink2.0.zip), puis décompressez la quelque part.
Sur la PSP, copiez le dossier psplink présent dans le dossier PSP/GAME au même endroit sur la MS (si vous êtes en kernel 1.50). Si vous n'êtes pas en kernel 1.50 ou si vous ne savez pas de quoi je parle, copiez le dossier dans PSP/GAME150 sur la memory stick.
Sur le PC, copiez n'importe où (mais je trouve plus propre de le mettre dans le dossier du projet) le contenu du répertoire PC
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink03.png
Puis copiez dans le répertoire projet qui s'y trouve les fichiers de votre application ou d'un homebrew quelconque (vous pouvez bien sur renommer le dossier projet mais pensez à modifier le psplink.bat en conséquence)
Pour l'exemple j'y ai copié l'eboot et les fichiers du tuto oslib n°4 :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink04.png
Ensuite lancez sur la PSP l'application PSPLink :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink06.png
Vous aurez normalement ce simple message à l'écran :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink05.png
Et connectez la PSP au PC via le câble USB.
La PSP sera alors détecté en type B.
Si vous avez déjà fait ça, sautez cette étape, sinon vous savez quoi faire, c'est pas la première fois que vous installez un driver, si ? :huh:
Le driver se trouve dans l'archive fournie plus haut.
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink01.png
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink02.png
[B]3. Utilisation
Il n'y a qu'a lancer le client PC : double cliquez sur le psplink.bat
Si tout c'est bien passé, vous devez obtenir ceci :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink07.png
L'host0 est censé pointer sur le dossier projet, vérifions en tapant "ls"
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink08.png
Parfait. :)
Maintenant lançons l'eboot !
C'est simple, il suffit de taper "./eboot.pbp"
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink09.png
Si tout continue à bien se passer, le sample se lance immédiatement sur la PSP :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink16.png
Testons la prise de screenshot : la commande est "ss" suivie d'un nom et de l'extension BMP :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink10.png
Le screen se place immédiatement dans le dossier du jeu :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink11.png
Encore un truc marrant, c'est la commande "power" qui liste des trucs qui peuvent s'avérer utile :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink12.png
Bon, une fois fini le test, vous pouvez quitter le jeu comme d'habitude via la touche home, ou alors utiliser la commande "reset" (je préfère utiliser le combo alt+R)
Ca affiche ça :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink13.png
Et la PSP quitte le jeu pour revenir à l'écran d'accueil de PSPLink.
Maintenant voyons le truc le plus intéressant de cette méthode : le crash handling !
Si vous codez sur PSP, ça vous est forcément déjà arrivé au moins une fois : vous avez oublié de copier un fichier sur la memory stick, oublié de charger une image, remplit la mémoire sans faire attention... bref, le plantage, avec reboot de la PSP obligatoire... >_<
Grâce à cette méthode, ça n'arrivera (quasiment) plus jamais ! :ange:
Testons. Effacez un des fichiers .png du répertoire du sample, lancez l'eboot (les commandes tapées précédemment sont sauvegardées, utilisez les flèches haut et bas) et validez l'écran d'avertissement.
On y coupe pas, la PSP plante.
Mais hooo comme c'est étrange (:oha:), sur le client PC de drôles de trucs sont apparus :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink14.png
Toutes ces informations sont certainement très utiles à qui sait les déchiffrer, mais moi à cet instant je ne vois qu'un seul truc à ma portée : taper "reset" (ou alt+R)
Magie ! la psp revient à l'écran d'accueil de PSPLink et le client est prêt à recevoir la prochaine commande B) :
http://www.playeradvance.org/img/tuto_pa/psplink/tuto_psplink15.png
Une fois que vous avez fini tous vos tests, tappez "exit" pour quitter, le client PC se fermera et la PSP reviendra au XMB :)
[B]4. Automatisation
Si vous utilisez un fichier .bat pour copier votre eboot sur votre PSP ou dans le repertoire PSPLink de votre projet, vous pouvez également faire en sorte que l'eboot soit lancé automatiquement dès la fin de la compilation !
Pour cela rien de plus simple, mettez l'executable SendPspCommand.exe (merci à Brunni !) dans le répertoire de votre projet et modifiez le comme dans l'exemple ci dessous (un extrait du .bat qui est lancé à chaque compilation)
copy eboot.pbp Projet /y > nul
IF ERRORLEVEL 1 GOTO END
SendPspCommand ./eboot.pbp
:END
(le errorlevel empêche de lancer l'eboot si la compilation ne s'est pas bien passée)
[B]5. Plus loin
Consultez la doc de psplink (le fichier pdf dans l'archive) c'est bien complet, et y'a la liste complète des commandes à taper dans le client PC.
On y apprend également à débugger avec (bon courage, j'ai jamais vraiment essayé perso)
Et aussi à utiliser le wifi en lieu et place de l'USB (amusez vous si ca vous chante, je préfère de loin l'USB, bien plus rapide et fiable)
Grand merci à Tyranid pour ce logiciel qui ne quitte plus aucune de mes memory stick ! ^^
Merci également à Brunni pour son SendPspCommand très utile ;)