Raspberry Pi

edited June 2012 in General discussions
Ok, everything's in the title. :D

Got mine in the mail two weeks ago (though I have yet to find the time to boot it) and, as you've probably already guessed, my first experimentation with it will be to port orx for it.

Which shouldn't be too bad I think, as there's CodeLite running on it, I'll simply have to compile the dependencies for ARM and use all the linux plugin except for the display one (as the Pi supports OpenGL ES, not OpenGL).
But that should be a quick merge between the GLFW plugin and the iOS one.

Well, as long as GLFW runs on the Pi, of course, I haven't looked into that yet but I have good hope. ^^

Anybody else got a device or is interested in helping with the port/testing? Just let me know!

Link: http://www.raspberrypi.org/

Comments

  • edited June 2012
    Dude I just got a beagle bone about a week ago,plan on pi pretty soon,and was actually gonna try testing out some fun stuff with em, would be more than willing to help out with atleast testing. I've seen the pi run SDL on hackaday or something like that awhile back but I wouldn't see why technically speaking it couldn't do GLFW.
  • edited June 2012
    I'm interested in this. In fact I tried to buy one tonight, but it doesn't look like they're very available right now!

    I'll try again soon.
  • edited June 2012
    Exactly why I got a beagle bone to quench my current ARM cortex needs, completely different price range, but those Pi's look amazing with even old school component out but are hard to get ahold of(their supposedly going to ship more fairly soon).
  • edited June 2012
    Yeah, mine took almost 5 months between the order and the delivery. :)

    Now I have it so I'll probably play with it not this week end but the one after (I've placed an order for an SD Card, so waiting for that now). I'll let you know how the port is going but I'm comfident it'll be over in a day or two of work.
  • edited June 2012
    you may have more inspiration in android-native Display plugin, as iOS EGL/GLES is very Appleized...

    Have fun
  • edited June 2012
    I believe the android plugins are themselves inspired by the iOS one, isn't it? ;)

    Anyway, I simply need to replace the fixed pipeline with the shaders and a few ES calls, shouldn't be too bad. :)
  • edited July 2012
    I spent most of my weekend programming time on that and it's a bit tougher than expected.

    First reason is that my peripherals (razer keyboard & mouse) needs a lot of power to run, which doesn't leave nearly enough juice for the raspberry pi to run correctly. I've ordered a powered USB hub to work around that issue. However I won't be able to use the device till then.

    That lead me to try to setup a cross-compiling toolchain in my linux box. Actually I ended up installing 4 of them, 2 of which are actually made locally following some online tutorials.

    In the end, there's only one toolchain that I got working including OpenGL ES. The only culprit is is my inexperience with this kind of exercise, not the fault of the various toolchains or tutorials.

    Anyway, now that I can cross-compile from my linux box I've update two of the external dependencies (namely SOIL and Box2D).
    However, I'm afraid GLFW won't do the trick. Which means I'll have to write the display, sound, mouse, joystick and keyboard plugin more or less from scratch.

    The display plugin will probably be the easiest one as I'll look at what lydesik did with the android-native plugin (for EGL references).
    The mouse, joystick and keyboard plugins are a bit more annoying in that I had no idea where to start.

    I finally spent some time reading the source of the raspberry pi port of Quake 3, found out they were using a pre-compiled version of SDL to handle inputs, found out in a forum that it was actually a vanilla SDL 1.2 stripped from any audio dependencies, went to read SDL 1.2 sources and found out that the specific version running on the pi was using the /dev/input/* file descriptors.
    This is going to be annoying, but heh, unless someone has a better solution I guess I have no choice.

    Lastly, there's the music plugin. I have no clue how to do that one for now as I couldn't find any evidence of the presence of OpenAL for the pi. Apparently I can use OpenMAX AL for some operations, but it's a new API I'll have to learn, and will probably take quite some time.

    Finally, I'll be working on that port on and off as a background task whenever I feel motivated enough to work in that boxed cross-compiler environment with a bunch of unknown API.
    It might take a good while and any person wanting to help with the task is more than welcome! :)
  • edited July 2012
    Hey Iarwain, know I'm late to replying on this, I probably have nothing to offer for the programming but I know , and have done ssh and remoting via synergy into those small linux boards (they're surprisingly beefy)and let me tell you it works great, still at the main desktop and the comfy chair but get to see the fruits of labor on a lil bitty remote machine.

    (and if the PI runs fedora which i think it does, youll have to enable ssh first or install synergy, but debian has that automatically enabled if a reformat catches your fancy. :laugh: )
  • edited July 2012
    I've tried the 2 Debian distro I found via the Pi site (Squeeze and Wheezy) and finally went for the Arch Linux one.

    I tried to install the Fedora one from my windows machine and my linux box but their install script failed in both cases. Didn't bother to look to much into details.

    Even with a powered USB hub my keyboard doesn't work great with the Pi (missing keystrokes, infinite keystrokes, etc) so I'll be developing mostly from my linux box (ssh could be an option I guess, but won't help me test video rendering as I only have one screen anyway).
  • edited July 2012
    Damn sorry Iarwain, didn't even think of not having 2 monitors (I really take that for granted). But possibly if your monitor has multiple inputs maybe?

    (Since I already have this link handy, ill post it for whomever very handy input sharing program. :side: )
  • edited July 2012
    Hehe my desk is tiny and wouldn't allow me to have two screens anyway. :)

    My current screen doesn't even have HDMI inputs, so when I'm using the Pi right now it's in the living room on the TV, which is not the best place for me to develop. ;)

    Anyway, for developing/testing right now the linux box should be enough and it'll take me a while to get there as I have higher priority tasks for the moment. :)
  • edited July 2012
    Oh and yes, Synergy is a great tool that I've been using for years but thanks for the link. :)
Sign In or Register to comment.