Back in the mid 80's when I was in collage, my primary CP professor was a huge fan of the 6502 and thought it the ideal chip for undergrads to learn the basics of computer engineering...and it was, for me at least.<p>Way easier to breadboard and write opcode for then, and more powerful than the Intel 4004 and 8008 (what would eventually become the 8086..the great-great-great grandfather of the i9's we now use of course), my very first working "computer" used a 6502 at its heart for my senior project...we attempted to build a voice-activated phone and actually got something that would pick up and shut off the phone with some noise, but obviously a working voice-activated phone was something that was still many years away.<p>Also, I remember writing an opcode instruction emulator for the chip as a extra-credit project for one my classes. I wrote a really nice emulator on my beloved Atari ST and, much to my horror, discovered a horrendous bug in he C compiler I used for the project, almost ruining both the project and my grade for the quarter.<p>The program had a graphical representation all all the primary subsections of a basic computer...CPU, disk memory, the various busses, and some other things that my old brain can no longer remember, and the program would step thru the processors opcodes and show, with literally the 1s and 0s on the screen, how all the parts of the computer processed the opcode instruction set into something that coordinated all the chips into doing very useful stuff.<p>The problem was that due to some sort of crazy hex arithmetic bug in the compiler, one of the values at one of the nodes was stuck at like x0E or something like that...and no matter what I tried to do to debug it, I could not get the damn thing to work perfectly. I thought I was going to fail the class for sure, and it wasn't even my fault!<p>Thankfully, I was able to show the results in pure binary form, and the rest of the program was quite impressive. Also, my professor was a HUGE fan of the Atari ST (probably because it used the 68000 and wasn't Intel), so the day of me showing him my work wasn't a total failure...in fact, his face totally lit up when I asked him if I could pop the floppy into the ST in his office, and we verified that, yes, the bug was there in all versions of the compiler.<p>Only one other student had chosen to do the assignment, and he had used a minicomputer from his work to do it and his results where shown in reams of printouts where mine was there graphically represented in real time updates as you stepped thru the opcode instructions. I remember its addressing modes and GP registers made writing opcode a breeze as you didn't have to waste cycles juggling data and memory addresses at all.<p>[edit] wow...sorry this was such a long post! I just got lost in remembering old times...