1 /* FreeEMS - the open source engine management system
3 * Copyright 2008-2013 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!
31 * @brief Pointers to paged memory blocks
33 * The number of these required is fairly significant and thus is best placed
34 * in its own header file. Their only function is to prevent warnings from the
35 * linker due to accessing paged addresses in linear space.
39 /* Header file multiple inclusion protection courtesy eclipse Header Template */
40 /* and http://gcc.gnu.org/onlinedocs/gcc-3.1.1/cpp/ C pre processor manual */
41 #ifndef FILE_PAGED_LOCATION_BUFFERS_H_SEEN
42 #define FILE_PAGED_LOCATION_BUFFERS_H_SEEN
46 #warning "EXTERN already defined by another header, please sort it out!"
47 #undef EXTERN /* If fail on warning is off, remove the definition such that we can redefine correctly. */
51 #ifdef BLOCK_DETAILS_LOOKUP_C
58 /*&&&&&&&&&&&&&&&&&&&&& Large 1k or 2k blocks here only &&&&&&&&&&&&&&&&&&&&&*/
61 EXTERN
void* VETableMainFlashLocation
;
62 EXTERN
void* VETableMainFlash2Location
;
63 EXTERN
void* VETableSecondaryFlashLocation
;
64 EXTERN
void* VETableSecondaryFlash2Location
;
65 EXTERN
void* AirflowTableFlashLocation
;
66 EXTERN
void* AirflowTableFlash2Location
;
67 EXTERN
void* LambdaTableFlashLocation
;
68 EXTERN
void* LambdaTableFlash2Location
;
71 EXTERN
void* IgnitionAdvanceTableMainFlashLocation
;
72 EXTERN
void* IgnitionAdvanceTableMainFlash2Location
;
73 EXTERN
void* IgnitionAdvanceTableSecondaryFlashLocation
;
74 EXTERN
void* IgnitionAdvanceTableSecondaryFlash2Location
;
75 EXTERN
void* InjectionAdvanceTableMainFlashLocation
;
76 EXTERN
void* InjectionAdvanceTableMainFlash2Location
;
77 EXTERN
void* InjectionAdvanceTableSecondaryFlashLocation
;
78 EXTERN
void* InjectionAdvanceTableSecondaryFlash2Location
;
81 EXTERN
void* SmallTablesAFlashLocation
;
82 EXTERN
void* SmallTablesAFlash2Location
;
83 EXTERN
void* SmallTablesBFlashLocation
;
84 EXTERN
void* SmallTablesBFlash2Location
;
85 EXTERN
void* SmallTablesCFlashLocation
;
86 EXTERN
void* SmallTablesCFlash2Location
;
87 EXTERN
void* SmallTablesDFlashLocation
;
88 EXTERN
void* SmallTablesDFlash2Location
;
90 /* Flash ONLY blocks */
91 EXTERN
void* IATTransferTableLocation
;
92 EXTERN
void* CHTTransferTableLocation
;
93 EXTERN
void* MAFTransferTableLocation
;
94 EXTERN
void* TestTransferTableLocation
;
97 /*&&&&&&&&&&&&&&& Small chunks of the above blocks here only! &&&&&&&&&&&&&&&*/
99 /* Small chunks of TablesA here */
100 EXTERN
void* dwellDesiredVersusVoltageTableLocation
;
101 EXTERN
void* dwellDesiredVersusVoltageTable2Location
;
102 EXTERN
void* injectorDeadTimeTableLocation
;
103 EXTERN
void* injectorDeadTimeTable2Location
;
104 EXTERN
void* postStartEnrichmentTableLocation
;
105 EXTERN
void* postStartEnrichmentTable2Location
;
106 EXTERN
void* engineTempEnrichmentTableFixedLocation
;
107 EXTERN
void* engineTempEnrichmentTableFixed2Location
;
108 EXTERN
void* primingVolumeTableLocation
;
109 EXTERN
void* primingVolumeTable2Location
;
110 EXTERN
void* engineTempEnrichmentTablePercentLocation
;
111 EXTERN
void* engineTempEnrichmentTablePercent2Location
;
112 EXTERN
void* dwellVersusRPMTableLocation
;
113 EXTERN
void* dwellVersusRPMTable2Location
;
114 EXTERN
void* blendVersusRPMTableLocation
;
115 EXTERN
void* blendVersusRPMTable2Location
;
117 /* Small chunks of TablesB here */
118 EXTERN
void* loggingSettingsLocation
;
119 EXTERN
void* loggingSettings2Location
;
120 EXTERN
void* perCylinderFuelTrimsLocation
;
121 EXTERN
void* perCylinderFuelTrims2Location
;
123 /* Small chunks of TablesC here */
125 /* Small chunks of TablesD here */
127 /* Small chunks of FixedConf1 here */
129 /* Small chunks of FixedConf2 here */
132 EXTERN
void* fillerALocation
;
133 EXTERN
void* fillerA2Location
;
134 EXTERN
void* fillerBLocation
;
135 EXTERN
void* fillerB2Location
;
136 EXTERN
void* fillerCLocation
;
137 EXTERN
void* fillerC2Location
;
138 EXTERN
void* fillerDLocation
;
139 EXTERN
void* fillerD2Location
;
146 /* let us know if we are being untidy with headers */
147 #warning "Header file PAGED_LOCATION_BUFFERS_H seen before, sort it out!"
148 /* end of the wrapper ifdef from the very top */