HomeForumsWhat's newResources 
 
 
Genesis graphics
RedAngel - May 31, 2004
 RedAngel May 31, 2004
Hi everybody ,

I have several questions about Genesis graphics.

1. Can you use window with scroll A and B?

2. Distortion effects are done by hardware or software?

3. Can you use more than 16 colours in scroll A or B?

Thanks.

 fonzievoltonov May 31, 2004
Hi,


  
	
	
1. Can you use window with scroll A and B?


When you use Window plane, the plane A is hidden under the Window plane.

(The position of the plane window is set in the registers)


  
	
	
2. Distortion effects are done by hardware or software?


For hozizontal and vertical multi-scrolls, the job can be done by hardware.

For vertical zoom (or horizontal multi-scroll) you can use a software method called

"raster effect". In fact (using the H_INT), you change the scrolling values during the VDP redraw.

You can check my FVR_TECHNICAL_DEMO for hardware distortions :

http://fvring.free.digitartstudio.com/inde...ain=c...


  
	
	
3. Can you use more than 16 colours in scroll A or B?


In fact, the planes A and B (and windows) are made of tiles (group 8*8 pixel).

Each tile can be assigned with one of the 4 color-pallettes and each tile can be showed with shadow.

So théoricaly 15*4*2+1 colors in one plane without any special things.

Bye

Fonzie

 Edge-` May 31, 2004
There are some nice demos there fonzievoltonov, just wanted to compliment you on them. I'll have to go through the source and learn some new tricks.

 fonzievoltonov Jun 1, 2004
Thanks Edge-`

Your ADVANCE WAR seems to be cool.

>Dont wory about your title screen horisontal compression, the genny automaticaly resize it to 320 width (on real hardware).

I asked you by mail to join the Sega genesis dev ring, you never answered.

You don't want to join?

Bye

Fonzie

 Kaneda Jun 1, 2004

  
	
	
Originally posted by fonzievoltonov@May 31, 2004 @ 01:58 PM

Hi,


  
	
	
1. Can you use window with scroll A and B?


When you use Window plane, the plane A is hidden under the Window plane.

(The position of the plane window is set in the registers)



i got several infos on that...

it seems it's not as simple of that....

Window seems to be something like a part of planeA....so you can't have the 2 of them....

Kaneda

 RedAngel Jun 1, 2004
Thanks for your replies

I have tested some SNES games and a lot of them have a Sprite plane, 2 planes for backgrounds and another plane with life meters, time etc, so if you can use a Sprite plane, planes A and B for graphics and a window for life meters, time etc, in low resolution in Genesis we could do ports of SNES games.

I read in a Spanish web that MegaDrive (as we call it here) CAN´T do distortions effects by hardware and I was not very sure of that. :huh

I had a lot of doubts about the third question. I know that every tile can have 16 colours (I did not know if you could use any of the four pallettes) but usually in games every plane has 16 colours. Even some games only use 1 plane and they have backgrounds of only 16 colours.

 Kaneda Jun 1, 2004

  
	
	
Originally posted by RedAngel@Jun 1, 2004 @ 06:21 AM

I have tested some SNES games and a lot of them have a Sprite plane, 2 planes for backgrounds and another plane with life meters, time etc, so if you can use a Sprite plane, planes A and B for graphics and a window for life meters, time etc, in low resolution in Genesis we could do ports of SNES games.


i, a LONG time ago, tried to port Bastard Intro to Genny, and it wasn't as simple as that...it lacks a plane


  
	
	
I read in a Spanish web that MegaDrive (as we call it here) CAN´T do distortions effects by hardware and I was not very sure of that. :huh



yes..it means there isn't a chip to rotate, zoom or anything else...

it's what means 'by hardware'...


  
	
	
I had a lot of doubts about the third question. I know that every tile can have 16 colours (I did not know if you could use any of the four pallettes) but usually in games every plane has 16 colours. Even some games only use 1 plane and they have backgrounds of only 16 colours.


answer : it's a lot easier to handle!!

you'll have to check more games to test that....

look stuff like Gunstar Heroes or Rocket Knight..i won't be surprised if they use this "trick"

Kaneda

 fonzievoltonov Jun 1, 2004
Hi kaneda,

Of course, we always get wrong because the emulators doesn't respect anyting with planesA and window.

I saw on real hardware that: If you display transparent-tiles on Window, you get garbage on plane A under the window.

I just coded a very fast demo to test all the stuff:

http://fvring.free.digitartstudio.com/inde...ain=c...

I don't tested it on real hardware but it may work.

If you get problems with the number of planes of the genesis you can get around by using low/hight priority with tiles.

