Pular para o conteúdo

Python no PSP: "Olá Mundo"

Comprei um PSP recentemente e entre uma jogatina e outra descobri várias coisas bacanas que se podia fazer nele, incluindo programar em python. Como encontrei pouca documentação disponível (pior ainda se você procurar em pt-br), resolvi criar este tutorial básico mostrando como fiz para escrever um "Olá, Mundo!" na tela do PSP.
Hugo Doria hdoria
Hits: 30.855 Categoria: Linux Subcategoria: Jogos
  • Indicar
  • Impressora
  • Denunciar

Introdução

Comprei um PSP recentemente e entre uma jogatina e outra descobri várias coisas bacanas que se podia fazer nele, incluindo programar em python. Infelizmente só hoje tive tempo de fuçar um pouco sobre o assunto e escrever meu primeiro código em python psp: o famoso "olá, mundo!".
Para rodar python no PSP eu precisei do PSP Stackless Python, um port da linguagem para o PSP feito por um brasileiro: Carlos Eduardo. A última versão do port é 2.5.2, que já dá para fazer bastante coisa.

Infelizmente no site do projeto há pouca documentação disponível (pior ainda se você procurar em pt-br). Como me interessei no assunto, e até para ajudar o Carlos, resolvi criar este tutorial básico mostrando como fiz para escrever um "Olá, Mundo!" na tela do PSP. Obviamente, dá para fazer muito mais que isso. :P

"Instalando" o python

O primeiro passo é "instalar" o PSP Stackless Python no seu PSP. Baixe a versão mais atual no site do projeto. Procure por StacklessPSP-2.5.2_R1.zip.

Descompactando o arquivo baixando você encontra: EBOOT.PBP e python.zip. Tudo o que você precisa fazer é copiar estes dois arquivos para o diretório PSP/GAME, que fica dentro do memory stick. Pronto, a "instalação" foi feita. :-)

NOTA: Recomendo que você crie um sub-diretório em PSP/GAME chamada "python", por exemplo, e coloque os dois arquivos dentro dele. Isso ajuda a manter uma melhor organização.

Para verificar é só ligar seu PSP e ir em GAME -> Memory Stick. Se tudo foi feito corretamente você verá o Stackless Python pronto para ser rodado:
O "Olá, Mundo!"

Sempre que o python for executado, ele procurará um arquivo chamado script.py dentro do mesmo diretório onde estão o EBOOT.PBP e o python.zip. É neste arquivo (script.py) que vamos colocar o nosso código.

Abra seu editor de texto preferido e cole o código abaixo:

# -*- encoding: utf-8 -*-

import psp2d

def main(mensagem):

    tela  = psp2d.Screen()
    fundo = psp2d.Image(480, 272)
    fonte = psp2d.Font('font.png')

    tela.blit(fundo)
    fonte.drawText(tela, 0, 0, mensagem)
    tela.swap()

    while True:
        joystick = psp2d.Controller()
        if joystick.circle:
            break

if __name__ == '__main__':
    try:
        main('Ola, mundo! =)')
    except:
        import traceback
        traceback.print_exc(file = file('erro.txt', 'w'))

Depois é só copiar este arquivo para dentro do mesmo diretório onde está o python e o EBOOT.PBP. PSP/GAME, ou PSP/GAME/python se você criou um subdiretório como eu recomendei.

Agora é só ligar seu PSP novamente, rodar o python e tchã-dan:
Seu primeiro script em python estará rodando. :-) Legal, né?

   1. Introdução
   2. Entendendo o código

Arch Linux: Uma distribuição otimizada para i686

Como criar pacotes para o Arch Linux

Pós-instalação do Arch Linux em um Dell Vostro 1400

KDEmod: Tornando mais simples o KDE do seu Arch Linux

ProFTPD com autenticação via MySQL

Jogue DOOM clássico completo no Linux com Prboom

Como jogar poker no Full Tilt Poker pelo Linux

Rodando Tíbia no GNU/Linux

Jogos para Linux (parte 5)

Estratégia para Shadow Era (Supernova Boring)

#1 Comentário enviado por renato.leite em 22/12/2008 - 20:56h
otimo artigo, isso mostra quanta coisa da para fazer com essa grande linguagem x]
#2 Comentário enviado por wswillianss em 23/12/2008 - 03:28h
Isso é Python meu irmão, a linguagem do passado, presente e futuro. Viva o Python! Chega de tanto "café".
#3 Comentário enviado por corvolino em 30/12/2008 - 02:24h
apoiado =d
#4 Comentário enviado por dmmaster em 02/01/2009 - 01:54h
Olá,

Tenho um PSP e tentei reproduzir o exemplo desse artigo e não consegui.

Foi gerado um arquivo de erro com as mensagens abaixo:

Traceback (most recent call last):
File "script.py", line 22, in <module>
main('Ola, mundo! =)')
File "script.py", line 9, in main
fonte = psp2d.Font('font.png')
IOError: Could not open file

Alguma sugestão?

Muito obrigado
#5 Comentário enviado por hdoria em 02/01/2009 - 08:15h
Olá dmmaster,

Você precisa colocar o arquivo font.png no mesmo diretório do script no seu PSP.

No texto do artigo eu falo:

"
fonte = psp2d.Font('font.png')

Aqui estamos instanciando uma Fonte. Precisamos de uma para poder mostrar um texto, claro. Infelizmente não existe nenhuma fonte embutida, então você precisará baixar uma. O tipo da fonte é SFonte.

A font.png que eu usei no exemplo pode ser baixada aqui. Você precisa colocá-la no mesmo diretório do python.
"

Só ficou faltando o link:
http://python-psp.net/trac/chrome/site/doc/font.png

#6 Comentário enviado por dmmaster em 02/01/2009 - 13:20h
Olá Hdoria,

Consegui rodar o "Olá Mundo", mto legal mesmo essa opção de programar em python para o PSP.

Tenho alguma experiencia em desenvolvimento (.net) e se quiser uma ajuda nesse projeto, pode contar comigo.

Valeu pela força.

#7 Comentário enviado por removido em 25/02/2009 - 02:01h
ola, boa noite tive um problema, fiz conforme o tutu mas apresenta a msg que n pode ser aberto, pois esta corrompido, recentimente fiz a atualização do firmware p/ o ultimo, será q tem alguma coisa haver?

grato


Jairo CarneiroO\;
#8 Comentário enviado por maurofav em 03/04/2009 - 00:48h
Por favor , eu queria poder baixar a fonte para rodar o Hello World , mas o site esta fora do ar , a onde eu posso arrumar tal arquivo??

Me ajudem , grato

Mauro
#9 Comentário enviado por ghregory em 14/05/2009 - 10:47h
FERÓÓÓÓIZ
#10 Comentário enviado por fabioarnoni em 01/07/2009 - 15:35h
Python é lindooooo, o linguagem maravilha !! já fiz vários programinhas facil facil e consegui utilizar em vários Sistemas Operacionais, inclusive no Ruindows, utilizei o py2exe e converti meu script pra exe heheheh também tem um outro aplicativo que da pra converter o codigo em java, fica perfeito heheh abraçcos !!!
#11 Comentário enviado por Miojo em 23/02/2010 - 19:36h
tem pyqt para psp?

Contribuir com comentário

Entre na sua conta para comentar.