I think I found a good scanlines/dma compromise

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Re: I think I found a good scanlines/dma compromise

Post by psycopathicteen »

I guess I'll bring it up to 12 pixels on top and bottom, because v-blank is already saturated with 1 big 8kB block, and there needs enough CPU time to run the game.
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Re: I think I found a good scanlines/dma compromise

Post by psycopathicteen »

http://wiki.superfamicom.org/snes/show/Registers

On this website I found this under registers $2180-$2183
This means you could use DMA mode 4 to $2180 and a table in ROM to write any sequence of RAM addresses. The value does not wrap at page boundaries on increment.
Is this true? Can you DMA from rom into wram with these registers? If so, then using a CPU RAM buffer would be possible. The only problem I see is that it wouldn't work for decompressed sprites, because you can't do wram-to-wram DMAs.
User avatar
Bregalad
Posts: 8036
Joined: Fri Nov 12, 2004 2:49 pm
Location: Caen, France

Re: I think I found a good scanlines/dma compromise

Post by Bregalad »

Well, I can't answer for your questions, but about the "is it true" question, the only really reliable document for the SNES is Anomie's. Most others/older documents are totally inaccurate and somtimes even complete crap.
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Re: I think I found a good scanlines/dma compromise

Post by psycopathicteen »

I'm finished with my animation engine. Here is a demo showing Red's running animation from Gunstar Heroes.
Attachments
dynamic animation engine.zip
(18.46 KiB) Downloaded 91 times
psycopathicteen
Posts: 3001
Joined: Wed May 19, 2010 6:12 pm

Re: I think I found a good scanlines/dma compromise

Post by psycopathicteen »

I realized that instead of using HDMA to create the top and bottom bar, a better way would be to use BG3 to create the top and bottom bar. This way would be better because the CPU can keep the PPU in forced-blank until DMAing is finished, even when it finishes late.
Post Reply