View Single Post
Old 31st May 2019, 10:18 pm   #11
Join Date: May 2008
Location: Derby, UK.
Posts: 7,523
Default Re: Fun with 6502 Assembler

You have to pick your "wasted" instruction carefully, so as not to trample on anything important. CPY is a ComPare Y instruction; which sets the carry, subtracts the supplied operand from the value in the Y register and discards the difference, but does set the C (carry), V (overflow, i.e. false change of sign), N (negative, i.e. bit 7) and Z (zero) flags according to the subtraction. The LDA #&FF instruction A9 FF looks like an address &FFA9 to the processor, which therefore will attempt to read it; there may be side-effects if some I/O device is mapped there.

Unlike the 680x family, no 6502 instruction occupies more than three bytes; so you can only mask out a one- or two-byte instruction with this technique on that processor.
If I have seen further than others, it is because I was standing on a pile of failed experiments.
julie_m is offline   Reply With Quote