All my questions are here.. ;o)

Are you new to 6502, NES, or even programming in general? Post any of your questions here. Remember - the only dumb question is the question that remains unasked.

Moderator: Moderators

User avatar
lord_Chile
Posts: 120
Joined: Thu Feb 02, 2006 7:07 am
Location: Chile (South America), Quilpué
Contact:

stupid questions????

Post by lord_Chile »

another question: i read nametable for 32 bytes * 30 bytes.. yeah.. and where are attribute tables???.. i know that it's inside .nam.. but where?? how many bytes???
Yeah but if english is something hard for you.. and any documents are bivalents!!!!... reading documents i understand that each nametable is 1kb because documents says that meaximum memory is 2kb...

reading documents i understand that attribute table is inside nametable and it will at the end of the 4 kb i dont know for what..

but i wanna that you know
just humility is the thing that make you more person.. sorry.. i am very newbie... i only did wish a response to mys ask..
Good day to nesdev people. Lord..
Author of nothing =P
UTFSM Sansano programmer.. lord_Chile
Saludos a la Sede JMC de la UTFSM... Viña del Mar, CHILE
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

I probably didn't understood english better than what you do back in the time. No excuse, really.
Just avoid asking stupid questions before examining the stuff a bit before and that way avoid getting too stupid.
Also, ask questions clearly, write sentences and not just words, use commas, puncts, etc... and that's it. That way people will most certainly be pleased to answer to your questions instead of telling you that you're stupid. I hope I don't ask too much from you. I don't want to get too much angry. Thanks.
Useless, lumbering half-wits don't scare us.
User avatar
lord_Chile
Posts: 120
Joined: Thu Feb 02, 2006 7:07 am
Location: Chile (South America), Quilpué
Contact:

ok

Post by lord_Chile »

i understand sorry...
i will try.. but the point is that you cannot say that questions are stupid.. you can changing it and saying.. this question is out of focus, because if you say of this form, it's not offensive..

not dont get angry.. i have friend in switzerland and i know that is nice people.. it's only that i get angry when people says words in bad form...

good luck bregalad.
Good day to nesdev people. Lord..
Author of nothing =P
UTFSM Sansano programmer.. lord_Chile
Saludos a la Sede JMC de la UTFSM... Viña del Mar, CHILE
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

What do you mean by "say word in bad form" ?
And please use the shift key of your keyboard to write CAPS ! It isn't all that hard either, and makes what you say a lot more understandible. Also use the enter key to make
line breaks when needed. This hasen't to do anything with stupid/intelligent but with readable/ununderstandible.
I don't think it belong only to engish language, I think there is also caps and returns in spain (which would normally be your native language isn't it ?). Oh, don't take it bad, please, but it really get anoying when we don't understand what you want to say.
If you got trouble speaking english, I would personally recommand to practice, practice and practice again. Yeah, when I started developping for the NES I knew nearly nothing about english, only basics.
The docs were like in chineese for me. Additionally, I did knew a lot less in electronics that I do now. So yeah, it only make things harder.
But scince I didn't knew enough of english to go on the boards to ask questions, I was forced to figure out everything on my own. And that forced me to practice again and again english. Until I eventually asked questions on the boards...
Useless, lumbering half-wits don't scare us.
User avatar
lord_Chile
Posts: 120
Joined: Thu Feb 02, 2006 7:07 am
Location: Chile (South America), Quilpué
Contact:

it's final post about it ok?

Post by lord_Chile »

Bad form... or say something that sounds offensive..
---------------------------------------------------------
Like: "yeah, it's very stupid question.,.. i suggest you"..


good form.... or say same thing but it's sound very friendly..
-------------------------------------------------------------------
"yeah, but lord your question is out of focus... i think that
you must.. read more.you must read
documents any more time until you get it"


my english is not good.
Good day to nesdev people. Lord..
Author of nothing =P
UTFSM Sansano programmer.. lord_Chile
Saludos a la Sede JMC de la UTFSM... Viña del Mar, CHILE
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Post by Bregalad »

So I think use the "bad form" can act much more significantly on the reciver than the "good form". Someone telling the "bad form" will seem rude, but will say what he thinks. Someone using the "good form" will sure be kind, friendly, etc... but the reciver could just piss off what they say if they really are getting to sweety.
Useless, lumbering half-wits don't scare us.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

lord_Chile, as I explained to you before, each name table + attribute table pair is 1kb long. The NES has memory for 2 of these pairs, so 2kb. However, the PPU can address 4 name tables, and that's why we have to use mirroring. Mirroring will define wich 2 name tables will be repeated (mirrored), vertically or horizontally.

The dump you got probably is 4kb because the NES can address 4 name tables. If you look at them closelly, 2 of the tables in that dump are probably copies of the other 2. If you were using a 4-screen mirroring game, the 4 tables in the dump would be different from each other.
lord

thanks

Post by lord »

ok fully understood.. i understand all now.
lord

what's metatile???

Post by lord »

i wanna ask to bregalad something..

my question is "what is a nes"????

hahaha (joke).. now speaking more seriously...

i read on nesdev about the word "metatile", and i read "metatile engines", too. What is a "metatile"???
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: what's metatile???

Post by tokumaru »

lord wrote:What is a "metatile"???
What the hell? Only Bregalad can answer now?

Well, a metatile is a block, larger than 8x8 pixels, formed by more than 1 tile (wich is 8x8 pixels). Metatiles exist to make the level maps smaller. If you were to define a screen for a game directly using tiles, it would take 1kb (1024 bytes) to define the whole screen (tiles + attributes). But if you use 16x16 pixels (2x2 tiles) metatiles, there will be only 240 of them in a screen, wich means a screen can now be defined by only 240 bytes. That's a huge gain, 1024 to 240, don't you think?

You have to define the metatiles in a separate space, of course. If you're using 16x16 pixels (2x2 tiles) metatiles, you'll have to define what 4 tiles that metatile uses. A common format for 16x16 metatiles uses 5 bytes for each, with 4 bytes indicating the tiles used to draw it, and the 5th byte indicating the palette to use for the block, and the type of the block (solid, sky, water, etc - stuff used for collision and physics)

So, when you decode the map to the screen, you don't copy directly. You read a byte from the map, check what tiles make up that block and draw those tiles to the screen. And don't forget to properly set the attributes too.

The most common size for metatiles is 16x16 pixels, but there are others like 32x16, 32x32, etc. Each one has it's pro's and con's. I guess that's it.
lord

Re: what's metatile???

Post by lord »

thanks tokumaru.. !!

about bregalad it was a "joke thing" making a question to him like
"what is a nes"..

anyway all people can giving responses...
sometimes my english is bad.. then people get confuse here..

anyway tokumaru you are from brazil, i speak spanish.. do brazilian people understand spanish??... sometimes chilean people understand portuguese of brazilian people.. :)
lord

Re: what's metatile???

Post by lord »

then 1 tile is created by 8x8 pixels.. then 1 tile = 1 sprite????
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: what's metatile???

Post by tokumaru »

lord wrote:i speak spanish.. do brazilian people understand spanish??... sometimes chilean people understand portuguese of brazilian people
Brazillians usually understand spanish very well. I understand with no problems. Good that Chileans can understand portuguese, many spanish-speaking people can't. Anyway, "Portuñol" is a very common way for brazillians to communicate, but since this is an english board, it may not be a very polite thing to do.
lord wrote:then 1 tile is created by 8x8 pixels.. then 1 tile = 1 sprite????
Sprites have nothing to do with this. We're talking about level maps, so, background. The tiles can also be used for sprites, but that's not the point here. Tiles are that little 8x8 pixel things you see in the pattern tables, wich you use to build the background of your game.

A metatile is just a group of regular tiles, with extra info for palette, collision and physics, used to make the level maps smaller.
lord

a advanced question...

Post by lord »

Saludos tokumaru!!!. Good nesdev people, i have a question very very hard, but it's easy for you... i know.. i wanna to know something:

example: if you play final fantasy, imagine that you have the background.. then at the same time of background appears a dialogue..
you press a, then appears another dialogue..

My specific question is:
do you have a different nametable for each dialogue???

it would be a crazyness....

i read about pointers, but i dont know if say "pointers" is technically correct because romhackers says pointers.. but it's not nametable or something??? and i dont understand that romhack pointers...
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

No, you wouldn't use a different name table for each dialog. You should be writing the new dialog over the first one. Just rewrite the dialog during VBlank.

Pointers would be usefull in this case only to point to the strings used in the dialog. I mean, when the characters speak to each other you must specify what they're going to say, you should do that by pointing to the strings you want to use.

About the placement of the dialog box, you have many options for that. If the screen is moderatelly aligned to the 8 pixel grid you could just draw the box where you want it to be, relative to the camera's position. But that would erase your background and you'd have to redraw it once the dialog box was gone. If you use 1-screen mirroring or horizontal mirroring you could just pick a place in the name tables that's not beeing displayed at the moment and draw the text box there. Then change the scroll mid-frame to place the text box wherever you want.

But that's a bit to advanced for you right now, if you allow me to say so. Well, advanced for you to do, but that doesn't mean you don't deserve an explanation of how it's done. You must have an idea of how the effects are done so you can do it too, someday. Watch the name tables in an emulator while playing the games so you can have an idea of how it's done.

I haven't played or analyzed Final Fantasy much, though. Bregalad is the FF master here, I guess... =)
Post Reply