]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - client/cmdhf15.c
Small fixes,
[proxmark3-svn] / client / cmdhf15.c
index e1e5e02a79e988ea397ffe3f10ba735e0360879a..55a33de7617a7cd0f0b2a4bc5025e1dc7763308d 100644 (file)
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
-#include "proxusb.h"
+//#include "proxusb.h"
 #include "proxmark3.h"
 #include "data.h"
 #include "graph.h"
 #include "ui.h"
 #include "cmdparser.h"
 #include "cmdhf15.h"
-#include "iso15693tools.h"
+#include "../common/iso15693tools.h"
 #include "cmdmain.h"
 
 #define FrameSOF              Iso15693FrameSOF
@@ -44,8 +44,7 @@
 #define Crc(data,datalen)     Iso15693Crc(data,datalen)
 #define AddCrc(data,datalen)  Iso15693AddCrc(data,datalen)
 #define sprintUID(target,uid)  Iso15693sprintUID(target,uid)
-
-static int CmdHelp(const char *Cmd);
+#define TRACE_BUFF_SIZE 12000
 
 // structure and database for uid -> tagtype lookups 
 typedef struct { 
@@ -254,6 +253,17 @@ int CmdHF15Read(const char *Cmd)
 {
        UsbCommand c = {CMD_ACQUIRE_RAW_ADC_SAMPLES_ISO_15693};
        SendCommand(&c);
+
+       uint8_t data[TRACE_BUFF_SIZE] = {0x00};
+       
+       GetFromBigBuf(data,TRACE_BUFF_SIZE,3560);  //3560 -- should be offset..
+       WaitForResponseTimeout(CMD_ACK,NULL, 1500);
+
+       for (int j = 0; j < TRACE_BUFF_SIZE; j++) {
+               GraphBuffer[j] = ((int)data[j]) ;
+       }
+       GraphTraceLen = TRACE_BUFF_SIZE;
+       RepaintGraphWindow();
        return 0;
 }
 
@@ -262,6 +272,17 @@ int CmdHF15Record(const char *Cmd)
 {
        UsbCommand c = {CMD_RECORD_RAW_ADC_SAMPLES_ISO_15693};
        SendCommand(&c);
+
+       uint8_t data[TRACE_BUFF_SIZE] = {0x00};
+       
+       GetFromBigBuf(data,TRACE_BUFF_SIZE,3560);  //3560 -- should be offset..
+       WaitForResponseTimeout(CMD_ACK,NULL, 1500);
+
+       for (int j = 0; j < TRACE_BUFF_SIZE; j++) {
+               GraphBuffer[j] = ((int)data[j]) ;
+       }
+       GraphTraceLen = TRACE_BUFF_SIZE;
+       RepaintGraphWindow();
        return 0;
 }
 
@@ -328,7 +349,7 @@ int CmdHF15DumpMem(const char*Cmd) {
                                        *output=0; // reset outputstring
                                        sprintf(output, "Block %2i   ",blocknum);
                                        for ( int i=1; i<resp.arg[0]-2; i++) { // data in hex
-                                               sprintf(output+strlen(output),"%02hX ",recv[i]);                                        
+                                               sprintf(output+strlen(output),"%02X ",recv[i]);
                                        }                                       
                                        strcat(output,"   "); 
                                        for ( int i=1; i<resp.arg[0]-2; i++) { // data in cleaned ascii
@@ -423,8 +444,9 @@ int CmdHF15CmdInquiry(const char *Cmd)
 int CmdHF15CmdDebug( const char *cmd) {
        int debug=atoi(cmd);
        if (strlen(cmd)<1) {
-               PrintAndLog("Usage: hf 15 cmd debug  <0/1>");
-               PrintAndLog("   0..no debugging output  1..turn debugging on"); 
+               PrintAndLog("Usage: hf 15 cmd debug  <0|1>");
+               PrintAndLog("   0 no debugging");
+               PrintAndLog("   1 turn debugging on");  
                return 0;
        }
 
@@ -516,7 +538,7 @@ int CmdHF15CmdRaw (const char *cmd) {
                        hexout = (char *)malloc(resp.arg[0] * 3 + 1);
                        if (hexout != NULL) {
                                for (int i = 0; i < resp.arg[0]; i++) { // data in hex
-                                       sprintf(&hexout[i * 3], "%02hX ", recv[i]);
+                                       sprintf(&hexout[i * 3], "%02X ", recv[i]);
                                }
                                PrintAndLog("%s", hexout);
                                free(hexout);
@@ -669,7 +691,7 @@ int CmdHF15CmdSysinfo(const char *Cmd) {
                        if (!(recv[0] & ISO15_RES_ERROR)) {
                                *output=0; // reset outputstring
                                for ( i=1; i<resp.arg[0]-2; i++) {
-                                       sprintf(output+strlen(output),"%02hX ",recv[i]);                                        
+                                       sprintf(output+strlen(output),"%02X ",recv[i]);
                                }                                       
                                strcat(output,"\n\r");
                                strcat(output,"UID = ");
@@ -679,11 +701,11 @@ int CmdHF15CmdSysinfo(const char *Cmd) {
                                strcat(output,"\n\r");
                                i=10;
                                if (recv[1] & 0x01) 
-                                       sprintf(output+strlen(output),"DSFID supported, set to %02hX\n\r",recv[i++]);
+                                       sprintf(output+strlen(output),"DSFID supported, set to %02X\n\r",recv[i++]);
                                else 
                                        strcat(output,"DSFID not supported\n\r");
                                if (recv[1] & 0x02) 
-                                       sprintf(output+strlen(output),"AFI supported, set to %03hX\n\r",recv[i++]);
+                                       sprintf(output+strlen(output),"AFI supported, set to %03X\n\r",recv[i++]);
                                else 
                                        strcat(output,"AFI not supported\n\r");
                                if (recv[1] & 0x04) {
@@ -693,7 +715,7 @@ int CmdHF15CmdSysinfo(const char *Cmd) {
                                        i+=2;
                                } else 
                                        strcat(output,"Tag does not provide information on memory layout\n\r");
-                               if (recv[1] & 0x08) sprintf(output+strlen(output),"IC reference given: %02hX\n\r",recv[i++]);
+                               if (recv[1] & 0x08) sprintf(output+strlen(output),"IC reference given: %02X\n\r",recv[i++]);
                                        else strcat(output,"IC reference not given\n\r");
 
 
@@ -770,7 +792,7 @@ int CmdHF15CmdReadmulti(const char *Cmd) {
                        if (!(recv[0] & ISO15_RES_ERROR)) {
                                *output=0; // reset outputstring
                                for ( int i=1; i<resp.arg[0]-2; i++) {
-                                       sprintf(output+strlen(output),"%02hX ",recv[i]);                                        
+                                       sprintf(output+strlen(output),"%02X ",recv[i]);
                                }                                       
                                strcat(output,"   ");
                                for ( int i=1; i<resp.arg[0]-2; i++) {
@@ -844,7 +866,7 @@ int CmdHF15CmdRead(const char *Cmd) {
                                *output=0; // reset outputstring
                                //sprintf(output, "Block %2i   ",blocknum);
                                for ( int i=1; i<resp.arg[0]-2; i++) {
-                                       sprintf(output+strlen(output),"%02hX ",recv[i]);                                        
+                                       sprintf(output+strlen(output),"%02X ",recv[i]);
                                }                                       
                                strcat(output,"   ");
                                for ( int i=1; i<resp.arg[0]-2; i++) {
Impressum, Datenschutz