diff --git a/armsrc/lfops.c b/armsrc/lfops.c index 3d7386cd..0cbbbace 100644 --- a/armsrc/lfops.c +++ b/armsrc/lfops.c @@ -1449,7 +1449,7 @@ void CopyIndala224toT55x7(uint32_t uid1, uint32_t uid2, uint32_t uid3, uint32_t //Config for Indala (RF/32;PSK1 with RF/2;Maxblock=7) data[0] = T55x7_BITRATE_RF_32 | T55x7_MODULATION_PSK1 | (7 << T55x7_MAXBLOCK_SHIFT); //TODO add selection of chip for Q5 or T55x7 - // data[0] = (((32-2)>>1) << T5555_BITRATE_SHIFT) | T5555_MODULATION_PSK1 | 7 << T5555_MAXBLOCK_SHIFT; + // data[0] = T5555_SET_BITRATE(32 | T5555_MODULATION_PSK1 | 7 << T5555_MAXBLOCK_SHIFT; WriteT55xx(data, 0, 8); //Alternative config for Indala (Extended mode;RF/32;PSK1 with RF/2;Maxblock=7;Inverse data) // T5567WriteBlock(0x603E10E2,0); diff --git a/client/cmdlfawid.c b/client/cmdlfawid.c index 6b6d4930..34a231f1 100644 --- a/client/cmdlfawid.c +++ b/client/cmdlfawid.c @@ -416,7 +416,7 @@ int CmdAWIDClone(const char *Cmd) { if (param_getchar(Cmd, 3) == 'Q' || param_getchar(Cmd, 3) == 'q') //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_FSK2 | T5555_INVERT_OUTPUT | ((50-2)>>1) << T5555_BITRATE_SHIFT | 3<>1) << T5555_BITRATE_SHIFT | 4 << T5555_MAXBLOCK_SHIFT; - } + if (param_getchar(Cmd, 2) == 'Q' || param_getchar(Cmd, 2) == 'q') + blocks[0] = T5555_MODULATION_BIPHASE | T5555_INVERT_OUTPUT | T5555_SET_BITRATE(32) | 4 << T5555_MAXBLOCK_SHIFT; verify_values(countryid, animalid); diff --git a/client/cmdlfguard.c b/client/cmdlfguard.c index 8b4491f0..5f7528ca 100644 --- a/client/cmdlfguard.c +++ b/client/cmdlfguard.c @@ -250,8 +250,7 @@ int CmdGuardClone(const char *Cmd) { uint32_t blocks[5] = {T55x7_MODULATION_BIPHASE | T55x7_BITRATE_RF_64 | 3 << T55x7_MAXBLOCK_SHIFT, 0, 0, 0, 0}; if (param_getchar(Cmd, 3) == 'Q' || param_getchar(Cmd, 3) == 'q') - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_FSK2 | ((50-2)>>1) << T5555_BITRATE_SHIFT | 3 << T5555_MAXBLOCK_SHIFT; + blocks[0] = T5555_MODULATION_FSK2 | T5555_SET_BITRATE(50) | 3 << T5555_MAXBLOCK_SHIFT; if (sscanf(Cmd, "%u %u %u", &fmtlen, &fc, &cn ) != 3) return usage_lf_guard_clone(); diff --git a/client/cmdlfio.c b/client/cmdlfio.c index 2d10f0d8..57584485 100644 --- a/client/cmdlfio.c +++ b/client/cmdlfio.c @@ -312,8 +312,7 @@ int CmdIOProxClone(const char *Cmd) { } if (param_getchar(Cmd, 3) == 'Q' || param_getchar(Cmd, 3) == 'q') - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_FSK2 | T5555_INVERT_OUTPUT | ((50-2)>>1) << T5555_BITRATE_SHIFT | 2 << T5555_MAXBLOCK_SHIFT; + blocks[0] = T5555_MODULATION_FSK2 | T5555_INVERT_OUTPUT | T5555_SET_BITRATE(50) | 2 << T5555_MAXBLOCK_SHIFT; if ( !getIOProxBits(version, fc, cn, bs)) { PrintAndLog("Error with tag bitstream generation."); diff --git a/client/cmdlfjablotron.c b/client/cmdlfjablotron.c index fddca9ee..bb7d7af2 100644 --- a/client/cmdlfjablotron.c +++ b/client/cmdlfjablotron.c @@ -163,10 +163,8 @@ int CmdJablotronClone(const char *Cmd) { fullcode = param_get64ex(Cmd, 0, 0, 16); //Q5 - if (param_getchar(Cmd, 1) == 'Q' || param_getchar(Cmd, 1) == 'q') { - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_BIPHASE | T5555_INVERT_OUTPUT | ((64-2)>>1) << T5555_BITRATE_SHIFT | 2 << T5555_MAXBLOCK_SHIFT; - } + if (param_getchar(Cmd, 1) == 'Q' || param_getchar(Cmd, 1) == 'q') + blocks[0] = T5555_MODULATION_BIPHASE | T5555_INVERT_OUTPUT | T5555_SET_BITRATE(64) | 2 << T5555_MAXBLOCK_SHIFT; // clearing the topbit needed for the preambl detection. if ((fullcode & 0x7FFFFFFFFF) != fullcode) { diff --git a/client/cmdlfnedap.c b/client/cmdlfnedap.c index 71552650..f87f063d 100644 --- a/client/cmdlfnedap.c +++ b/client/cmdlfnedap.c @@ -245,8 +245,7 @@ int CmdLFNedapClone(const char *Cmd) { blocks[0] = T55x7_MODULATION_DIPHASE | T55x7_BITRATE_RF_64 | 7 << T55x7_MAXBLOCK_SHIFT; if (param_getchar(Cmd, 3) == 'Q' || param_getchar(Cmd, 3) == 'q') - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_BIPHASE | T5555_INVERT_OUTPUT | ((64-2)>>1) << T5555_BITRATE_SHIFT | 7 <>1) << T5555_BITRATE_SHIFT | T5555_ST_TERMINATOR | 3 << T5555_MAXBLOCK_SHIFT; - } + if (param_getchar(Cmd, 2) == 'Q' || param_getchar(Cmd, 2) == 'q') + blocks[0] = T5555_MODULATION_MANCHESTER | T5555_SET_BITRATE(32) | T5555_ST_TERMINATOR | 3 << T5555_MAXBLOCK_SHIFT; if ( !getnoralsyBits(id, year, bs)) { PrintAndLog("Error with tag bitstream generation."); diff --git a/client/cmdlfpresco.c b/client/cmdlfpresco.c index 6f0e7c39..751e9487 100644 --- a/client/cmdlfpresco.c +++ b/client/cmdlfpresco.c @@ -181,8 +181,7 @@ int CmdPrescoClone(const char *Cmd) { if (GetWiegandFromPresco(Cmd, &sitecode, &usercode, &fullcode, &Q5) == -1) return usage_lf_presco_clone(); if (Q5) - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_MANCHESTER | ((32-2)>>1) << T5555_BITRATE_SHIFT | 4 << T5555_MAXBLOCK_SHIFT | T5555_ST_TERMINATOR; + blocks[0] = T5555_MODULATION_MANCHESTER | T5555_SET_BITRATE(32) | 4 << T5555_MAXBLOCK_SHIFT | T5555_ST_TERMINATOR; if ((sitecode & 0xFF) != sitecode) { sitecode &= 0xFF; diff --git a/client/cmdlfpyramid.c b/client/cmdlfpyramid.c index 0896e20e..06a703fb 100644 --- a/client/cmdlfpyramid.c +++ b/client/cmdlfpyramid.c @@ -268,8 +268,7 @@ int CmdPyramidClone(const char *Cmd) { blocks[0] = T55x7_MODULATION_FSK2a | T55x7_BITRATE_RF_50 | 4 << T55x7_MAXBLOCK_SHIFT; if (param_getchar(Cmd, 2) == 'Q' || param_getchar(Cmd, 2) == 'q') - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_FSK2 | T5555_INVERT_OUTPUT | ((50-2)>>1) << T5555_BITRATE_SHIFT | 4 << T5555_MAXBLOCK_SHIFT; + blocks[0] = T5555_MODULATION_FSK2 | T5555_INVERT_OUTPUT | T5555_SET_BITRATE(50) | 4 << T5555_MAXBLOCK_SHIFT; blocks[1] = bytebits_to_byte(bs,32); blocks[2] = bytebits_to_byte(bs+32,32); diff --git a/client/cmdlfvisa2000.c b/client/cmdlfvisa2000.c index 6c909f80..2d90d597 100644 --- a/client/cmdlfvisa2000.c +++ b/client/cmdlfvisa2000.c @@ -170,10 +170,8 @@ int CmdVisa2kClone(const char *Cmd) { id = param_get32ex(Cmd, 0, 0, 10); //Q5 - if (param_getchar(Cmd, 1) == 'Q' || param_getchar(Cmd, 1) == 'q') { - //t5555 (Q5) BITRATE = (RF-2)/2 (iceman) - blocks[0] = T5555_MODULATION_MANCHESTER | ((64-2)>>1) << T5555_BITRATE_SHIFT | T5555_ST_TERMINATOR | 3 << T5555_MAXBLOCK_SHIFT; - } + if (param_getchar(Cmd, 1) == 'Q' || param_getchar(Cmd, 1) == 'q') + blocks[0] = T5555_MODULATION_MANCHESTER | T5555_SET_BITRATE(64) | T5555_ST_TERMINATOR | 3 << T5555_MAXBLOCK_SHIFT; blocks[2] = id; blocks[3] = (visa_parity(id) << 4) | visa_chksum(id);