[HN Gopher] Introduction to Nintendo DS Programming
___________________________________________________________________
Introduction to Nintendo DS Programming
Author : medbar
Score : 122 points
Date : 2026-04-08 05:22 UTC (1 days ago)
(HTM) web link (www.patater.com)
(TXT) w3m dump (www.patater.com)
| Gigachad wrote:
| I had a go at setting up the devkitpro stuff and building a demo
| that I run on my DS. It's surprisingly easy to do and kinda neat.
| msk-lywenn wrote:
| Great resource! But a lot of it is very old. I recently
| discovered this open source ds cart[1] and an alternative SDK[2]
| to devkitPro. Both were used in the development of a demo[3]
| released at Revision this year.
|
| [1]: https://www.lnh-team.org/
|
| [2]: https://blocksds.skylyrac.net/
|
| [3]: https://www.pouet.net/prod.php?which=105928
| HelloUsername wrote:
| (2008)
| stratts wrote:
| Making homebrew for the Nintendo DS was how I got into
| programming in the first place. Devkitpro was too confusing for
| me back then, so I used something called PALib, essentially a
| pretty hacky library built on top to make it "easy".
|
| Nice community at the time though, I made a pong clone where the
| main selling point was that you could switch between different
| "themes", and a bunch of people contributed some really nice
| custom ones to be included.
| voidUpdate wrote:
| This is exactly what I've been looking for recently. Me and my
| partner have gotten into reshelling and jailbreaking old
| handhelds, and we both have DSis that we enjoy, and I've been
| thinking of homebrewing some stuff for us
| SilentEditor wrote:
| Damn this is some legit information. I've looked around for some
| more recent information regarding modding and shelling, any tips
| other than the ones listed below?
|
| Thx
| shmolyneaux wrote:
| If you want an architectural overview of the DS, this is a
| fantastic overview:
| https://www.copetti.org/writings/consoles/nintendo-ds/
| supliminal wrote:
| Next up: getting cheetah running. DS X. Lets go
| spicyjpeg wrote:
| In case anybody here is interested, a few years ago I put
| together a similar (albeit far less comprehensive) resource on
| original PlayStation programming [1], exploring the GPU, geometry
| coprocessor and serial I/O hardware step-by-step with plain C
| examples. I'm planning to extend it with more examples covering
| audio and CD-ROM access next, but haven't yet had the chance to
| do so.
|
| [1]: https://github.com/spicyjpeg/ps1-bare-metal
| corysama wrote:
| I'd bet the DS is the most advanced game console where it is
| still possible for a person to productively program it entirely
| via the bare metal memory map. As in: using an "SDK" that's just
| a C header full of struct and array definitions at magic fixed
| addresses and no functions at all. Set values and the hardware
| does stuff.
| gjsman-1000 wrote:
| Probably? Everything else onward relies on libraries...
|
| Though there were some fits and starts there. The N64 for
| example is, from what I've heard, heavily library dependent and
| absolutely brutal to program bare metal (GPU "microcode" that
| was almost like programmable shaders v0.1); even the GameCube
| is a significant improvement for that kind of thing.
| crims0n wrote:
| Man this brings back memories. The homebrew scene around the DS
| and PSP was so lively circa 2005/2006, and it solidified my
| burgeoning interest in programming.
| kerochord wrote:
| I will always be grateful that my CS Operative Systems course
| 'lab classes' introduced assembly and computer architecture with
| assignments around writing programs for the NDS. It was fun to
| see our childhood consoles run low-level programs written by us.
|
| were about writing a program for the NDS
| jdwithit wrote:
| That sounds really cool! My CS curriculum had one class where
| we had to read and write assembly (targeting an emulator for
| some Motorola chip I don't recall). It was fine but writing
| something that ran on an actual game console would have REALLY
| hooked me I'm sure. Instead we got that one little taste of low
| level development and then went back to writing sort algorithms
| in Java. This was in the early 2000s fwiw.
| Jiro wrote:
| This should have a (2008) on it.
|
| There is no reason to use a slot 2 cart nowadays and the state of
| the art for a slot 1 cart is the DSPico at
| https://gbatemp.net/threads/dspico-an-open-source-flashcart-... .
| medbar wrote:
| Despite the timestamp, I originally uploaded this a day ago and
| can no longer edit the title. My bad! I didn't notice how dated
| the page was until it was too late. Thanks for the link, I've
| been mulling over getting a DSPico to tinker on my old DS.
| cunidev wrote:
| The Nintendo DS is the platform that taught me programming around
| 2010, via devkitPro, and it really let me understand a lot about
| how computers work. It was a rough ecosystem back in the day, but
| a very exciting one. We had no internet connection at home but I
| had the docs downloaded and it was surprisingly satisfying to
| compile on.
| poffdeluxe wrote:
| Howdy to all the people from #dsdev back in the day!
| bashmelek wrote:
| I have an old 3DS. Does anyone know if would these techniques,
| including the Slot-1 devices, also apply? I would like to try
| this out.
|
| My only hesitation is the firmware update---I simply prefer to
| keep my devices without changes like that.
| HoppyHaus wrote:
| 3DS programming is even easier! * Run through
| https://3ds.hacks.guide/ * Set up devkitpro:
| https://devkitpro.org/wiki/Getting_Started * Probably start
| from an example here: https://github.com/devkitpro/3ds-examples
| * Then you don't even need to transfer your built file, 3dslink
| can boot it over the network: https://github.com/devkitPro/3ds-
| hbmenu?tab=readme-ov-file#n...
___________________________________________________________________
(page generated 2026-04-09 17:00 UTC)