La PSP est une console portable conçu par Sony et visant un public au premier abord hard-gamer. Néanmoins, cette page dédiée à la console va permettre de mettre à la portée de tous ce petit bijou et de l'exploiter à 100% !
Ces informations serviront quelque peu pour les néophytes qui veulent savoir ce que cache le ventre de leur console, mais surtout aux développeurs qui s'intéresseront au hardware de la machine pour en faire bon usage.
—-
—-
[Ubuntu Dapper] : la PSP est reconnue directement comme un lecteur de musique ordinaire et montée automatiquement. Cependant, vous pouvez aussi la définir dans le fstab et la gérer comme un disque amovible. Elle est considérée comme un disque sd ?
Une fois branchée, faites un dmesg ou fdisk pour récupérer sous quelle adresse disque elle est placée:
$ dmesg [4296824.734000] usb 4-1: new high speed USB device using ehci_hcd and address 4 [4296824.849000] scsi1 : SCSI emulation for USB Mass Storage devices [4296824.849000] usb-storage: device found at 4 [4296824.849000] usb-storage: waiting for device to settle before scanning [4296829.850000] Vendor: Sony Model: PSP Rev: 1.00 [4296829.850000] Type: Direct-Access ANSI SCSI revision: 00 [4296829.854000] SCSI device sdb: 985088 512-byte hdwr sectors (504 MB) [4296829.855000] sdb: Write Protect is off [4296829.855000] sdb: Mode Sense: 00 6a 20 00 [4296829.855000] sdb: assuming drive cache: write through [4296829.861000] SCSI device sdb: 985088 512-byte hdwr sectors (504 MB) [4296829.862000] sdb: Write Protect is off [4296829.862000] sdb: Mode Sense: 00 6a 20 00 [4296829.862000] sdb: assuming drive cache: write through [4296829.862000] sdb: sdb1 [4296829.865000] sd 1:0:0:0: Attached scsi removable disk sdb [4296829.865000] sd 1:0:0:0: Attached scsi generic sg1 type 0 [4296829.873000] usb-storage: device scan complete [4296830.927000] FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive! $ fdisk -l Disk /dev/sda: 164.6 GB, 164696556032 bytes 255 heads, 63 sectors/track, 20023 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 20023 160834716 b W95 FAT32 Disk /dev/sdb: 504 MB, 504365056 bytes 32 heads, 32 sectors/track, 962 cylinders Units = cylinders of 1024 * 512 = 524288 bytes Device Boot Start End Blocks Id System /dev/sdb1 * 1 961 491789+ 6 FAT16 $ mount -l ... ... ... /dev/sdb1 on /media/psp type vfat (rw,nosuid,nodev,quiet,shortname=mixed,uid=100 0,gid=1000,umask=077,iocharset=utf8)
Voilà, ça devrait être bon !
mount -l
est celui de l'auto-détection de la PSP, avant de toucher au fstab. Normalement le montage automatique fonctionne et vous pouvez manipuler les fichiers sur la PSP.
La PSP est capable de lire un certain nombre de formats vidéo, comme documenté sur le site US de Sony:
D'autre part, la résolution native de la PSP est 480x272. Mais ces informations sont loin d'être suffisantes pour pouvoir encoder des vidéos lisibles par une PSP.
Dans les faits, après recherches sur le web et nombreux tests, cela se traduit par les caractéristiques plus précises suivantes:
Attention, cette section ne parle que les PSPs avec firmware officiels. Les firmwares modifiés ont des caractéristiques différentes – meilleures la plupart du temps:
"Transcodage" signifiant en vidéo tout simplement "conversion de format".
Pour transcoder des DVDs vers la PSP, le plus simple est sans doute d'utiliser Handbrake, un soft Open Source qui possède une version en ligne de commande pour Linux.
Typiquement, une simple commande comme:
./HandBrakeCLI -i /media/cdrom0/VIDEO_TS -L -N -f mp4 -w 720 -l 480 -m -e x264 -x level=30:trellis=1:cabac=1 -S 700 -2 -E faac -B 128 -a 3 -R 48 -o "VIDEO.mp4"
… permet de créer un fichier lisible sur la PSP de 700MB max (qualité UMD Vidéo), au format NTSC (720x480), qui sera d'ailleurs lu en pleine résolution sur une télé si on utilise une PSP Slim & Lite.
Afin d'éviter de stresser inutilement les lecteurs de DVD, il vaut mieux faire une copie locale avec vobcopy (vobcopy -m
).
Il existe une interface graphique en paquet deb pour amd64 et i386 ici :
Pour transcoder des fichiers AVI, un des meilleurs softs disponibles pour la PSP en ce moment (juin 2009) est sans doute avidemux, un outil assez impressionnant de conversion et travail sur les fichiers AVI.
Pour la PSP, en particulier pour les formats en résolution élevée, il faut utiliser la version SVN de la 2.4. sous Ubuntu (ou disponible directement dans les dépôt sous Jaunty), voir les miroirs proposés sur le site de avidemux, cela ça marche très bien.
Méthode de conversion pour obtenir du 480x272 sur un firmware officiel récent - tutoriel très rapide - :
Le fichier résultant doit être stocké, non pas dans "/MP_ROOT" mais dans "/VIDEO". Il n'y a pas de convention de nommage particulière.
Attention: cette méthode fonctionne bien pour les grandes résolutions, mais il faut faire quelques manipulations supplémentaires pour les plus petites résolutions: il faut en effet éditer à la main les filtres vidéo qui convertissent l'image vers la résolution cible.
Une nouvelle version de ce soft est disponible depuis le 13 mars 2007 dans sa version 0.3.
Voici les nouveautés ajoutées depuis la version 2.0 :
Plus d'informations sur Le site officiel de pspvc
C'est un soft graphique (basé sur ffmpeg) qui permet d'encoder des vidéos sous format de la PSP : MPEG4/SP (all firmware), H264/AVC (firmware 2.0+) ou H264/AVC 480x272 (firmware 3.03-OE-B+). Très simple d'utilisation et d'installation une fois les dépendances installées.
Les bibliothèques indiquées pour les dépendances doivent être installées avant, et en version de développement (dev). Pour les installer (sous feisty), installez les paquets nasm yasm libfaac-dev libxvidcore4-dev liba52-0.7.4-dev libgtk2.0-dev
Télécharger l'archive du programme sur le site. Décompresser le fichier dans votre répertoire personnel, déplacez-vous dans le dossier créé et ensuite :
sudo ./install.sh
pour exécuter le programme, dans un terminal :
pspvc
Note: le script install.sh lance la compilation/installation de ffmpeg qui est empaqueté avec. Ce n'est pas forcément une bonne idée. Vous pouvez juste aller chercher dans le repetoire archives les sources de pspcv, et compiler à partir de là.
tar xfvz pspvc-0.3.tar.gz cd pspvc-0.3 ./configure make sudo make install
Si ./configure se termine par un message expliquant qu'il manque une dépendance, alors que vous êtes sûr de bien l'avoir déjà, c'est sûrement qu'il manque la version de développement du paquet (les "headers"). Il vous manquera donc certainement le paquet "libgtk2.0-dev", même si vous êtes sous Gnome et que vous avez déjà tous les paquets gtk 2.0 dont "libgtk2.0".
Les vidéos mpeg4 vont dans MP_ROOT/100MNV01
et celles encodées en H264 dans MP_ROOT/100ANV01
WinFF permet de convertir à peu près n'importe quoi dans un format lisible par la PSP.
Consultez la page WinFF pour plus d'informations.
qPSP Manager est un outil créé par Bernat Ràfales Mulet pour gérer sa PSP, il permet entre autres gérer les PBP, compresser/décompresser les ISO/CSO, gérer les sauvegardes de jeux… Il est aussi capable de transférer le tout sur votre PSP à partir d'Ubuntu.
Il y a deux méthodes pour l'instant. Pour la première, vous devrez compiler le programme avant de pouvoir l'utiliser, pour la seconde, vous n'aurez qu'a installer le paquet.
cd qpspmanager-X.X.X
qmake
make
src/isocompressor.h:38: error: 'uint32_t' does not name a type
Dans ce cas, éditez le fichier /src/isocompressor.h en vérifiant que les 2 lignes ci dessous soient présente : (Ajouter la/les lignes manquantes )
# include <cstdint> la ligne # include <iostream>
.
Puis lancez la commande qmake. Enfin éditez le fichier Makefile fraichement créé en remplaçant
CXXFLAGS = -pipe -O2 -Wall -W -D_REENTRANT $(DEFINES) par CXXFLAGS = -pipe -O2 -Wall -W -D_REENTRANT $(DEFINES) -std=c++0x
sudo make install
sudo cp /home/nomdutilisateur/qpspmanager-X.X.X/bin/QPSPManager /usr/bin/qpspmanager
Ce bug sera résolu dans la future version
qpspmanager
si le lien est cassé, ce paquet est aussi disponible sur sourceforge :
télécharger le ici
qpspmanager
L'outil qui permet la compression/décompression des fichiers ISO est ciso disponible dans le dépôt universe pour feisty (peut-être autre part aussi mais en tout cas il est là)
Pour l'installer tapez dans un terminal
sudo apt-get install ciso
ciso niveau fichierentree fichiersortie
Le niveau de compression doit être compris entre 1 et 9
Exemple
ciso 5 fichier.iso fichier.cso
Le niveau de compression doit être 0.
Exemple
ciso 0 fichier.cso fichier.iso
Si vous êtes allergique a la ligne de commande il existe une interface graphique : Cso-Dax compressor . C'est un logiciel pour windows mais il existe une version linux qui utilise ciso.
Il faut télécharger l'archive a cette adresse http://psp.ducseb.net/download/cso-dax/cso-dax_compressor_0.34_linux.zip
Ensuite décompressez là dans votre répertoire personnel.
Maintenant il faut copier 3 fichiers dans : /usr/bin
Pour ça ouvrez un terminal et tapez
sudo cp "/home/VOTRE NOM/CSO DAX COMPRESSOR 0.34 Linux/FR/bin/ciso" "/usr/bin" (ceci copie le fichier ciso)
Puis
sudo cp "/home/VOTRE NOM/CSO DAX COMPRESSOR 0.34 Linux/FR/bin/csoCompiler" "/usr/bin" (ceci copie le fichier csoCompiler)
et enfin
sudo cp "/home/VOTRE NOM/CSO DAX COMPRESSOR 0.34 Linux/FR/bin/daxcr" "/usr/bin" (ceci copie le fichier daxcr)
Plus simple : taper dans un terminal
sudo nautilus (sous Ubuntu) ou sudo konqueror (sous Kubuntu) ou sudo thunar (sous Xubuntu)
et puis faites glisser simplement les fichiers: ciso,csoCompiler et daxcr.
Pour lancer l'interface il suffit de taper en respectant la casse
csoCompiler
Pour cela, je vous invite à installer le custom firmware 6.20 PRO-B7, 6.35 PRO-B7 ou 6.39 PRO-B7 (dernière version stable en date en ce 18 Juillet 2011) : tutoriel d'installation. Cette version a le mérite d'être compatible toutes PSPs (PSP1000/2000/3000/Go). Il suffira simplement de mettre à jour votre console en firmware 6.20, 6.35 ou 6.35 selon votre choix et d'installer le custom firmware qui correspond.
Précisons également que flasher sa PSP pour installer un custom firmware est une manipulation légale !
Passons aux choses sérieuses. Pour programmer sur votre console PSP, sachez que le code sera fait sur votre ordinateur, mais celui-ci n'est pas nativement capable de compiler pour une PSP. Il va donc falloir procéder à l'installation d'un environnement de développement pour pouvoir compiler vos programmes à lancer sur votre PSP (on appelle cela de la cross-compilation).
Tout d'abord, il faut savoir que ces quelques outils vous permettront de programmer sous 3 langages différents sur la PSP:
- Langage C : un standard, et celui que je vous conseillerai pour débuter.
- Langage C++ : un langage orienté objet (mettant en œuvre les notions de classe, héritage, surcharge d'opérateurs…). Bien plus complexe, une bonne base en C est recommandée si vous voulez mieux assimiler ce langage.
- Langage Assembleur MIPS R(S)4000 : le langage d'assembleur de la PSP, seulement pour les expérimentés, et n'est nécessaire que pour ceux voulant faire du hack sur la console ou créer un custom firmware, faire du reverse engineering.
Installez les paquets suivants :
build-essential autoconf automake bison flex libncurses5-dev libreadline-dev libusb-dev texinfo libgmp3-dev libmpfr-dev subversion
Modifiez le fichier .bashrc et mettez-y ceci à la fin :
export PSPDEV="/home/tuto/pspsdk" export PSPSDK="$PSPDEV/psp/sdk" export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"
Récupérez les sources :
svn co http://psp.jim.sh/svn/psp/trunk/psptoolchain
Remplacez toutes les occurences de svn://svn.ps2dev.org par http://psp.jim.sh/svn dans le dossiers scripts
.
Puis installez le tout :
. ~/.bashrc sudo ./toolchain-sudo.sh
Ajoutez le dépôt suivant à vos sources de mises à jour en tapant la commande suivante dans un terminal (Applications → Accessoire → Terminal):
echo "deb http://terbaddo.free.fr/debian default main" | sudo tee -a /etc/apt/sources.list
Rechargez la liste des paquets :
sudo apt-get update
Enfin, installez le paquet psptoolchain
sudo apt-get install psptoolchain
Contributeurs : Terbaddo, Naoki, Tioneb, Krevan et MrZeroo00, chdorb ,Sarom ,ignace72