SuB^ZerO написа:btfss би трябвало да прескочи следващата инструкция ако бит T0IF е "1"Ами няма как да е "1" при проверката, при положение че с предната инструкция си го нулирал.
Неслучайно цитирах и трите места, където си ползвал проверката на T0IF. Предполагам и в трите случая идеята е да се изчаква някакво време. Ако е така направи го както в първия случай.
Иначе като вариант бих ти препоръчал да ползваш прекъсване (на TMR0). Прочети как става, пробвай, ако нещо не върви питай.
"if, elseif..." може да ползваш ако пишеш на някакво C или Basic. В MPASM не може.