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

User avatar
dougeff
Posts: 3078
Joined: Fri May 08, 2015 7:17 pm

Re: NES Screen Tool

Post by dougeff »

My current work-around solution is to insert alphanumeric characters into the blank area of the original image, then import lossy, and then edit out the alphanumeric tiles, leaving them unused. Takes me very little time.
nesdoug.com -- blog/tutorial on programming for the NES
M_Tee
Posts: 430
Joined: Sat Mar 30, 2013 12:24 am
Contact:

Re: NES Screen Tool

Post by M_Tee »

FrankenGraphics wrote:Hey shiru, i was wondering if you could look into this?

-As of some recent version, NESST saves .chr files as 8kB by default. This causes inconvenience further down the pipe as 95% of the time, the other 4kB is just an empty fill. I was wondering if you could make it so that unless theres some actual content other than a fill on the "B" set, a 4kB file would be defaulted?

The current workaround for this is either
-saving each file separately rather than all three/four at once; which gives the option to set filesize for chr files.
-cut the superfluous 4kB:s in a hex editor
-use ca65 and pass a 4kB range for the .incbin directive (not an option in other assemblers).
-use powershell or bash to cut it in half

So there are options, but adds a step to the process and a bit of required vigilance compared to earlier NESST versions. If an 8kb file gets in by mistake and breaks a boundary, ca65 users will get a warning, asm6 users will see the file assemble silently but it won't run properly.
Am I misunderstanding your request or are we using different versions of NESst?

It looks to me like 4k is default with other options available:
Attachments
tmp.gif
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: NES Screen Tool

Post by FrankenGraphics »

When you All > Save, it saves an 8kB chr file with no options. (But used to save an 4kB file, no options in earlier versions).
When you Chr > Save, it saves your latest used option, + gives you options.
M_Tee
Posts: 430
Joined: Sat Mar 30, 2013 12:24 am
Contact:

Re: NES Screen Tool

Post by M_Tee »

Ah, that'd explain why I hadn't noticed. My workflow doesn't typically have me saving all.
User avatar
SusiKette
Posts: 147
Joined: Fri Mar 16, 2018 1:52 pm
Location: Finland

Re: NES Screen Tool

Post by SusiKette »

Load CHR file with size of 1K, 2K, 4K, 8K, or other size of multiple of 16.
Regardless of this I'm still getting "Wrong file size" error from loading a file of 32k in size.

EDIT: This seems to happen with 16k files as well. This is weird since both of tese are in a multiple of 16.
Avatar is pixel art of Noah Prime from Astral Chain
Buherman
Posts: 1
Joined: Tue Jul 10, 2018 1:14 am

Re: NES Screen Tool

Post by Buherman »

robin.jpg
Is it possible to make such special screens with NES Screen Tool.
How?
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: NES Screen Tool

Post by FrankenGraphics »

i don't see anything special about it? Some colours reappear across two subpalettes to make attribute transitions more fluid.

Pattern based graphics editing takes a bit of time getting used to, but NESST is perfectly suited for the job.

Without having the game, i'd assume "press start" and "camerica" is on the sprite layer. A quick glance makes it look like the camerica logo is within 64 pixels.

So you need to make some metasprites and export them as OAM data for your NES program to layer.
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: NES Screen Tool

Post by FrankenGraphics »

SusiKette wrote:
Load CHR file with size of 1K, 2K, 4K, 8K, or other size of multiple of 16.
Regardless of this I'm still getting "Wrong file size" error from loading a file of 32k in size.

EDIT: This seems to happen with 16k files as well. This is weird since both of tese are in a multiple of 16.
Did you get it working, susikette? One thing i noticed the other day is that NESST will crop sizes of nametabledata/map files if you open files via the "all" menu. Maps need to be loaded via the "nametable" menu.
User avatar
Diskover
Posts: 219
Joined: Thu Nov 24, 2011 7:16 am
Contact:

Re: NES Screen Tool

Post by Diskover »

Buherman wrote:
robin.jpg
Is it possible to make such special screens with NES Screen Tool.
How?
With patience 8-)
User avatar
rainwarrior
Posts: 8731
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: NES Screen Tool

Post by rainwarrior »

FrankenGraphics wrote:i don't see anything special about it?
...
i'd assume "press start" and "camerica" is on the sprite layer. A quick glance makes it look like the camerica logo is within 64 pixels.
You couldn't actually do this in NESST because the screen is split into two halves to make use of twice as much CHR. (Also, there are three sprites as FrankenGraphics suggests.)

