Nintendo DS Homebrew: Where to start?

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

User avatar
Arti-Ravnos
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 21
Joined: Tue Mar 03, 2009 6:19 pm
Favorite Gaming Platforms: NES, NDS, PC
Programming Language of Choice: Actionscript 3

Nintendo DS Homebrew: Where to start?

Post by Arti-Ravnos »

I've got an Nintendo DS Lite (firmware v5) and have done some research (google) in NDS Homebrew Development. I found many great sites explaining how to get started, but it seems to be many different ways to play homebrew on your DS and I must admit that I'm confused.

I'm not going to make my own homebrew right away, since I'm still reading my first real programming book (C++), but it would be good to know what to do when I eventually want to start making my own nds applications.

My questions:

1. What is the best way to running homebrew applications and games on my Nintendo DS Lite (v5)?
In other words: "What storage device should I use?"
  • a) Use a SLOT-1 device - Which one? - Where to buy (safe online store)?
    b) Use a SLOT-2 device - Which one? - Where to buy (safe online store)?
In this wikipedia article many different types of both SLOT-1 storage devices and SLOT-2 storage devices are represented. However, after doing so research I've found out that the best way to running homebrew is perhaps using a R4DS card, but this card also seems to have many different versions. Some cards come in its own package and other you can buy seperately. I'm confused.

2. How to make NDS homebrew applications and games?
  • a) What programming language should I use?
    • I: Can I use C++? (preferable)
      II: Or do I have to use C instead?
      III: Or perhaps another programming language?
    b) Do you have any good resources/sites on NDS Homebrew?
I would really appreciate any help to get started. Thank you in advance. :)
zapakitul
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 15
Joined: Sat Jun 20, 2009 8:05 pm
Current Project: Swift
Favorite Gaming Platforms: PC, SNES, DS
Programming Language of Choice: C
Contact:

Re: Nintendo DS Homebrew: Where to start?

Post by zapakitul »

I bought my Supercard from gameplay.ro, a local distribuitor from my country. In order to develop homebrew applications for the DS, I recommend using Devkitpro. You can use both C and C++.
Resources:
- Drunken Coders
- Double.co.nz
- Patater's tutorials
- Devkit Pro forum
I'll be back later with more details. Got to run now.
XianForce
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 767
Joined: Wed Oct 29, 2008 8:36 pm

Re: Nintendo DS Homebrew: Where to start?

Post by XianForce »

For DS homebrew... Slot 1 flashcarts are the way to go. As for programming them, I'd skip the C++ and go with C, it's much more efficient and you'll be able to do much more with it on the DS. But I'd recommend starting with PAlib, check out their IRC if you need help.

You can use C++ with PAlib but I've heard there can be problems with it... although I'm not sure if it's true or not.

Anyways, as for DevKitPro, PAlib is just a library on top of that. DevKitPro can be kind of hard to use, so PAlib's kind of like the easier way to do it. So I reccommend checking out both, if you can use DevKitPro's libnds without any trouble, use it, I imagine that you'd be able to do more than that.

There is a middle ground though. NightFox's lib is another library to consider. I hear it's great, so you can just use that along with libnds.
User avatar
MarauderIIC
Respected Programmer
Respected Programmer
Posts: 3406
Joined: Sat Jul 10, 2004 3:05 pm
Location: Maryland, USA

Re: Nintendo DS Homebrew: Where to start?

Post by MarauderIIC »

I have an R4 card (aka R4DS) that I got from an online retailer for like $15 including the microSD card. I don't recall which one, sorry, I pulled the URL from a form post when I was looking for the same sort of thing, myself.
I realized the moment I fell into the fissure that the book would not be destroyed as I had planned.
User avatar
Arti-Ravnos
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 21
Joined: Tue Mar 03, 2009 6:19 pm
Favorite Gaming Platforms: NES, NDS, PC
Programming Language of Choice: Actionscript 3

Re: Nintendo DS Homebrew: Where to start?

Post by Arti-Ravnos »

