Actualité
icon0   console lib

ConsoleLib : Une librairie pour faire un programme en mode console

par ,
Source: Forums PSPGen

Geecko, un développeur, a créé une librairie permettant de faire simplement un programme en mode console sur PSP.

Cette librairie a pour objectif de permettre de créer sur PSP un programme en console, comme on pourrait en faire pour PC par exemple.

- Ce qui suit est donc réservé aux développeurs seulement -

Cette librairie utilise l'intraFont, qui permet donc un affichage du texte avec la police de Sony utilisée dans le XMB, et le clavier de Danzeff pour l'entrée de texte.

plus ou moins console
Un exemple de programme en console : Le jeu "Plus ou moins" du Site du zéro

plus ou moins console psp
Ce même jeu adapté sur PSP par l'auteur de la librairie, avec la librairie bien sûr

Grâce à quelques fonctions, vous pourrez donc très simplement adapter vos programmes PC en console sur PSP.

Voici la liste des fonctions :

  • void consoleInit(short mode);

    Initialise la librarie avec un effet de fondu.

    @param mode - FULL pour utiliser le clavier Danzeff, sinon LITE.
  • void consoleExit();

    Désinitialise la librairie, puis quitte avec un effet de fondu.
  • short consoleSwitchSFX();

    Active ou désactive les effets de défilement et de fondu.

    @returns l'état actuel.
  • void consolePrintText(short mode, const char* text);

    Ecrit un texte sur la console.

    @param mode - ADD pour ajouter, REPLACE pour remplacer.
    @param text - pointeur vers la chaîne de caractères.
  • void consolePrintfText(short mode, const char* text, ...);

    Ecrit un texte sur la console (avec formatage). Equivalent de printf.

    @param mode - ADD pour ajouter, REPLACE pour remplacer.
    @param text - pointeur vers la chaîne de caractères fomatée.
  • const char* consoleInputText(short mode);

    Demander d'enter un texte, et le retourne.

    @param mode - LETTERS ou NUMBERS (clavier danzeff)
    @returns pointeur vers la chaine de caractères.
  • unsigned int consoleButton(unsigned int button, short mode);

    Regarde si un bouton est pressé.

    @param button - par exemple PSP_CTRL_CROSS
    @param mode - PRESSED, JUST_PRESSED, JUST_RELEASED, STILL_PRESSED
    @returns 1 si vrai, sinon 0.
  • unsigned int consoleWaitButton(unsigned int button, const char* text);

    Attente d'un appui sur un bouton.

    @param button - par exemple PSP_CTRL_CROSS. Si 0, attente de n'importe quelle touche.
    @returns une variable SceCtrlData.

ConsoleLib

Téléchargement, instructions et mode d'emploi disponibles
dans les fiches de téléchargement ci-dessous.

dl

Commenter 12 commentaires

Mon ouïe
Geecko va être content =D

Je ne suis tout de même pas sûr que ce soit une bonne idée de lister une partie des fonctions comme ça... L'usage de doxygen n'est pas sans raison : ça permet d'avoir une mise en page nettement plus lisible.

( Enfin, il faut voir si on considère la partie « graphics » comme réservée à l'usage interne... )

Le jeu "Plus ou moins" du Site du zéro

C'est pas eux qui ont inventé le concept :P
Signaler Citer
trobert94
Mon ouïe Wrote:
Le jeu "Plus ou moins" du Site du zéro

C'est pas eux qui ont inventé le concept :P

Ouais mais c'est eux qui ont fait le .exe que j'ai lancé, donc je les cite, c'est le minimum ;)
Signaler Citer
RomRom22
Super pour les devs sa va faciliter la programmation des petits programmes du genre filer
juju03500 Wrote:Heu juste comme sa c'est moi ou le chat marche plus ?

Moi aussi ça me le fais souvent :?

dstatic Wrote: Tiens, une console dans une console! J'vais pouvoir me coucher moins niaiseux aujourd'hui :mrgreen:
pour faire simple une console est ce qui permet d'entrer des commandes pour...enfin pas mal de choses,par exemple il existe une commande sur PC qui permet de connaitre toutes les informations relatives à sa connexion internet et j'en passe...
En voici une image (de la console windows)
Image
Signaler Citer
Mon ouïe
Le serveur dark-alex ne répond plus apparemment... Peu importe :P

Il n'existe pas de « commandes sur PC ». Les commandes qu'on entre dans une ligne de commande sont spécifiques aux shell utilisé, et à l'OS.

D'ailleurs, les applications qu'on y lance font nettement plus que printf/scanf. Voir google :
http://www.videolan.org/doc/streaming-h ... aylist.jpg
http://weechat.flashtux.org/screenshots ... detail.png
http://www.skybert.nu/graphics/computer ... nd_ecb.png
http://omploader.org/vMTEwMQ/2008-12-17 ... _scrot.png

De l'autre côté, il y a des applications dans lesquelles on entre des données lors de leur appel, et qui se contente d'afficher le résultat traité à l'écran, lequel résultat pourra être utilisée comme entrée d'une autre commande. C'est très pratique pour automatiser certaines tâches, sauvegarder les messages d'erreurs, etc.
Signaler Citer
dstatic
RomRom22 Wrote:
dstatic Wrote: Tiens, une console dans une console! J'vais pouvoir me coucher moins niaiseux aujourd'hui :mrgreen:
pour faire simple une console est ce qui permet d'entrer des commandes pour...enfin pas mal de choses,par exemple il existe une commande sur PC qui permet de connaitre toutes les informations relatives à sa connexion internet et j'en passe...
En voici une image (de la console windows)
Image


Lol donner une leçon à un gamer/pciste qui étudie en électronique! Je sais depuis l'âge de 6-7 ans ce qu'est une console.. J'utilise les commande ping, tracert, ipconfig, etc chaque jours et je programme en C en mode console afin de programmer des microcontrôleurs qui sera l'objectif de cet automne. Je sais que tu voulais bien faire mais sa me frustre de me faire donner une leçon venant d'un amateur.
Signaler Citer