From: iceman1001 Date: Fri, 7 Oct 2016 20:16:38 +0000 (+0200) Subject: CHG: "hf legic write" with these I managed to get one byte written. Its a start. X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/commitdiff_plain/4409bf6ef3e89f6f55ab8028ba56afa98fd32a42 CHG: "hf legic write" with these I managed to get one byte written. Its a start. --- diff --git a/armsrc/legicrf.c b/armsrc/legicrf.c index a92e7671..ae24f007 100644 --- a/armsrc/legicrf.c +++ b/armsrc/legicrf.c @@ -426,10 +426,9 @@ bool legic_write_byte(uint16_t index, uint8_t byte, uint8_t addr_sz) { cmd |= (crc & 0xF ) << (addr_sz+1+8); // CRC /* Bitbang the response */ - AT91C_BASE_PIOA->PIO_PER = GPIO_SSC_DOUT; + //AT91C_BASE_PIOA->PIO_PER = GPIO_SSC_DOUT; - legic_prng_forward(2); - WaitTicks(330); + WaitTicks(240); frame_sendAsReader(cmd, cmd_sz); @@ -466,8 +465,6 @@ bool legic_write_byte(uint16_t index, uint8_t byte, uint8_t addr_sz) { goto OUT; } } - - Dbprintf("ice: i == %d",i); OUT: ; // log @@ -541,7 +538,7 @@ void LegicRfWriter(uint16_t offset, uint16_t len, uint8_t iv, uint8_t *data) { while( len > 0 ) { --len; if ( !legic_write_byte( len + offset, data[len], card.addrsize) ) { - Dbprintf("operation failed | %d | %d | %d", len + offset, len, data[len] ); + Dbprintf("operation failed | %02X | %02X | %02X", len + offset, len, data[len] ); isOK = 0; goto OUT; }