MarauderIIC wrote:I have an R4 card (aka R4DS) that I got from an online retailer for like $15 including the microSD card. I don't recall which one, sorry, I pulled the URL from a form post when I was looking for the same sort of thing, myself.
Too bad you don't remember. It would be great to get an all-in-one package. However, I did some more research and one place they recommend buying an R4 card and another they said software updates wasn't supported anymore. There are some many different cards to choose from that I still feel lost. I hope you people will come with more suggestions of slot 1 cards. Don't be afraid to include a link showing a specific card from another website (f.ex. you could show a product from an online store even though it's very expensive and I'm not going to buy the card from there). ;)

@XianForce and Zapakitul:
Thank you for the resources and replies to my post. I will try to look at DevKitPro first. I've always liked to do things the difficult way (hardcore xD), but I will also check out PAlib first. I'll also try to use C++ as far it is possible. :)
“Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.”
(Stan Kelly-Bootle)
XianForce
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 767
Joined: Wed Oct 29, 2008 8:36 pm

Re: Nintendo DS Homebrew: Where to start?

Post by XianForce »

Arti-Ravnos wrote:
MarauderIIC wrote:I have an R4 card (aka R4DS) that I got from an online retailer for like $15 including the microSD card. I don't recall which one, sorry, I pulled the URL from a form post when I was looking for the same sort of thing, myself.
Too bad you don't remember. It would be great to get an all-in-one package. However, I did some more research and one place they recommend buying an R4 card and another they said software updates wasn't supported anymore. There are some many different cards to choose from that I still feel lost. I hope you people will come with more suggestions of slot 1 cards. Don't be afraid to include a link showing a specific card from another website (f.ex. you could show a product from an online store even though it's very expensive and I'm not going to buy the card from there). ;)

@XianForce and Zapakitul:
Thank you for the resources and replies to my post. I will try to look at DevKitPro first. I've always liked to do things the difficult way (hardcore xD), but I will also check out PAlib first. I'll also try to use C++ as far it is possible. :)

Yeah I got into DevKitPro a little bit, but then my DS along with the flashcart mysteriously disappeared. All I remember was, I was testing an app for a friend, set the DS on my desk when I was done... Went to sleep, woke up and it was gone. It's been gone for 2-3 months and I haven't the slightest clue of where it is... I just know it's in the house somewhere (I think...)
User avatar
MarauderIIC
Respected Programmer
Respected Programmer
Posts: 3406
Joined: Sat Jul 10, 2004 3:05 pm
Location: Maryland, USA

Re: Nintendo DS Homebrew: Where to start?

Post by MarauderIIC »

I searched my browser history. I bought it from http://www.realhotstuff.com/advanced_se ... r4&x=0&y=0 but it looks like they only have R4DS SDHC now (allows > 2gb microSD cards).

Here's a cheap R4DS http://www.nxpgame.com/r4ds.html that holds <=2gb microSD cards.
I realized the moment I fell into the fissure that the book would not be destroyed as I had planned.
User avatar
Ginto8
ES Beta Backer
ES Beta Backer
Posts: 1064
Joined: Tue Jan 06, 2009 4:12 pm
Programming Language of Choice: C/C++, Java

Re: Nintendo DS Homebrew: Where to start?

Post by Ginto8 »

OK since I haven't been on the forum in a while I guess I missed this thread. I just recently got an Acekard 2.1 and I'm loading it up with homebrew/backups and trying to learn how to make games for it. This is what I've found out:
#1: do NOT try to learn/use libnds until you have a strong standing in linear algebra
#2: PAlib is awesome
PAlib makes DS development much easier, and you can use libnds with it if you want to (PAlib is really a libnds wraparound). For setup and tutorials, check out here (it also has c/++ basics but you can skip over that part).

Also I bought my acekard from gamekool. took about 1 1/2 weeks to ship to NJ, USA from Hong Kong.

PS: Acekard supports microSDHC!
PPS: 8GB microSDHC card with SD adapter for under $12 here!
Quit procrastinating and make something awesome.
Ducky wrote:Give a man some wood, he'll be warm for the night. Put him on fire and he'll be warm for the rest of his life.
zapakitul
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 15
Joined: Sat Jun 20, 2009 8:05 pm
Current Project: Swift
Favorite Gaming Platforms: PC, SNES, DS
Programming Language of Choice: C
Contact:

