An IDE for NES 8-bit

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems.

Moderator: Moderators

User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Post by cpow » Wed Oct 15, 2008 9:26 pm

strat wrote:So you can actually write code in this thing and instantly run it ala 6502 Simulator? Niiiice.

... But it would be great if it also worked as a frontend for an existing assembler (say nesasm or ca65), so you can build an existing project and play it.
Yep. I was shocked it was that easy, myself, to be honest! :shock: Not that I've created Metroid or anything, but the possibility is at least not a pipe dream.

I need to formally put a plug out...I wonder if there's a DLL frontend for any of these existing assemblers? The reason I implemented my own assembler is several-fold:

1. Desire to keep everything in one neat-n-tidy exe package.
2. Lex/Yacc experience burning a hole in the back of my head trying to get lost forever...needed a project just like this to keep it live!
3. Desire to *not* have to use Windows system calls, execl calls, or any other sort of clumsy interface and whatever "hack" file presence checking and temporary files and all that mess to interface to an outside executable.

The assembler I wrote is actually a separate package built as a static library (in Cygwin) and linked into NESICIDE. It has a fairly simple interface that would, I think, work well in a DLL (I just haven't promoted it to DLL yet, see 1 above):

void assemble ( const char* buffer_in, char** buffer_out, int* size );
int get_num_errors ( void );
void get_errors ( char** errors );

Basically NESICIDE concatenates all of the subroutine elements and passes the whopping mess to "assemble", which allocates memory and returns the a pointer to the assembled result (unless there are errors) and how many bytes were assembled. All the while, the errors are kept and retrievable via "get_errors".

User avatar
cpow
NESICIDE developer
Posts: 1097
Joined: Mon Oct 13, 2008 7:55 pm
Location: Minneapolis, MN
Contact:

Post by cpow » Tue May 05, 2009 7:11 pm

strat wrote: ... But it would be great if it also worked as a frontend for an existing assembler (say nesasm or ca65), so you can build an existing project and play it.
I've had a few requests for this so it is planned for the next release.

User avatar
Laserbeak43
Posts: 188
Joined: Fri Sep 21, 2007 4:31 pm
Contact:

Post by Laserbeak43 » Wed May 06, 2009 4:33 am

nice
Noob sticky!!
Please document this part of the NESdevWiki!! XD
YOU NEED A RETROMACHINESHOP!!

User avatar
hd380000
Posts: 31
Joined: Sat Feb 14, 2009 12:50 am
Location: ShangHai China P。R。
Contact:

Post by hd380000 » Wed May 06, 2009 4:51 am

I used it. But I am not understood how very quick the project which completes me to need.
It's very good for made NES game.
If can increases the wrong prompt which in this software's above in the compilation process possibly occurs, that was better. Also has is must have a concrete example to explain how it does use. 8)

Post Reply