#include "legicrfsim.h"
#include "hitag2.h"
#include "hitagS.h"
+#include "iclass.h"
+#include "iso14443b.h"
#include "iso15693.h"
#include "lfsampling.h"
#include "BigBuf.h"
+#include "mifarecmd.h"
#include "mifareutil.h"
+#include "mifaresim.h"
#include "pcf7931.h"
#include "i2c.h"
#include "hfsnoop.h"
// Let the FPGA drive the high-frequency antenna around 13.56 MHz.
LED_A_ON();
FpgaDownloadAndGo(FPGA_BITSTREAM_HF);
- FpgaWriteConfWord(FPGA_MAJOR_MODE_HF_READER_RX_XCORR);
+ FpgaWriteConfWord(FPGA_MAJOR_MODE_HF_READER);
SpinDelay(20);
*vHf = AvgAdc_Voltage_HF();
LED_A_OFF();
// Let the FPGA drive the high-frequency antenna around 13.56 MHz.
FpgaDownloadAndGo(FPGA_BITSTREAM_HF);
- FpgaWriteConfWord(FPGA_MAJOR_MODE_HF_READER_RX_XCORR);
+ FpgaWriteConfWord(FPGA_MAJOR_MODE_HF_READER);
for (;;) {
SpinDelay(500);
switch(c->cmd) {
#ifdef WITH_LF
case CMD_SET_LF_SAMPLING_CONFIG:
- setSamplingConfig((sample_config *) c->d.asBytes);
+ setSamplingConfig(c->d.asBytes);
break;
case CMD_ACQUIRE_RAW_ADC_SAMPLES_125K:
cmd_send(CMD_ACK,SampleLF(c->arg[0], c->arg[1]),0,0,0,0);
case CMD_EM4X_WRITE_WORD:
EM4xWriteWord(c->arg[0], c->arg[1], c->arg[2]);
break;
+ case CMD_EM4X_PROTECT:
+ EM4xProtect(c->arg[0], c->arg[1], c->arg[2]);
+ break;
case CMD_AWID_DEMOD_FSK: // Set realtime AWID demodulation
CmdAWIDdemodFSK(c->arg[0], 0, 0, 1);
break;
break;
case CMD_SNOOP_ISO_15693:
- SnoopIso15693();
+ SnoopIso15693(0, NULL);
break;
case CMD_ISO_15693_COMMAND:
case CMD_READER_ISO_15693:
ReaderIso15693(c->arg[0]);
break;
+
case CMD_SIMTAG_ISO_15693:
SimTagIso15693(c->arg[0], c->d.asBytes);
break;
+
+ case CMD_CSETUID_ISO_15693:
+ SetTag15693Uid(c->d.asBytes);
+ break;
#endif
#ifdef WITH_LEGICRF
case CMD_MIFARE_WRITEBL:
MifareWriteBlock(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
break;
+ case CMD_MIFARE_PERSONALIZE_UID:
+ MifarePersonalizeUID(c->arg[0], c->arg[1], c->d.asBytes);
+ break;
//case CMD_MIFAREU_WRITEBL_COMPAT:
//MifareUWriteBlockCompat(c->arg[0], c->d.asBytes);
//break;
MifareChkKeys(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
break;
case CMD_SIMULATE_MIFARE_CARD:
- Mifare1ksim(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
+ MifareSim(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
break;
// emulator
#ifdef WITH_ICLASS
// Makes use of ISO14443a FPGA Firmware
case CMD_SNOOP_ICLASS:
- SnoopIClass();
+ SnoopIClass(c->arg[0], c->d.asBytes);
break;
case CMD_SIMULATE_TAG_ICLASS:
SimulateIClass(c->arg[0], c->arg[1], c->arg[2], c->d.asBytes);
case CMD_ICLASS_WRITEBLOCK:
iClass_WriteBlock(c->arg[0], c->d.asBytes);
break;
- case CMD_ICLASS_READCHECK: // auth step 1
- iClass_ReadCheck(c->arg[0], c->arg[1]);
- break;
case CMD_ICLASS_READBLOCK:
iClass_ReadBlk(c->arg[0]);
break;
- case CMD_ICLASS_AUTHENTICATION: //check
- iClass_Authentication(c->d.asBytes);
+ case CMD_ICLASS_CHECK:
+ iClass_Check(c->d.asBytes);
+ break;
+ case CMD_ICLASS_READCHECK:
+ iClass_Readcheck(c->arg[0], c->arg[1]);
break;
case CMD_ICLASS_DUMP:
iClass_Dump(c->arg[0], c->arg[1]);
}
common_area.flags.osimage_present = 1;
- LED_D_OFF();
- LED_C_OFF();
- LED_B_OFF();
- LED_A_OFF();
-
+ LEDsoff();
+
// Init USB device
usb_enable();