Re: Nintendo DS Homebrew: Where to start?

Post by zapakitul »

I for one would recomand you to use Libnds, and not PALib, hence last time I checked PALib forces you to use an outdated version of DevkitPro. Also, the size of the .nds file is slightly bigger with PALib.
Last edited by zapakitul on Thu Jul 30, 2009 1:41 am, edited 1 time in total.
User avatar
Pickzell
Chaos Rift Junior
Chaos Rift Junior
Posts: 233
Joined: Sat May 16, 2009 10:21 am

Re: Nintendo DS Homebrew: Where to start?

Post by Pickzell »

I'm still reading my first real programming book (C++)
1. What is the best way to running homebrew applications and games on my Nintendo DS Lite (v5)?
In other words: "What storage device should I use?"

a) Use a SLOT-1 device - Which one? - Where to buy (safe online store)?
b) Use a SLOT-2 device - Which one? - Where to buy (safe online store)?
2. How to make NDS homebrew applications and games?

a) What programming language should I use?
I: Can I use C++? (preferable)
II: Or do I have to use C instead?
III: Or perhaps another programming language?b) Do you have any good resources/sites on NDS Homebrew?


I really have no comment.
I'm an altogether bad-natured Cupid.
User avatar
Arti-Ravnos
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 21
Joined: Tue Mar 03, 2009 6:19 pm
Favorite Gaming Platforms: NES, NDS, PC
Programming Language of Choice: Actionscript 3

Re: Nintendo DS Homebrew: Where to start?

Post by Arti-Ravnos »

Pickzell wrote:I really have no comment.
I'm sorry if I didn't explained myself well enough.
The main reason I made this subject was because I wanted to know how I could run homebrew on my Nintendo DS. I got confused because it seem to be so many different cards to buy and I didn't know which one I should buy.

The second question I asked more of curiousity, and I wondered if I could make NDS games with C++ and how I would do it. My main goal was to run homebrew (that other people have made) and perhaps eventually make my own applications to my NDS some day. I just wanted to know how it's done. I'm not the kind of person who believes that I'll be making an awesome 3D game on my DS after reading one book and looked at some online tutorials. I'm not moving on to homebrew before I have a sufficient knowledge in my language and programming in general. Just wanted to make it clear, so that hopefully there will be no more misunderstandings. Thank you for calling my attention, so that I got a chance to explain. ;)
I wrote:I'm not going to make my own homebrew right away, since I'm still reading my first real programming book (C++), but it would be good to know what to do when I eventually want to start making my own nds applications.
I tried to explain it in the first post but I realize I didn't made it clear enough. And I don't know why I used the word real either, since I have read books about and programmed in Actionscript (Flash) for several years, which is a programming language after all. I guess I didn't consider it as a "real" programming language, because of its many limitations, especially compared to languages like C, Java, C#, C++ etc.(even though there are ways to avoid some of the limitations). :P

--------------------------------------------------------------------------------------------------------------------------------------------------------------
Ginto8 wrote:Also I bought my acekard from gamekool. took about 1 1/2 weeks to ship to NJ, USA from Hong Kong.

PS: Acekard supports microSDHC!
PPS: 8GB microSDHC card with SD adapter for under $12 here!
Thank you, very much. Acekard looks very good considered its price. Do you think it safe to shop from gamekool? They are after all listed on acekard's reseller list. They do sell Acekard from my country too, but then the price is more than 70$! If you're satisfied with the product I think I'll go for it too. :D
“Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.”
(Stan Kelly-Bootle)
User avatar
Pickzell
Chaos Rift Junior
Chaos Rift Junior
Posts: 233
Joined: Sat May 16, 2009 10:21 am

Re: Nintendo DS Homebrew: Where to start?

Post by Pickzell »

Arti-Ravnos wrote:
Pickzell wrote:I really have no comment.
I'm sorry if I didn't explained myself well enough.
The main reason I made this subject was because I wanted to know how I could run homebrew on my Nintendo DS. I got confused because it seem to be so many different cards to buy and I didn't know which one I should buy.

