mdec mdec - 3 months ago 21
C Question

Programming on a Nintendo DS

I was reading this answer previously and it got me interested in purchasing a Nintendo DS Lite for learning to program embedded devices. Before I go out and splurge on a DS I had a few questions:


  1. Are there any restrictions on what you can program? The post I indicated earlier seemed to say there weren't, but clarification would be nice.

  2. Would I be better off buying an arduino (or similar) and going that route? I like the DS because it already has a lot of hardware built in.

  3. I'm thinking of getting a CycloDS Evo card, is there a better option for homebrew?

  4. What are the best resources to learn about DS development?



Thanks for your time, If you have a DS and program on it, I'd love you hear your opinion, or alternatively if you have a better idea, I'd like to hear it too.

Thanks =]

Answer
  1. No, there really isn't much of a limitation beyond that of the hardware, and even that can be overcome with enough effort. Quake has been ported to DS, for example, and particle games that utilize both processors have been made. There has also been discussion on how to make higher quality 3D scenes using a double pass renderer. There are multiple resources on the Nintendo DS section of the GBADev forums.

  2. I would say that the DS is an excellent route to embedded systems development; there is a large and active community that is willing to answer questions and give support, and there is so much hardware built straight into the thing. It saves you the time of building a system to test on.

  3. The CycloDS Evolution is a good card and is fairly common, so it shouldn't be difficult - if necessary at all - to make your homebrew compatable with other cards. However, be aware that other popular choices are the M3 line and the R4 line, which are pretty much the same thing. I have a TTDS, and it works well, but not out of the box. I would reccommend the other three mentioned.

  4. As for beginning DS devving, I would reccommend looking at the basic examples found in the examples folder of devkitPro and reading the GBA tutorial TONC, which covers many of the concepts that are used in both GBA and DS development. A more DS oriented tutorial, Patater's Introduction to Nintendo DS Programming, will help beginners get on their way in the DS world. There is also a very comprehensive documentation spec for the GBA and DS known as GBATek.

Comments