Homebrew How do you make homebrew?

Dryad

New Member
OP
Newbie
Joined
Jun 28, 2009
Messages
2
Trophies
0
XP
3
Country
United States
What programs are used to make DS homebrew? I have some good ideas, but I'm not sure how they're made.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
The question comes up every so often but OK.
There are many things that can be used to make homebrew on the DS.

First up stuff like lua, basic and various other interpreted languages (no real java I am afraid)
http://microlua.risike.com/
You can make some nice stuff but the DS (I saw some graphic novels and similar things) is a bit too limited for interpreted languages to reach anything like they are with the PC.

Second up is more low level languages like ASM and C (C++ is not used all that often as it is rather cumbersome for the sharply limited resources of the DS, it can be done).
Devkitpro (more specifically the devkitarm toolchain) is the choice here:
http://www.devkitpro.org/
Pretty much everything can be done with this although there are other more specialist libraries floating around.
Nice guide to the basics:
http://patater.com/files/projects/manual/manual.html

Another guide:
http://www.liranuna.com/nds-2d-tuts/

and another for the GBA (GBA and DS hardware is similar enough to be worth knowing about both) but one I really rate:
http://www.coranac.com/tonc/text/toc.htm

You may also want a hardware guide for which we have:
http://nocash.emubase.de/gbatek.htm

On top of this there is palib which is frowned upon by some as it is considered clunky and somewhat slow and indeed it may be compared to hand optimised stuff. It has not stopped a large number of amazing apps being made using it though.
http://forum.palib.info/

Much like all other areas of coding I suggest pulling apart the work of someone else too. The vast majority of applications are open source too.

I suppose the main thing that has to be said it do not go into it expecting to make the next moonshell, dsorganize or PuzzleManiak or even something that you might see in the rom release lists (I am probably biased but some homebrew I rate above lots of commercial releases) as it will not happen as a first project. It know it should go without saying but we have still seen a few people do this.
 

updowners

Well-Known Member
Member
Joined
Sep 26, 2008
Messages
1,323
Trophies
0
XP
201
Country
United States
FAST6191 said:
The question comes up every so often but OK.
There are many things that can be used to make homebrew on the DS.

First up stuff like lua, basic and various other interpreted languages (no real java I am afraid)
http://microlua.risike.com/
You can make some nice stuff but the DS (I saw some graphic novels and similar things) is a bit too limited for interpreted languages to reach anything like they are with the PC.

Second up is more low level languages like ASM and C (C++ is not used all that often as it is rather cumbersome for the sharply limited resources of the DS, it can be done).
Devkitpro (more specifically the devkitarm toolchain) is the choice here:
http://www.devkitpro.org/
Pretty much everything can be done with this although there are other more specialist libraries floating around.
Nice guide to the basics:
http://patater.com/files/projects/manual/manual.html

Another guide:
http://www.liranuna.com/nds-2d-tuts/

and another for the GBA (GBA and DS hardware is similar enough to be worth knowing about both) but one I really rate:
http://www.coranac.com/tonc/text/toc.htm

You may also want a hardware guide for which we have:
http://nocash.emubase.de/gbatek.htm

On top of this there is palib which is frowned upon by some as it is considered clunky and somewhat slow and indeed it may be compared to hand optimised stuff. It has not stopped a large number of amazing apps being made using it though.
http://forum.palib.info/

Much like all other areas of coding I suggest pulling apart the work of someone else too. The vast majority of applications are open source too.

I suppose the main thing that has to be said it do not go into it expecting to make the next moonshell, dsorganize or PuzzleManiak or even something that you might see in the rom release lists (I am probably biased but some homebrew I rate above lots of commercial releases) as it will not happen as a first project. It know it should go without saying but we have still seen a few people do this.

