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.

Beginners > menu in mode 3

#20256 - alek - Wed May 05, 2004 7:36 pm

Hi,

I was wondering what the best way to show a menu when the user presses the start button in mode 3 without "damaging" the background, I can't redraw the screen because that information is not stored anywhere. I was thinking about using sprites. Does anyone know another way or are sprites the way to do it?

Thanks

#20262 - Lupin - Wed May 05, 2004 8:02 pm

You can use one of the background for a menu, i don't really see a problem there (only if you use all bg layers already...), otherwise you would have to use sprites.

street fighter for example is just using the background that is used for HUD.
_________________
Team Pokeme
My blog and PM ASM tutorials

#20263 - alek - Wed May 05, 2004 8:07 pm

I thought that modes 3-5 only have one background...

What is HUD?

#20265 - sajiimori - Wed May 05, 2004 8:34 pm

Modes 3-5 do only have one background. HUD stands for "heads up display", and refers to the various overlays that many games use, such as radars and health meters.

Sprites could work for your purposes. You could arrange a 4x3 block of 64x64 16-color sprites and use them as a second frame buffer, or you could arrange sprites in a way that reflects the arrangement of your screen objects (such as having a seperate sprites for each menu selection).

Alternatively, you can rearrange your code so that you can redraw the background at any time. If you can't redraw the background because the screen isn't stored anywhere, you could store a copy of the screen somewhere (i.e. a backbuffer), or you could store the information that was used to generate the screen in the first place, and regenerate it at will.

#20268 - alek - Wed May 05, 2004 9:02 pm

Thanks for your help.
I'll try your suggestions