Standardizing Chipcon interface, bringing it into line with the NRF code.
[goodfet] / client / goodfet.cc
index a7b208f..f5e46b5 100755 (executable)
@@ -9,16 +9,19 @@ import sys;
 import binascii;
 
 from GoodFETCC import GoodFETCC;
+from GoodFETConsole import GoodFETConsole;
 from intelhex import IntelHex;
 
-
 if(len(sys.argv)==1):
     print "Usage: %s verb [objects]\n" % sys.argv[0];
+    print "%s erase" % sys.argv[0];
+    print "%s flash $foo.hex" % sys.argv[0];
     print "%s test" % sys.argv[0];
+    print "%s term" % sys.argv[0];
     print "%s info" % sys.argv[0];
+    print "%s regs" % sys.argv[0];
     print "%s dumpcode $foo.hex [0x$start 0x$stop]" % sys.argv[0];
     print "%s dumpdata $foo.hex [0x$start 0x$stop]" % sys.argv[0];
-    print "%s erase" % sys.argv[0];
     print "%s writedata $foo.hex [0x$start 0x$stop]" % sys.argv[0];
     print "%s verify $foo.hex [0x$start 0x$stop]" % sys.argv[0];
     print "%s peekdata 0x$start [0x$stop]" % sys.argv[0];
@@ -29,6 +32,7 @@ if(len(sys.argv)==1):
     sys.exit();
 
 #Initailize FET and set baud rate
+#client=GoodFET.GoodFETCC.GoodFETCC();
 client=GoodFETCC();
 client.serInit()
 
@@ -36,6 +40,7 @@ client.serInit()
 client.setup();
 client.start();
 
+
 if(sys.argv[1]=="explore"):
     print "Exploring undefined commands."
     print "Status: %s" %client.status();
@@ -46,7 +51,8 @@ if(sys.argv[1]=="explore"):
         print "Status %02x: %s" % (foo,client.status());
     for foo in range(0,3):
         print "PC: %04x" % client.CCgetPC();
-        
+if(sys.argv[1]=="term"):
+    GoodFETConsole(client).run();
 if(sys.argv[1]=="test"):
     client.test();
 if(sys.argv[1]=="deadtest"):
@@ -91,7 +97,16 @@ if(sys.argv[1]=="dumpdata"):
 if(sys.argv[1]=="status"):
     print "Status: %s" %client.status();
 if(sys.argv[1]=="info"):
-    print "%s" % client.CCidentstr();
+    print "Ident   %s" % client.CCidentstr();
+    print "Freq    %10.3f MHz" % (client.RF_getfreq()/10**6);
+    #print "Rate    %10i kbps" % (client.RF_getrate()/1000);
+    #print "PacketLen %02i bytes" % client.RF_getpacketlen();
+    #print "SMAC  0x%010x" % client.RF_getsmac();
+    #print "TMAC  0x%010x" % client.RF_gettmac();
+
+if(sys.argv[1]=="regs"):
+    client.CMDrs();
+
 if(sys.argv[1]=="erase"):
     print "Status: %s" % client.status();
     client.CCchiperase();