<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://pandorawiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pmprog</id>
	<title>Pandora Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://pandorawiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pmprog"/>
	<link rel="alternate" type="text/html" href="https://pandorawiki.org/Special:Contributions/Pmprog"/>
	<updated>2026-05-03T03:40:12Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.32.0-alpha</generator>
	<entry>
		<id>https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29371</id>
		<title>TV-out cable</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29371"/>
		<updated>2014-01-13T22:09:31Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Plug descriptions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tvout.jpg|thumb|tv out cable]]&lt;br /&gt;
&lt;br /&gt;
This is the external tv-out cable.&lt;br /&gt;
&lt;br /&gt;
Can be ordered from dragonbox [https://www.dragonbox.de/index.php?id_product=119&amp;amp;controller=product&amp;amp;id_lang=1 here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Colour !! Description&lt;br /&gt;
|-&lt;br /&gt;
| EXT || Black || This side connects to the Pandora&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Yellow || Composite Video Out&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Blue || Audio Line In (L?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Black || Audio Line In (R?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || White || Audio Out (L)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Red || Audio Out (R)&lt;br /&gt;
|-&lt;br /&gt;
| SVideo || Black || S-Video Out&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29368</id>
		<title>TV-out cable</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29368"/>
		<updated>2014-01-13T20:12:06Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Got my channels the wrong way around&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tvout.jpg|thumb|tv out cable]]&lt;br /&gt;
&lt;br /&gt;
This is the external tv-out cable.&lt;br /&gt;
&lt;br /&gt;
Can be ordered from dragonbox [https://www.dragonbox.de/index.php?id_product=119&amp;amp;controller=product&amp;amp;id_lang=1 here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Colour !! Description&lt;br /&gt;
|-&lt;br /&gt;
| EXT || Black || This side connects to the Pandora&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Yellow || Composite Video Out&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Blue || Line In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Black || Audio In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Red || Audio Out (R)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || White || Audio Out (L)&lt;br /&gt;
|-&lt;br /&gt;
| SVideo || Black || S-Video Out&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29367</id>
		<title>TV-out cable</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29367"/>
		<updated>2014-01-13T20:10:50Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: TV Out Picture Changed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tvout.jpg|thumb|tv out cable]]&lt;br /&gt;
&lt;br /&gt;
This is the external tv-out cable.&lt;br /&gt;
&lt;br /&gt;
Can be ordered from dragonbox [https://www.dragonbox.de/index.php?id_product=119&amp;amp;controller=product&amp;amp;id_lang=1 here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Colour !! Description&lt;br /&gt;
|-&lt;br /&gt;
| EXT || Black || This side connects to the Pandora&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Yellow || Composite Video Out&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Blue || Line In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Black || Audio In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Red || Audio Out (L)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || White || Audio Out (R)&lt;br /&gt;
|-&lt;br /&gt;
| SVideo || Black || S-Video Out&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=File:Tvout.jpg&amp;diff=29366</id>
		<title>File:Tvout.jpg</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=File:Tvout.jpg&amp;diff=29366"/>
		<updated>2014-01-13T20:09:54Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: TV Out Cable&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;TV Out Cable&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29365</id>
		<title>TV-out cable</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=TV-out_cable&amp;diff=29365"/>
		<updated>2014-01-13T20:04:38Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Connection Table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Pandora_tvout_box.jpg|thumb|tv out cable]]&lt;br /&gt;
&lt;br /&gt;
This is the external tv-out cable.&lt;br /&gt;
&lt;br /&gt;
Can be ordered from dragonbox [https://www.dragonbox.de/index.php?id_product=119&amp;amp;controller=product&amp;amp;id_lang=1 here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Type !! Colour !! Description&lt;br /&gt;
|-&lt;br /&gt;
| EXT || Black || This side connects to the Pandora&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Yellow || Composite Video Out&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Blue || Line In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Black || Audio In (?)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || Red || Audio Out (L)&lt;br /&gt;
|-&lt;br /&gt;
| Phono || White || Audio Out (R)&lt;br /&gt;
|-&lt;br /&gt;
| SVideo || Black || S-Video Out&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Team&amp;diff=28209</id>
		<title>Team</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Team&amp;diff=28209"/>
		<updated>2013-10-15T07:43:20Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: /* Helpful People */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Official Team ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1-evildragon/ Evildragon ]&lt;br /&gt;
