Move src dir to nested main dir in preparation for sister test dir and cross compiled...
[freeems-vanilla.git] / src / main / initialisers / TimingTables.c
blob46d8c0cf0673a87b5142085fcfbc733b8eec3e76
1 /* FreeEMS - the open source engine management system
3 * Copyright 2008-2012 Fred Cooke
5 * This file is part of the FreeEMS project.
7 * FreeEMS software is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * FreeEMS software is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with any FreeEMS software. If not, see http://www.gnu.org/licenses/
20 * We ask that if you make any changes to this file you email them upstream to
21 * us at admin(at)diyefi(dot)org or, even better, fork the code on github.com!
23 * Thank you for choosing FreeEMS to run your engine!
27 /** @file
29 * @ingroup dataInitialisers
31 * @brief Injection and ignition timing tables
33 * This file contains the definitions of the primary group timing tables. The
34 * declaration can be found in the global constants header file.
36 * @note At least one Doxygen bug prevents the data structures below being show
37 * correctly in the documentation for this file. Please see the source
38 * code itself for more information.
42 #include "../inc/freeEMS.h"
45 #ifndef IgnitionAdvanceTableMainFlashV
46 #define IgnitionAdvanceTableMainFlashV IgnitionAdvanceTableMainFlash
47 #define IgnitionAdvanceTableSecondaryFlashV IgnitionAdvanceTableSecondaryFlash
48 #define InjectionAdvanceTableMainFlashV InjectionAdvanceTableMainFlash
49 #define InjectionAdvanceTableSecondaryFlashV InjectionAdvanceTableSecondaryFlash
50 #endif
53 // See fuelAndIgnitionCalcs.c for more info about CLIFLAGS builds!
54 /* The main Advance Table */
55 const volatile mainTable IgnitionAdvanceTableMainFlashV TIMETABLESD = {
56 #if CONFIG == DEFAULT_ID
57 RPMLength: MAINTABLE_RPM_LENGTH,
58 LoadLength: MAINTABLE_LOAD_LENGTH,
59 #elif CONFIG == SNOTROCKET_ID
60 RPMLength: 12,
61 LoadLength: 8,
62 #else
63 RPMLength: 16,
64 LoadLength: 16,
65 #endif
66 RPM:{
67 #if CONFIG == TRUCK_ID
68 #include "../data/tables/axis/FredsTruck-RPM.h"
69 #elif CONFIG == HOTEL_ID
70 #include "../data/tables/axis/HotelHyundai-RPM.h"
71 #elif CONFIG == PRESTO_ID
72 #include "../data/tables/axis/FredsTruck-RPM.h"
73 #elif CONFIG == SEANKLT1_ID
74 #include "../data/tables/axis/SeansLT1-RPM.h"
75 #elif SEANKR1 // No ID assigned yet!
76 #include "../data/tables/axis/FredsTruck-RPM.h"
77 #elif CONFIG == SNOTROCKET_ID
78 #include "../data/tables/axis/SimsVolvo-RPM.h"
79 #elif CONFIG == SLATER_ID
80 #include "../data/tables/axis/Slater-RPM.h"
81 #elif CONFIG == DEUCECOUPE_ID
82 #include "../data/tables/axis/HotelHyundai-RPM.h"
83 #elif CONFIG == PETERTRUCK_ID
84 #include "../data/tables/axis/HotelHyundai-RPM.h"
85 #elif CONFIG == DEFAULT_ID
86 #include "../data/tables/axis/DefaultWith400Spacing-RPM.h"
87 #else
88 #include "../data/tables/axis/FredsTruck-RPM.h"
89 #endif
91 Load: {
92 #if CONFIG == TRUCK_ID
93 #include "../data/tables/axis/FredsTruck-Load.h"
94 #elif CONFIG == HOTEL_ID
95 #include "../data/tables/axis/HotelHyundai-Load.h"
96 #elif CONFIG == PRESTO_ID
97 #include "../data/tables/axis/FredsTruck-Load.h"
98 #elif CONFIG == SEANKLT1_ID
99 #include "../data/tables/axis/FredsTruck-Load.h"
100 #elif SEANKR1 // No ID assigned yet!
101 #include "../data/tables/axis/FredsTruck-Load.h"
102 #elif CONFIG == SNOTROCKET_ID
103 #include "../data/tables/axis/SimsVolvo-Load.h"
104 #elif CONFIG == SLATER_ID
105 #include "../data/tables/axis/Slater-Load.h"
106 #elif CONFIG == DEUCECOUPE_ID
107 #include "../data/tables/axis/HotelHyundai-Load.h"
108 #elif CONFIG == PETERTRUCK_ID
109 #include "../data/tables/axis/HotelHyundai-Load.h"
110 #elif CONFIG == DEFAULT_ID
111 #include "../data/tables/axis/DefaultWith10and20SplitSpacing-Load.h"
112 #else
113 #include "../data/tables/axis/FredsTruck-Load.h"
114 #endif
116 Table: {
117 // USE FLAT 0 DEGREE TIMING UNTIL YOU CAN VERIFY YOUR DECODER OFFSET!!
118 #if CONFIG == TRUCK_ID
119 #include "../data/tables/ign/FredsTruckIgnitionTiming.h"
120 #elif CONFIG == HOTEL_ID
121 #include "../data/tables/ign/HotelHyundaiIgnitionTiming.h"
122 #elif CONFIG == PRESTO_ID
123 #include "../data/tables/ign/flat15degrees.h"
124 #elif CONFIG == SEANKLT1_ID
125 #include "../data/tables/ign/SeansLT1IgnitionTiming.h"
126 #elif SEANKR1 // No ID assigned yet!
127 #include "../data/tables/ign/flat0degrees.h"
128 #elif CONFIG == SNOTROCKET_ID
129 #include "../data/tables/ign/SimsVolvoIgnitionTiming.h"
130 #elif CONFIG == SLATER_ID
131 #include "../data/tables/ign/SlaterTiming.h"
132 #elif CONFIG == DEUCECOUPE_ID
133 //#include "../data/tables/ign/TestDIS.h" // Use for verifying your DIS timing
134 #include "../data/tables/ign/Deuces3100Timing.h"
135 #elif CONFIG == PETERTRUCK_ID
136 #include "../data/tables/ign/HotelHyundaiIgnitionTiming.h"
137 #elif CONFIG == DEFAULT_ID
138 #include "../data/tables/ign/DefaultTiming24RPMx19Load.h"
139 #else
140 #include "../data/tables/ign/flat10degrees.h"
141 #endif
146 /* The secondary Advance Table */
147 const volatile mainTable IgnitionAdvanceTableSecondaryFlashV TIMETABLESD = {
148 RPMLength: MAINTABLE_RPM_LENGTH,
149 LoadLength: MAINTABLE_LOAD_LENGTH,
150 RPM:{
151 #include "../data/tables/axis/DefaultWith400Spacing-RPM.h"
153 Load:{
154 #include "../data/tables/axis/DefaultWith10and20SplitSpacing-Load.h"
156 Table:{
157 #include "../data/tables/ign/flat15degrees.h"
162 /* The main Volumetric Efficiency Table */
163 const volatile mainTable InjectionAdvanceTableMainFlashV TIMETABLESD = {
164 RPMLength: MAINTABLE_RPM_LENGTH,
165 LoadLength: MAINTABLE_LOAD_LENGTH,
166 RPM:{
167 #include "../data/tables/axis/DefaultWith400Spacing-RPM.h"
169 Load:{
170 #include "../data/tables/axis/DefaultWith10and20SplitSpacing-Load.h"
172 Table:{
173 #include "../data/tables/ign/flat15degrees.h"
178 /* The secondary Volumetric Efficiency Table */
179 const volatile mainTable InjectionAdvanceTableSecondaryFlashV TIMETABLESD = {
180 RPMLength: MAINTABLE_RPM_LENGTH,
181 LoadLength: MAINTABLE_LOAD_LENGTH,
182 RPM:{
183 #include "../data/tables/axis/DefaultWith400Spacing-RPM.h"
185 Load:{
186 #include "../data/tables/axis/DefaultWith10and20SplitSpacing-Load.h"
188 Table:{
189 #include "../data/tables/ign/flat15degrees.h"