mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-07-16 10:03:04 -07:00
syntax suger. never mind this
This commit is contained in:
parent
f4d7d1fed1
commit
015e3b8170
2 changed files with 32 additions and 34 deletions
|
@ -606,7 +606,7 @@ int CmdLFSim(const char *Cmd) {
|
||||||
}
|
}
|
||||||
clearCommandBuffer();
|
clearCommandBuffer();
|
||||||
SendCommand(&c);
|
SendCommand(&c);
|
||||||
WaitForResponse(CMD_ACK,NULL);
|
WaitForResponse(CMD_ACK, NULL);
|
||||||
printf(".");
|
printf(".");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -59,10 +59,9 @@ int CmdEM410xRead(const char *Cmd)
|
||||||
int CmdEM410xSim(const char *Cmd)
|
int CmdEM410xSim(const char *Cmd)
|
||||||
{
|
{
|
||||||
int i, n, j, binary[4], parity[4];
|
int i, n, j, binary[4], parity[4];
|
||||||
|
|
||||||
char cmdp = param_getchar(Cmd, 0);
|
|
||||||
uint8_t uid[5] = {0x00};
|
uint8_t uid[5] = {0x00};
|
||||||
|
|
||||||
|
char cmdp = param_getchar(Cmd, 0);
|
||||||
if (cmdp == 'h' || cmdp == 'H') {
|
if (cmdp == 'h' || cmdp == 'H') {
|
||||||
PrintAndLog("Usage: lf em4x em410xsim <UID> <clock>");
|
PrintAndLog("Usage: lf em4x em410xsim <UID> <clock>");
|
||||||
PrintAndLog("");
|
PrintAndLog("");
|
||||||
|
@ -81,46 +80,45 @@ int CmdEM410xSim(const char *Cmd)
|
||||||
PrintAndLog("Starting simulating UID %02X%02X%02X%02X%02X clock: %d", uid[0],uid[1],uid[2],uid[3],uid[4],clock);
|
PrintAndLog("Starting simulating UID %02X%02X%02X%02X%02X clock: %d", uid[0],uid[1],uid[2],uid[3],uid[4],clock);
|
||||||
PrintAndLog("Press pm3-button to about simulation");
|
PrintAndLog("Press pm3-button to about simulation");
|
||||||
|
|
||||||
|
|
||||||
/* clear our graph */
|
/* clear our graph */
|
||||||
ClearGraph(0);
|
ClearGraph(0);
|
||||||
|
|
||||||
/* write 9 start bits */
|
/* write 9 start bits */
|
||||||
for (i = 0; i < 9; i++)
|
for (i = 0; i < 9; i++)
|
||||||
AppendGraph(0, clock, 1);
|
AppendGraph(0, clock, 1);
|
||||||
|
|
||||||
/* for each hex char */
|
/* for each hex char */
|
||||||
parity[0] = parity[1] = parity[2] = parity[3] = 0;
|
parity[0] = parity[1] = parity[2] = parity[3] = 0;
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 10; i++)
|
||||||
{
|
{
|
||||||
/* read each hex char */
|
/* read each hex char */
|
||||||
sscanf(&Cmd[i], "%1x", &n);
|
sscanf(&Cmd[i], "%1x", &n);
|
||||||
for (j = 3; j >= 0; j--, n/= 2)
|
for (j = 3; j >= 0; j--, n/= 2)
|
||||||
binary[j] = n % 2;
|
binary[j] = n % 2;
|
||||||
|
|
||||||
/* append each bit */
|
/* append each bit */
|
||||||
AppendGraph(0, clock, binary[0]);
|
AppendGraph(0, clock, binary[0]);
|
||||||
AppendGraph(0, clock, binary[1]);
|
AppendGraph(0, clock, binary[1]);
|
||||||
AppendGraph(0, clock, binary[2]);
|
AppendGraph(0, clock, binary[2]);
|
||||||
AppendGraph(0, clock, binary[3]);
|
AppendGraph(0, clock, binary[3]);
|
||||||
|
|
||||||
/* append parity bit */
|
/* append parity bit */
|
||||||
AppendGraph(0, clock, binary[0] ^ binary[1] ^ binary[2] ^ binary[3]);
|
AppendGraph(0, clock, binary[0] ^ binary[1] ^ binary[2] ^ binary[3]);
|
||||||
|
|
||||||
/* keep track of column parity */
|
/* keep track of column parity */
|
||||||
parity[0] ^= binary[0];
|
parity[0] ^= binary[0];
|
||||||
parity[1] ^= binary[1];
|
parity[1] ^= binary[1];
|
||||||
parity[2] ^= binary[2];
|
parity[2] ^= binary[2];
|
||||||
parity[3] ^= binary[3];
|
parity[3] ^= binary[3];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* parity columns */
|
/* parity columns */
|
||||||
AppendGraph(0, clock, parity[0]);
|
AppendGraph(0, clock, parity[0]);
|
||||||
AppendGraph(0, clock, parity[1]);
|
AppendGraph(0, clock, parity[1]);
|
||||||
AppendGraph(0, clock, parity[2]);
|
AppendGraph(0, clock, parity[2]);
|
||||||
AppendGraph(0, clock, parity[3]);
|
AppendGraph(0, clock, parity[3]);
|
||||||
|
|
||||||
/* stop bit */
|
/* stop bit */
|
||||||
AppendGraph(1, clock, 0);
|
AppendGraph(1, clock, 0);
|
||||||
|
|
||||||
CmdLFSim("0"); //240 start_gap.
|
CmdLFSim("0"); //240 start_gap.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue