Celius wrote:Okay, I have to say something. I only did the Vblank wait because When I moved my player without it, She moved like 10000 miles an hour, and you saw 3 frames with her in it as she crossed the screen. That was stupid. How do you fix that?
That must be because you checked for the keypress multiple times during the same frame. Maybe you could undo that "wait two vblanks thing" and do the following:
-after you're done with all the calculations set a "frame done" flag;
-loop forever while this flag is set;
-in your NMI routine, you check if this flag is set. If it is, draw what you need to the PPU;
-clear the "frame done" flag and return from the NMI;
This will cause your loop to end, and the program will proced to the calculations for the next frame. This way your logic will only run once per frame, and the player will not move ridiculously fast! =)
And I got the impression that I was using excuses saying that no one explained things well from you bregalad. I quote you "tepples and Disch wrote their posts while I was writing mine. So you have different approches at answering your questions. No excuse now

." Thank you for being so supportive, Bregalad, I appreciate it. Like now I HAVE to know how to do background collision, because there's no excuse for me now. I actually am still trying to understand this. I was going to mention that I don't know how to do RLE compression, and I just have 1 screen levels that were made with NSA. So I don't have a map in ram.
NSA will take only care of the graphics. You must have a map in memory where you can check what is solid and what is not. If your game is REALLY simple, you can use NSA's output for that, but generally you won't. In fact, you should draw to the screen based on your RAM/ROM map, and avoid NSA alltogether. You said it is a pacman-like game. So you probably just have two cases: wall and no wall. Read your map and draw the appropriate tiles to the screen. You don't need NSA at all.
NSA is good when you have to draw that complex title/intro screen scene, where there is no actual logic behind, it's just a bunch of unrelated tiles placed in a order with no logic at all, so it would be difficult to draw it directlly with code.
Yeah, I'm at kind of an akward stage here, because I know all of 6502, and I know what the NES can do, but some how I just can't come up with good code. And everyone thinks that I'm some newbie who doesn't really know anything, and has to make new forums that end up being 9 pages long about every aspect of the NES, and I get forwarded to the 6502 for newbies documents. I really do need to get better at anding things and oring things, because I never really do that stuff. Well, I'll understand this some day, I'll come back and ask about it when I'm not so tired and in such a crap mood. so yeah, bye.
I don't think you're stupid or a newbie. In fact, I admire you. You are persistent and a person of action. I, for instance, am always talking about game logic and design, but it's all theory. I talk and think a lot, but have actually coded very little. But you, you go straight to the action, even not knowing how you're going to do some things, but you go and just try. That's why I admire you.
I probably have had much more contact with the game programming world than you have, but you're probably going to have much more to show as result of your work in the end.
I know you understand 6502 assembly, programming logic and you're not a newbie. The only problem is you're not thinking as a GAME programmer yet, you're still thinking in a very specific way, and refuse to find global solutions to your problems. You must not worry about "how will the player move correctly" and disregard completely all other things (as you did with the two vblank thing), you must worry about "how will ALL objects move correctly at once" wich is what happens in a real game. No enemy waits for the player to walk. Enemies walk at the same time as the player does.
Eventually you'll be used to thinking as a game programmer instead of as a game player. But KEEP ASKING, and reading carefully what we say to you! You must have contact with it, even if you don't understand everything we say.
-tokumaru-