Difference between revisions of "Pygame"

From ArmadeusWiki
Jump to: navigation, search
(creation)
 
m
Line 69: Line 69:
 
* [http://www.pygame.org/ pygame website]
 
* [http://www.pygame.org/ pygame website]
  
{{LanguageBar|SDL|Développement SDL|SDL Entwicklung}}
+
{{LanguageBar|pygame|pygame|pygame}}
<br>
+
  
 
[[Category: Software]]
 
[[Category: Software]]
 
[[Category:Graphical User Interface]]
 
[[Category:Graphical User Interface]]
 
[[Category: SDL]]
 
[[Category: SDL]]

Revision as of 18:01, 22 September 2009

On this page, you will find usefull informations to setup and develop pygame based applications for your Armadeus board.

Page under construction... Construction.png Informations on this page are not guaranteed !!

Introduction

Pygame is a set of Python modules designed for writing games. Pygame adds functionality on top of the excellent SDL library. This allows you to create fully featured games and multimedia programs in the python language.

For more informations -> http://www.pygame.org/

Installation

  • Launch Buildroot configuration
 $ make menuconfig

and choose pygame package in:
Menuconfig package.png

Menuconfig package graphics.png

you can choose pygame options too; then save your configuration

  • Regenerate your rootfs
 $ make

and reflash it on your board

Configuration

Our SDL version is using the FrameBuffer interface and so it's very important to have a /etc/fb.modes file up to date with the framebuffer parameters supported by your configuration (otherwise SDL try to use the VESA parameters which may misprogram the i.MX LCD controller).

For example for the Sharp LQ057, /etc/fb.modes should contain:

mode "320x240-176"
   # D: 16.000 MHz, H: 43.836 kHz, V: 176.047 Hz
   geometry 320 240 320 240 16
   timings 62500 9 27 0 7 9 2
   rgba 5/11,6/5,5/0,0/0
endmode
Note Note: /etc/fb.modes is now automatically generated at first boot of your rootfs by /etc/init.d/S01fb script.


  • If you want to update your fb.modes for your currently running LCD, then do:
 # fbset > /etc/fb.modes

Adding Tslib (Touchscreen library) support to SDL

SDL is by default compiled with Tslib support in current Buildroot distribution. You just have to make SDL knows the presence of Tslib when launching your application (assuming you have correct Tslib envt variables set):

 export SDL_MOUSEDRV=TSLIB
 export SDL_MOUSEDEV=$TSLIB_TSDEVICE

Usage

  • Take a look at armadeus/target/demos/???" sources
  • If SDL is complaining because it can't find any mouse (Unable to init SDL: Unable to open mouse) then, before launching the program, do:
 # export SDL_NOMOUSE=1

Tested pygame applications

Troubleshots

Links

Other languages:

English Flag.svg English  •  French Flag.svg Français