fixed bug in CmdBiphaseDecodeRaw()

This commit is contained in:
Malte F. Hillmann 2019-03-27 14:04:01 +01:00
parent ba778bc3c4
commit 9c1d59ce69

View file

@ -367,18 +367,20 @@ int Cmdmandecoderaw(const char *Cmd)
return 1; return 1;
} }
//by marshmellow /**
//biphase decode * @author marshmellow
//take 01 or 10 = 0 and 11 or 00 = 1 * biphase decode
//takes 2 arguments "offset" default = 0 if 1 it will shift the decode by one bit * decdoes 01 or 10 to 0 and 11 or 00 to 1
// and "invert" default = 0 if 1 it will invert output * param offset adjust start position
// the argument offset allows us to manually shift if the output is incorrect - [EDIT: now auto detects] * param invert invert output
* param maxErr maximum tolerated errors
*/
int CmdBiphaseDecodeRaw(const char *Cmd) int CmdBiphaseDecodeRaw(const char *Cmd)
{ {
size_t size=0; size_t size=0;
int offset=0, invert=0, maxErr=20, errCnt=0; int offset=0, invert=0, maxErr=20, errCnt=0;
char cmdp = param_getchar(Cmd, 0); char cmdp = param_getchar(Cmd, 0);
if (strlen(Cmd) > 3 || cmdp == 'h' || cmdp == 'H') { if (strlen(Cmd) > 5 || cmdp == 'h' || cmdp == 'H') {
PrintAndLog("Usage: data biphaserawdecode [offset] [invert] [maxErr]"); PrintAndLog("Usage: data biphaserawdecode [offset] [invert] [maxErr]");
PrintAndLog(" Converts 10 or 01 to 1 and 11 or 00 to 0"); PrintAndLog(" Converts 10 or 01 to 1 and 11 or 00 to 0");
PrintAndLog(" --must have binary sequence in demodbuffer (run data askrawdemod first)"); PrintAndLog(" --must have binary sequence in demodbuffer (run data askrawdemod first)");