From 4eff3521a759ecaacad6274990fe1d84afe862cf Mon Sep 17 00:00:00 2001 From: iceman1001 Date: Tue, 2 Apr 2019 10:33:25 +0200 Subject: [PATCH] Chg: 'lf t55xx info' - now prints if its a known config block --- client/cmdlft55xx.c | 66 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/client/cmdlft55xx.c b/client/cmdlft55xx.c index db554b769..8c1ebffb1 100644 --- a/client/cmdlft55xx.c +++ b/client/cmdlft55xx.c @@ -1272,6 +1272,71 @@ void printT5555Trace(t5555_tracedata_t data, uint8_t repeat) { */ } +static void printT5x7KnownBlock0(uint32_t b0) { + + char s[40]; + memset(s, 0, sizeof(s)); + + switch(b0) { + case T55X7_DEFAULT_CONFIG_BLOCK: + snprintf(s, sizeof(s)-strlen(s), "T55x7 Default "); + break; + case T55X7_RAW_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "T55x7 Raw "); + break; + case T55X7_EM_UNIQUE_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "EM Unique "); + break; +/* + case T55X7_EM_PAXTON_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "EM Paxton "); + break; +*/ + case T55X7_FDXB_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "FDXB "); + break; + case T55X7_HID_26_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "HID 26b "); + break; + case T55X7_PYRAMID_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Pyramid "); + break; + case T55X7_INDALA_64_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Indala 64"); + break; + case T55X7_INDALA_224_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Indala 224 "); + break; + case T55X7_GUARDPROXII_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Guard Prox II "); + break; + case T55X7_VIKING_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Viking "); + break; + case T55X7_NORALYS_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Noralys "); + break; + case T55X7_IOPROX_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "IO Prox "); + break; + case T55X7_PRESCO_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Presco "); + break; + case T55X7_NEDAP_64_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Nedap 64 "); + break; + case T55X7_NEDAP_128_CONFIG_BLOCK: + snprintf(s + strlen(s), sizeof(s)-strlen(s), "Nedap 128 "); + break; + default: break; + } + + if ( strlen(s) > 0 ) { + PrintAndLogEx(NORMAL, " Config block is usually found in T55x7 : " _YELLOW_("%s"), s); + PrintAndLogEx(NORMAL, "-------------------------------------------------------------"); + } +} + int CmdT55xxInfo(const char *Cmd) { /* Page 0 Block 0 Configuration data. @@ -1404,6 +1469,7 @@ int CmdT55xxInfo(const char *Cmd) { else PrintAndLogEx(NORMAL, " Block 0 : 0x%08X %s", block0, sprint_bin(DemodBuffer + config.offset, 32)); PrintAndLogEx(NORMAL, "-------------------------------------------------------------"); + printT5x7KnownBlock0(block0); return 0; }