Re: stack based
The 6502 is not a stack-based machine. It does support a stack for push, pop and subroutine call instructions, but so does almost every other microprocessor. I think the 6502 can be best described as an accumulator machine, where all arithmetic and logical instructions require one of the operands to be in the accumulator (A) register. (The first CPU I ever tried programming in machine language, on the Oric 1, which is why I go on about it...).