|ED&lt;br /&gt;
|Michael Mrozek&lt;br /&gt;
|[https://twitter.com/EvilDragon1717]&lt;br /&gt;
|http://dragonbox.de https://github.com/EvilDragon&lt;br /&gt;
| X&lt;br /&gt;
|Project MOTU&lt;br /&gt;
|[http://www.youtube.com/user/EvilDragon1717]&lt;br /&gt;
|[https://flattr.com/profile/evildragon]&lt;br /&gt;
|[donation@openpandora.org|address&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/76-notaz/ notaz]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://notaz.gp2x.de/&lt;br /&gt;
|&lt;br /&gt;
|kernel [[PicoDrive]]&lt;br /&gt;
|[http://www.youtube.com/user/notasaz]&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=FZUBJTCLEPAY2]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/7-mweston/ Mweston]&lt;br /&gt;
|&lt;br /&gt;
|Michael Weston &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|board design&lt;br /&gt;
|[http://www.youtube.com/user/MWeston2]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php?/user/265-davec DaveC]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|case dpad and keymat&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/86-skeezix/ skeezix]&lt;br /&gt;
|&lt;br /&gt;
|Jeff Mitchell&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|libpnd minimenu Zikzak&lt;br /&gt;
|[http://www.youtube.com/user/skeezixcodejedi]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|mfk&lt;br /&gt;
|M. Fatih Kilic &lt;br /&gt;
|[https://twitter.com/_mfk]&lt;br /&gt;
|[http://www.gp2xtr.com/ gp2xtr]&lt;br /&gt;
|&lt;br /&gt;
|sourcing parts&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/69-pickle/ Pickle]&lt;br /&gt;
|&lt;br /&gt;
|Scott Smith&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|GLES [[PickleLauncher]]&lt;br /&gt;
|[http://www.youtube.com/user/Pickle136]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/127-djwillis/ djwillis]&lt;br /&gt;
|&lt;br /&gt;
|John Willis&lt;br /&gt;
|&lt;br /&gt;
|http://www.distant-earth.com/index.html&lt;br /&gt;
|&lt;br /&gt;
|wifi&lt;br /&gt;
|[http://www.youtube.com/user/DavidJohnWillis]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Helpful People ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/178-stuckie/ stuckie]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://www.stuckiegamez.co.uk&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/stuckiegamez]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/775-sebt3/ Sebt3]&lt;br /&gt;
|&lt;br /&gt;
|Sebastien Huss&lt;br /&gt;
|&lt;br /&gt;
|http://sebt3.openpandora.org&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4605-ekianjo/ ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/PandoraLiveInfo]&lt;br /&gt;
|[http://www.pandoralive.info Pandoralive.info]&lt;br /&gt;
|&lt;br /&gt;
|blog&lt;br /&gt;
|[http://www.youtube.com/user/ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/213-milkshake/ milkshake]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|repo&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=X5HE7FCG967KG paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/5-zodttd/ zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  &lt;br /&gt;
|[http://www.youtube.com/user/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/3847-iprice/ iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|dev&lt;br /&gt;
|[http://www.youtube.com/user/iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1035-linux-swat/ Linux-SWAT]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware SL4P] [http://pandorawiki.org/Software_projects/OS/SOLEIL SOLEIL]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware#Helping_this_project paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/114-mcobit/ mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4191-ingoreis/ ingoreis]&lt;br /&gt;
|&lt;br /&gt;
|Ingo Reis&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|tester&lt;br /&gt;
|[http://www.youtube.com/user/reisingo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/IsoTkhs]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/559-exophase/ Exophase]&lt;br /&gt;
|&lt;br /&gt;
| no&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[[DraStic]]&lt;br /&gt;
|[http://www.youtube.com/user/Exophase]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4382-wb/ _wb_]&lt;br /&gt;
|&lt;br /&gt;
|Jon Sneyers&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|nubnub mod&lt;br /&gt;
|[http://www.youtube.com/user/jonsneyers]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/198-cpasjuste/ cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|David Carre&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|pxml, pnd minimenu xda&lt;br /&gt;
|[http://www.youtube.com/user/cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/5182-ptitseb/ ptitSeb]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|lots of ports&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/2326-comradekingu/ comradekingu]&lt;br /&gt;
|comradekingu&lt;br /&gt;
|Allan Nordhøy&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|wiki&lt;br /&gt;
|[http://www.youtube.com/user/cccpkingu]&lt;br /&gt;
|[https://flattr.com/profile/anotheragency]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/3255-lunixbochs/ lunixbochs]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|libGL&lt;br /&gt;
|[http://boards.openpandora.org/index.php/topic/11506-opengl-implementation-tldr-more-games/]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/3596-atc/ aTc]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|.Next&lt;br /&gt;
|[http://boards.openpandora.org/index.php/topic/8452-next-development/]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Maybe add field for social networking site, like facebook and g+, country?  With semantic lists we can do coordinates&lt;br /&gt;
&lt;br /&gt;
B-zar, gruso, bobbens, superroach, SONY, sswarm, wally, moxie, and lots of others, been doing the ones i can find&lt;br /&gt;
youtube links to thus far.&lt;br /&gt;
&lt;br /&gt;
old info in discussion&lt;br /&gt;
&lt;br /&gt;
https://twitter.com/pokeparadox  https://twitter.com/David994A&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Team&amp;diff=28206</id>
		<title>Team</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Team&amp;diff=28206"/>
		<updated>2013-10-15T06:30:32Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: /* Helpful People */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Official Team ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1-evildragon/ Evildragon ]&lt;br /&gt;
|ED&lt;br /&gt;
|Michael Mrozek&lt;br /&gt;
|[https://twitter.com/EvilDragon1717]&lt;br /&gt;
|http://dragonbox.de https://github.com/EvilDragon&lt;br /&gt;
| X&lt;br /&gt;
|Project MOTU&lt;br /&gt;
|[http://www.youtube.com/user/EvilDragon1717]&lt;br /&gt;
|[https://flattr.com/profile/evildragon]&lt;br /&gt;
|[donation@openpandora.org|address&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/76-notaz/ notaz]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://notaz.gp2x.de/&lt;br /&gt;
|&lt;br /&gt;
|kernel [[PicoDrive]]&lt;br /&gt;
|[http://www.youtube.com/user/notasaz]&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=FZUBJTCLEPAY2]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/7-mweston/ Mweston]&lt;br /&gt;
|&lt;br /&gt;
|Michael Weston &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|board design&lt;br /&gt;
|[http://www.youtube.com/user/MWeston2]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php?/user/265-davec DaveC]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|case dpad and keymat&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/86-skeezix/ skeezix]&lt;br /&gt;
|&lt;br /&gt;
|Jeff Mitchell&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|libpnd minimenu Zikzak&lt;br /&gt;
|[http://www.youtube.com/user/skeezixcodejedi]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|mfk&lt;br /&gt;
|M. Fatih Kilic &lt;br /&gt;
|[https://twitter.com/_mfk]&lt;br /&gt;
|[http://www.gp2xtr.com/ gp2xtr]&lt;br /&gt;
|&lt;br /&gt;
|sourcing parts&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/69-pickle/ Pickle]&lt;br /&gt;
|&lt;br /&gt;
|Scott Smith&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|GLES [[PickleLauncher]]&lt;br /&gt;
|[http://www.youtube.com/user/Pickle136]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/127-djwillis/ djwillis]&lt;br /&gt;
|&lt;br /&gt;
|John Willis&lt;br /&gt;
|&lt;br /&gt;
|http://www.distant-earth.com/index.html&lt;br /&gt;
|&lt;br /&gt;
|wifi&lt;br /&gt;
|[http://www.youtube.com/user/DavidJohnWillis]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Helpful People ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/178-stuckie/ stuckie]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://www.stuckiegamez.co.uk&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/stuckiegamez]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/775-sebt3/ Sebt3]&lt;br /&gt;
|&lt;br /&gt;
|Sebastien Huss&lt;br /&gt;
|&lt;br /&gt;
|http://sebt3.openpandora.org&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4605-ekianjo/ ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/PandoraLiveInfo]&lt;br /&gt;
|[http://www.pandoralive.info Pandoralive.info]&lt;br /&gt;
|&lt;br /&gt;
|blog&lt;br /&gt;
|[http://www.youtube.com/user/ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/213-milkshake/ milkshake]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|repo&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=X5HE7FCG967KG paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/5-zodttd/ zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  &lt;br /&gt;
|[http://www.youtube.com/user/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/3847-iprice/ iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|dev&lt;br /&gt;
|[http://www.youtube.com/user/iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1035-linux-swat/ Linux-SWAT]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware SL4P] [http://pandorawiki.org/Software_projects/OS/SOLEIL SOLEIL]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware#Helping_this_project paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/114-mcobit/ mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4191-ingoreis/ ingoreis]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|tester&lt;br /&gt;
|[http://www.youtube.com/user/reisingo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/IsoTkhs]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/559-exophase/ Exophase]&lt;br /&gt;
|&lt;br /&gt;
| no&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[[DraStic]]&lt;br /&gt;
|[http://www.youtube.com/user/Exophase]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4382-wb/ _wb_]&lt;br /&gt;
|&lt;br /&gt;
|Jon Sneyers&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|nubnub mod&lt;br /&gt;
|[http://www.youtube.com/user/jonsneyers]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/198-cpasjuste/ cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|David Carre&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|pxml, pnd minimenu xda&lt;br /&gt;
|[http://www.youtube.com/user/cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/5182-ptitseb/ ptitSeb]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|lots of ports&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Maybe add field for social networking site, like facebook and g+, country?  With semantic lists we can do coordinates&lt;br /&gt;
&lt;br /&gt;
B-zar, gruso, bobbens, superroach, SONY, sswarm, wally, moxie, and lots of others, been doing the ones i can find&lt;br /&gt;
youtube links to thus far.&lt;br /&gt;
&lt;br /&gt;
old info in discussion&lt;br /&gt;
&lt;br /&gt;
https://twitter.com/pokeparadox  https://twitter.com/David994A&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Team&amp;diff=28205</id>
		<title>Team</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Team&amp;diff=28205"/>
		<updated>2013-10-15T06:20:14Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Splitting official team out&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Official Team ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1-evildragon/ Evildragon ]&lt;br /&gt;
|ED&lt;br /&gt;
|Michael Mrozek&lt;br /&gt;
|[https://twitter.com/EvilDragon1717]&lt;br /&gt;
|http://dragonbox.de https://github.com/EvilDragon&lt;br /&gt;
| X&lt;br /&gt;
|Project MOTU&lt;br /&gt;
|[http://www.youtube.com/user/EvilDragon1717]&lt;br /&gt;
|[https://flattr.com/profile/evildragon]&lt;br /&gt;
|[donation@openpandora.org|address&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/76-notaz/ notaz]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://notaz.gp2x.de/&lt;br /&gt;
|&lt;br /&gt;
|kernel [[PicoDrive]]&lt;br /&gt;
|[http://www.youtube.com/user/notasaz]&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=FZUBJTCLEPAY2]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/7-mweston/ Mweston]&lt;br /&gt;
|&lt;br /&gt;
|Michael Weston &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|board design&lt;br /&gt;
|[http://www.youtube.com/user/MWeston2]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php?/user/265-davec DaveC]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|case dpad and keymat&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/86-skeezix/ skeezix]&lt;br /&gt;
|&lt;br /&gt;
|Jeff Mitchell&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|libpnd minimenu Zikzak&lt;br /&gt;
|[http://www.youtube.com/user/skeezixcodejedi]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|mfk&lt;br /&gt;
|M. Fatih Kilic &lt;br /&gt;
|[https://twitter.com/_mfk]&lt;br /&gt;
|[http://www.gp2xtr.com/ gp2xtr]&lt;br /&gt;
|&lt;br /&gt;
|sourcing parts&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/69-pickle/ Pickle]&lt;br /&gt;
|&lt;br /&gt;
|Scott Smith&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|GLES [[PickleLauncher]]&lt;br /&gt;
|[http://www.youtube.com/user/Pickle136]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/127-djwillis/ djwillis]&lt;br /&gt;
|&lt;br /&gt;
|John Willis&lt;br /&gt;
|&lt;br /&gt;
|http://www.distant-earth.com/index.html&lt;br /&gt;
|&lt;br /&gt;
|wifi&lt;br /&gt;
|[http://www.youtube.com/user/DavidJohnWillis]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Helpful People ==&lt;br /&gt;
{|class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;font-size: 90%; border:1px solid gray; border-collapse: collapse;&lt;br /&gt;
|- style=&amp;quot;background: #ececec&amp;quot;&lt;br /&gt;
!Forum&lt;br /&gt;
!IRC&lt;br /&gt;
!Real name&lt;br /&gt;
!µblog&lt;br /&gt;
!pages&lt;br /&gt;
!mod&lt;br /&gt;
!projects&lt;br /&gt;
!youtube&lt;br /&gt;
!flatter&lt;br /&gt;
!paypal&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/178-stuckie/ stuckie]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|http://www.stuckiegamez.co.uk&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/stuckiegamez]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/775-sebt3/ Sebt3]&lt;br /&gt;
|&lt;br /&gt;
|Sebastien Huss&lt;br /&gt;
|&lt;br /&gt;
|http://sebt3.openpandora.org&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4605-ekianjo/ ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/PandoraLiveInfo]&lt;br /&gt;
|[http://www.pandoralive.info Pandoralive.info]&lt;br /&gt;
|&lt;br /&gt;
|blog&lt;br /&gt;
|[http://www.youtube.com/user/ekianjo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/213-milkshake/ milkshake]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|repo&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=X5HE7FCG967KG paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/5-zodttd/ zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[https://twitter.com/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|  &lt;br /&gt;
|[http://www.youtube.com/user/zodttd]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/3847-iprice/ iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|dev&lt;br /&gt;
|[http://www.youtube.com/user/iprice]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/1035-linux-swat/ Linux-SWAT]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware SL4P] [http://pandorawiki.org/Software_projects/OS/SOLEIL SOLEIL]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://pandorawiki.org/Software_projects/OS/Slackware#Helping_this_project paypal]&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/114-mcobit/ mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/mcobit]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4191-ingoreis/ ingoreis]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|tester&lt;br /&gt;
|[http://www.youtube.com/user/reisingo]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[http://www.youtube.com/user/IsoTkhs]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/559-exophase/ Exophase]&lt;br /&gt;
|&lt;br /&gt;
| no&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|[[DraStic]]&lt;br /&gt;
|[http://www.youtube.com/user/Exophase]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/4382-wb/ _wb_]&lt;br /&gt;
|&lt;br /&gt;
|Jon Sneyers&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|nubnub mod&lt;br /&gt;
|[http://www.youtube.com/user/jonsneyers]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|[http://boards.openpandora.org/index.php/user/198-cpasjuste/ cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|David Carre&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|pxml, pnd minimenu xda&lt;br /&gt;
|[http://www.youtube.com/user/cpasjuste]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Maybe add field for social networking site, like facebook and g+, country?  With semantic lists we can do coordinates&lt;br /&gt;
&lt;br /&gt;
B-zar, gruso, bobbens, superroach, SONY, sswarm, wally, moxie, and lots of others, been doing the ones i can find&lt;br /&gt;
youtube links to thus far.&lt;br /&gt;
&lt;br /&gt;
old info in discussion&lt;br /&gt;
&lt;br /&gt;
https://twitter.com/pokeparadox  https://twitter.com/David994A&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Compo4AllSDK&amp;diff=27115</id>
		<title>Compo4AllSDK</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Compo4AllSDK&amp;diff=27115"/>
		<updated>2013-05-02T08:06:18Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Compo4All API Guide&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Compo4All API Guide =&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
All information from the server is transfered by the HTTP protocol, so you can use libraries such as libcurl to handle all that work.&lt;br /&gt;
Information is passed using the JSON markup language&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Launcher Developer ==&lt;br /&gt;
&lt;br /&gt;
=== Getting the Games List ===&lt;br /&gt;
&lt;br /&gt;
Sending a HTTP GET request to [http://skeezix.wallednetworks.com:13001/curgamelist_1 /curgamelist_1] will return you a list of games, and details of those games&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Getting the Score Board ===&lt;br /&gt;
&lt;br /&gt;
Requesting [http://skeezix.wallednetworks.com:13001/json_1/bublbobl /json_1/(gamename)] will return you scoreboard details&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Developer ==&lt;br /&gt;
&lt;br /&gt;
=== Spaghetti Client ===&lt;br /&gt;
&lt;br /&gt;
The [http://boards.openpandora.org/index.php/topic/12127-release-compo4all-mame-ladderscoreboard-competition-for-classic-arcade-games/page-18#entry237182 Spaghetti Client] can be downloaded from the thread, and you can easily submit scores by starting a process with the following command line (assuming sc is bundled in your working directory)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;./sc MODE OPERATION GAMENAME PLATFORM SCORE&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== SC Modes ====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Mode&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
! so&lt;br /&gt;
! Sends the Score only&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== SC Operations ====&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Operation&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
! push&lt;br /&gt;
! Sending data to the server&lt;br /&gt;
|-&lt;br /&gt;
! pull&lt;br /&gt;
! Get data from the server (not implemented)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Compo4All&amp;diff=27114</id>
		<title>Compo4All</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Compo4All&amp;diff=27114"/>
		<updated>2013-05-02T07:48:19Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Compo4All introduction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Compo4All =&lt;br /&gt;
Compo4All is an gaming competition system designed by Skeezix. The initial system was based on a MAME build where highscores were uploaded to a website, but has since expanded to include a few indie games.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Platforms ==&lt;br /&gt;
Currently, the only supported platform is the Pandora, but there are thoughts about expanding it to the Raspberry Pi, and desktop environments&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Launchers ==&lt;br /&gt;
* Skeezix's [http://repo.openpandora.org/?page=detail&amp;amp;app=compo4all-skeezix-0001 Compo4All MAME] ([http://boards.openpandora.org/index.php/topic/12127-release-compo4all-mame-ladderscoreboard-competition-for-classic-arcade-games/ Forum Thread])&lt;br /&gt;
* Skeezix's Profile Manager (Not yet available)&lt;br /&gt;
* [http://pandorawiki.org/User:Pmprog pmprog's] Tournament Hub (Not yet available) ([http://boards.openpandora.org/index.php/topic/12745-pandora-compo4all-ui/ Forum Thread])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Scoreboard ==&lt;br /&gt;
Scores are shown within the two launchers, but are also accessible via a [http://c4a.openpandora.org/ web browser]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Developers SDK ==&lt;br /&gt;
Details of the API for integrating with the Compo4All system can be found [[Compo4AllSDK|here]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=User:Pmprog&amp;diff=26263</id>
		<title>User:Pmprog</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=User:Pmprog&amp;diff=26263"/>
		<updated>2012-10-22T10:05:40Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: Created page with &amp;quot;When I can pull the motivation, I write software&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When I can pull the motivation, I write software&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Porting_to_GLES_from_GL&amp;diff=9599</id>
		<title>Porting to GLES from GL</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Porting_to_GLES_from_GL&amp;diff=9599"/>
		<updated>2012-01-09T20:48:12Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: /* Adding the EGL context */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This guide is based on my limited knowledge (I do have barely the requierement) on the subject. I'm open to get edits on it, in fact it is encouraged :)&lt;br /&gt;
--[[User:Sebt3|Sebt3]] 17:05, 24 February 2011 (MET)&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* a working toolchain&lt;br /&gt;
* average C/C++ knowledge&lt;br /&gt;
* basic knowledge of how GL or GLES works&lt;br /&gt;
* read [[OpenGL_ES_1.1_Tutorial]]&lt;br /&gt;
&lt;br /&gt;
You might also want to have a look at others' work in this matter :&lt;br /&gt;
* http://pickle.gp2x.de/source/kenlabes-src.zip&lt;br /&gt;
* http://pickle.gp2x.de/gish_src.zip &lt;br /&gt;
* http://sebt3.openpandora.org/src/briquolo-0.5.7-pandora.tar.gz&lt;br /&gt;
* http://sebt3.openpandora.org/src/zaz-1.0.0-pandora.tar.gz&lt;br /&gt;
* http://paeryn.myby.co.uk/pandora/sdl-ball.tar.bz2&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
For more references, have a look to : &lt;br /&gt;
* [http://www.khronos.org/opengles/sdk/1.1/docs/man/ opengles references] or [http://www.khronos.org/opengles/sdk/docs/man/ opengles references 2]&lt;br /&gt;
* [http://www.opengl.org/sdk/docs/man/ opengl references]&lt;br /&gt;
&lt;br /&gt;
== Before starting ==&lt;br /&gt;
Choose a simple GL game for your first experience. Working with a large and complex codebase is not what you want to do at first.&lt;br /&gt;
&lt;br /&gt;
To have a good view of what you'll need to do, here is a simple (and incomplete) bash script that will list you all the code lines you'll need to work with :&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
&lt;br /&gt;
search() {&lt;br /&gt;
find . -name &amp;quot;*.h&amp;quot; -o -name &amp;quot;*.c&amp;quot; -o -name &amp;quot;*.cpp&amp;quot; -exec grep -Hn &amp;quot;$*&amp;quot; {} \;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
listIssues() {&lt;br /&gt;
search SDL_WM_GrabInput&lt;br /&gt;
search SDL_WarpMouse&lt;br /&gt;
search SDL_GL&lt;br /&gt;
search GL_CLAMP&lt;br /&gt;
search glColor|grep -v glColor4f&lt;br /&gt;
search glPushAttrib&lt;br /&gt;
search glPolygonMode&lt;br /&gt;
search GL_QUADS |grep glDrawArrays&lt;br /&gt;
search SDL_Init&lt;br /&gt;
search SDL_OPENGL&lt;br /&gt;
search SDL_ShowCursor&lt;br /&gt;
search glClearDepth&lt;br /&gt;
search SDL_Quit&lt;br /&gt;
search gluBuild2DMipmaps&lt;br /&gt;
search glTexImage2D&lt;br /&gt;
search glBegin&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
listIssues|sort -u&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Run that from the source directory. The fewer lines displayed, the better.&lt;br /&gt;
&lt;br /&gt;
If your project uses some GL libraries, get that to build first. Here are some libraries ported to GLES :&lt;br /&gt;
* GLU : http://code.google.com/p/glues/ (you might want to grab a binary version with headers in zaz or briquolo pnd)&lt;br /&gt;
* FTGL : http://code.google.com/p/ftgles/ (I do have a fixed version [http://sebt3.openpandora.org/src/ftgles-pandora.tar.gz here]; if you prefer a binary version, get that in the zaz PND)&lt;br /&gt;
&lt;br /&gt;
== Getting it to build ==&lt;br /&gt;
Your first goal is to have it built. You'll probably need to hack the build system. &lt;br /&gt;
* If it's just Makefiles, replace -lGL with -lGLES_CM -lEGL -lX11. &lt;br /&gt;
* If it's an autotools project, have a look at how it's done in briquolo for references. (take a look at configure.ac, and follow the enable_gles bits ;) Dont forget the Makefile.am too. Once your edits are in, autoreconf is your friend.)&lt;br /&gt;
&lt;br /&gt;
Make sure your build system (or your toolchain) will also set defines some marker to know if it needs to build GL or GLES code. Having one too for pandora specific hack might show itself useful too. I'm using &amp;quot;-DPANDORA -DHAVE_GLES&amp;quot; myself.&lt;br /&gt;
&lt;br /&gt;
Now try to build it. You'll have errors in the build process. To fix them, for now, just #ifdef out the offending lines. Here is what to do with the include instructions :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
#include &amp;lt;GL/gl.h&amp;gt;&lt;br /&gt;
#else&lt;br /&gt;
#include &amp;lt;GLES/gl.h&amp;gt;&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Other offending code, should be #ifdef out like this :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        glClearDepth(1.0f);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At the end of this process you'll end up with a broken pandora binary. Let's now fix it :D&lt;br /&gt;
== Adding the EGL context ==&lt;br /&gt;
Grab the eglport package Pickle has built [http://sourceforge.net/p/eglport/code-0/3/tree/trunk/ here]. You will need to add a call to its 4 functions in the sources (make sure, also, that eglport.c is built and linked in the build process). Here is how your sources should look at the end :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
#include &amp;lt;GL/gl.h&amp;gt;&lt;br /&gt;
#else&lt;br /&gt;
#include &amp;lt;GLES/gl.h&amp;gt;&lt;br /&gt;
#include &amp;quot;eglport.h&amp;quot;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
int main( void )&lt;br /&gt;
{&lt;br /&gt;
	// other stuff here&lt;br /&gt;
&lt;br /&gt;
        SDL_Init( SDL_INIT_VIDEO );&lt;br /&gt;
#if defined(HAVE_GLES)&lt;br /&gt;
       	if (EGL_Open())&lt;br /&gt;
		exit(1);&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
	// some more initialisations&lt;br /&gt;
&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        screen = SDL_SetVideoMode( 800, 600, 0, SDL_HWSURFACE | SDL_OPENGL | SDL_FULLSCREEN);&lt;br /&gt;
#else&lt;br /&gt;
        screen = SDL_SetVideoMode( 800, 480, 0, SDL_SWSURFACE | SDL_FULLSCREEN );&lt;br /&gt;
	EGL_Init();&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
        // the event loop&lt;br /&gt;
        while( quit == 0 ) {&lt;br /&gt;
                // management of the even and the game&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        	SDL_GL_SwapBuffers();&lt;br /&gt;
#else&lt;br /&gt;
		EGL_SwapBuffers();&lt;br /&gt;
#endif&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
	// probably some more clean-ups here&lt;br /&gt;
&lt;br /&gt;
#if defined(HAVE_GLES)&lt;br /&gt;
	EGL_Destroy();&lt;br /&gt;
#endif&lt;br /&gt;
        SDL_Quit();&lt;br /&gt;
&lt;br /&gt;
        return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that :&lt;br /&gt;
* EGL_Open has to be called just after the SDL initialization of the VIDEO layer&lt;br /&gt;
* SDL_SetVideoMode arguments have to be those given here (aka good resolution, and no SDL_OPENGL flag)&lt;br /&gt;
* EGL_Init goes just after SDL_SetVideoMode&lt;br /&gt;
* '''All''' SDL_GL_SwapBuffers calls have to be converted to EGL_SwapBuffers calls.&lt;br /&gt;
* EGL_Close is called before quitting SDL (or closing the video if that's separated in your original source).&lt;br /&gt;
When built, your source should run on the Pandora cleanly (ok, you'll have a black screen, but that's expected as we haven't converted the drawing yet).&lt;br /&gt;
&lt;br /&gt;
''In addition to these instructions, I had to add &amp;quot;#include &amp;lt;X11/Xlib.h&amp;gt;&amp;quot; and change all the comments from line to block in eglport.c --lunixbochs&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Converting the easy stuff ==&lt;br /&gt;
This part could have been done while getting the game built, but I preferred splitting the 2 processes for readability. Feel free to work as you please :D. Remember that all you have #ifdef out in the building part has to be converted; don't forget anything.&lt;br /&gt;
&lt;br /&gt;
GLES only supports float; double (aka GLdouble) doesn't work. So :&lt;br /&gt;
* any GLdouble should be converted to GLfloat&lt;br /&gt;
* all GL function calls ending with a &amp;quot;d&amp;quot; should have the d replaced with f.&lt;br /&gt;
&lt;br /&gt;
Here are other know conversions :&lt;br /&gt;
 #define GLdouble     GLfloat&lt;br /&gt;
 #define GL_CLAMP     GL_CLAMP_TO_EDGE&lt;br /&gt;
 #define glClearDepth glClearDepthf&lt;br /&gt;
 #define glOrtho      glOrthof&lt;br /&gt;
&lt;br /&gt;
=== Colors ===&lt;br /&gt;
GLES only knows glColor4f as the function to create a color; all the glColor3f, glColor3d, glColor4d or any other color conventions have to be converted to glColor4f. If you only have 3 arguments, the last have to be 1.0f (as no transparency).&lt;br /&gt;
&lt;br /&gt;
glColor3fv(a) should be replaced with  glColor4f(a[0],a[1],a[2], 1.0f)&lt;br /&gt;
&lt;br /&gt;
== Converting the immediate mode ==&lt;br /&gt;
If you have read [[OpenGL_ES_1.1_Tutorial]], you already have a good idea of what needs to be changed here. Here are a few other examples to help you in your process :&lt;br /&gt;
&lt;br /&gt;
1) a simple quad with no texture or color :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
  glBegin(GL_QUADS);&lt;br /&gt;
  glVertex2f(-10,-10);&lt;br /&gt;
  glVertex2f(10,-10);&lt;br /&gt;
  glVertex2f(10,10);&lt;br /&gt;
  glVertex2f(-10,10);&lt;br /&gt;
  glEnd();&lt;br /&gt;
#else&lt;br /&gt;
    GLfloat q3[] = {&lt;br /&gt;
        -10,-10,&lt;br /&gt;
        10,-10,&lt;br /&gt;
        10,10,&lt;br /&gt;
        -10,10&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
    glVertexPointer(2, GL_FLOAT, 0, q3);&lt;br /&gt;
    glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
    glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
2) a textured quad :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
      glBindTexture(GL_TEXTURE_2D, carac-&amp;gt;TextureName);&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
      glBegin(GL_QUADS);&lt;br /&gt;
&lt;br /&gt;
      glTexCoord2f(0,0);&lt;br /&gt;
      glVertex3f(pos[0]-tailleX/2, pos[1]-tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(1,0);&lt;br /&gt;
      glVertex3f(pos[0]+tailleX/2, pos[1]-tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(1,1);&lt;br /&gt;
      glVertex3f(pos[0]+tailleX/2, pos[1]+tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(0,1);&lt;br /&gt;
      glVertex3f(pos[0]-tailleX/2, pos[1]+tailleY/2, 0);&lt;br /&gt;
&lt;br /&gt;
      glEnd();&lt;br /&gt;
#else&lt;br /&gt;
      GLfloat vtx1[] = {&lt;br /&gt;
        pos[0]-tailleX/2, pos[1]-tailleY/2, 0,&lt;br /&gt;
        pos[0]+tailleX/2, pos[1]-tailleY/2, 0,&lt;br /&gt;
        pos[0]+tailleX/2, pos[1]+tailleY/2, 0,&lt;br /&gt;
        pos[0]-tailleX/2, pos[1]+tailleY/2, 0&lt;br /&gt;
      };&lt;br /&gt;
      GLfloat tex1[] = {&lt;br /&gt;
        0,0,&lt;br /&gt;
        1,0,&lt;br /&gt;
        1,1,&lt;br /&gt;
        0,1&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
      glEnableClientState(GL_TEXTURE_COORD_ARRAY);&lt;br /&gt;
&lt;br /&gt;
      glVertexPointer(3, GL_FLOAT, 0, vtx1);&lt;br /&gt;
      glTexCoordPointer(2, GL_FLOAT, 0, tex1);&lt;br /&gt;
      glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
&lt;br /&gt;
      glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
      glDisableClientState(GL_TEXTURE_COORD_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
3) a colored quad (note that, as GL is a state machine, the color is only showed once in the GL code, while it is copied for every point in gles) :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
    glBegin(GL_QUADS);&lt;br /&gt;
    glColor3d( .1, .1, .7);&lt;br /&gt;
    glVertex3d(0, 0, 0);&lt;br /&gt;
    glVertex3d(0, -pbarheight, 0);&lt;br /&gt;
    glColor3d( 0, 0, 0.5);&lt;br /&gt;
    glVertex3d((startupProgress / startupProgressSteps) * pbarwidth, -pbarheight, 0);&lt;br /&gt;
    glVertex3d((startupProgress / startupProgressSteps) * pbarwidth, 0, 0);&lt;br /&gt;
    glEnd();&lt;br /&gt;
#else&lt;br /&gt;
    GLfloat vtx1[] = {&lt;br /&gt;
        0, 0, 0,&lt;br /&gt;
        0, -pbarheight, 0,&lt;br /&gt;
        (startupProgress / startupProgressSteps) * pbarwidth, -pbarheight, 0,&lt;br /&gt;
        (startupProgress / startupProgressSteps) * pbarwidth, 0, 0&lt;br /&gt;
    };&lt;br /&gt;
    GLfloat col1[] = {&lt;br /&gt;
        .1, .1, .7, 1.0f,&lt;br /&gt;
        .1, .1, .7, 1.0f,&lt;br /&gt;
        0, 0, 0.5, 1.0f,&lt;br /&gt;
        0, 0, 0.5, 1.0f&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
    glEnableClientState(GL_COLOR_ARRAY);&lt;br /&gt;
&lt;br /&gt;
    glVertexPointer(3, GL_FLOAT, 0, vtx1);&lt;br /&gt;
    glColorPointer(4, GL_FLOAT, 0, col1);&lt;br /&gt;
    glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
&lt;br /&gt;
    glDisableClientState(GL_COLOR_ARRAY);&lt;br /&gt;
    glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the last argument of glDrawArrays is the number of points. In these examples, that's always 4 because these all have 4 points. You might want to change that if your object has more (or less) than these 4 points.&lt;br /&gt;
&lt;br /&gt;
Here is a list of conversions between GL to GLES draw modes :&lt;br /&gt;
* GL_POINTS -&amp;gt; GL_POINTS&lt;br /&gt;
* GL_TRIANGLES -&amp;gt; GL_TRIANGLES (or GL_LINE_LOOP if glPolygonMode is set to GL_LINE)&lt;br /&gt;
* GL_QUADS -&amp;gt; GL_TRIANGLE_FAN&lt;br /&gt;
* GL_LINE_STRIP -&amp;gt; GL_LINE_STRIP&lt;br /&gt;
* GL_LINE -&amp;gt; GL_LINE&lt;br /&gt;
* GL_POLYGON -&amp;gt; GL_TRIANGLE_FAN&lt;br /&gt;
&lt;br /&gt;
== Textures ==&lt;br /&gt;
All textures have to be loaded with dimensions in powers of 2. See [https://github.com/Cpasjuste/GLES2D/blob/master/src/GLES2D_texture.c GLES2D sources] and GLES2D_p2 function for an easy method of working around that. Briquolo had a more advanced method of doing so thanks to Paeryn (it also actually scaled the texture to that given size).&lt;br /&gt;
&lt;br /&gt;
When loading textures with glTexImage2D, the only supported formats are GL_ALPHA, GL_RGB, GL_RGBA, GL_LUMINANCE, or GL_LUMINANCE_ALPHA.&lt;br /&gt;
Arguments for internal format and format(3 and 7) must be the same.&lt;br /&gt;
Note: one common situation is where the original program uses 3 or 4 (which is valid for opengl) for internal format and GL_RGB or GL_RGBA for format. GLES requires the 3 to be GL_RGB or 4 to be GL_RGBA.&lt;br /&gt;
GLES Example:&lt;br /&gt;
 glTexImage2D( target, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);&lt;br /&gt;
&lt;br /&gt;
== Display Lists ==&lt;br /&gt;
GL Functions: glGenLists, glCallList, glCallLists, glDeleteLists, glNewList&lt;br /&gt;
&lt;br /&gt;
This is a feature provided by GL to allow the application to assign a group of GL commands to a display list. This list is remembered by the graphics card and the application only has to call the list once to get the gpu to rerun all of the assigned commands.&lt;br /&gt;
GLES does not support this feature and must rerun the set of commands any time the list would have been called.&lt;br /&gt;
[http://www.opengl.org/documentation/specs/version1.1/glspec1.1/node123.html Info on Display Lists]&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* glPushAttrib, glPopAttrib and their client versions don't exist. You'll have to manage these states yourself. Another good way is to have all disabled at all times and only enable what is needed at the right time.&lt;br /&gt;
* SDL_WM_GrabInput and SDL_WarpMouse might cause soft freeze of your game. If it does, #ifndef PANDORA them :)&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Tutorials]]&lt;br /&gt;
[[Category:OpenGL ES]]&lt;br /&gt;
[[Category:Ports]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
	<entry>
		<id>https://pandorawiki.org/index.php?title=Porting_to_GLES_from_GL&amp;diff=9596</id>
		<title>Porting to GLES from GL</title>
		<link rel="alternate" type="text/html" href="https://pandorawiki.org/index.php?title=Porting_to_GLES_from_GL&amp;diff=9596"/>
		<updated>2012-01-04T21:56:55Z</updated>

		<summary type="html">&lt;p&gt;Pmprog: /* Adding the EGL context */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Foreword ==&lt;br /&gt;
This guide is based on my limited knowledge (I do have barely the requierement) on the subject. I'm open to get edits on it, in fact it is encouraged :)&lt;br /&gt;
--[[User:Sebt3|Sebt3]] 17:05, 24 February 2011 (MET)&lt;br /&gt;
== Requirements ==&lt;br /&gt;
* a working toolchain&lt;br /&gt;
* average C/C++ knowledge&lt;br /&gt;
* basic knowledge of how GL or GLES works&lt;br /&gt;
* read [[OpenGL_ES_1.1_Tutorial]]&lt;br /&gt;
&lt;br /&gt;
You might also want to have a look at others' work in this matter :&lt;br /&gt;
* http://pickle.gp2x.de/source/kenlabes-src.zip&lt;br /&gt;
* http://pickle.gp2x.de/gish_src.zip &lt;br /&gt;
* http://sebt3.openpandora.org/src/briquolo-0.5.7-pandora.tar.gz&lt;br /&gt;
* http://sebt3.openpandora.org/src/zaz-1.0.0-pandora.tar.gz&lt;br /&gt;
* http://paeryn.myby.co.uk/pandora/sdl-ball.tar.bz2&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
For more references, have a look to : &lt;br /&gt;
* [http://www.khronos.org/opengles/sdk/1.1/docs/man/ opengles references] or [http://www.khronos.org/opengles/sdk/docs/man/ opengles references 2]&lt;br /&gt;
* [http://www.opengl.org/sdk/docs/man/ opengl references]&lt;br /&gt;
&lt;br /&gt;
== Before starting ==&lt;br /&gt;
Choose a simple GL game for your first experience. Working with a large and complex codebase is not what you want to do at first.&lt;br /&gt;
&lt;br /&gt;
To have a good view of what you'll need to do, here is a simple (and incomplete) bash script that will list you all the code lines you'll need to work with :&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
&lt;br /&gt;
search() {&lt;br /&gt;
find . -name &amp;quot;*.h&amp;quot; -o -name &amp;quot;*.c&amp;quot; -o -name &amp;quot;*.cpp&amp;quot; -exec grep -Hn &amp;quot;$*&amp;quot; {} \;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
listIssues() {&lt;br /&gt;
search SDL_WM_GrabInput&lt;br /&gt;
search SDL_WarpMouse&lt;br /&gt;
search SDL_GL&lt;br /&gt;
search GL_CLAMP&lt;br /&gt;
search glColor|grep -v glColor4f&lt;br /&gt;
search glPushAttrib&lt;br /&gt;
search glPolygonMode&lt;br /&gt;
search GL_QUADS |grep glDrawArrays&lt;br /&gt;
search SDL_Init&lt;br /&gt;
search SDL_OPENGL&lt;br /&gt;
search SDL_ShowCursor&lt;br /&gt;
search glClearDepth&lt;br /&gt;
search SDL_Quit&lt;br /&gt;
search gluBuild2DMipmaps&lt;br /&gt;
search glTexImage2D&lt;br /&gt;
search glBegin&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
listIssues|sort -u&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Run that from the source directory. The fewer lines displayed, the better.&lt;br /&gt;
&lt;br /&gt;
If your project uses some GL libraries, get that to build first. Here are some libraries ported to GLES :&lt;br /&gt;
* GLU : http://code.google.com/p/glues/ (you might want to grab a binary version with headers in zaz or briquolo pnd)&lt;br /&gt;
* FTGL : http://code.google.com/p/ftgles/ (I do have a fixed version [http://sebt3.openpandora.org/src/ftgles-pandora.tar.gz here]; if you prefer a binary version, get that in the zaz PND)&lt;br /&gt;
&lt;br /&gt;
== Getting it to build ==&lt;br /&gt;
Your first goal is to have it built. You'll probably need to hack the build system. &lt;br /&gt;
* If it's just Makefiles, replace -lGL with -lGLES_CM -lEGL -lX11. &lt;br /&gt;
* If it's an autotools project, have a look at how it's done in briquolo for references. (take a look at configure.ac, and follow the enable_gles bits ;) Dont forget the Makefile.am too. Once your edits are in, autoreconf is your friend.)&lt;br /&gt;
&lt;br /&gt;
Make sure your build system (or your toolchain) will also set defines some marker to know if it needs to build GL or GLES code. Having one too for pandora specific hack might show itself useful too. I'm using &amp;quot;-DPANDORA -DHAVE_GLES&amp;quot; myself.&lt;br /&gt;
&lt;br /&gt;
Now try to build it. You'll have errors in the build process. To fix them, for now, just #ifdef out the offending lines. Here is what to do with the include instructions :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
#include &amp;lt;GL/gl.h&amp;gt;&lt;br /&gt;
#else&lt;br /&gt;
#include &amp;lt;GLES/gl.h&amp;gt;&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Other offending code, should be #ifdef out like this :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        glClearDepth(1.0f);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At the end of this process you'll end up with a broken pandora binary. Let's now fix it :D&lt;br /&gt;
== Adding the EGL context ==&lt;br /&gt;
Grab the eglport package Pickle has built [http://sourceforge.net/p/eglport/code-0/3/tree/trunk/ here]. You will need to add a call to its 4 functions in the sources (make sure, also, that eglport.c is built and linked in the build process). Here is how your sources should look at the end :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
#include &amp;lt;GL/gl.h&amp;gt;&lt;br /&gt;
#else&lt;br /&gt;
#include &amp;lt;GLES/gl.h&amp;gt;&lt;br /&gt;
#include &amp;quot;eglport.h&amp;quot;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
int main( void )&lt;br /&gt;
{&lt;br /&gt;
	// other stuff here&lt;br /&gt;
&lt;br /&gt;
        SDL_Init( SDL_INIT_VIDEO );&lt;br /&gt;
#if defined(HAVE_GLES)&lt;br /&gt;
       	if (!EGL_Open())&lt;br /&gt;
		exit(1);&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
	// some more initialisations&lt;br /&gt;
&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        screen = SDL_SetVideoMode( 800, 600, 0, SDL_HWSURFACE | SDL_OPENGL | SDL_FULLSCREEN);&lt;br /&gt;
#else&lt;br /&gt;
        screen = SDL_SetVideoMode( 800, 480, 0, SDL_SWSURFACE | SDL_FULLSCREEN );&lt;br /&gt;
	EGL_Init();&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
        // the event loop&lt;br /&gt;
        while( quit == 0 ) {&lt;br /&gt;
                // management of the even and the game&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
        	SDL_GL_SwapBuffers();&lt;br /&gt;
#else&lt;br /&gt;
		EGL_SwapBuffers();&lt;br /&gt;
#endif&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
	// probably some more clean-ups here&lt;br /&gt;
&lt;br /&gt;
#if defined(HAVE_GLES)&lt;br /&gt;
	EGL_Destroy();&lt;br /&gt;
#endif&lt;br /&gt;
        SDL_Quit();&lt;br /&gt;
&lt;br /&gt;
        return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that :&lt;br /&gt;
* EGL_Open has to be called just after the SDL initialization of the VIDEO layer&lt;br /&gt;
* SDL_SetVideoMode arguments have to be those given here (aka good resolution, and no SDL_OPENGL flag)&lt;br /&gt;
* EGL_Init goes just after SDL_SetVideoMode&lt;br /&gt;
* '''All''' SDL_GL_SwapBuffers calls have to be converted to EGL_SwapBuffers calls.&lt;br /&gt;
* EGL_Close is called before quitting SDL (or closing the video if that's separated in your original source).&lt;br /&gt;
When built, your source should run on the Pandora cleanly (ok, you'll have a black screen, but that's expected as we haven't converted the drawing yet).&lt;br /&gt;
&lt;br /&gt;
''In addition to these instructions, I had to add &amp;quot;#include &amp;lt;X11/Xlib.h&amp;gt;&amp;quot; and change all the comments from line to block in eglport.c --lunixbochs&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Converting the easy stuff ==&lt;br /&gt;
This part could have been done while getting the game built, but I preferred splitting the 2 processes for readability. Feel free to work as you please :D. Remember that all you have #ifdef out in the building part has to be converted; don't forget anything.&lt;br /&gt;
&lt;br /&gt;
GLES only supports float; double (aka GLdouble) doesn't work. So :&lt;br /&gt;
* any GLdouble should be converted to GLfloat&lt;br /&gt;
* all GL function calls ending with a &amp;quot;d&amp;quot; should have the d replaced with f.&lt;br /&gt;
&lt;br /&gt;
Here are other know conversions :&lt;br /&gt;
 #define GLdouble     GLfloat&lt;br /&gt;
 #define GL_CLAMP     GL_CLAMP_TO_EDGE&lt;br /&gt;
 #define glClearDepth glClearDepthf&lt;br /&gt;
 #define glOrtho      glOrthof&lt;br /&gt;
&lt;br /&gt;
=== Colors ===&lt;br /&gt;
GLES only knows glColor4f as the function to create a color; all the glColor3f, glColor3d, glColor4d or any other color conventions have to be converted to glColor4f. If you only have 3 arguments, the last have to be 1.0f (as no transparency).&lt;br /&gt;
&lt;br /&gt;
glColor3fv(a) should be replaced with  glColor4f(a[0],a[1],a[2], 1.0f)&lt;br /&gt;
&lt;br /&gt;
== Converting the immediate mode ==&lt;br /&gt;
If you have read [[OpenGL_ES_1.1_Tutorial]], you already have a good idea of what needs to be changed here. Here are a few other examples to help you in your process :&lt;br /&gt;
&lt;br /&gt;
1) a simple quad with no texture or color :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
  glBegin(GL_QUADS);&lt;br /&gt;
  glVertex2f(-10,-10);&lt;br /&gt;
  glVertex2f(10,-10);&lt;br /&gt;
  glVertex2f(10,10);&lt;br /&gt;
  glVertex2f(-10,10);&lt;br /&gt;
  glEnd();&lt;br /&gt;
#else&lt;br /&gt;
    GLfloat q3[] = {&lt;br /&gt;
        -10,-10,&lt;br /&gt;
        10,-10,&lt;br /&gt;
        10,10,&lt;br /&gt;
        -10,10&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
    glVertexPointer(2, GL_FLOAT, 0, q3);&lt;br /&gt;
    glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
    glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
2) a textured quad :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
      glBindTexture(GL_TEXTURE_2D, carac-&amp;gt;TextureName);&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
      glBegin(GL_QUADS);&lt;br /&gt;
&lt;br /&gt;
      glTexCoord2f(0,0);&lt;br /&gt;
      glVertex3f(pos[0]-tailleX/2, pos[1]-tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(1,0);&lt;br /&gt;
      glVertex3f(pos[0]+tailleX/2, pos[1]-tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(1,1);&lt;br /&gt;
      glVertex3f(pos[0]+tailleX/2, pos[1]+tailleY/2, 0);&lt;br /&gt;
      glTexCoord2f(0,1);&lt;br /&gt;
      glVertex3f(pos[0]-tailleX/2, pos[1]+tailleY/2, 0);&lt;br /&gt;
&lt;br /&gt;
      glEnd();&lt;br /&gt;
#else&lt;br /&gt;
      GLfloat vtx1[] = {&lt;br /&gt;
        pos[0]-tailleX/2, pos[1]-tailleY/2, 0,&lt;br /&gt;
        pos[0]+tailleX/2, pos[1]-tailleY/2, 0,&lt;br /&gt;
        pos[0]+tailleX/2, pos[1]+tailleY/2, 0,&lt;br /&gt;
        pos[0]-tailleX/2, pos[1]+tailleY/2, 0&lt;br /&gt;
      };&lt;br /&gt;
      GLfloat tex1[] = {&lt;br /&gt;
        0,0,&lt;br /&gt;
        1,0,&lt;br /&gt;
        1,1,&lt;br /&gt;
        0,1&lt;br /&gt;
      };&lt;br /&gt;
&lt;br /&gt;
      glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
      glEnableClientState(GL_TEXTURE_COORD_ARRAY);&lt;br /&gt;
&lt;br /&gt;
      glVertexPointer(3, GL_FLOAT, 0, vtx1);&lt;br /&gt;
      glTexCoordPointer(2, GL_FLOAT, 0, tex1);&lt;br /&gt;
      glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
&lt;br /&gt;
      glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
      glDisableClientState(GL_TEXTURE_COORD_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
3) a colored quad (note that, as GL is a state machine, the color is only showed once in the GL code, while it is copied for every point in gles) :&lt;br /&gt;
&amp;lt;source lang=c&amp;gt;&lt;br /&gt;
#if !defined(HAVE_GLES)&lt;br /&gt;
    glBegin(GL_QUADS);&lt;br /&gt;
    glColor3d( .1, .1, .7);&lt;br /&gt;
    glVertex3d(0, 0, 0);&lt;br /&gt;
    glVertex3d(0, -pbarheight, 0);&lt;br /&gt;
    glColor3d( 0, 0, 0.5);&lt;br /&gt;
    glVertex3d((startupProgress / startupProgressSteps) * pbarwidth, -pbarheight, 0);&lt;br /&gt;
    glVertex3d((startupProgress / startupProgressSteps) * pbarwidth, 0, 0);&lt;br /&gt;
    glEnd();&lt;br /&gt;
#else&lt;br /&gt;
    GLfloat vtx1[] = {&lt;br /&gt;
        0, 0, 0,&lt;br /&gt;
        0, -pbarheight, 0,&lt;br /&gt;
        (startupProgress / startupProgressSteps) * pbarwidth, -pbarheight, 0,&lt;br /&gt;
        (startupProgress / startupProgressSteps) * pbarwidth, 0, 0&lt;br /&gt;
    };&lt;br /&gt;
    GLfloat col1[] = {&lt;br /&gt;
        .1, .1, .7, 1.0f,&lt;br /&gt;
        .1, .1, .7, 1.0f,&lt;br /&gt;
        0, 0, 0.5, 1.0f,&lt;br /&gt;
        0, 0, 0.5, 1.0f&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    glEnableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
    glEnableClientState(GL_COLOR_ARRAY);&lt;br /&gt;
&lt;br /&gt;
    glVertexPointer(3, GL_FLOAT, 0, vtx1);&lt;br /&gt;
    glColorPointer(4, GL_FLOAT, 0, col1);&lt;br /&gt;
    glDrawArrays(GL_TRIANGLE_FAN,0,4);&lt;br /&gt;
&lt;br /&gt;
    glDisableClientState(GL_COLOR_ARRAY);&lt;br /&gt;
    glDisableClientState(GL_VERTEX_ARRAY);&lt;br /&gt;
#endif&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the last argument of glDrawArrays is the number of points. In these examples, that's always 4 because these all have 4 points. You might want to change that if your object has more (or less) than these 4 points.&lt;br /&gt;
&lt;br /&gt;
Here is a list of conversions between GL to GLES draw modes :&lt;br /&gt;
* GL_POINTS -&amp;gt; GL_POINTS&lt;br /&gt;
* GL_TRIANGLES -&amp;gt; GL_TRIANGLES (or GL_LINE_LOOP if glPolygonMode is set to GL_LINE)&lt;br /&gt;
* GL_QUADS -&amp;gt; GL_TRIANGLE_FAN&lt;br /&gt;
* GL_LINE_STRIP -&amp;gt; GL_LINE_STRIP&lt;br /&gt;
* GL_LINE -&amp;gt; GL_LINE&lt;br /&gt;
* GL_POLYGON -&amp;gt; GL_TRIANGLE_FAN&lt;br /&gt;
&lt;br /&gt;
== Textures ==&lt;br /&gt;
All textures have to be loaded with dimensions in powers of 2. See [https://github.com/Cpasjuste/GLES2D/blob/master/src/GLES2D_texture.c GLES2D sources] and GLES2D_p2 function for an easy method of working around that. Briquolo had a more advanced method of doing so thanks to Paeryn (it also actually scaled the texture to that given size).&lt;br /&gt;
&lt;br /&gt;
When loading textures with glTexImage2D, the only supported formats are GL_ALPHA, GL_RGB, GL_RGBA, GL_LUMINANCE, or GL_LUMINANCE_ALPHA.&lt;br /&gt;
Arguments for internal format and format(3 and 7) must be the same.&lt;br /&gt;
Note: one common situation is where the original program uses 3 or 4 (which is valid for opengl) for internal format and GL_RGB or GL_RGBA for format. GLES requires the 3 to be GL_RGB or 4 to be GL_RGBA.&lt;br /&gt;
GLES Example:&lt;br /&gt;
 glTexImage2D( target, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);&lt;br /&gt;
&lt;br /&gt;
== Display Lists ==&lt;br /&gt;
GL Functions: glGenLists, glCallList, glCallLists, glDeleteLists, glNewList&lt;br /&gt;
&lt;br /&gt;
This is a feature provided by GL to allow the application to assign a group of GL commands to a display list. This list is remembered by the graphics card and the application only has to call the list once to get the gpu to rerun all of the assigned commands.&lt;br /&gt;
GLES does not support this feature and must rerun the set of commands any time the list would have been called.&lt;br /&gt;
[http://www.opengl.org/documentation/specs/version1.1/glspec1.1/node123.html Info on Display Lists]&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* glPushAttrib, glPopAttrib and their client versions don't exist. You'll have to manage these states yourself. Another good way is to have all disabled at all times and only enable what is needed at the right time.&lt;br /&gt;
* SDL_WM_GrabInput and SDL_WarpMouse might cause soft freeze of your game. If it does, #ifndef PANDORA them :)&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Tutorials]]&lt;br /&gt;
[[Category:OpenGL ES]]&lt;br /&gt;
[[Category:Ports]]&lt;/div&gt;</summary>
		<author><name>Pmprog</name></author>
		
	</entry>
</feed>