iPodLinux

Stretching the iPod to its limits.
Last visit was: Thu Mar 27, 2014 11:33 pm It is currently Fri Mar 28, 2014 12:35 am

All times are UTC - 5 hours




Post new topic Reply to topic  [ 3 posts ] 
Author Message
 Post subject: Porting Applications or Emulators
PostPosted: Mon Dec 01, 2008 11:47 am 
Online
User avatar

Joined: Mon Oct 06, 2008 9:36 pm
Posts: 262
iPodLinux is a modified build of uClinux, a fork of Linux for embedded devices (e.g. those without MMUs). Thus, many simple Linux applications or emulators can be easily ported or cross-compiled to iPodLinux with some modification. Note that this thread does NOT pertain to porting/creating podzilla2 modules but rather independent applications that can run from the terminal or be launched by podzilla2.

Here's a guide for setting up your iPodLinux compiling environment:
http://ipodlinux.org/wiki/Introduction_to_Compiling_for_iPodLinux

Here's a series of various code snippets that will help you with your port:
http://ipodlinux.org/wiki/Porting_Code_Snippets

Project ZeroSlackr is a project that currently maintains numerous iPodLinux ports/applications (see the SVN source code for ported examples):
http://sourceforge.net/projects/zeroslackr/
https://zeroslackr.svn.sourceforge.net/svnroot/zeroslackr/

Other uClinux projects you may want to take a look at are DSLinux and the Blackfin project. Most applications ported to the GP2X are also fair game (keep in mind the iPod's small screen size, limited input methods, and ~75Mhz processor). A few applications have also been ported over from the Rockbox project:
http://www.dslinux.org/
http://dslinux.gits.kiev.ua/trunk/user/
http://docs.blackfin.uclinux.org/doku.php?id=uclinux_on_blackfin
http://wiki.gp2x.org/wiki/Main_Page
http://www.rockbox.org/

Possibly useful wiki pages (may be outdated):
http://ipodlinux.org/wiki/Project_Status
http://ipodlinux.org/wiki/Emulation
http://ipodlinux.org/wiki/IPod_Programming
http://ipodlinux.org/wiki/CPP_Programming
http://ipodlinux.org/wiki/SDL_Programming
http://ipodlinux.org/wiki/Key_Chart
http://ipodlinux.org/wiki/PP5020
http://ipodlinux.org/wiki/PP5002
http://ipodlinux.org/wiki/GPIO
http://ipodlinux.org/wiki/ARMDev

More useful links:
http://lazyfoo.net/SDL_tutorials/index.php
http://fms.komkon.org/EMUL8/HOWTO.html
http://www.coranac.com/tonc/text/asm.htm

Please reply with more useful links for porting applications/emulators or edit the Introduction_to_Compiling_for_iPodLinux and Porting_Code_Snippets wiki pages.

If you port a new application/emulator to iPodLinux, please post it in the Recent Announcements section (one thread here for development and one thread there for latest release), make a new wiki page, and contact me (as I might add it to Project ZeroSlackr).

~Keripo

_________________
Need iPodLinux? See Project ZeroSlackr -> http://sourceforge.net/projects/zeroslackr/


Report this post Post details Delete post
Top
 Profile Send private message E-mail  
Edit post Reply with quote  
 Post subject: Re: Porting Applications or Emulators
PostPosted: Sun Jun 07, 2009 11:00 am 
Offline

Joined: Wed Jun 03, 2009 8:02 am
Posts: 2
Hi Keripo,
I noticed a couple of minor errors in the Wiki "Introduction to Compiling for IPodLinux". I can't figure out how to edit the Wiki, so I am posting it here.

1. In the section Loader2, number "2", it says: cd loader2. It should be: cd ipodloader2.

2. To use the 3.4.3 toolchain in the section Booting Slax, number 5, it (correctly) says that to use the command:
export PATH=/usr/local/arm-uclinux-tools2/bin:$PATH
But later in the document (Building other Applications) it (incorrectly) says to use:
export PATH=/usr/local/arm-elf-tools2/bin:$PATH

3. I think the instructions for the 2.95.3 toolchain are inconsistent, but I didn't get a chance to see which one is correct.

4. In the Kernel section, I followed the instructions twice, but never got the Image file described in step 7.

I wanted to say that you have done a great job with all your work. I learned a lot here and had fun. My goal is to tether a small scanner to a small device running linux. I have learned that I need a device with USB host capabilities, so I'll be checking out linux on the Treo 650.

Peace out.


Report this post Post details Warn user Delete post
Top
 Profile Send private message E-mail  
Edit post Reply with quote  
 Post subject: Re: Porting Applications or Emulators
PostPosted: Tue Jun 16, 2009 4:35 pm 
Online
User avatar

Joined: Mon Oct 06, 2008 9:36 pm
Posts: 262
desertdog wrote:
Hi Keripo,
I noticed a couple of minor errors in the Wiki "Introduction to Compiling for IPodLinux". I can't figure out how to edit the Wiki, so I am posting it here.

1. In the section Loader2, number "2", it says: cd loader2. It should be: cd ipodloader2.


If you look at the "svn co ..." line, I have "loader2" put after the url. I guess it'd be less confusing if I didn't do that, so I'll change that, thanks ; )

Quote:
2. To use the 3.4.3 toolchain in the section Booting Slax, number 5, it (correctly) says that to use the command:
export PATH=/usr/local/arm-uclinux-tools2/bin:$PATH
But later in the document (Building other Applications) it (incorrectly) says to use:
export PATH=/usr/local/arm-elf-tools2/bin:$PATH


Nice catch. The tutorial took a long time to write and obviously would also take a long time to test so I never did actually try out everything again from scratch. During the time of tutorial-writting I was using Windows XP and had Cygwin installed, so often I'd be typing "export PATH=/usr/local/arm-uclinux-elf-tools/bin:$PATH" or something like that.

Quote:
3. I think the instructions for the 2.95.3 toolchain are inconsistent, but I didn't get a chance to see which one is correct.


Could you clarify what you mean by that?

By default, the 2.95.3 toolchain gets installed to /usr/local/bin so, if one were to not export any PATH variable, the default toolchain that gets used when you type "arm-elf-gcc" is the 2.95.3 toolchain. When you manually re-export the PATH variable, however, the shell looks in /usr/local/arm-uclinux-tools2/bin before it checks /usr/local/bin. Thus, it finds (and uses) the 3.4.3 toolchain instead. By re-exporting with /usr/local/bin forces the shell to first look there, thus forcing the 2.95.3 toolchain to be found first.

Quote:
4. In the Kernel section, I followed the instructions twice, but never got the Image file described in step 7.
You'll have to describe your problem in greater detail, preferably in a different thread.

Quote:
I wanted to say that you have done a great job with all your work. I learned a lot here and had fun. My goal is to tether a small scanner to a small device running linux. I have learned that I need a device with USB host capabilities, so I'll be checking out linux on the Treo 650.

Peace out.


Unfortunately the iPod doesn't have USB host drivers written (except maybe for the 1G/2G iPod monos). You may want to check out the Rockbox project as they have done quite some extensive work with USB drivers.

~Keripo

_________________
Need iPodLinux? See Project ZeroSlackr -> http://sourceforge.net/projects/zeroslackr/


Report this post Post details Delete post
Top
 Profile Send private message E-mail  
Edit post Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 3 posts ] 

All times are UTC - 5 hours


Who is online

Users browsing this forum: Keripo and 0 guests


Quick-mod tools:
You can post new topics in this forum
You can reply to topics in this forum
You can edit your posts in this forum
You can delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group