X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=client%2FGoodFETConsole.py;h=3612007f4c0620c9b5b58395c8ec2b93d8649ca1;hp=cf74cf9677dfa2644d99d6cb904c7d5f5c11546b;hb=b7a6e00b7d75a7f29401c2aeeb2e19cbd622d678;hpb=06c35c53c6ccc3eb8d3860f0a22ef3e559c293e0 diff --git a/client/GoodFETConsole.py b/client/GoodFETConsole.py index cf74cf9..3612007 100644 --- a/client/GoodFETConsole.py +++ b/client/GoodFETConsole.py @@ -11,6 +11,23 @@ import binascii; from GoodFET import GoodFET; from intelhex import IntelHex; + +#grep CMD GoodFETConsole.py | grep def | sed s/\(sel.\*// | sed 's/def CMD//' +commands=""" + info + lock + erase + test + status + halt + resume + peek + flash + dump + where + chip +""" + class GoodFETConsole(): """An interactive goodfet driver.""" @@ -19,6 +36,7 @@ class GoodFETConsole(): client.serInit(); client.setup(); client.start(); + client.loadsymbols(); def prompt(self): sys.stdout.write("gf% "); sys.stdout.flush(); @@ -69,15 +87,29 @@ class GoodFETConsole(): def CMDstatus(self,args): print self.client.status(); return; + def CMDhalt(self,args): + print self.client.halt(); + def CMDresume(self,args): + print self.client.resume(); def CMDpeek(self,args): - adr=eval(args[1]); + adr=args[1]; memory="vn"; if(len(args)>2): memory=args[2]; - print "0x%08x:= 0x%04x" % (adr, self.client.peek16(adr,memory)); + adr= self.client.name2adr(adr); + #print "%i" % adr; + print "0x%08x:= 0x%04x" % ( + adr, self.client.peekword(adr, + memory)); def CMDflash(self,args): file=args[1]; self.client.flash(self.expandfilename(file)); + def CMDdump(self,args): + file=args[1]; + self.client.dump(self.expandfilename(file)); + def CMDwhere(self,args): + pc=self.client.getpc(); + print "PC=0x%04X" % pc; def CMDchip(self,args): cmd="self.client.CMD%s()" % args[1]; print cmd;