]> rtime.felk.cvut.cz Git - fpga/virtex2/uart.git/blobdiff - software/miniterm.py
Software modification to work whit HW UART
[fpga/virtex2/uart.git] / software / miniterm.py
diff --git a/software/miniterm.py b/software/miniterm.py
deleted file mode 100644 (file)
index d0bd887..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/env python
-#very simple serial terminal
-#http://pyserial.sf.net package required
-#input characters are sent directly, received characters are displays as is
-#baudrate and echo configuartion is done through globals:
-
-#<cliechti@gmx.net>
-
-import sys, os, serial, threading, getopt
-#EXITCHARCTER = '\x1b'   #ESC
-EXITCHARCTER = '\x04'   #ctrl+d
-
-#first choosea platform dependant way to read single characters from the console
-if os.name == 'nt': #sys.platform == 'win32':
-    import msvcrt
-    def getkey():
-        while 1:
-            if echo:
-                z = msvcrt.getche()
-            else:
-                z = msvcrt.getch()
-            if z == '\0' or z == '\xe0':    #functions keys
-                msvcrt.getch()
-            else:
-                return z
-
-elif os.name == 'posix':
-    #XXX: Untested code derrived from the Python FAQ....
-#    import termios, TERMIOS, sys, os
-    import termios, sys, os
-    fd = sys.stdin.fileno()
-    old = termios.tcgetattr(fd)
-    new = termios.tcgetattr(fd)
-    new[3] = new[3] & ~TERMIOS.ICANON & ~TERMIOS.ECHO
-    new[6][TERMIOS.VMIN] = 1
-    new[6][TERMIOS.VTIME] = 0
-    termios.tcsetattr(fd, TERMIOS.TCSANOW, new)
-    s = ''    # We'll save the characters typed and add them to the pool.
-    def getkey():
-        c = os.read(fd, 1)
-        if echo: sys.stdout.write(c)
-        return c
-    def clenaup_console():
-        termios.tcsetattr(fd, TERMIOS.TCSAFLUSH, old)
-    sys.exitfunc = clenaup_console  #terminal modes have to be restored on exit...
-
-else:
-    raise "Sorry no implementation for your platform (%s) available." % sys.platform
-
-
-def reader():
-    """loop forever and copy serial->console"""
-    while 1:
-        sys.stdout.write(s.read())
-
-def writer():
-    """loop forever and copy console->serial"""
-    while 1:
-        c = getkey()
-        if c == EXITCHARCTER: break   #exit on esc
-        s.write(c)              #send character
-        if convert_outgoing_cr and c == '\r':
-            s.write('\n')
-            if echo: sys.stdout.write('\n')
-
-
-#print a short help message
-def usage():
-    print >>sys.stderr, """USAGE: %s [options]
-    Simple Terminal Programm for the serial port.
-
-    options:
-    -p, --port=PORT: port, a number, defualt = 0 or a device name
-    -b, --baud=BAUD: baudrate, default 9600
-    -r, --rtscts:    enable RTS/CTS flow control (default off)
-    -x, --xonxoff:   enable software flow control (default off)
-    -e, --echo:      enable local echo (default off)
-    -c, --cr:        disable CR -> CR+LF translation
-
-    """ % sys.argv[0]
-
-if __name__ == '__main__':
-    #parse command line options
-    try:
-        opts, args = getopt.getopt(sys.argv[1:],
-                "hp:b:rxec",
-                ["help", "port=", "baud=", "rtscts", "xonxoff", "echo", "cr"])
-    except getopt.GetoptError:
-        # print help information and exit:
-        usage()
-        sys.exit(2)
-    
-    port  = 0
-    baudrate = 9600
-    echo = 0
-    convert_outgoing_cr = 1
-    rtscts = 0
-    xonxoff = 0
-    for o, a in opts:
-        if o in ("-h", "--help"):   #help text
-            usage()
-            sys.exit()
-        elif o in ("-p", "--port"):   #specified port
-            try:
-                port = int(a)
-            except ValueError:
-                port = a
-        elif o in ("-b", "--baud"):   #specified baudrate
-            try:
-                baudrate = int(a)
-            except ValueError:
-                raise ValueError, "Baudrate must be a integer number"
-        elif o in ("-r", "--rtscts"):
-            rtscts = 1
-        elif o in ("-x", "--xonxoff"):
-            xonxoff = 1
-        elif o in ("-e", "--echo"):
-            echo = 1
-        elif o in ("-c", "--cr"):
-            convert_outgoing_cr = 0
-
-    try:
-        s = serial.Serial(port, baudrate, rtscts=rtscts, xonxoff=xonxoff)
-    except:
-        print "could not open port"
-        sys.exit(1)
-    print "--- Miniterm --- type Ctrl-D to quit"
-    #start serial->console thread
-    r = threading.Thread(target=reader)
-    r.setDaemon(1)
-    r.start()
-    #enter console->serial loop
-    writer()
-
-    print "\n--- exit ---"