ate sw_ugoahead As Boolean
Private sw_igoahead As Boolean
Private sw_echo As Boolean
Private sw_linemode As Boolean
Private sw_termsent As Boolean
Private substate As Boolean
Private Sub cursor_timer_Timer()
If Not Receiving Then
' Debug.Print "Timer"
term_DriveCursor
End If
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Dim CH As String
CH = Chr$(0)
'Translate keycodes to VT100 escape sequences
Select Case KeyCode
Case vbKeyControl
control_on = True
Case vbKeyEnd
CH = Chr$(27) + "[K"
Case vbKeyHome
CH = Chr$(27) + "[H"
Case vbKeyLeft
CH = Chr$(27) + "[D"
Case vbKeyUp
CH = Chr$(27) + "[A"
Case vbKeyRight
CH = Chr$(27) + "[C"
Case vbKeyDown
CH = Chr$(27) + "[B"
Case vbKeyF1
CH = Chr$(27) + "OP"
Case vbKeyF2
CH = Chr$(27) + "OQ"
Case vbKeyF3
CH = Chr$(27) + "OR"
Case vbKeyF4
CH = Chr$(27) + "OS"
Case Else
If control_on And KeyCode > 63 Then
CH = Chr$(KeyCode - 64)
End If
End Select
If CH > Chr$(0) And Connected Then
WinsockClient.SendData CH
If TraceTelnet Then Debug.Print CH
End If
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
Dim CH As String
If Connected Then
CH = Chr$(KeyAscii)
If control_on Then
If KeyAscii > 63 Then
CH = Chr$(KeyAscii - 64)
Else
CH = Chr$(0)
End If
End If