gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > how does devkitPro compare to official APIs?

#169548 - ThousandKnives - Wed Jul 22, 2009 5:15 pm

Anyone out there know how devkitPro compares with the official Nintendo API as far as ease of use? If to answer this question in any way violates your NDA, then please ignore it.

I'm a developer who has done some DS homebrew in the past (The Martian DS), and my current employer is currently talking with a publisher who may be interested in doing either a DSi or DSiWare release of several of our Flash games (not The Martian FYI).

I'm simply looking for a baseline comparison between my past experiences with devkitPro and what I might expect with the official API so we can work up a timeline proposal. I'm assuming it will be significantly easier, but who knows.

Any help is greatly appreciated!

#169550 - sgeos - Wed Jul 22, 2009 6:01 pm

The official stuff is better and worse... the hardware debugger is nice but learning the official tools and getting through lot check will take time. I'd give an estimated timeline based on your experience with devkitPro, and revise it as your team gets experience with the official tools. I'd explicitly note that the estimate assumes that devkitPro and the official tools have the same productivity.

#169563 - Miked0801 - Thu Jul 23, 2009 7:12 pm

Much of the 'official' stuff from Nintendo is supplied as a starting point for branching into your own APIs over time. They supply decent code that is solid, but not usually tuned for size or performance. One thing you will hate is the fact that the ARM7 is completely off limits. Same for the DSP. All stuff must run through their code and if you roll your own sound engine and aren't doing multiplayer, the ARM7 pretty much sits idle.

But yes, I'd start with what you know and revise once you get some experience. The one thing you will like is the hardware debuggers on DS/DSi are pretty good this time around. I still the last release of No$ for profiling, but the hardware for all else.

#169569 - cdoty - Fri Jul 24, 2009 3:32 am

If you've gained a decent understanding of the DS, using devkitpro, you should have no problem adapting to the official SDK. The functions are organized fairly well, and the documentation is adequate.

I'm not sure what part of the SDK you're talking about Miked0801, but NitroSDK is very low level. If you're talking about NitroSystem, then you are correct. But, NitroSystem seems to be DS development with training wheels.

The nice thing about the official SDK/compiler is that you can debug your code using codewarrior and ensata. This only works for NitroSDK (and not TWL) based programs, and doesn't support sound output.

#169576 - Miked0801 - Sat Jul 25, 2009 4:05 am

Yes, system, not SDK.

#169587 - silent_code - Sat Jul 25, 2009 7:45 pm

(This post is not meant to be advertisement. Should it violate any forum rules, please remove the conflicing sections. Thank you.)

You should really evaluate the BitEngine (2.0 for DSi), it makes development a lot easier according to fellow programmers that worked / work with the engine.

Otherwise you'll get along with the software Nintendo provides. It's really mostly examples, but they also give you basic editors and plugins for commonly used content creation packages, as well as libraries that handle the exported data in the runtime system.

You shouldn't have big problems adjusting to the official SDKs and tools. :^)
_________________
July 5th 08: "Volumetric Shadow Demo" 1.6.0 (final) source released
June 5th 08: "Zombie NDS" WIP released!
It's all on my page, just click WWW below.

#169589 - anon.devr - Sat Jul 25, 2009 8:13 pm

I found usenti and wingrit far better than the official SDK editor for converting.

I introduced Usenti and Grit to one developer who has never looked back. The GRF format is fantastic.

The SDK is easy to work with. It has lots of documentation and material to get you started. Code designed with multiple platforms in mind should handle official DS sdk, dev kit arm, win32 and linux. That might be a little exaggeration in the win32 and linux part, but thinking cross platform will allow you to work with both the DS sdk and dev kit arm.

Nocash is a fast emulator. We have used it in our presentations and for testing.