PySNES- Um emulador de Nintendo 8 bits em Python

423 views
Skip to first unread message

Anderson du Lustoza

unread,
Apr 27, 2012, 7:39:31 AM4/27/12
to gibi-...@googlegroups.com
O codigo do PySNES é baseado no Nespy, um projeto descontinuado.
Porem nada impede que seja usado outros codigos.
A interface grafica é escrita em pygobject.
Não se animem muito pois como não sou programador profissional e não sei se o projeto vira, mas nós vamos tentar.
A pagina de download sera essa: https://sites.google.com/site/andersondulustoza/pysnes

Pablo Almeida

unread,
Apr 27, 2012, 8:02:44 AM4/27/12
to gibi-...@googlegroups.com
Olá!

Antes de qualquer coisa, uma pergunta: por que "PySNES" se ele é um emulador de NES? não deveria ser PyNES?

Anderson du Lustoza

unread,
Apr 28, 2012, 7:53:56 AM4/28/12
to gibi-...@googlegroups.com
É que eu o pensei para emular tanto nes quanto snes.
por enquanto mudarei para PyNES.
Vou postar o download do source só na proxima semana porque tem uns ajustes.
O codigo original que estou usando usa o modulo pygame para graficos, som e controles.
o pygame é ótimo, mas acho que o emulador ficaria melhor usando apenas o python + gtk.

pabloal...@gmail.com

unread,
Apr 28, 2012, 9:19:56 AM4/28/12
to gibi-...@googlegroups.com
Eu peguei o código que tá no Google Code deles e dei uma olhada rápida. A sessão de CPU parece um pouco nebulosa pra mim porque não entendi o porquê daquelas coisas, mas o código está bem legível e comentado. E, se só aquela quantidade de código ali é suficiente para rodar Mario, fazer emuladores é bem menos difícil do que eu pensei. :)

Anderson du Lustoza

unread,
Apr 28, 2012, 4:04:15 PM4/28/12
to gibi-...@googlegroups.com
Então vc entendeu o codigo melhor que eu.
No entanto nunca consegui executar o codigo original do nespy. outros projetos similares como pygasus e spyn
rodam apenas o mario bros(falo do primeiro, tipo arcade), ja o nespy nunca consegui rodar nada.
ele retorna o seguinte erro na sessão "emulator":
cyclesTaken = self.opCodes[currentOpCode](self.nesSystem, self)
KeyError: '0x0'

pabloal...@gmail.com

unread,
Apr 28, 2012, 7:16:56 PM4/28/12
to gibi-...@googlegroups.com
Não, não entendi muita coisa não! Mas é que essa parte e a parte instructions.py foram as mais nebulosas. Tentei rodar rapidamente aqui mas não consegui também. Tentei rodar o gui.py . Qual é o arquivo principal?

Anderson du Lustoza

unread,
Apr 28, 2012, 8:19:34 PM4/28/12
to gibi-...@googlegroups.com
Veja os outros projetos similares, pygasus e spyn.
Podemos mudar e usar um deles.
vou mandar um e-mail para os desenvolvedores do nespy, caso não obtenha respostas irei contactar com os outros projetos.

Anderson du Lustoza

unread,
May 2, 2012, 10:35:05 AM5/2/12
to gibi-...@googlegroups.com
Download do pysnes (ou "pynes" neste momento), com o emulador em si e a interface grafica de usuario.
Olha o link ai:
https://sites.google.com/site/andersondulustoza/pysnes

Pablo Almeida

unread,
May 8, 2012, 2:38:07 PM5/8/12
to gibi-...@googlegroups.com
Como eu instalo/rodo?

Pablo Almeida

unread,
May 9, 2012, 1:17:36 AM5/9/12
to gibi-...@googlegroups.com
Pode deixar, já consegui. Tava faltando o Python 3 e as bibliotecas do Gobject. Então, a ideia é portar para Python 3? Se formos fazer isso, melhor fazermos mesmo logo no início.

Anderson du Lustoza

unread,
May 9, 2012, 7:52:41 AM5/9/12
to gibi-...@googlegroups.com
Mudanças de plano. O autor do projeto original me mandou um e-mail dizendo que o source emula apenas cpu pois a gpu esta incompleta e nem ele saberia rodar um jogo.
Mas penso numa maneira de usar o codigo do bsnes.
Existe um projeto de python-bsnes abandonado:
http://snesemu.black-ship.net/emus/bsnes/unofficial/bsnes-python-20100420.tar.bz2
Podemos usa-lo para criar apenas uma interface alternativa de bsnes em pygobject.
pacote debian do bsnes:
http://security.ubuntu.com/ubuntu/pool/universe/b/bsnes/bsnes_0.084-1_i386.deb
Tudo em python 3, claro.
Reply all
Reply to author
Forward
0 new messages