X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/db09cb3adbe715b058a64357184e4963a8b6d78e..b87ad7964edcba3651f27a846a814358084478a7:/client/data.c?ds=sidebyside diff --git a/client/data.c b/client/data.c index eeae8cc5..184a63b6 100644 --- a/client/data.c +++ b/client/data.c @@ -12,25 +12,21 @@ #include #include "data.h" #include "ui.h" -#include "proxusb.h" +#include "proxmark3.h" #include "cmdmain.h" -uint8_t sample_buf[SAMPLE_BUFFER_SIZE]; +uint8_t* sample_buf; -void GetFromBigBuf(uint8_t *dest, int bytes, int start_index) -{ - start_index = ((start_index/12)*12); - int n = (((bytes/4)/48)*48) + start_index; - /* - if (n % 48 != 0) { - PrintAndLog("bad len in GetFromBigBuf"); - return; - } - */ - for (int i = start_index; i < n; i += 12) { - UsbCommand c = {CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K, {i, 0, 0}}; - SendCommand(&c); - WaitForResponse(CMD_DOWNLOADED_RAW_ADC_SAMPLES_125K); - memcpy(dest+(i*4), sample_buf, 48); - } +void GetFromBigBuf(uint8_t *dest, int bytes, int start_index) { + sample_buf = dest; + UsbCommand c = {CMD_DOWNLOAD_RAW_ADC_SAMPLES_125K, {start_index, bytes, 0}}; + clearCommandBuffer(); + SendCommand(&c); } +void GetEMLFromBigBuf(uint8_t *dest, uint32_t bytes, uint32_t start_index) { + sample_buf = dest; + UsbCommand c = {CMD_DOWNLOAD_EML_BIGBUF, {start_index, bytes, 0}}; + clearCommandBuffer(); + SendCommand(&c); +} +