- Added INSTALL file with the mambo-jambo compilation instructions

- Added few TODO items
 - Changed asm to __asm__ so that some GNUC compilers are happy
This commit is contained in:
zveriu@gmail.com 2011-10-17 07:03:37 +00:00
parent 880db4e1b9
commit 7edf0d2b0a
3 changed files with 16 additions and 3 deletions

9
INSTALL Normal file
View File

@ -0,0 +1,9 @@
Until I fix the AM/AC configs/scripts, here is what makes it compile:
automake
autoreconf
automake --add-missing
autoreconf
automake
./configure
make

4
TODO
View File

@ -16,4 +16,6 @@ ITEMS
1. Improve the performance (though not bad)
2. Optimize bits operations
3. Remove dead-code/commented block after testing
4. Proper error handling in some cases (not critical errors, but nice to have checks in place)
4. Proper error handling in some cases (not critical errors, but nice to have checks in place)
5. Periodically save the state (or most important part of it at least) such as of Nt/Nr arrays, etc., so that it can later be resumed on the same card
6. Calibration methodology and routine for MFCUK to determine best field on/off delays so that it generates the lowest entropy for tag's Nt values

View File

@ -61,13 +61,15 @@ static inline int parity(uint32_t x)
x ^= x >> 4;
return BIT(0x6996, x & 0xf);
#else
asm( "movl %1, %%eax\n"
__asm__(
"movl %1, %%eax\n"
"mov %%ax, %%cx\n"
"shrl $0x10, %%eax\n"
"xor %%ax, %%cx\n"
"xor %%ch, %%cl\n"
"setpo %%al\n"
"movzx %%al, %0\n": "=r"(x) : "r"(x): "eax","ecx");
"movzx %%al, %0\n": "=r"(x) : "r"(x): "eax","ecx"
);
return x;
#endif
}