Dr Jefyll wrote:
It may seem natural to think of Native Mode as being something that turns on many extra capabilities. But I think better insights are revealed if we switch things around and think of Emulation Mode as something that turns
off certain capabilities.
Chad needn't be concerned about getting stuck in a non-zero bank. He can jump out of that bank just as easily as he jumped in.
Thank you Jeff, and Ed. I think I am seeing it more clearly now.
I asked Garth a long while ago about emulation mode on the '816, and his tl;dr response was "just go to native mode". Now I am seeing why. Yes, the '816 can act like a '02, it can run '02 code, but it is not an '02. I think that is what I need to keep in mind.
I altered the original image some, as per BDD's request to leave the E pin unconnected.
But now I have a new situation, given the topic at hand:
Say I design a 65C816 circuit for a drop-in 65C02 replacement. As in, if I put an '02 into the same slot on the board, it would run, albeit not at full potential. Back to the banking. The '816 starts in emulation mode, and in Bank 0. It tells the '573 that it is in Bank 0. But an '02 cannot tell the '573 anything. We would probably get mush, whatever happens to be on the databus at the time. Our banking situation could go wild! Unless I stop this by using glue logic with the non-existant E pin, results will vary.
That is another reason why I was proposing the '273 with the pull-up resistor on the E pin (I guess I just forgot about it until now). If you have ability to divide down a faster clock, this shouldn't be an issue. But leaving the E pin unconnected will again get varied results.
Any thoughts?
Thanks!
Chad