Skip navigation
Welcome, Guest! Please Login or Join

Loading...

NES Development Toolbox

May 1, 2010 at 9:14:24 PM
Rachel (10)
avatar
(Player of Games, Killer of Threads) < Eggplant Wizard >
Posts: 334 - Joined: 05/24/2008
Texas
Profile

Updated 8/18/2014 I noticed that there are frequently questions in The Brewery regarding the best tools to use for creating or modifying NES games. I thought it might be nice to collect a list of the most frequently used tools with links to their homepages. This isn't meant to be a comprehensive list of everything that's out there, but instead a sort of "greatest hits" list.

I went through the painful process of moving my NES development from Win XP to Ubuntu to Mac OS X to Win 7, and I know that finding a whole new set of tools can be a pain. So I've included compatibility notes for as many tools as I could.

I know that the list is incomplete; this is just my first throwdown to get it started. For example, most of the compatibility notes are just based on personal experience. I'll continue to improve this list and update it regularly. Any suggestions for improvement or additional information would be most welcomed! I would also like to include any tools that you all have written. Hope this is helpful!

ASSEMBLERS These assemblers turn your code into an .NES file--it's magic!

NAME SOURCE COMPATIBILITY NOTES
ASM6 http://home.comcast.net/~olimar/NES/    
ca65 http://www.cc65.org/doc/ca65.html    
DASM http://www.neshq.com/6502program/    
NESASM3 http://www.nespowerpak.com/nesasm/ Windows--Yes
Linux--Yes
The Nerdy Nights code samples are written for this assembler.
WLA DX http://www.villehelin.com/wla.html    
X816      












EMULATORS Test your .NES file with an emulator.

NAME SOURCE COMPATIBILITY NOTES
Nestopia http://nestopia.sourceforge.net/ Windows--Yes
Mac--Yes
Linux--Yes
Does not have a debugger.
Nintendulator http://www.qmtpro.com/~nes/nintendulator/ Windows--Yes Good debugging tools.
FCE Ultra   Windows--Yes
Mac--Yes
Linux--Yes
Does not have a debugger.
FCEUX http://fceux.com/web/home.html Windows--Yes
Linux--Yes (Limited features)
Windows version is very nice and has a good debugger.
FCEUXD SP http://www.the-interweb.com/serendipity/index.php?/categorie... Windows--Yes Has a debugger


















MUSIC TOOLS These programs, called trackers, are used to make NES music code that you can include in your game.

NAME SOURCE COMPATIBILITY NOTES
FamiTracker http://famitracker.shoodot.net/ Windows--Yes
Linux--Yes (WINE)
 
NerdTracker II http://nesdev.parodius.com/nt2/ Windows--Yes
Linux--No
 








TILE EDITORS Tile editors allow you to create and edit the graphics in your games.

NAME SOURCE COMPATIBILITY NOTES
NES CHR Editor http://homepage.mac.com/squirrel2/nes_chr/ Mac--Yes  
NES Screen Tool 2.0 http://forums.nesdev.com/viewtopi... Windows--Yes Haven't tested this personally but looks cool.
Tile Molester   Windows--Yes
Linux--Yes
 
YY-CHR 0.99b http://www.romhacking.net/utilities/119/ Windows--Yes
Mac--No
Linux--Yes (WINE)
Easy to use, many features, including new GUI nametable builder.














TEXT EDITORS The text editor that came with your OS will allow you to write assembly code, but these text editors have additional features that make coding easier.

NAME SOURCE COMPATIBILITY NOTES
ConText http://www.contexteditor.org/ Windows--Yes ASM syntax highlighting, tabbed files
gedit http://projects.gnome.org/gedit/ Windows--Yes
Mac--Yes
Linux--Yes
ASM syntax highlighting (plugin), tabbed files
Notepad++ http://notepad-plus-plus.org/   ASM syntax highlighting, tabbed files









HEX EDITORS Hex editors are useful for chopping out, adding in, or rewriting certain parts of your files.

NAME SOURCE COMPATIBILITY NOTES
GHex http://live.gnome.org/Ghex Linux--Yes  
Hexecute http://www.emulationzone.org/projects/hexecute/ Windows--Yes  
Hexposure   Windows--Yes  
HxD http://mh-nexus.de/en/hxd/ Windows--Yes
Mac--No
Useful feature that allows files to be split into multiple files of a set size.
KHexEdit http://home.online.no/~espensa/khexedit/ Linux--Yes  