The second question I asked more of curiousity, and I wondered if I could make NDS games with C++ and how I would do it. My main goal was to run homebrew (that other people have made) and perhaps eventually make my own applications to my NDS some day. I just wanted to know how it's done. I'm not the kind of person who believes that I'll be making an awesome 3D game on my DS after reading one book and looked at some online tutorials. I'm not moving on to homebrew before I have a sufficient knowledge in my language and programming in general. Just wanted to make it clear, so that hopefully there will be no more misunderstandings. Thank you for calling my attention, so that I got a chance to explain. ;)
I wrote:I'm not going to make my own homebrew right away, since I'm still reading my first real programming book (C++), but it would be good to know what to do when I eventually want to start making my own nds applications.
I tried to explain it in the first post but I realize I didn't made it clear enough. And I don't know why I used the word real either, since I have read books about and programmed in Actionscript (Flash) for several years, which is a programming language after all. I guess I didn't consider it as a "real" programming language, because of its many limitations, especially compared to languages like C, Java, C#, C++ etc.(even though there are ways to avoid some of the limitations). :P

--------------------------------------------------------------------------------------------------------------------------------------------------------------
Ginto8 wrote:Also I bought my acekard from gamekool. took about 1 1/2 weeks to ship to NJ, USA from Hong Kong.

PS: Acekard supports microSDHC!
PPS: 8GB microSDHC card with SD adapter for under $12 here!
Thank you, very much. Acekard looks very good considered its price. Do you think it safe to shop from gamekool? They are after all listed on acekard's reseller list. They do sell Acekard from my country too, but then the price is more than 70$! If you're satisfied with the product I think I'll go for it too. :D

I use an R4iDS because it runs on all three DSs (DS DSL DSi). You can buy one here. Here is it's setup tutorial
http://www.double.co.nz/nintendo_ds/nds_tutorial1.html

It's recommended that you use C rather than C++ but you CAN use C++.

Here's the (overly complicated) install tutorial.


http://dev-scene.com/NDS/Tutorials_Day_1


Tutorials:
http://libnds.devkitpro.org/
http://dev-scene.com/NDS/Tutorials_Day_1
http://www.double.co.nz/nintendo_ds/nds_develop1.html

Forums:
http://forum.gbadev.org/viewforum.php?f=24
http://forums.devkitpro.org/
I'm an altogether bad-natured Cupid.
XianForce
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 767
Joined: Wed Oct 29, 2008 8:36 pm

Re: Nintendo DS Homebrew: Where to start?

Post by XianForce »

Those tutorials are not anywhere near being finished, and/or very outdated.
User avatar
Ginto8
ES Beta Backer
ES Beta Backer
Posts: 1064
Joined: Tue Jan 06, 2009 4:12 pm
Programming Language of Choice: C/C++, Java

Re: Nintendo DS Homebrew: Where to start?

Post by Ginto8 »

XianForce wrote:Those tutorials are not anywhere near being finished, and/or very outdated.
that is another complaint I have about libnds: there aren't enough published tutorials out there for a beginner. If you want to start developing for the nds quickly, PAlib is the way to go. ;)
Quit procrastinating and make something awesome.
Ducky wrote:Give a man some wood, he'll be warm for the night. Put him on fire and he'll be warm for the rest of his life.
XianForce
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 767
Joined: Wed Oct 29, 2008 8:36 pm

Re: Nintendo DS Homebrew: Where to start?

Post by XianForce »

Ginto8 wrote:
XianForce wrote:Those tutorials are not anywhere near being finished, and/or very outdated.
that is another complaint I have about libnds: there aren't enough published tutorials out there for a beginner. If you want to start developing for the nds quickly, PAlib is the way to go. ;)
I hear NightFox's lib is good to use on top of libnds. His lib is well enough documented, and the only real thing you take from libnds is input, which isn't too hard.


but maybe you should come to the palib irc channel if you have any questions for them, Arti-Ravnos, they are at freenode. Channel is #palib.
Post Reply