Jump to content

Team NFL logo


Recommended Posts

When you first load TSB in nesticle, if you don't press anything, the first screen says "Tecmo" or something and then the next screen has this really funky looking logo that says "Team NFL." It doesn't look like any of the other NFL shield designs in the game. I think I've found all of the shield designs except this "Team NFL" thing. Does anyone know what screen in nesticle needs to be up so this can be edited with the pattern tables? The word "team" is pretty clear on the pattern tables when that screen is up, but I can't seem to find the "NFL" for that particular logo. Thanks.

The point of this is that right now I could pretty much change every instance of "NFL" in the game except this one, and that bugs me. I know it can be done so someone please help me out.

Link to comment
Share on other sites

Also along this line is the code that brings up graphics on a screen in general.

Let's take the start screen for example. It lays out all the tiles/sprites in the same order every time. How would one find the code that lays these out for either using it to make a program that draws out the code or else modifying it to look at different sprites?

Link to comment
Share on other sites

the 6502 ("CPU") in the nes communitcates with its graphics processor ("PPU") through programmable IO. this means to get data from PRG-ROM (your design for backgrounds and sprites) to the PPU, you must write the data to certain registers in cpu address space.

for backgrounds, the data is stored internal to the PPU in an area called name tables. there are 4 name tables, but only 2 are available becuase the other 2 are mirrors. some mappers allow 4 independent name tables, but the MMC3 (what TSB uses) does not. the name tables are located at $2000, $2400, $2800, and $2C00. the last 0x40 bytes of each name table is know as the attribute table. this determines the palette colors that are used for each part of the screen.

to transfer data into the name tables, you must write the address (2 bytes or 1 word, however you want to see it) to $2006. then $2007 is used for data. caution must be taken because PPU memeory can only be accessed durring a time called Verticle Blank or graphical glitches will occur.



lda #$20 ; these 4 lines set the address to $2000
sta $2006
lda #$00
sta $2006

; these lines load 255 bytes of data
; and store it to the address that $2006 points to
; after each write to $2007, $2006 will be increased
; (either by 1 or 32, depending on how the PPU is setup)
ldy #00
loop: lda mydata, Y
sta $2007
iny
bne loop

; this is background data stored elsewhere in prg-rom
mydata: .db $00 ; 255 bytes worth of data resides here

so just set breakpoints to writes to $2006 and $2007 to see when data is being written to the screen. though games usually use some sort custom format for background data in order to compress it or to have a "1 routine works for all bkg data" situation. for example, donkey kong used this type of format for all background data:

...

the first 2 bytes specified the address in PPU memory. the control byte had two purposes.

1. bit7 determined if the data was written in rows ($2006 was inreased by 1 on writes to $2007) or in columns ($2006 was increased by 32 on writes to $2007)

2. bits0 - 6 determined the length of the data stream.

and ... is self-explanatory. so to RE the loading code in TSB, you first must determine all the control bytes (if any) and what they do.

i wrote a program that you could mess with to see how all these data structures effect rendering if you are interested. sprites are a little more complex then backgrounds but if you want i could give a crash course. hope all this helps...

Link to comment
Share on other sites

er... :evil: Can someone translate that into English? :roll:

How do I get to that black screen, anyway, I can get to that while on nesticle? Or is this a hex editor, or what?

I would like to take a look at that program, in any case. Could you put it on the upload section? Thanks.

Understanding this stuff would be great, but really all I need is to figure out how to edit that one graphic. I think I figured out everything else I'll want to do with the game. For example, if someone asked me how to edit the NFL shield, I would say: Go to a screen in nesticle where the shield is. Click on pattern names. Now you should see a big jumble of tiles. Each tile is 8 dots by 8 dots big (bits? bytes? I dunno, I call them dots.) The shield is made up of 16 (i think) tiles. They should all be on this screen, you'll have to click on each tile and experiment a little. When you change one of the tiles, you should see the shield in the actual game change as well. There's a slight snag here because one of the tiles around where the "F" in NFL is is mirrored. which means when you change one part of the logo, you change another part at the same time. As far as I know, there is no way to override this. You just have to incorporate it into your design. And that's basically all there is to it.

Can you give me instructions along those lines? I can use hex, also, so if you know the hex locations of the Team NFL logo, that would suffice. I could experiement on my own then. Or even what the string might be, so I could run a search in the hex editor. What I'm looking for here is, "it starts at hex address 0x-whatever the address is," or, "based on the pallette the hex string should end in AA 03 FF 04," or whatever.

Link to comment
Share on other sites

Also along this line is the code that brings up graphics on a screen in general.

Let's take the start screen for example. It lays out all the tiles/sprites in the same order every time. How would one find the code that lays these out for either using it to make a program that draws out the code or else modifying it to look at different sprites?

you can either use this method

