Jump to content
IGNORED

6507 Zero Page Map


Delicon

Recommended Posts

Does any one know if there are any areas of zero page that are free?

These should be free for both reading and writing:

$2E, $2F, 3E,3F, $6E, $6F,$7E and $7F

 

Are there any areas where the data bus is not driven?

I am not 100% sure what happens if you make a read access to these spots.

But I am quite sure, that these spots are the only ones which COULD probably

not be driven by the TIA if you read from them. I think for all other spots, at

least some of the bits are driven ...

 

Armin

Link to comment
Share on other sites

You might look here: http://www.atariage.com/forums/index.php?showtopic=68988

 

Or have a look at these docs:

tia_map.txtriot_map.txtmem_map_1.txtmem_map_2.txt

Looks like zp locations $2E, $2F, $3E, $3F and $6E, $6F, $7E, $7F are undefined for reads and writes.

 

$xE, $xF are undefined for reads.

$2D-$3F and $6D-$7F are undefined for writes.

 

I am not 100% sure what happens if you make a read access to these spots.

But I am quite sure, that these spots are the only ones which COULD probably

not be driven by the TIA if you read from them. I think for all other spots, at

least some of the bits are driven ...

I don't think the TIA drives any undefined bits, but based on the difficulties I had with Reindeer Rescue, it seems that the hardware and/or the cart, or some combinations of those, will drive the undefined bits in certain directions.

Edited by vdub_bobby
Link to comment
Share on other sites

Thanks a ton guys, that helps.

 

It looks as though the only safe areas would be in the TIA. As far as it driving the bus, I think the only way to be sure is to take the chip out and put a couple addresses on the bus. I think it might be worth it to look deeper into this. My gut says it drives all addresses, because it would have taken extra logic just to handle those couple special addresses, more logic means more money. And the name of the game is spending as little money as possible.

 

Vern

Link to comment
Share on other sites

It looks as though the only safe areas would be in the TIA. As far as it driving the bus, I think the only way to be sure is to take the chip out and put a couple addresses on the bus. I think it might be worth it to look deeper into this. My gut says it drives all addresses, because it would have taken extra logic just to handle those couple special addresses, more logic means more money. And the name of the game is spending as little money as possible.

 

The TIA drives D6-D7 during the second half of any read cycle to address xxx0 xxxx 0xxx xxxx. Even in the addresses $xxE and $xxF the bits are driven even though there are no useful registers there. The TIA never drives bits D0-D5 of any address, so it would be possible to have hardware generate low-bit data at those addresses (e.g. one could read the audio data for a Pitfall-II style music player from there, saving a cycle per scanline). There is one important caveat, however: if a cartridge is going to be 7800-compatible, it must not output anything on the bus during TIA cycles until it has started actually running code in 2600 mode. My original design for 4A50 allowed banking registers to be read from zero-page addresses, but that was canned because it made the 7800 crash on power-up. 'Course that just let me put in something better. :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...