$regfile = "m16def.dat" $crystal = 8000000 $baud = 9600 Const False = 0 Const True = 1 Const Enter = 13 On Urxc Urxc_isr Enable Urxc Enable Interrupts Dim Flag As Integer Dim Inputstr As String * 10 Dim Pin As Byte Dim Port As Integer , State As Integer Dim Porttmp As String * 1 , Statetmp As String * 1 Dim Ledstate(5) As Integer Main: Do If Flag = True Then 'Inputstr = Ucase(inputstr) 'Dim Foobar As String * 1 'Foobar = Left(inputstr , 0) 'Print Asc(foobar) If Left(inputstr , 1) = "P" Then Porttmp = Mid(inputstr , 2 , 1) Port = Val(porttmp) Print "port: " ; Port Pin = Port - 1 Print "pin: " ; Pin Statetmp = Mid(inputstr , 3 , 1) State = Val(statetmp) Select Case State Case 0 : Ledstate(port) = State Porta.pin = 0 Case 1 : Ledstate(port) = State Porta.pin = 1 Case 2 : Ledstate(port) = State End Select End If 'Print Inputstr Inputstr = "" Flag = False End If Loop Urxc_isr: If Udr = Enter Then Flag = True Inputstr = Inputstr + Chr(udr) Return End