load81 wrote:
Or, is there an option here I haven't considered that would make this all make sense?
Hi, load81. No, you're alright -- asking all the right questions.
Quote:
2. If so, why does the C64 place them outside (or copy them) outside of the CPU itself?
The CPU registers are internal to the CPU, and a program can also copy them to memory.
Why? I'm not expert on C64, but the KIM-1 (and other machines, I'm sure) sometimes copy the registers to memory for debugging purposes -- for example, to single-step through a program. In this scenario you have two programs -- the debugger program and the program under test. After each single step, the register gets copied to memory by the debugger, and from there it can be displayed and/or altered. When it's time to do another step memory gets copied back to the register beforehand. So, in the single-step scenario what's in memory is just a snapshot used for human reference. I believe that's what was meant by your source which said the C64 the status flags reside at address $30F. HTH!
cheers
Jeff
_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html