Artifacts of the direct color DMA

Ask anything your want about Megadrive/Genesis programming.

Moderator: BigEvilCorporation

Post Reply
greatkreator
Very interested
Posts: 158
Joined: Sat May 12, 2012 7:37 pm
Location: Ukraine

Artifacts of the direct color DMA

Post by greatkreator » Thu Nov 19, 2015 6:48 am

The direct color DMA has a drawback: 5 columns of doubled pixels.
As far I know the artifacts are caused by the need to refresh DRAM memory used in VDP's CRAM.
Does anyone know how to fix them?
Any suggestions are welcomed!
Thanks!

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Re: Artifacts of the direct color DMA

Post by Stef » Thu Nov 19, 2015 9:33 am

I think there is absolutely no way of fixing that unfortunately. That is how the VDP internal logic work and to fix that you have to change the VDP logic :p

Natsumi
Very interested
Posts: 82
Joined: Mon Oct 05, 2015 3:00 pm
Location: 0x0
Contact:

Re: Artifacts of the direct color DMA

Post by Natsumi » Thu Nov 19, 2015 9:39 am

there is no way to "fix CRAM dots, but with clever timing you can avoid them. Sonic 3 is a great example of this; while it doesnt DMA, it writes 3 colours per scanline, with a very precise timing to basically push the dots into overscan. This and some clever code (in case of DMA) and you can squeeze quite many colors without visible CRAM dots. Ive been able to manage to do about 8 with only 1 or less dots, though my code is not as precise.

greatkreator
Very interested
Posts: 158
Joined: Sat May 12, 2012 7:37 pm
Location: Ukraine

Re: Artifacts of the direct color DMA

Post by greatkreator » Thu Nov 19, 2015 10:00 am

I know Stef but I hoped maybe there was a miracle (:
It's very likely that it is impossible to turn off DRAM refresh.
And if it would be possible very likely DRAM would lose its data and wouldn't be too much sense to do that.
As far I know DRAM must refresh its content about that time that it's done in VDP.

Natsumi, as far I understand you can do nothing when you are in a DMA call.
And because the columns are vertical I can do nothing about it as well using any tricks.
I hoped there is a technical possibility somehow to turn it off but it seems there is no.
I am not sure do you know what exactly we talking about? Direct Color DMA: a big DMA transfer to CRAM color 0 (making a raw 9-bit rgb rendering "direct color")?

Natsumi
Very interested
Posts: 82
Joined: Mon Oct 05, 2015 3:00 pm
Location: 0x0
Contact:

Re: Artifacts of the direct color DMA

Post by Natsumi » Thu Nov 19, 2015 12:52 pm

ah sorry, misunderstood the post. In that case I dont know anything that'd help, and I doubt there is anything that would.

Post Reply