http://www.romhacking.net/docs/ppu.txt

or get the hex values from nesticle and search the same way you would with colors from the palette

READ SOME HACKING DOCS its all there

Link to comment
Share on other sites

shielddata.JPG

between both windows is all the data for the logo. the letters "NFL" that are angled are done with sprites so you are on your own for that.

the bytes with the red box are the for the attribute tables (effects palette). the other 16 bytes (blue) following make up the design and are layed out like this:

00 01 02 03

04 05 06 07

08 09 10 11

12 13 14 15

so you have 8 of those 4x4 boxes to get the whole logo.

READ SOME HACKING DOCS

i agree

Link to comment
Share on other sites

cxrom, this i can start to understand. thank you.

GRG, about your hacking etiquette link, I never really thought about it like that. When I discover something about the game, I can't wait to share it with everyone, and I want to do it in such a way that everyone understands what I'm talking about. I was off on Thursday, and spent the entire day, literally about 8 hours, just messing around with patterns in nesticle. I actually got some graph paper and started recreating tiles on paper just to try to understand how they were arranged. So it's not really a matter of laziness so much as it is, and all due respect and appreciation for all the cool stuff you have done, most of the time I really have no idea what you are talking about. An example of a phrase I came across the other day that just stuck with me - some hacking document started off by saying, "First you dump the PPU." Now, I have no idea how to dump a PPU. You probably do this all the time when hacking, but I never have. I wouldn't even know what file to open. So before you say, "Dump the PPU," I need to know what file or program to use, what menu to click on, and if I need to type any commands.

Link to comment
Share on other sites

cxrom, this i can start to understand. thank you.

GRG, about your hacking etiquette link, I never really thought about it like that. When I discover something about the game, I can't wait to share it with everyone, and I want to do it in such a way that everyone understands what I'm talking about. I was off on Thursday, and spent the entire day, literally about 8 hours, just messing around with patterns in nesticle. I actually got some graph paper and started recreating tiles on paper just to try to understand how they were arranged. So it's not really a matter of laziness so much as it is, and all due respect and appreciation for all the cool stuff you have done, most of the time I really have no idea what you are talking about. An example of a phrase I came across the other day that just stuck with me - some hacking document started off by saying, "First you dump the PPU." Now, I have no idea how to dump a PPU. You probably do this all the time when hacking, but I never have. I wouldn't even know what file to open. So before you say, "Dump the PPU," I need to know what file or program to use, what menu to click on, and if I need to type any commands.

i definitely agree with you at certain points. i now know that it is quite easy to edit palettes and most of the graphics in any game. however, the toughest part about it was getting started. i had to just simply ask someone how to help me. i really had no idea how to use certain emulators or hex editors.

in other words, hit me up on AIM if you want BO FB Offtackle Left. my screen name is the same as this message board name.

Link to comment
Share on other sites

I'm sorry, Bo. I didn't mean for you to take anything personally. I should've realized that rants are never a good idea. I've edited down the site, and most of the links work now.

Obviously, people like jstout, slim jimmy and cxrom seem more willing to help newbs than I am. My prerogative is if you can learn how to find something like the midfield logo on your own, than you can find other stuff like the nflpa logo, team nfl logos, NFL SUPER PRO FOOTBALL text, etc. and not have to ask people for hex locations constantly.

I've been working on this site for a while, not just for you.

Link to comment
Share on other sites

I'm sorry, Bo. I didn't mean for you to take anything personally. I should've realized that rants are never a good idea. I've edited down the site, and most of the links work now.

Obviously, people like jstout, slim jimmy and cxrom seem more willing to help newbs than I am. My prerogative is if you can learn how to find something like the midfield logo on your own, than you can find other stuff like the nflpa logo, team nfl logos, NFL SUPER PRO FOOTBALL text, etc. and not have to ask people for hex locations constantly.

I've been working on this site for a while, not just for you.

I don't anticipate any problems finding any of this stuff, except that sprite in the Team NFL design. Still don't know much about sprites. What did you do with it when you did your Rose Bowl rom?

Link to comment
Share on other sites

I probably wasn't clear what I was looking for. Mainly just wanted the tile numbers of the sprite so I could erase them using the pattern table. In any case I finally found all of it. For anyone who might want it, the numbers of the NFL sprite are 37, 3D, 3F, 62, 63, 66, 67, 68, 70-77, B1, B3, B4, B5, B6. I didn't bother to keep track of where each one was in the logo, so I have no idea what the hex address might be. I didn't need the hex address.

Link to comment
Share on other sites

  • 2 weeks later...

$4014 in cpu space is the sprite dma register. the value written here is the page number for all the sprite variables. a page is 255 bytes long. each sprite uses 4 bytes (Y-coor, Tile#, Attribute, X-coor). in tsb the sprites are on page 2.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...