If you have a look at wiring.c, you'll see that millis() reads variable timer0_millis
timer0_millis is only part of the value. The other part is the timer itself. It is extremely difficult to change the millis value without introducing an offset.
If you have a look at wiring.c, you'll see that millis() reads variable timer0_millis
timer0_millis is only part of the value. The other part is the timer itself. It is extremely difficult to change the millis value without introducing an offset.