NESICIDE is now being rewritten in Qt to be cross-platform capable, more user-friendly, and more community-oriented.
Both the old NESICIDE and new NESICIDE2 are hosted on Gitorious.
To become a contributing member, contact one of the team members of team 'nesicide-core-developers'.
|
|
This project is my current pride and joy. I have been working on it for almost five years
on and off. I basically one day woke up with the grand idea of using a NES emulator and
some lingering assembly coding knowledge to program up my very own NES game.
|
|
|
|
|
What ended up happening was I learned an awful lot about NES architecture, the Picture
Processing Unit (PPU), the 6502 CPU, the cartridge ROM usage of memory mappers to get around
the 32KB program and 8KB character ROM limitations, etc. I also learned that there's quite
a few freeware (and good!) tools out there to help someone with a whacked out idea like
making their own game. There's tile editors, NES music makers, even a version of the BASIC
programming language geared toward NES game development. I made an attempt at stitching
together various tools with a Cygwin shell environment and actually got to the point where
I was able to edit some tiles (in a freeware tile editor GUI), compile the tile data together
with some simple display code with a freeware 6502 assembler, and actually see my image
pop up in a freeware NES emulator. Quite exciting...
|
|
SCREENSHOTS
|
|
|
...but also quite tedious!! I had to switch between Cygwin, Windows, and various tools in
each to get anything near a well-formed iNES file that was loadable by any emulator. I even
tried putting together a makefile so I could just remake a project whenever I changed anything.
The problem with this was the various files I had to stitch together to get a working ROM
were never well-defined. If I added something I had to change the makefile. More files to
maintain. More nightmares!
|
|
|
So that's when it hit me. I could write a GUI that encompassed the full lifecycle of NES
ROM development, from start to finish. In my line of work these tools are referred to as
Integrated Development Environments (IDEs). So, NES IDE was born. I decided on NESICIDE
as the project title because it sounded cool and allowed me some freedom with more acronym
letters to make up something like Incredibly Cool, or Inexpensively Complex, or something.
|
|
|
The intent of NESICIDE is to be able to start with
absolutely nothing (well, maybe at least an idea!) and work your way through background tile
development (playfields), foreground tile development (sprites), sounds (effects and music),
stitching it together with some source code, and finally to generate a ROM. The screenshots above
show NESICIDE emulating 'already created' ROMs you may recognize. Point being, the tool
can also reverse-engineer existing ROMs. Some in emulator world refer to this as ROM hacking.
Yes, you can ROM hack with NESICIDE. Click on the screenshots above to see more, including a
few downloadable demo projects that I worked on entirely within NESICIDE.
|
|
|
Download the tool! Feel free to comment back to me with suggested improvements, complaints,
or general conversation at christopher_pow@hotmail.com. Put something like NES in the subject
line so I won't throw your email away thinking you're trying to sell me Viagra or let me know
I've won the Ethiopian lottery.
|