I was aware of being able to use PTRIG, but was not aware of how much faster it is! I just ran a quick test in Turbo BASIC XL (not compiled), scanning STICK(0), PEEK(632), PTRIG(0) each for ten seconds and counting how many iterations were made in a WHILE/WEND loop. PTRIG won by a mile. I'm definitely using it, where possible!
EDIT: For kicks and giggles, I ran it through the TBXL compiler. STICK(0)=6744, PEEK(632)=6852, PTRIG(8132)=8132. Now I've got to try this in Fast Basic