It is currently Sun Dec 17, 2017 10:27 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: Tue Jun 14, 2011 10:08 am 
Offline
User avatar

Joined: Sat Oct 29, 2005 2:09 am
Posts: 502
Location: Indianapolis
Well, I've been busy making an FPGA Gameboy now, and to further that goal I have extensively tested the GB hardware.

I stuck my logic analyzer on the VRAM bus and LCD signals to see exactly what is going on when I run a test ROM and adjust the scroll, window, and sprites.

So far, I have gotten all the exact VRAM timing down for the background and window stuff, and I am finishing up sprites.

Unlike the NES, the Gameboy will actually stall the pixel writes to the LCD while it "catches up" with the VRAM reading. This causes the rendering portion of a scanline to take more or less cycles, depending on the X scroll, X window, and number and position of sprites.

So, without further ado, here is my findings document. It's highly preliminary and I have yet to add the sprite information, but I will be adding that soon since I am almost done implementing that.

http://blog.kevtris.org/blogfiles/Nitty ... Timing.txt

Also, if anyone wants a decent test ROM for playing with scrolling, windowing, and sprites, I made one of those too. It's been tested on a real Gameboy of course (since I'm running it on my Super GB for testing) and it has been tested on an original DMG and a GB pocket.

http://blog.kevtris.org/blogfiles/gbtest.gb

I posted the source code to the test rom, too:

http://blog.kevtris.org/blogfiles/gbtest.asm

_________________
/* this is a comment */


Top
 Profile  
 
 Post subject:
PostPosted: Wed Jun 22, 2011 10:39 pm 
Offline

Joined: Wed Apr 05, 2006 10:12 am
Posts: 126
Location: PA, USA
Am eagerly awaiting updates! Fascinating stuff!

LN

_________________
"When life gives you zombies... *CHA-CHIK!* ...you make zombie-ade!"


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jul 29, 2011 8:45 pm 
Offline
Formerly 65024U

Joined: Sat Mar 27, 2010 12:57 pm
Posts: 2257
I was just watching AVGN and noticed a GB game that also does funky scrolling stuff. Thought it'd be interesting to see the games that do stuff with precise timing, I couldn't find the exact forum post though.

http://cinemassacre.com/2008/08/10/batman-part-2/

5:26 in. Good job too, kev!!! :)


Last edited by 3gengames on Fri Jul 29, 2011 10:20 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Fri Jul 29, 2011 8:59 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 10172
Location: Rio de Janeiro - Brazil
3gengames wrote:
I was just watching AVGN and noticed a GBA game that also does funky scrolling stuff.

That's not a GBA game...

Quote:
http://cinemassacre.com/2008/08/10/batman-part-2/

5:26 in.

It looks like the water effect was supposed to flicker between the waving background and the solid color with waves at the top, but it looks like shit in that video capture/encode. Now I'm curious to see the original effect...


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jul 29, 2011 10:22 pm 
Online
Site Admin
User avatar

Joined: Mon Sep 20, 2004 6:04 am
Posts: 3488
Location: Indianapolis
The original Gameboy screen blurred very easily with any motion, so I bet it looked cool on there. But on GBA, SGB, and emulators, probably not as much. (tho I never had a GBA so I don't know how much it blurs)


Top
 Profile  
 
 Post subject:
PostPosted: Sun Aug 21, 2011 5:12 pm 
Offline
User avatar

Joined: Fri Nov 19, 2004 7:35 pm
Posts: 3969
The GBA/DS screen makes perfect 30Hz flicker look like 50% transparency.

_________________
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!


Last edited by Dwedit on Tue Nov 06, 2012 11:43 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Sun Oct 30, 2011 2:31 pm 
Offline

Joined: Mon Sep 27, 2004 2:57 pm
Posts: 1248
I actually found this very fascinating to read, thank you very much for putting the time in to research this and form this document. I'd be interested in seeing any further developments. :D


Top
 Profile  
 
 Post subject:
PostPosted: Wed Jan 18, 2012 7:46 pm 
Offline

Joined: Wed Mar 31, 2010 12:40 pm
Posts: 207
Sorry for the necro bump, but is there any chance you could divulge the sprite fetch timing information? I've been looking for a low-level graphics timing document for GameBoy for a while now, and it would be absolutely beautiful to know how sprites affect timings :D

Great work Kev, this document is just awesome!


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 2 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