You should make this topic stickied so there won`t be anymore topics like these.
 

DanTheManMS

aka Ricochet Otter
Member
Joined
Jun 2, 2007
Messages
4,453
Trophies
1
Age
34
Location
Georgia
XP
751
Country
United States
FAST6191 said:
Second up is more low level languages like ASM and C (C++ is not used all that often as it is rather cumbersome for the sharply limited resources of the DS, it can be done).

My impression was that while that was true on the GBA, for the DS it seemed that C++ was used more often than C. I could be wrong though.

Otherwise an excellent post.
 

SifJar

Not a pirate
Member
Joined
Apr 4, 2009
Messages
6,022
Trophies
0
Website
Visit site
XP
1,175
Country
Unoalpho said:
Nds Game Maker
PALib
Devkit Pro or Arm

Easier than Programmers notepad and other stuff
do you know ANYTHING about homebrew development? Programmers Notepad is an editor, and a reasonably popular one I believe. The only one of the things you listed which does not need an editor is NDS Game Maker, which is a piece of crap.

PALib and DevKitPro both need an editor such as Programmers Notepad or Notepad++. You obviously know NOTHING about homebrew development. PALib and DevKitPro are easier than Programmers Notepad? You're talking crap. They both need an editor like Programmers Notepad, and therefore cannot be easier than programmers notepad. Especially seeing as PN can't make DS Homebrew. It only helps you write source code files. DevKitPro compiles these into homebrew, sometimes using PALib.
 

fgghjjkll

GBATemp MegaMan
Member
Joined
Jul 7, 2008
Messages
2,043
Trophies
0
Age
28
XP
1,038
apparently Dev C++ has an old and outdated version of PAlib.
awesome thing is that it has a one click compile
biggrin.gif
 

eth0

Active Member
Newcomer
Joined
Jul 13, 2009
Messages
25
Trophies
0
XP
4
Country
Belgium
fgghjjkll said:
apparently Dev C++ has an old and outdated version of PAlib.
awesome thing is that it has a one click compile
biggrin.gif

You can get devkitARM/libnds/dswifi/.../PAlib combo to work in the latest vc free edition. It's not that hard.

personally I use Xcode on mac for editing my .c files, works fine too.
pitty chishm's loader is broke else I'd release my stuff
frown.gif


edit: some may consider palib to be bad, but personally I like it. I had no C experience but was able to get a simple menu going, but can't test it on my SCDSONEi
frown.gif
 

DanTheManMS

aka Ricochet Otter
Member
Joined
Jun 2, 2007
Messages
4,453
Trophies
1
Age
34
Location
Georgia
XP
751
Country
United States
I can easily compile projects with DevKitARM using Visual C++ 2008 Express by following the instructions in the DevKitPro site's FAQ section. All it needs is a special "make" command, and a "source" folder created in the project directory. Never tried it with DSWifi or PAlib though.

I would be more open to using PN if I could find a way to automatically fix all the indentations in my file. In Visual C++ I can do this by highlighting everything and hitting "CTRL+K+F" but I cannot find a similar option in PN.
 

Da-Bomb1

Well-Known Member
Member
Joined
Apr 19, 2009
Messages
795
Trophies
0
Age
32
Location
BC, Canada
XP
89
Country
Canada
Hm..which APIs would you recommend? I just got into DS homebrew, and I'm kinda at a loss of where to go to next...I managed to follow one tutorial (the one with the orange spaceship app), but dunno what else to do now. Any suggestions?
 

eth0

Active Member
Newcomer
Joined
Jul 13, 2009
Messages
25
Trophies
0
XP
4
Country
Belgium
PAlib isn't to bad, you can do some nice things with it and it's not to hard, using native libnds is a bit harder IMHO, although a lot cleaner.

I guess it depends on if you want to have it easy and produce some things first or have a harder time but do it without PAlib. Or just try PAlib and if you don't like it don't use it. There forum is good too to get some help if you're stuck.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • DinohScene @ DinohScene:
    I'm much more on the killing floor :x
  • SylverReZ @ SylverReZ:
    Imagine that every Pokemon game is the exact same but with slight tweaks.
  • SylverReZ @ SylverReZ:
    @DinohScene, I'm not much of a gaymer, more-so a creator.
  • Maximumbeans @ Maximumbeans:
    @SylverReZ Syl my beloved :bow: gm
    +1
  • Maximumbeans @ Maximumbeans:
    It is friday
  • SylverReZ @ SylverReZ:
    Last time I played a game was hmmm... can't exactly recall. :wacko:
  • Maximumbeans @ Maximumbeans:
    I can't believe you got me with that
    +1
  • SylverReZ @ SylverReZ:
    I haven't been gaming for such a long time. Been mostly busy with sleep, hardware tinkering and checking GBAtemp frequently.
  • SylverReZ @ SylverReZ:
    Hope you've had a good morning.
  • Maximumbeans @ Maximumbeans:
    It's going alright thanks :) I know what you mean with gaming time. It's precious where I can get it these days.
    +1
  • Maximumbeans @ Maximumbeans:
    I think that's why I focus on just enjoying single player experiences that aren't too competitive
  • Maximumbeans @ Maximumbeans:
    How are you doing?
  • SylverReZ @ SylverReZ:
    There's also this thing where I'm hyperfocused at night and cannot get to sleep.
  • SylverReZ @ SylverReZ:
    @Maximumbeans, I'm doing alright, thanks.
    +1
  • Maximumbeans @ Maximumbeans:
    That must be rough. Productive I'm sure but hard to balance with daily life
    +1
  • SylverReZ @ SylverReZ:
    @Maximumbeans, Indeed. I've been working on getting this Infecutus chip to work on my PS2. But after soldering, I realised that a plastic piece was missing from the power ribbon cable to the power and eject buttons.
  • SylverReZ @ SylverReZ:
    Now I could go with soldering the contacts from the cable to the connector on the mobo, but doesn't sound like a good permanent solution.
  • Maximumbeans @ Maximumbeans:
    Man, that's beyond my brain :rofl: I'm no good with hardware for now. I'd like to get into hardmods in future though
  • SylverReZ @ SylverReZ:
    @Maximumbeans, Maybe start practice soldering. Get a cheap-ass soldering iron and follow some good YouTube tutorials.
    +1
  • SylverReZ @ SylverReZ:
    Least my experience has gotten better than over a decade ago. My iron would constantly bump into components and break them.
  • Maximumbeans @ Maximumbeans:
    Sounds good. I actually did soldering but like 16 years ago for school so uuuuh probably rusty haha
  • SylverReZ @ SylverReZ:
    @Maximumbeans, Same here. I did soldering at school from a teacher who I honestly liked since he had plenty of good electronics experience.
    +1
    SylverReZ @ SylverReZ: @Maximumbeans, Same here. I did soldering at school from a teacher who I honestly liked since he... +1