PaoloP:
Leo, hai visto questa discussione? --> http://arduino.cc/pipermail/developers_arduino.cc/2012-October/007211.html
Oggi ho studiato un po' la cosa, ed è una funzione molto più complessa della mia. Essa sfrutta un modulo presente nel SAM3X, il SysTick, un contatore indipendente dai timer del micro a cui hanno agganciato un gestore di task. Ogni task ha un suo tempo computazionale, ed il tutto è gestito dallo scheduler proprio tramite i tick, anche il delay segue lo stesso principio: usano un task che genera i millis, che poi leggono per i ritardi. Insomma, una cosina più raffinata che ovviamente non è replicabile sui Mega perché appunto utilizzano dell'HW dedicato.
PS:
in teoria si potrebbe agganciare il leOS ad un INT esterno o ad un PCINT, ma in questo modo si perderebbe un pin.