This tutorial is designed to let you know what you are getting into when you learn to program the 6502.
So, you wanna learn to program the 6502 microprocessor in its own language of binary bits? Hold that thought. There' a few things you might want to know first.
The 6502 is Outdated
The 6502 is woefully outdated and therefore there are only three reasons to learn 6502.
The 6502 was popular during the 1980's and many popular video game consoles and computers used the 6502 as their processor. Learning how to program the 6502 in a general sense will give you 90% of what you need to know to develop for old video game consoles like the Atari 2600, the NES, and the SNES and classic computers like the Commodores, Apples and Ataris.
There are higher level programming languages (ex. BASIC, C) for all of these systems, however, if you really want to make the most of the hardware (or emulator) you are going to have to learn to program the 6502.
Write an Emulator
You're going to have to know how the 6502 works to program an emulator for a 6502 system. Chances are you will never have to write an emulator for any system as good emulators are available for everything.
Even so, if you are a maverick and want to write an emulator yourself, you're going to have to know how to program the 6502 before you can emulate one.
Introduction to Computer Science
Learning to program the 6502 using an emulator is safer than possibly crashing your computer while learning a modern assembly language. If you are not particularly interested in 6502 systems, learning to program the 6502 gives you an good introduction to computer science.
You Might Be Crazy
If you do not want to learn to program the 6502 for any of these reasons, you just might be crazy. Our advice is to slowly back away from the 6502 and the run for your freekin' life.