NES Screen Tool

A place for your artistic side. Discuss techniques and tools for pixel art on the NES, GBC, or similar platforms.

Moderator: Moderators

Post Reply
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

NES Screen Tool

Post by Shiru »

Recently I had need for a tool that would allow me to create a tileset and nametable from a BMP file, and edit some other things. I've found few solutions which weren't fully worked for me by various reasons (NSA, p8nes), so I quickly made this Windows tool for my needs. Maybe it could be useful for someone else, so I release it to the public.

It allows to import graphics from 16-color BMP file, edit and create nametables, attributes, palettes, and tile graphics. It has the features I've needed only. I may fix bugs and add some small features by request, but I don't have big plans on this tool.

The tool is released into Public Domain, completely with source code, so you can use it any way you want. The source is not much help, though, because it is in Borland Turbo C++ Express, which is no more available for free, and is not portable, but anyway.

Download

Image
Last edited by Shiru on Sun Jan 29, 2012 2:03 am, edited 3 times in total.
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

Cool! I'll be giving this a try.

Couple of things immediately:

+ A really handy feature which I've never seen in one of these editors before is the ability to 'paint' attributes/palettes on the nametable. Really nice :D

- I tried to load a .chr file that I'd made in YYCHR but your program wouldn't load it because it says a .chr file must be 4096 bytes. How come? The one created in YYCHR is only 2048 and looking at your tileset window you only have space for 256 tiles (same as YYCHR) so I'd have thought the resulting .chr file would be 2048, the same as YYCHR?

Edit to add: ah, it seems that the YYCHR files are actually 8192 bytes - I never realised that before. I guess it saves out a 4k CHR/4K SPR file? In that case, your tool is correct :)
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

I can add support for 8K CHRs in form of selectable 'pages', if you need it.
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

I tend to work on 4k files anyway (CHR and SPR separate), I just never realised that YYCHR creates an 8K file by default. :)

I loaded up the CHR file for my latest project and messed around editing the nametable. I really like it, especially the inclusion of RLE. That's a really nice touch. Going to have a play importing BMPs because that sounds cool.

One quick thing that would be nice is if you could make the CHR editor open if you double-click a tile in the tile set (of course, it should open with the tile you click :))

Great work Shiru. I'm going to have a look at the source too. I'd love to be able to port it to OSX (I'm using it via a VM at the moment, same as YYCHR so it's not a problem really)

As for new feature, if you have the time and inclination to do so;

+ more editing functions for the nametable such as copy/paste/cut would be really handy I think

+ more advanced editing would be the ability to insert/delete a row/column in the nametable (when I need to do this with YYCHR I end up just loading the nametable into a hex editor :))
User avatar
thefox
Posts: 3134
Joined: Mon Jan 03, 2005 10:36 am
Location: 🇫🇮
Contact:

Post by thefox »

Good work.

Couple of bugs / feature requests:
- when I imported a BMP the surfaces weren't re-painted until I pressed a button (Show grid)
- maybe change the grid so that it displays 16x16 (attrib areas) with solid lines and subdivides that to 8x8 with dotted lines (or equivalent)
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

I was going to say the same about the grid (16 x 16) but I'd also suggest drawing all the grid lines in dots. Your tool seems to suffer the same problem as YYCHR in that it uses one of the palette colours to draw the grid so depending on what you're putting on the nametable, the grid lines can be 'invisible'.
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

Actually, I select a constrast color to the $3f00 color for the grid. Seems this does not work well enough.

Ok, I'll add/fix the requested things soon.
ccovell
Posts: 1045
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Post by ccovell »

It doesn't work well if you make a simple contrast from a colour's negative. You know that the negative of 50% grey is 50% grey, right?
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

As you can see, by default the color in the tool is exactly 50% grey, and you can see the grid.


Please note that my webhosting does not work by sundays by some reason, so the screenshot could be not available. The download should be available anyway, it is on separate FTP server.
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

Shiru: how easy is it to implement the ability to double-click a .CHR file and have NESST open with that file? Currently it doesn't work - NESST opens but with no file loaded.
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

I've made most of the requests except the >4K CHRs supports.

This includes double-click on a tile in the tileset to open CHR editor, *.chr association support, opening all the files of the same name (requested by me, very handy), copy-paste functions for the nametable, improved grid, and maybe something else.

Download link is the same.
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

Cool! :D

I'll check it out right now.
Wave
Posts: 110
Joined: Mon Nov 16, 2009 5:59 am

Post by Wave »

Great tool!
It will help a lot with static screens and automates duplicate tiles :)
User avatar
neilbaldwin
Posts: 481
Joined: Tue Apr 28, 2009 4:12 am
Contact:

Post by neilbaldwin »

+ Grid is much better
+ Love the nametable editing stuff
+ Association of .pal with .chr is really good, it doesn't seem to work if you double-click a .chr file from Windows though?

Could you also have it remember the last folder/path you accessed so that when you reopen the program you don't have to navigate from the folder where NESST resides?

Thanks Shiru :)
Shiru
Posts: 1161
Joined: Sat Jan 23, 2010 11:41 pm

Post by Shiru »

Changed double-click opening to load all the files (like Open) instead of just *.chr; added remembering of the current directory between the sessions.
Post Reply