GRAPHICS EDITORS Unlike tile editors, these programs won't help you get graphics directly into your game. But they will help you complete any initial design work you might wish to do first.

NAME SOURCE COMPATIBILITY NOTES
GIMP http://www.gimp.org/ Windows--Yes
Mac--Yes
Linux--Yes
Photoshop-like graphics editing. Has layers support.
GraphicsGale http://www.humanbalance.net/gale/us/index.html Windows--Yes  
Paint.NET http://www.getpaint.net/ Windows--Yes Lightweight program with layers support, color reduction. Can import NES palette. User-made plugins available.
Pixen http://download.cnet.com/Pixen/3000-2191_4-44996.html Windows--No
Mac--Yes
Has layers support, color reduction, customizable palettes. Prone to crashes.

 


-------------------------
Resident collector of and expert on vintage girly games and consoles--especially rare stuff! 

Currently playing: Miitomo (iOS), Yoshi's Woolly World (WiiU)


Edited: 08/19/2014 at 12:13 AM by Rachel

May 1, 2010 at 9:33:16 PM
bunnyboy (81)
avatar
(Funktastic B) < Bowser >
Posts: 7342 - Joined: 02/28/2007
California
Profile
Nintendulator would be another good addition to the emulators section. It is frequently regarded as the most cycle accurate NES emulator. Newer versions have a debugger which some people prefer over FCEU. Debugger should also be mentioned for the others, specifically that all versions Nestopia have none and the Mac/Linux ports of FCEU have none.

May 1, 2010 at 9:34:24 PM
NESHomebrew (17)
avatar
(Brad Bateman - Strange Brew Games) < King Solomon >
Posts: 4163 - Joined: 04/28/2008
Saskatchewan
Profile
I'd add Nintendulator on to the list of accurate emulators for testing.

*edit, apparently I read a little too slow lol.


Edited: 05/01/2010 at 09:34 PM by NESHomebrew

May 1, 2010 at 10:04:34 PM
i2a2n2 (39)
avatar
(Ian B.) < Kraid Killer >
Posts: 2321 - Joined: 11/01/2008
Ontario
Profile
HXD great free hex editor for windows for sure not sure about other OS's

-------------------------

My NWC High Score 661 950  Jan 19th 2010

---------Wanted: SNES PROTOTYPES !!! PM Me-----------


May 1, 2010 at 10:46:33 PM
UncleTusk (234)
avatar
(Wilfred Brimley) < King Solomon >
Posts: 4105 - Joined: 07/23/2007
California
Profile
Awesome idea rachel. Great start.

-------------------------
Only Brave Souls Click on the Tusk

Short and large run boxes, manuals, maps!  Give your Uncle a call!
 

May 2, 2010 at 8:22:59 AM
MetalSlime (0)
avatar
(Thomas Hjelm) < Crack Trooper >
Posts: 140 - Joined: 08/14/2008
Japan
Profile
If you use ca65 and fceuxdsp 1.07, then nlgen is awesome: http://nesdev.com/nlgen.zip...

It generates .nl files that fceuxdsp uses to put your labels on all your variables/addresses in the debugger. I don't know what I'd do without it.

-------------------------
MetalSlime runs away

My nesdev blog: http://tummaigames.com/blog...

May 2, 2010 at 10:20:50 AM
Mario's Right Nut (350)
avatar
(Cunt Punch) < Bowser >
Posts: 6574 - Joined: 11/21/2008
Texas
Profile
Stickyed! Awesome.

-------------------------

This is my shiny thing, and if you try to take it off me, I may have to eat you.

Check out my dev blog.


May 2, 2010 at 10:27:06 AM
NESHomebrew (17)
avatar
(Brad Bateman - Strange Brew Games) < King Solomon >
Posts: 4163 - Joined: 04/28/2008
Saskatchewan
Profile
Originally posted by: MetalSlime

If you use ca65 and fceuxdsp 1.07, then nlgen is awesome: http://nesdev.com/nlgen.zip

It generates .nl files that fceuxdsp uses to put your labels on all your variables/addresses in the debugger. I don't know what I'd do without it.

Why have I never seen this before!! Thank-you so much for sharing that link!

May 2, 2010 at 10:43:25 AM
MetalSlime (0)
avatar
(Thomas Hjelm) < Crack Trooper >
Posts: 140 - Joined: 08/14/2008
Japan
Profile
Originally posted by: WhatULive4

Originally posted by: MetalSlime

If you use ca65 and fceuxdsp 1.07, then nlgen is awesome: http://nesdev.com/nlgen.zip

It generates .nl files that fceuxdsp uses to put your labels on all your variables/addresses in the debugger. I don't know what I'd do without it.

Why have I never seen this before!! Thank-you so much for sharing that link!


No problem.  It's pretty new and ca65 assembler-specific, so that may be why you haven't seen it before.  But it's a great little program.  I call it in my make batch file, so every time I assemble I get fresh .nl files for debugging.

-------------------------
MetalSlime runs away

My nesdev blog: http://tummaigames.com/blog...

May 2, 2010 at 10:56:02 AM
Sethresh (9)
avatar
(Esa Rinta-aho) < Crack Trooper >
Posts: 193 - Joined: 02/02/2009
Finland
Profile
Nooo, why is pixen mac only?! Thanks for sharing those other tools, just awesome.

-------------------------


May 2, 2010 at 11:45:54 AM
bunnyboy (81)
avatar
(Funktastic B) < Bowser >
Posts: 7342 - Joined: 02/28/2007
California
Profile
Graphic Converter is what I would suggest for MacOS. It has the normal paint/pixel editing tools. As a side benefit it can import/export pretty much every possible graphics format.

May 2, 2010 at 12:26:36 PM
NESHomebrew (17)
avatar
(Brad Bateman - Strange Brew Games) < King Solomon >
Posts: 4163 - Joined: 04/28/2008
Saskatchewan
Profile
On the subject of image editors, I like GraphicsGale for windowze. I'm not knocking Gimp, but it has way more features then you need for simple sprites and animation.

May 2, 2010 at 6:43:47 PM
Rachel (10)
avatar
(Player of Games, Killer of Threads) < Eggplant Wizard >
Posts: 334 - Joined: 05/24/2008
Texas
Profile
Cool, thanks! Updated. Bunnyboy--is Graphic Converter not a free program? I hadn't even thought to include the for-pay stuff. But then, I'm cheap, soo...
This has reminded me how completely awesome it would be to actually have an emulator with a debugger again. Mmm, memories...

-------------------------
Resident collector of and expert on vintage girly games and consoles--especially rare stuff! 

Currently playing: Miitomo (iOS), Yoshi's Woolly World (WiiU)

May 2, 2010 at 10:23:42 PM
SUBSCRIBER
GradualGames (39)
avatar
(Derek Andrews) < Meka Chicken >
Posts: 751 - Joined: 10/09/2009
Pennsylvania
Profile
Thanks for the kind remarks about nlgen. I'm happy to see it get more exposure. If anybody has trouble using it or has suggestions, I think I included my email address in there but failing that pm me on here or nesdev.

-------------------------
Creators of: Nomolos: Storming the CATsle, and The Legends of Owlia.

May 3, 2010 at 1:06:45 AM
noattack (12)
avatar
(Nathan A) < Crack Trooper >
Posts: 157 - Joined: 07/30/2008
United States
Profile
Rachel, what are you using for your assembler now that you've transitioned to OS X?

May 3, 2010 at 6:39:57 PM
Rachel (10)
avatar
(Player of Games, Killer of Threads) < Eggplant Wizard >
Posts: 334 - Joined: 05/24/2008
Texas
Profile
Haha... nothing yet . My plan was to move all of my dev stuff from the Ubuntu netbook to the Mac Mini; doing graphics on a tiny screen was getting to be a pain. However, I haven't really played with getting an assembler set up yet, and I'm still doing all my dev (except for graphic design) on the Ubuntu machine. This is my first foray into Mac Land since the Apple 2e I had as a kid, and I'm not really up to speed on it yet. I somehow finagled NESASM 2 into working in Linux, so maybe there's hope for me yet. Anyone else assemblifying on a Mac?

-------------------------
Resident collector of and expert on vintage girly games and consoles--especially rare stuff! 

Currently playing: Miitomo (iOS), Yoshi's Woolly World (WiiU)

May 3, 2010 at 6:43:16 PM
Rachel (10)
avatar
(Player of Games, Killer of Threads) < Eggplant Wizard >
Posts: 334 - Joined: 05/24/2008
Texas
Profile
P.S. Going to try setting up NESASM3 now... will let you know if I don't blow up.

-------------------------
Resident collector of and expert on vintage girly games and consoles--especially rare stuff! 

Currently playing: Miitomo (iOS), Yoshi's Woolly World (WiiU)

Feb 22, 2011 at 10:57:19 PM
cradelit (21)
avatar
(crade lit) < Bowser >
Posts: 5410 - Joined: 08/18/2009
Alberta
Profile
just a note, TileMolester (0.16 at least) works fine on linux.. it's just a java program, no wine required.

-------------------------
GRRR!

Feb 22, 2011 at 11:12:36 PM
3GenGames (0)
This user has been banned -- click for more information.
(3 Gen Games) < Bowser >
Posts: 7316 - Joined: 12/04/2010
Ohio
Profile
You should add Shirus' screen tool on here, I'll add a link later to the NESDev post.

-------------------------


Jan 2, 2012 at 11:49:44 PM
Rachel (10)
avatar
(Player of Games, Killer of Threads) < Eggplant Wizard >
Posts: 334 - Joined: 05/24/2008
Texas
Profile
Updated! Gonna try to fill in the last of the holes on this list soon. If you don't have it, be sure to grab the new version of YY-CHR with the integrated nametable builder. It's raaadical.

-------------------------
Resident collector of and expert on vintage girly games and consoles--especially rare stuff! 

Currently playing: Miitomo (iOS), Yoshi's Woolly World (WiiU)

Jan 3, 2012 at 12:39:50 AM
MODERATOR
KHAN Games (88)
avatar
(Kevin Hanley) < Master Higgins >
Posts: 7508 - Joined: 06/21/2007
Florida
Profile
I will definitely check it out. Thanks Ray-ray.

Dec 9, 2016 at 2:37:57 PM
rlh (12)
avatar
(Richard ) < Meka Chicken >
Posts: 571 - Joined: 09/06/2016
North Carolina
Profile
Curious, has anyone written a C (or C like) NES compiler? And if so (or even, if not) has someone created something of a stdlib?

Dec 9, 2016 at 2:40:09 PM
rlh (12)
avatar
(Richard ) < Meka Chicken >
Posts: 571 - Joined: 09/06/2016
North Carolina
Profile
One more, not related to my last comment.

The FamiTracker appears to be a dead link. :/

Dec 9, 2016 at 3:03:43 PM
SUBSCRIBER
GradualGames (39)
avatar
(Derek Andrews) < Meka Chicken >
Posts: 751 - Joined: 10/09/2009
Pennsylvania
Profile
Originally posted by: rlh

Curious, has anyone written a C (or C like) NES compiler? And if so (or even, if not) has someone created something of a stdlib?
Ca65 is linked above but it's just the assembler of a C compiler, CC65.
http://cc65.github.io/cc65/...

Shiru's NES C stuff can be found here:
https://shiru.untergrund.net/code...

and here:
https://shiru.untergrund.net/arti...

Dougeff's NES C tutorials:
https://nesdoug.com/...

I personally don't use C, but I'm glad to see the scene growing to include folks who for whatever reason have brains that like C. Haha. I'm weird. I actually think it causes me more trouble and takes me more time to build a game with it than with straight asm.

-------------------------
Creators of: Nomolos: Storming the CATsle, and The Legends of Owlia.


Edited: 12/09/2016 at 03:05 PM by GradualGames

Dec 9, 2016 at 3:20:39 PM
Shiru (0)

(Shiru Shiru) < Meka Chicken >
Posts: 668 - Joined: 06/08/2011
Russian Federation
Profile
CC65 has stdlib, but in my opinion it is totally useless on the NES. For example, you won't really ever need to allocate/deallocate memory dynamically, for performance reasons. There is just about 1.2-1.5K of RAM for variables, after all.