Ok, hab's jetzt mal durch den Simulator gejagt.
Der Timerinterrupt lässt dem Software-UART keine Chance mal was auszugeben. Der Timer springt ca. alle 8000 µS in die ISR. Scheint mit dem Software-UART nicht zu gehen. Probier mal mein Beispiel. Nur mal so zum testen.
Code:
$regfile = "At26def.dat"
$crystal = 8000000
'----------------Timer config---------------------------
Config Timer0 = Timer , Prescale = 1024
Enable Timer0
Enable Interrupts
On Timer0 Tim0_isr
'----------------- RS232 Config ------------------
Open "coma.5:9600,8,n,1" For Output As #1
Dim Timervar As Integer
Do
   Stop Timer0
   Print #1 , Timervar
   Start Timer0
   Waitms 500
Loop

Tim0_isr:
 Incr Timervar
Return

End
Bei Timervar > 32767 kriegst Du einen Überlauf und es wird von -32767 bis +32767 gezählt .... also nicht erschrecken
Ist aber zum testen jetzt egal

Gruß.
Rainer