]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/data.c
FIX: strange bug in "lf em em410xwatch" , which the client crasches when it reads...
[proxmark3-svn] / client / data.c
index eeae8cc58aab6670497433538fa8a77b8c13bd1e..184a63b61220ae06e9fea5c29b3754101d95b2fa 100644 (file)
 #include <stdint.h>
 #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);
+}
+
Impressum, Datenschutz