How to find background graphics


Programs used in this document

Nesticle emulator

Hex Editor

 

I will be using Tecmo Super Bowl's midfield NFL logo as an example.  These same methods for hacking the midfield logo can also be used on any background graphics in any NES game.  I'll be referring to Tecmo Super Bowl as TSB.

I need to clarify that sprite graphics and background graphics are two completely different types of graphics, especially when trying to find the hex locations.  While background graphics are easy to find and the methods will work on any NES game, sprites are a different story.  There are lots of different methods games use to store sprites, and they can be a pain in the ass to locate most of the time.

 

Examples of background graphics in TSB

NFL midfield logo

Team NFL logo

NFLPA logo

Title screen

 

Examples of sprite graphics in TSB

Large helmet logos

NFL logo in the main menu

The actual football players

 

The large and small helmets in TSB use both background and sprite graphics; on the large helmets, the helmets themselves are background graphics while the logos are sprites.

 

Let's get Started

First, draw the logo, either directly in Nesticle, or in a tile editing program. (Tile editors are tough to explain how to use, you just have to play around to learn).  I'm using an NCAA logo for my example.

Ok, so there is a problem with a mirrored tile.

 

Next, open the game in Nesticle and at the midfield logo, pause emulation and hit F4.

This will open up the pattern tables, it will look something like this--

Using the mouse, left click on the parts that make up the midfield logo and write down the hex values:

This is what you'll see in Nesticle when you click on parts of the logo--

 

E2 (0)

 

E2 is the hex value.  The more hex values you write down, the better.  For example, the tiles of the NFL logo are currently arranged like this:

-- -- C4 C5
C2 C3 C6 C7 C0 C1
C8 C9 CC CD D8 D0
CA CB CE CF CB D2
F0 E0 E1 E4 E5 DA
F0 E2 E3 E6 E7 DA
F0 D1 E3 D4 D5 F2
D3 D6 D7 D9 DC DD
-- DB DE DF F1

 

Other stuff:

01 is a blank spot

9A9B is the stripe on the 50 yard line

94 is a one yard marker

 

Close Nesticle.

Open up your hex editor and search for these values

You may not always get a result, or your result may not be the right one. That's why it's important to write down a lot of the hex values. Use trial and error if you don't get any results.  Searching for different variations of the tiles will almost always get a result.  

You can also read up on how to dump the ppu;  it will for sure find the tiles.

Once you get a result, compare the other values around it.  In my case, this location looks promising, because all the values I wrote down are right there.

Now I'm going to test it to see if this is the right location:

Okay, looks like I found it.  Now, to get rid of that pesky mirrored tile, and "erase" the unwanted tiles.

back to the hex editor:

I'm not seeing the first and last values from each line. The logo is made of 6 values each line, and I only found the 4 middle values.

So, looking further down in my hex editor (above picture)  I can see some of the values: 019801C1019801D0...  I tested these and they are it.  Since these values are from the END of each line of the logo, I'm guessing the beginners are UP.

I didn't get a picture of the results, but hopefully you get the idea.

Now my logo looks like this:

Looking at the palette below, the top colors are for backgrounds and the bottom are for sprites.  Right now, the logo is using the 2nd set of colors.  I'm really limited on the colors for the logo, I don't want to change the black, and one of the colors has to be green for the field.  Changing the blue and pink will affect the endzone colors.  The 4th set of colors is the crowd, so my best bet is to switch the logo from the 2nd to the 4th set of colors.

Reading up on Attribute tables will help me figure out how to switch the logo from the 2nd set of colors to the 4th.  All the 55s and AAs in your hex editor around the NFL logo tiles are the attribute tables. 

 

Reading up on how to dump the ppu can help you locate hard to find attribute tables, as they're not always with the tiles.  

 

My short explanation for this document (I'm not going to get into this, because there are other documents that explain it) is 0 for the first set of colors, 5 for the next, A for the next, F for the last. One value for 8 tiles (a limit of the nes).  So FF gives the next 16 tiles the 4th set of colors. Yes it's probably a little confusing.

Next I'm changing the purple and peach on the palette to red and green, respectively. And I'm going to erase part of the 50 yard line stripe since the colors wont match:

There's my finished product.  You can play around if you want it to look nicer.  Like adding the 1 yard markers that are missing.

It's probably better/easier to make the logo bigger or to "mold" it to fit 16 tiles if you need to switch attribute tables.

 

Unfortunately, changing the midfield logo also effects the logo on the main menu.

this logo uses sprites.

 

These methods should help you find other graphics such as the NFLPA, Team NFL logos and the NFL SUPER PRO FOOTBALL text.