Bye

Fonzie

 Edge-` Jun 2, 2004

  
	
	
Originally posted by fonzievoltonov@Jun 1, 2004 @ 05:52 AM

Thanks Edge-`

Your ADVANCE WAR seems to be cool.

>Dont wory about your title screen horisontal compression, the genny automaticaly resize it to 320 width (on real hardware).

I asked you by mail to join the Sega genesis dev ring, you never answered.

You don't want to join?

Bye

Fonzie


I'd love to join , though I've been quite dormant in development for the time being. I started some work on the dreamcast , I had gotten much further than shown on my page, but got a bit frustrated with some limitations . Using SDL for the DC is very nice in comparison, but I'm sure I will get back to the project some day.

 fonzievoltonov Jun 2, 2004

  
	
	
I'd love to join , though I've been quite dormant in development for the time being.


Anyway, just add your site (more we have sites, better it is :lol: ).


  
	
	
but got a bit frustrated with some limitations .


Youre probably speaking about SGCC limitations, aren't you (very frustating )?

Or the number of tiles present in the VRAM (max +-1200 tiles frustated me :rant )?

For the first solution, i passed to GCC with succes (only change the sega.s, remplace all your .s syntax, put uint in ushort, int in short, ulong in uint...).

And you will get a faster optimisation (depend of your code structure) and no more bugs.

For the second, i used .map instead of flat pictures.


  
	
	
Using SDL for the DC


héhé .

Bye

Fonzie

 Kaneda Jun 3, 2004

  
	
	
Originally posted by fonzievoltonov@Jun 2, 2004 @ 11:52 PM


  
	
	
but got a bit frustrated with some limitations .


Youre probably speaking about SGCC limitations, aren't you (very frustating )?

Or the number of tiles present in the VRAM (max +-1200 tiles frustated me :rant )?

For the first solution, i passed to GCC with succes (only change the sega.s, remplace all your .s syntax, put uint in ushort, int in short, ulong in uint...).

And you will get a faster optimisation (depend of your code structure) and no more bugs.

For the second, i used .map instead of flat pictures.





i don't like when you say that!!

SGCC was very useful for 5 years....

yes, i have no more bugs (like headers limit or bad asm output) but for the optimisation....i personnaly saw nothing and i doubt my work is perfect even if i rewrite several times the same code, i will rewrite it again (collide is very painful!)

for the tiles limit, think how the existing games were made!

I was personnaly never bored by this limit...only when i made a stupid BMP-> 128*128 map without optimisation

anyway, sure XGCC is very more useful....

I get Microtek mcc68k this week, i need to test it....(it have a GUI!!!)

Kaneda

 fonzievoltonov Jun 3, 2004
Hi, kaneda.

Sorry, i know, without SGCC> you would not be here> BMP2TILE would not be here > I This board would not be here > I would not be here speaking to you... :lol:

Howerver, i was very close to stop the dev 3 month ago cause of the SGCC bugs (with volatile variables).

My coding shems (main big loop without fonction calls) push GCC to optimize all.

The same demo from SGCC runs 10-20% faster with GCC (with a optimization level of 9).

:cheers

 Kaneda Jun 3, 2004
ok...i know understand why you say GCC optimize...(one big loop)

everyone codes like he wants, and personnaly with my coding schem, GCC didn't optimize a lot.

Anyway, i don't say SGCC is better than GCC...

i agree with you GCC is better than SGCC, i now can dev without asking me "is it my code or SGCC ?" when something bugs

thanks again to (re)point it to me

Kaneda

et soit pret pour ce we, une chtite surprise

 fonzievoltonov Jun 3, 2004

  
	
	
i agree with you GCC is better than SGCC, i now can dev without asking me "is it my code or SGCC ?" when something bugs



:agree


  
	
	
et soit pret pour ce we, une chtite surprise


Oulala, ça va être chochocho ce week end....

Un software?, une rom mega drive?....

Kaneda is a soooo secret guy that we can expect every thing from him (Outch, whats that english ?? ).

:lol:

 Kaneda Jun 4, 2004

  
	
	
Originally posted by fonzievoltonov@Jun 3, 2004 @ 01:31 PM


  
	
	
et soit pret pour ce we, une chtite surprise 


Oulala, ça va être chochocho ce week end....

Un software[question_mark], une rom mega drive[question_mark]....

Kaneda is a soooo secret guy that we can expect every thing from him (Outch, whats that english [question_mark][question_mark] ).

:lol:


i'm not SO secret...

i just release stuff when they are releasable

and as a lot of people, i use my free time to make this stuff...

so it can be slowwwwwwww