kakemoms wrote:
Well, you are a purist, which is fine. Ultimately 6502 code does or doesn't run on other versions of the 6502, its all about compability level. Try running commodore 64 code on a 2MHz 6502, and it will probably fail due to some
timing-critical routine.
Whether software written to run on the Commodore 64 will work on a 2MHz 6502 (Which 2 MHz 6502 system?) or not would have nothing to do with the code itself and everything to do with the host machine. The C-64 is a special case 6502 (specifically, 6510) system, due to its dual processor design, the second processor being the VIC. Since the 6510 and VIC have to share the same buses and address space, unavoidable timing constraints get into the picture, which would affect the C-64, not the 2 MHz unnamed 6502 system.
As Windfall is intimating, your design is not a 6502 unless it can execute the 6502 instruction set in its entirety, as well as correctly condition the flags in the status register according to the result of the most recent instruction. That isn't being a purist; it's merely stating an immutable fact.
Quote:
So this is a 6502-like cpu with fewer instructions and some special considerations, but its code will compile on any 6502 assembler.
One doesn't "compile" code with an assembler.