If you look at what bits are on in the opcode you can
see how certain
"illegal" instructions that perform, say accumulator operations and X
register operations fit into both respective instruction families.
The "family" idea bothers me. I've seen charts of "How the 6502
decodes
instructions" in various books -- they break the instructions down based on
the first and last few bits, in other words into families. They then list
the remaining bits with their corresponding opcodes.
The problem is that even the legitimate opcodes fit into more than one
family (according to the rough schemes in the books). Clearly the 6502 has
one exact way of decoding instructions and one well-defined way of reacting
to the undocumented opcodes. Of course I don't know what that way is, but
it's there. The books are just making a rough model of the chip.
I'm thinking about medieval philosophers. Their arguments were limited by
a whole slew of assumptions, religious beliefs, etc., and they had to shoe-
horn the ideas they worked with into the constraints imposed on them.
Their philosophy wasn't _bad_, but from a different and remote vantage point
it seems profound and simple at the same time and somewhat bizarre.
(I could be very wrong about this, since I just have a few terms like
"scholasticism" floating around in my head. Can anyone suggest a good book?)
It would be really impressive to create a chip with enough flexibility in
the opcode set to accommodate shades of meaning or a grammar of instructions.
But the 6502 isn't that chip, even if it seems that way.
Are there any simple reverse-engineering techniques (like looking at an open
package under a microscope)? And how many 6502's fit on the head of a pin?
[Chuck Peddle]
Nope. Didn't see him. But he'll most likely
be a speaker at VCF 3.0.
Boy, you have all *kinds* of irons in the fire.
-- Derek