gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > On the topic of screens

#23013 - benjamin - Fri Jul 02, 2004 7:16 pm

I think I am over the shock of having 2 screens, but now its dawning on me that, at least according to those leaked specs, the screens seem to have an infatismaly small increase in size over the GBA screen.

It just seems like having maybe slightly more meaningful of size upgrade would have been better, since a lot of traditional gameplay will still itself take place on only one of those screens, while the others will be adjunct in their purpose.

Am I wrong here? And is it possible those dimensions could be bigger upon final arrival?

#23016 - dagamer34 - Fri Jul 02, 2004 8:08 pm

The dimensions of each screen are 256x192. That's only 16 more pixels per line, but 32 more lines at that. 256 pixels per line is a "nice" number, makes bitshifting a lot easier to do when plotting pixels on the screen.

I'm still hoping tha those specs were 100% wrong and the DS is this super portable 3D giant that can destroy the PSP in seconds. Hey, it could happen, sometime.... :)
_________________
Little kids and Playstation 2's don't mix. :(

#23020 - Abscissa - Fri Jul 02, 2004 8:24 pm

dagamer34 wrote:
The dimensions of each screen are 256x192. That's only 16 more pixels per line, but 32 more lines at that. 256 pixels per line is a "nice" number, makes bitshifting a lot easier to do when plotting pixels on the screen.


Those dimentions sound familiar. Is that the resolution the SNES used?

If the width is 256 pixels, that kinda worries me about how much time would be available for HBlank effects. Isn't the GBA 240 pixels drawn, and then the equivilant of 16 pixels for HBlack, or am I just nuts?

#23024 - DiscoStew - Fri Jul 02, 2004 8:53 pm

Correct me if I'm wrong, but to my knowledge the GBA has two phases per scanline, an HBlank and an HDraw. The HBlank is where code can be executed, along with changes to the BGs and OAM (if H_BLANK_OAM is set). The HDraw is the phase where the actual drawing of the scanline is made.

Along the lines of the DS having a horizontal screen length of 256 pixels, how does that affect both GBA games as well as the 2D portion of the DS? I would imagine that for GBA games, there would be a black border surrounding the actual gameplay area. But for DS games that use the entire 256 pixel width, if the same textBG layers are used as in GBA games, wouldn't that affect hardware scrolling? I wonder if for these instances that games would need to use any other textBG mode than a 256x256 textBG layer.
_________________
DS - It's all about DiscoStew

#23025 - dagamer34 - Fri Jul 02, 2004 8:56 pm

Abscissa wrote:
dagamer34 wrote:
The dimensions of each screen are 256x192. That's only 16 more pixels per line, but 32 more lines at that. 256 pixels per line is a "nice" number, makes bitshifting a lot easier to do when plotting pixels on the screen.


Those dimentions sound familiar. Is that the resolution the SNES used?

If the width is 256 pixels, that kinda worries me about how much time would be available for HBlank effects. Isn't the GBA 240 pixels drawn, and then the equivilant of 16 pixels for HBlack, or am I just nuts?


The SNES had more vertical scanlines with a resolution of 256x224.

I doubt they would downgrade performance in any area (especially HBlank time) from the GBA to the DS. That would pretty much punish those who worked on the GBA by giving them a new limit.
_________________
Little kids and Playstation 2's don't mix. :(

#23046 - tepples - Sat Jul 03, 2004 3:49 am

Filling a 512x256 pixel map is a bit more complicated than filling a 256x256 pixel map.

If your screen is 256 pixels wide, then you can't use one-screen mirroring (256x256 pixel maps) without causing artifacts at the side of the screen. The NES solved this by chopping off the left 8 pixels in games that used 256-pixel-wide maps, and a few Super NES titles such as Kirby Super Star used windows to hide 4 pixels on the left and right sides.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#23055 - DiscoStew - Sat Jul 03, 2004 5:26 am

Yeah, I can see that. So perhaps the only real difference between the horizontal size of SNES and GBA games is that with the SNES, programmers are somewhat forced to cut off the sides for hardware scrolling layers while us GBA programmers don't need to worry.

dagamer34 wrote:
I doubt they would downgrade performance in any area (especially HBlank time) from the GBA to the DS


Speaking of the scanlines and the DS (or GBA portion at that), since the DS doesn't have a 16MHz ARM7 CPU, but a 33MHz ARM7 CPU, and GBA games run just fine on it, it make me think the DS does 1 of 2 things.

1) With GBA games, the CPU is reduced to process at 16MHz to sync correctly

or

2) Somehow the techs at Nintendo got GBA games to run correctly using no limitations on the 33MHz CPU while keeping all other hardware functions like timers to run as they should.


If option 2 is true, then wouldn't that mean that programmers like us could take advantage of an extra 17MHz per second (a little more than double processing per scanline)? The problem with that is that it would restrict games to only play on the DS because those games would require that extra processing power.
_________________
DS - It's all about DiscoStew

#23092 - dagamer34 - Sat Jul 03, 2004 11:28 pm

DiscoStew wrote:
Yeah, I can see that. So perhaps the only real difference between the horizontal size of SNES and GBA games is that with the SNES, programmers are somewhat forced to cut off the sides for hardware scrolling layers while us GBA programmers don't need to worry.

dagamer34 wrote:
I doubt they would downgrade performance in any area (especially HBlank time) from the GBA to the DS


Speaking of the scanlines and the DS (or GBA portion at that), since the DS doesn't have a 16MHz ARM7 CPU, but a 33MHz ARM7 CPU, and GBA games run just fine on it, it make me think the DS does 1 of 2 things.

1) With GBA games, the CPU is reduced to process at 16MHz to sync correctly

or

2) Somehow the techs at Nintendo got GBA games to run correctly using no limitations on the 33MHz CPU while keeping all other hardware functions like timers to run as they should.


If option 2 is true, then wouldn't that mean that programmers like us could take advantage of an extra 17MHz per second (a little more than double processing per scanline)? The problem with that is that it would restrict games to only play on the DS because those games would require that extra processing power.


Yeah, that means that there is probably a backdoor to allow developers to take advantage of the extra CPU cycles. They probably won't allow any 3D though, without becoming a full developer on the DS. But we can!! Assuming such a backdoor exists, of course....
_________________
Little kids and Playstation 2's don't mix. :(