//-----------------------------------------------------------------------------
// Low frequency demod/decode commands
//-----------------------------------------------------------------------------
-
-#include <stdlib.h>
#include "lfdemod.h"
-#include <string.h>
//un_comment to allow debug print calls when used not on device
void dummy(char *fmt, ...){}
+
#ifndef ON_DEVICE
-#include "ui.h"
-#include "cmdparser.h"
-#include "cmddata.h"
-#define prnt PrintAndLog
+# include "ui.h"
+# include "cmdparser.h"
+# include "cmddata.h"
+# define prnt PrintAndLog
#else
uint8_t g_debugMode=0;
-#define prnt dummy
+# define prnt dummy
#endif
//test samples are not just noise
//take 10 and 01 and manchester decode
//run through 2 times and take least errCnt
int manrawdecode(uint8_t * BitStream, size_t *size, uint8_t invert){
- uint16_t bitnum = 0, MaxBits = 512, errCnt = 0;
+ int errCnt = 0, bestErr = 1000;
+ uint16_t bitnum = 0, MaxBits = 512, bestRun = 0;
size_t i, k;
- uint16_t bestErr = 1000, bestRun = 0;
if (*size < 16) return -1;
//find correct start position [alignment]
for (k=0; k < 2; ++k){
// by iceman
// find Visa2000 preamble in already demoded data
int Visa2kDemod_AM(uint8_t *dest, size_t *size) {
- if (*size < 96*2) return -1; //make sure buffer has data
+ if (*size < 96) return -1; //make sure buffer has data
size_t startIdx = 0;
uint8_t preamble[] = {0,1,0,1,0,1,1,0,0,1,0,0,1,0,0,1,0,1,0,1,0,0,1,1,0,0,1,1,0,0,1,0};
uint8_t errChk = preambleSearch(dest, preamble, sizeof(preamble), size, &startIdx);
// by iceman
// find Noralsy preamble in already demoded data
int NoralsyDemod_AM(uint8_t *dest, size_t *size) {
- if (*size < 96*2) return -1; //make sure buffer has data
+ if (*size < 96) return -1; //make sure buffer has data
size_t startIdx = 0;
uint8_t preamble[] = {1,0,1,1,1,0,1,1,0,0,0,0};
uint8_t errChk = preambleSearch(dest, preamble, sizeof(preamble), size, &startIdx);