[atari7800] Re: DMA TIMING

  • From: Christopher Tumber <christophertumber@xxxxxxxxxx>
  • To: atari7800@xxxxxxxxxxxxx
  • Date: Fri, 05 Nov 2004 21:02:09 -0500

>It appears that the Indirect cycle counts include the character map access

Yeh, it must be 3 cycles per byte, regardless of character or sprite and the 
only difference is in the overhead.

The only real remaining question is whether or not reading the bitmaps from RAM 
gives a performance boost or not (2 cycles instead of 3 cycles would rock!)

Attached is the latest version on my layered scroll. I've made some changes 
that should tell us if RAM vs ROM makes a difference.

- The DLL, DLs and character map are in RAM
- The bitmaps default to ROM
- Pressing and holding the fire button switches to RAM bitmaps. This also 
inverses the palette so it should be obvious. (Releasing returns to ROM)
- In addition, I've added 17 sprites in the middle of the screen, just to see 
how they behave (ie: how many sprites can go over 320x2 characters). They also 
switch from ROM to RAM. They're only 2 byte sprites, but should be a decent 
test (17 'cuz that's how many fit my DL without moving stuff around in 
memory)...

Strangely, the sprites are not transparent and I'm not sure why that is. It's 
not the Kagaroo bit as setting that is obvious and affects the scroll layers. 
Maybe a MESS problem? But other games must uses sprites over character??

Anyway, you have a CC2, right? Would you mind...?

If reading from RAM makes the difference, then cool, it works! If not, well, 
it'd definately be possible in 160x2. But to me 160 modes are just glorified 
2600 graphics. 320x2, however, kicks NES ass!

Ah well, we'll see... I had a completely different idea today that could really 
show off the 7800's capabilities. If this doesn't work I might change gears 
completely. Or do both. I dunno...

>With two bytes per character, we only need two 5 byte headers, 

That's a really good point, if it's close, I can maybe eliminate some overhead 
by going with 2 byte characters and dropping some headers.


Chris...

Other related posts: