It is currently Tue Oct 17, 2017 12:53 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 32 posts ]  Go to page Previous  1, 2, 3
Author Message
PostPosted: Fri Apr 28, 2017 12:46 pm 
Offline
User avatar

Joined: Mon Apr 24, 2017 5:52 am
Posts: 30
Location: West Allis, WI
This will be an arcade-style game, and it will play very similar to Flappy Bird. The walrus will fly around the screen as obstacles (I have mines, some will be stationary while others will move up and down towards the player) and collectibles (fish will give you points, and there might be some special invincibility object) fly past him horizontally. This keeps going until the maximum score is reached, or you die (whichever comes first). That's the gameplan, just like my original Scratch project and my subsequent Atari 2600 port.

I kinda figured I'd need modes to handle different game states, but I think I'll cross that bridge when I get there. I still got actual gameplay to worry about for a while.

By the way, "what else do I need to do" did not refer to general game programming, but rather, it referred to ways to fix problems with my existing code (like, was I still drawing backgrounds and rendering outside of VBlank? or something). I've developed games before, but never for the NES, and I still have a lot of questions (which I will ask when I get to them).


Top
 Profile  
 
PostPosted: Fri Apr 28, 2017 2:02 pm 
Offline
User avatar

Joined: Fri May 08, 2015 7:17 pm
Posts: 1768
Location: DIGDUG
While you aren't having problems (no PPU writes outside v-blank), you got lucky. It only works because your entire logic fits inside the v-blank, and on that frame the music code didn't push you just past v-blank.

It's the changing palette on death that I'm worried about.

So, this is where my lengthy 'game planning' post becomes relevant.

You need a vram update system. Inside the NMI code. And a control flag.

So you'd have a page of RAM dedicated to vram updates. 2 bytes for address. (3f00) 1 byte for length of data stream (1), and then follows the data (06), terminate with ff, or a new address, for another ppu update. An automated system. You can write to the vram buffer any time, then set a flag to inform the NMI code that you have an update ready. The NMI code will start at the start of v-blank, and automatically push your color change.

_________________
nesdoug.com -- blog/tutorial on programming for the NES


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 32 posts ]  Go to page Previous  1, 2, 3

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group