X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/30f2a7d38fd35b2427a7eb42e1cd75fb1105f927..fb25b48308752a7ea8f49085956536d2fc2ff5d4:/winsrc/command.cpp diff --git a/winsrc/command.cpp b/winsrc/command.cpp index f947f45c..9c4990a3 100644 --- a/winsrc/command.cpp +++ b/winsrc/command.cpp @@ -75,6 +75,19 @@ static void CmdHi14read(char *str) c.ext1 = atoi(str); SendCommand(&c, FALSE); } + + +/* New command to read the contents of a SRI512 tag + * SRI512 tags are ISO14443-B modulated memory tags, + * this command just dumps the contents of the memory/ + */ +static void CmdSri512read(char *str) +{ + UsbCommand c; + c.cmd = CMD_READ_SRI512_TAG; + c.ext1 = atoi(str); + SendCommand(&c, FALSE); +} // ## New command static void CmdHi14areader(char *str) @@ -1845,69 +1858,69 @@ static void CmdSweepLF(char *str) } - typedef void HandlerFunction(char *cmdline); static struct { - char *name; - HandlerFunction *handler; - char *docString; + char *name; + HandlerFunction *handler; + int offline; // 1 if the command can be used when in offline mode + char *docString; } CommandTable[] = { - "tune", CmdTune, "measure antenna tuning", - "tiread", CmdTiread, "read a TI-type 134 kHz tag", - "tibits", CmdTibits, "get raw bits for TI-type LF tag", - "tidemod", CmdTidemod, "demod raw bits for TI-type LF tag", - "vchdemod", CmdVchdemod, "demod samples for VeriChip", - "plot", CmdPlot, "show graph window", - "hide", CmdHide, "hide graph window", - "losim", CmdLosim, "simulate LF tag", - "loread", CmdLoread, "read (125/134 kHz) LF ID-only tag", - "losamples", CmdLosamples, "get raw samples for LF tag", - "hisamples", CmdHisamples, "get raw samples for HF tag", - "hisampless", CmdHisampless, "get signed raw samples, HF tag", - "hisamplest", CmdHi14readt, "get samples HF, for testing", - "higet", CmdHi14read_sim, "get samples HF, 'analog'", - "bitsamples", CmdBitsamples, "get raw samples as bitstring", - "hexsamples", CmdHexsamples, "dump big buffer as hex bytes", - "hi15read", CmdHi15read, "read HF tag (ISO 15693)", - "hi15reader", CmdHi15reader, "act like an ISO15693 reader", // new command greg - "hi15sim", CmdHi15tag, "fake an ISO15693 tag", // new command greg - "hi14read", CmdHi14read, "read HF tag (ISO 14443)", - "hi14areader", CmdHi14areader, "act like an ISO14443 Type A reader", // ## New reader command - "hi15demod", CmdHi15demod, "demod ISO15693 from tag", - "hi14bdemod", CmdHi14bdemod, "demod ISO14443 Type B from tag", - "autocorr", CmdAutoCorr, "autocorrelation over window", - "norm", CmdNorm, "normalize max/min to +/-500", - "dec", CmdDec, "decimate", - "hpf", CmdHpf, "remove DC offset from trace", - "zerocrossings", CmdZerocrossings, "count time between zero-crossings", - "ltrim", CmdLtrim, "trim from left of trace", - "scale", CmdScale, "set cursor display scale", - "flexdemod", CmdFlexdemod, "demod samples for FlexPass", - "indalademod", CmdIndalademod, "demod samples for Indala", - "save", CmdSave, "save trace (from graph window)", - "load", CmdLoad, "load trace (to graph window", - "hisimlisten", CmdHisimlisten, "get HF samples as fake tag", - "hi14sim", CmdHi14sim, "fake ISO 14443 tag", - "hi14asim", CmdHi14asim, "fake ISO 14443a tag", // ## Simulate 14443a tag - "hi14snoop", CmdHi14snoop, "eavesdrop ISO 14443", - "hi14asnoop", CmdHi14asnoop, "eavesdrop ISO 14443 Type A", // ## New snoop command - "hi14list", CmdHi14list, "list ISO 14443 history", - "hi14alist", CmdHi14alist, "list ISO 14443a history", // ## New list command - "hiddemod", CmdHiddemod, "HID Prox Card II (not optimal)", - "hidfskdemod", CmdHIDdemodFSK, "HID FSK demodulator", - "askdemod", Cmdaskdemod, "Attempt to demodulate simple ASK tags", - "hidsimtag", CmdHIDsimTAG, "HID tag simulator", - "mandemod", Cmdmanchesterdemod, "Try a Manchester demodulation on a binary stream", - "fpgaoff", CmdFPGAOff, "set FPGA off", // ## FPGA Control - "lcdreset", CmdLcdReset, "Hardware reset LCD", - "lcd", CmdLcd, "Send command/data to LCD", - "test", CmdTest, "Placeholder command for testing new code", - "setlfdivisor", CmdSetDivisor, "Drive LF antenna at 12Mhz/(divisor+1)", - "sweeplf", CmdSweepLF, "Sweep through LF freq range and store results in buffer", - "quit", CmdQuit, "quit program" + "tune", CmdTune,0, "measure antenna tuning", + "tiread", CmdTiread,0, "read a TI-type 134 kHz tag", + "tibits", CmdTibits,0, "get raw bits for TI-type LF tag", + "tidemod", CmdTidemod,0, "demod raw bits for TI-type LF tag", + "vchdemod", CmdVchdemod,0, "demod samples for VeriChip", + "plot", CmdPlot,1, "show graph window", + "hide", CmdHide,1, "hide graph window", + "losim", CmdLosim,0, "simulate LF tag", + "loread", CmdLoread,0, "read (125/134 kHz) LF ID-only tag", + "losamples", CmdLosamples,0, "get raw samples for LF tag", + "hisamples", CmdHisamples,0, "get raw samples for HF tag", + "hisampless", CmdHisampless,0, "get signed raw samples, HF tag", + "hisamplest", CmdHi14readt,0, "get samples HF, for testing", + "higet", CmdHi14read_sim,0, "get samples HF, 'analog'", + "bitsamples", CmdBitsamples,0, "get raw samples as bitstring", + "hexsamples", CmdHexsamples,0, "dump big buffer as hex bytes", + "hi15read", CmdHi15read,0, "read HF tag (ISO 15693)", + "hi15reader", CmdHi15reader,0, "act like an ISO15693 reader", // new command greg + "hi15sim", CmdHi15tag,0, "fake an ISO15693 tag", // new command greg + "hi14read", CmdHi14read,0, "read HF tag (ISO 14443)", + "sri512read", CmdSri512read,0, "Read contents of a SRI512 tag", + "hi14areader", CmdHi14areader,0, "act like an ISO14443 Type A reader", // ## New reader command + "hi15demod", CmdHi15demod,1, "demod ISO15693 from tag", + "hi14bdemod", CmdHi14bdemod,1, "demod ISO14443 Type B from tag", + "autocorr", CmdAutoCorr,1, "autocorrelation over window", + "norm", CmdNorm,1, "normalize max/min to +/-500", + "dec", CmdDec,1, "decimate", + "hpf", CmdHpf,1, "remove DC offset from trace", + "zerocrossings", CmdZerocrossings,1, "count time between zero-crossings", + "ltrim", CmdLtrim,1, "trim from left of trace", + "scale", CmdScale,1, "set cursor display scale", + "flexdemod", CmdFlexdemod,1, "demod samples for FlexPass", + "save", CmdSave,1, "save trace (from graph window)", + "load", CmdLoad,1, "load trace (to graph window", + "hisimlisten", CmdHisimlisten,0, "get HF samples as fake tag", + "hi14sim", CmdHi14sim,0, "fake ISO 14443 tag", + "hi14asim", CmdHi14asim,0, "fake ISO 14443a tag", // ## Simulate 14443a tag + "hi14snoop", CmdHi14snoop,0, "eavesdrop ISO 14443", + "hi14asnoop", CmdHi14asnoop,0, "eavesdrop ISO 14443 Type A", // ## New snoop command + "hi14list", CmdHi14list,0, "list ISO 14443 history", + "hi14alist", CmdHi14alist,0, "list ISO 14443a history", // ## New list command + "hiddemod", CmdHiddemod,1, "HID Prox Card II (not optimal)", + "hidfskdemod", CmdHIDdemodFSK,0, "HID FSK demodulator", + "askdemod", Cmdaskdemod,1, "Attempt to demodulate simple ASK tags", + "hidsimtag", CmdHIDsimTAG,0, "HID tag simulator", + "mandemod", Cmdmanchesterdemod,1, "Try a Manchester demodulation on a binary stream", + "fpgaoff", CmdFPGAOff,0, "set FPGA off", // ## FPGA Control + "lcdreset", CmdLcdReset,0, "Hardware reset LCD", + "lcd", CmdLcd,0, "Send command/data to LCD", + "setlfdivisor", CmdSetDivisor,0, "Drive LF antenna at 12Mhz/(divisor+1)", + "sweeplf", CmdSweepLF,0, "Sweep through LF freq range and store results in buffer", + "quit", CmdQuit,0, "quit program" }; + //----------------------------------------------------------------------------- // Entry point into our code: called whenever the user types a command and // then presses Enter, which the full command line that they typed.