print "Verb %02x is wrong. Incorrect firmware?" % self.verb;
#print "Connected."
def getbuffer(self,size=0x1c00):
- writecmd(0,0xC2,[size&0xFF,(size>>16)&&0xFF]);
+ writecmd(0,0xC2,[size&0xFF,(size>>16)&0xFF]);
print "Got %02x%02x buffer size." % (self.data[1],self.data[0]);
def writecmd(self, app, verb, count=0, data=[], blocks=1):
"""Write a command and some data to the GoodFET."""
void oldjtag430handle(unsigned char app,
unsigned char verb,
unsigned char len){
+ register char blocks;
+ unsigned long at;
+ unsigned int i, val;
switch(verb){
case START:
case JTAG430_READMEM:
case PEEK:
+ /*
cmddataword[0]=jtag430_readmem(cmddataword[0]);
txdata(app,verb,2);
+ */
+ blocks=(len>4?cmddata[4]:1);
+ at=cmddatalong[0];
+
+ len=0x80;
+ serial_tx(app);
+ serial_tx(verb);
+ serial_tx(len);
+
+ while(blocks--){
+ for(i=0;i<len;i+=2){
+ jtag430_resettap();
+ delay(10);
+
+ val=jtag430_readmem(at);
+
+ at+=2;
+ serial_tx(val&0xFF);
+ serial_tx((val&0xFF00)>>8);
+ }
+ }
+
+
+
break;
case JTAG430_WRITEMEM:
case POKE: