]> git.zerfleddert.de Git - proxmark3-svn/blame - client/reveng/config.h
Merge pull request #245 from marshmellow42/master
[proxmark3-svn] / client / reveng / config.h
CommitLineData
fe81b478 1/* config.h
2 * Greg Cook, 9/Apr/2015
3 */
4
5/* CRC RevEng, an arbitrary-precision CRC calculator and algorithm finder
6 * Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015 Gregory Cook
7 *
8 * This file is part of CRC RevEng.
9 *
10 * CRC RevEng is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation, either version 3 of the License, or
13 * (at your option) any later version.
14 *
15 * CRC RevEng is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public License
21 * along with CRC RevEng. If not, see <http://www.gnu.org/licenses/>.
22 */
23
24#ifndef CONFIG_H
25#define CONFIG_H 1
26
27/*****************************************
28 * *
29 * Start of user configuration options *
30 * *
31 *****************************************/
32
33/* A type to contain polynomial coefficient bitmaps.
34 * Can be changed to 'unsigned long long' for some extended compilers.
35 * Adjust BMP_C(), BMP_BIT and BMP_SUB below if this is changed.
36 */
37
38#define BMP_T unsigned long
39
40/* Creates an appropriate numeric constant for bmp_t.
41 * If the underlying type is 'unsigned long long', change UL to ULL.
42 */
43
44#define BMP_C(n) (n##UL)
45
46/* Define BMPMACRO to turn the definitions of the size of a bmp_t into
47 * compile-time constants. This improves efficiency but makes the code
48 * platform-specific.
49 */
50
51/* #define BMPMACRO 1 */
52
53/* Some enterprise users may wish to disable the -F switch to minimise CPU
54 * usage. To do this, define the macro NOFORCE.
55 */
56
57/* #define NOFORCE 1 */
58
59/* Define PRESETS to compile CRC RevEng with the preset models from the
60 * CRC Catalogue. This implies BMPMACRO and so makes the code platform-
61 * specific.
62 */
63
9c823c1c 64
65// PM3 NOTES:
66// only PRESETS tested on windows
67// PRESETS was commented out of original code
68// but to enable preset models it must be enabled
69// (marshmellow)
70#define PRESETS 1
f46c3663 71
fe81b478 72
73/* Macros defining the size of a bmp_t.
74 * Their values only matter if PRESETS and/or BMPMACRO are defined, in
75 * which case edit the macros below to suit your architecture.
76 * Otherwise, BMP_BIT and BMP_SUB will be redefined as aliases of bmpbit
77 * and bmpsub, global objects initialised at run time.
78 */
79
80/* Size in bits of a bmp_t. Not necessarily a power of two. */
81
82#define BMP_BIT 32
83
84/* The highest power of two that is strictly less than BMP_BIT.
85 * Initialises the index of a binary search for set bits in a bmp_t.
86 */
87
88#define BMP_SUB 16
89
90/*****************************************
91 * *
92 * End of user configuration options *
93 * *
94 *****************************************/
95
96#endif /* CONFIG_H */
Impressum, Datenschutz