Rockbox.org home
Downloads
Release release
Dev builds dev builds
Extras extras
themes themes
Documentation
Manual manual
Wiki wiki
Device Status device status
Support
Forums forums
Mailing lists mailing lists
IRC IRC
Development
Bugs bugs
Patches patches
Dev Guide dev guide
Search



Donate

Rockbox Technical Forums


Login with username, password and session length
Home Help Search Staff List Login Register
News:

Welcome to the Rockbox Technical Forums!

+  Rockbox Technical Forums
|-+  Support and General Use
| |-+  Plugins/Viewers
| | |-+  Programing for Rockbox
« previous next »
  • Print
Pages: [1]

Author Topic: Programing for Rockbox  (Read 2732 times)

Offline ben_b

  • Member
  • *
  • Posts: 2
Programing for Rockbox
« on: January 25, 2008, 03:47:26 PM »
Hi ,Long time Rockbox user first time poster.

     To be clear this is not an,  "I wanna write games too! Show me how!",  post.  This is simply some questions I had that could perhaps, help a few curious others, if they were voiced openly and answered honesty.

Does anyone here like lists?  you know us older people do!

Before you decide to learn how to program ask you self some questions.

1.  Do I think learning to write programs would help me get financially ahead and make a great career,  but when I'm off work I don't think I would mess with it.

     If this is you please don't program here and,  if you do please document your code extensively.  Programing should be and is FUN,   to me and many of the "Good" programmers in the world. if you just don't "see it" I guess find another niche.

     Thats not to say that programming is a bad career choice,  but if that is your only motivation then you probably won't be happy doing it all day at work and who wants to do something they hate all day?

2.  Ok It would be cool and fun to program but Where do I start?

     This is the age old question and can only be different for everyone.  You're going to have to learn C if you want to write cool programs for Rockbox,  but if you never programed any thing and are really into computers and things,   Try low powered languages like LOGO and BASIC,  to get the fundamentals of "thinking" like a programmer.

     In my elementary school we had basic programs at the end of the chapters in the math books.  Today I open my kid's math books and where did all the C programs go that kids can type in?
 
     Being able to find a basic program and go home and type it in and hit run, played a big role in my life concerning how I think about computers.
 
     So go pick up a book about programming not an ebook either you're gonna need something you can scribble erroneous notes in the margins at two thirty in the morning on a weekday cause you "almost got it!".

3. OK I can think like a programmer but "How" do I write a program?

     Write it down on paper,  not the code at least not all the code,  just the idea behind the code,  draw pictures and diagrams.  List out any menus your gonna use,  write down a good description of your idea.  Then start to code,  break down your idea into steps the computer will have to do,  like load a bitmap,  move a bitmap,  make a sound.  Looking at code in other programs is a great way to see how others have loaded bitmaps etc.
Then write the code out on paper.  I've always started to write a program without the computer even being on.

4. Uh alright I wrote my program but it doesn't work when I type it in What do I do? This I threw in just to amuse you.

     Just keep trying if programming is what you want to do.
 
Ok enough laughs ben_b why did you post this non-technical babble in the rockbox forums!

    Now I do have some real questions I would like to ask that could benefit others if people in the "know" could answer them,  so who wants more lists?

1. I've never programmed for any other processor except the 386 before. is programing for rockbox like writing any other c program?

2. I've looked at the /doc folder,  the wiki, and the code is there anymore info on rockbox functions and libraries that I missed?

3. So any gpl C code can be used with rockbox,  Is this true? with v1's and v3's and stuff floating around the gpl seems confusing now these days, Can anyone clear the air on this subject?

4. Where would be the perfect place to start a project that the community,  mainly first-time programers,  could work on, but had no initial code at first,  the feature request or patches section of flyspray? a sand box section?

That seems like it covers enough bases for a first post don't you think?
Just want to say beforehand, Thank you for your time,  patience,  and wisdom.
« Last Edit: January 25, 2008, 07:05:26 PM by ben_b »
Logged

zajacattack

  • Guest
Re: Programing for Rockbox
« Reply #1 on: January 25, 2008, 06:18:00 PM »
I completely agree. Programming needs to be fun. For me, I love it (although I will admit, my first drive for learning it was money, but it has grown on me now).
Logged

Offline nls

  • Developer
  • Member
  • *
  • Posts: 460
Re: Programing for Rockbox
« Reply #2 on: January 26, 2008, 05:01:26 AM »
Quote from: ben_b on January 25, 2008, 03:47:26 PM
1. I've never programmed for any other processor except the 386 before. is programing for rockbox like writing any other c program?

2. I've looked at the /doc folder,  the wiki, and the code is there anymore info on rockbox functions and libraries that I missed?

3. So any gpl C code can be used with rockbox,  Is this true? with v1's and v3's and stuff floating around the gpl seems confusing now these days, Can anyone clear the air on this subject?


1) Basically yes, with some additional gotchas :) like cpus with different endianness, some cpus supporting unaligned memory access and some don't etc.

2) not really, feel free to ask *specific* questions in irc, though

3) While rockbox' license is not entirely clear we are either v2 or "v2 or later" which means you can use any "v1 or later", v2 or "v2 or later" code but not v3 although IANAL
Logged

Offline AlexP

  • Global Moderator
  • Member
  • *
  • Posts: 3688
  • ex-BigBambi
Re: Programing for Rockbox
« Reply #3 on: January 26, 2008, 05:04:54 AM »
Quote from: nls on January 26, 2008, 05:01:26 AM
Quote from: ben_b on January 25, 2008, 03:47:26 PM
1. I've never programmed for any other processor except the 386 before. is programing for rockbox like writing any other c program?

1) Basically yes, with some additional gotchas :) like cpus with different endianness, some cpus supporting unaligned memory access and some don't etc.

No Malloc!  This usually catches people out who are used to writing for PCs


Quote from: ben_b on January 25, 2008, 03:47:26 PM
3. So any gpl C code can be used with rockbox,  Is this true? with v1's and v3's and stuff floating around the gpl seems confusing now these days, Can anyone clear the air on this subject?

There has been much debate on this, search the IRC logs for more details.
Logged
H140, F60, S120, e260, c240, Clip, Fuze v2, Connect, MP170, Meizu M3, Nano 1G, Android

Offline ben_b

  • Member
  • *
  • Posts: 2
Re: Programing for Rockbox
« Reply #4 on: January 27, 2008, 01:02:49 AM »
Quote from: zajacattack on January 25, 2008, 06:18:00 PM
I completely agree. Programming needs to be fun. For me, I love it (although I will admit, my first drive for learning it was money, but it has grown on me now).

Yeah,  theres nothing more dangerous than an angry overworked coder.  ;)

 
Logged

Offline Febs

  • Member
  • *
  • Posts: 2701
Re: Programing for Rockbox
« Reply #5 on: January 27, 2008, 11:25:06 AM »
Quote from: ben_b on January 27, 2008, 01:02:49 AM
Yeah,  theres nothing more dangerous than an angry overworked coder.  ;)


Except perhaps an angry overworked postal worker.  Or maybe Britney Spears.  But I digress ...
Logged
Rockbox Forum Guidelines
The Rockbox Manual
How to Ask Questions the Smart Way
Please do not send me support questions via PM.

  • Print
Pages: [1]
« previous next »
+  Rockbox Technical Forums
|-+  Support and General Use
| |-+  Plugins/Viewers
| | |-+  Programing for Rockbox
 

  • SMF 2.0.17 | SMF © 2019, Simple Machines
  • Rockbox Privacy Policy
  • XHTML
  • RSS
  • WAP2

Page created in 0.083 seconds with 15 queries.