3 ms·
IIRC the "normal" NOP took 2 cycles, so we used the illegal ones to waste an odd number of cycles for accurate raster line timing.
by selcuka 1y ago
IIRC the "normal" NOP took 2 cycles, so we used the illegal ones to waste an odd number of cycles for accurate raster line timing.
- brucehoult 1y agoIt's not like it's hard to find a harmless 3 cycle instruction. For example Store A/X/Y to any unused/scratch Zero Page location. Or condition branch to the next instruction using a condition known to be true .. BCC/BCS is often the most convenient. Or just JMP to the next instruction, though it's 3 bytes of code instead of 2. INC/DEC of a scratch Zero Page location is useful for a 5 cycle delay in 2 bytes of code if you don't mind changing NZ flags, but the store/branch/jump alternatives don't even do that.