Probably possible to make something similar by simplifying a few details, especially that big tree, but as-is it's not something NESST by itself would handle.


By the way, if there's a background screen you want to transfer from FCEUX to NESST, you can go to the Debug > Hex Editor, and then in there File > Dump to file > PPU Memory. The resulting data can be split up into CHR ($0000-1FFF) nametable ($2000-23FF, or one of the other 3) and palette ($3F00-3F0F) and you can load those into NESST.

...though if you just want to learn how it's made, FCEUX's nametable viewer and PPU viewer are a pretty good start just by themselves. (Mesen and Nintendulator have similar tools for inspection too.)
NathanielBowie
Posts: 1
Joined: Thu Sep 13, 2018 1:16 pm

Re: NES Screen Tool

Post by NathanielBowie »

rainwarior wrote:
FrankenGraphics wrote:i don't see anything special about it?
...
i'd assume "press start" and "camerica" is on the sprite layer. A quick glance makes it look like the camerica logo is within 64 pixels.
You couldn't actually do this in NESST because the screen is split into two halves to make use of twice as much CHR. (Also, there are three sprites as FrankenGraphics suggests.)

Probably possible to make something similar about phen375 by simplifying a few details, especially that big tree, but as-is it's not something NESST by itself would handle.


By the way, if there's a background screen you want to transfer from FCEUX to NESST, you can go to the Debug > Hex Editor, and then in there File > Dump to file > PPU Memory. The resulting data can be split up into CHR ($0000-1FFF) nametable ($2000-23FF, or one of the other 3) and palette ($3F00-3F0F) and you can load those into NESST.

...though if you just want to learn how it's made, FCEUX's nametable viewer and PPU viewer are a pretty good start just by themselves. (Mesen and Nintendulator have similar tools for inspection too.)
An extremely convenient component which I've never found in one of these editors previously is the capacity to 'paint' traits/palettes on the nametable. Extremely decent :)
Last edited by NathanielBowie on Wed Oct 03, 2018 3:19 am, edited 1 time in total.
User avatar
koitsu
Posts: 4201
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: NES Screen Tool

Post by koitsu »

The title screen to Super Robin Hood actually uses sprites as well as background tiles. Use of sprites means you have some additional colours (overall) available to you. Everything is background tiles except for the CodeMasters logo, the Camerica logo, and the "Press Start" text, which are sprites.

Good looking graphics on the NES are done often by the graphics artist understanding the NES attribute table design/limitation and knowing how to design a screen that has things appropriately placed to work well with it. Once you learn about it and start to see it (visually) in games, it's hard to unsee.
sdm2
Posts: 46
Joined: Wed Feb 05, 2020 12:59 pm
Location: Poland

Re: NES Screen Tool

Post by sdm2 »

Is it possible to enlarge an already existing map of 512x120 size (16 screens x 4 screens) with another vertical screens line (change 120 to 150), but so that it is added to the top of the map and not to the bottom.

When I change to 512x150, unfortunately it only adds free fields under the existing map.
Attachments
Bez tytułu.jpg
User avatar
FrankenGraphics
Formerly WheelInventor
Posts: 2064
Joined: Thu Apr 14, 2016 2:55 am
Location: Gothenburg, Sweden
Contact:

Re: NES Screen Tool

Post by FrankenGraphics »

sdm2 wrote: Sun Dec 13, 2020 9:22 am Is it possible to enlarge an already existing map (...)
Yes! First, you add the size just like you're proposing. Then you can shift the contents of the map down in place.

Then;
Ctrl + Shift + Arrow Keys- rotate nametable with attributes (2 chars per step)

So, do that command.. 15 times for a screen, or 16 for 32 steps.
User avatar
zanto
Posts: 57
Joined: Sun Mar 07, 2021 11:15 pm
Location: Rio de Janeiro, Brazil

Re: NES Screen Tool

Post by zanto »

So I have a bmp file where I drew some 16x16 tiles to be used in a NES game. However when I import it into NES Screen Tool, the palette is a little weird. Two things in particular, I pointed them with the blue arrows. The trunks on the small trees are all black. The other are the hills are mostly the same color. It seems like some tiles lost one of the colors. So I was wondering if there's a specific way I should make the tiles so that when I convert them to CHR the colors aren't lost.
Attachments
img4.png
Post Reply