I keep running into these really simple clarifications that I don't find answers for anywhere else. Someone here always seems to know what's up.
I'm trying to get a better handle on programming a 2A03 from scratch. I like to understand everything completely before I start changing things.
From what I understand, as soon as a 2A03 turns on or gets reset, it tries to grab a 16-bit memory location from address 0xFFFC. So I should see 0xFFFC followed by 0xFFFD on the address pins as it tries to read in the data.
If I keep the data pins held low during those two cycles, the 2A03 will read 0x0000 and try to jump to that location in the ROM. I should see 0x0000 on the address pins on the next clock cycle.
From that point the chip is ready for legitimate program code. As long as I don't trigger any interrupts or use jump/brk instructions, the value on the address pins should increase by one for each cycle.
Am I correct so far?
I'm trying to get a better handle on programming a 2A03 from scratch. I like to understand everything completely before I start changing things.
From what I understand, as soon as a 2A03 turns on or gets reset, it tries to grab a 16-bit memory location from address 0xFFFC. So I should see 0xFFFC followed by 0xFFFD on the address pins as it tries to read in the data.
If I keep the data pins held low during those two cycles, the 2A03 will read 0x0000 and try to jump to that location in the ROM. I should see 0x0000 on the address pins on the next clock cycle.
From that point the chip is ready for legitimate program code. As long as I don't trigger any interrupts or use jump/brk instructions, the value on the address pins should increase by one for each cycle.
Am I correct so far?