]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - armsrc/legicrfsim.c
Fix: ControlWidget placement (#690)
[proxmark3-svn] / armsrc / legicrfsim.c
index 07a0a62db2b5ab905ca19f2d1dac85a9f0012f17..a149e0f9e381d20bd4615d10d31de174bafa33e4 100644 (file)
@@ -19,6 +19,7 @@
 #include "legic_prng.h"
 #include "legic.h"
 #include "crc.h"
 #include "legic_prng.h"
 #include "legic.h"
 #include "crc.h"
+#include "usb_cdc.h"  // for usb_poll_validate_length
 
 static uint8_t* legic_mem;      /* card memory, used for sim */
 static legic_card_select_t card;/* metadata of currently selected card */
 
 static uint8_t* legic_mem;      /* card memory, used for sim */
 static legic_card_select_t card;/* metadata of currently selected card */
@@ -283,7 +284,7 @@ static void init_tag() {
   SetAdcMuxFor(GPIO_MUXSEL_HIPKD);
 
   // configure SSC with defaults
   SetAdcMuxFor(GPIO_MUXSEL_HIPKD);
 
   // configure SSC with defaults
-  FpgaSetupSsc();
+  FpgaSetupSsc(FPGA_MAJOR_MODE_HF_SIMULATOR);
 
   // first pull output to low to prevent glitches then re-claim GPIO_SSC_DOUT
   LOW(GPIO_SSC_DOUT);
 
   // first pull output to low to prevent glitches then re-claim GPIO_SSC_DOUT
   LOW(GPIO_SSC_DOUT);
@@ -439,7 +440,7 @@ void LegicRfSimulate(uint8_t cardtype) {
 
   LED_A_ON();
   DbpString("Starting Legic emulator, press button to end");
 
   LED_A_ON();
   DbpString("Starting Legic emulator, press button to end");
-  while(!BUTTON_PRESS()) {
+  while(!BUTTON_PRESS() && !usb_poll_validate_length()) {
     WDT_HIT();
 
     // wait for carrier, restart after timeout
     WDT_HIT();
 
     // wait for carrier, restart after timeout
Impressum, Datenschutz