5 * th9x - http://code.google.com/p/th9x
6 * er9x - http://code.google.com/p/er9x
7 * gruvin9x - http://code.google.com/p/gruvin9x
9 * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
15 * This program 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.
21 #ifndef _TRANSLATIONS_H_
22 #define _TRANSLATIONS_H_
24 #if defined(TRANSLATIONS_FR)
25 #include "translations/fr.h"
26 #define LEN_SPECIAL_CHARS 3
27 #elif defined(TRANSLATIONS_IT)
28 #include "translations/it.h"
29 #define LEN_SPECIAL_CHARS 1
30 #elif defined(TRANSLATIONS_SE)
31 #include "translations/se.h"
32 #define LEN_SPECIAL_CHARS 6
33 #elif defined(TRANSLATIONS_FI)
34 #include "translations/fi.h"
35 #define LEN_SPECIAL_CHARS 6
36 #elif defined(TRANSLATIONS_DE)
37 #include "translations/de.h"
38 #define LEN_SPECIAL_CHARS 6
39 #elif defined(TRANSLATIONS_CZ)
40 #include "translations/cz.h"
41 #define LEN_SPECIAL_CHARS 17
42 #elif defined(TRANSLATIONS_ES)
43 #include "translations/es.h"
44 #define LEN_SPECIAL_CHARS 0
45 #elif defined(TRANSLATIONS_PL)
46 #include "translations/pl.h"
47 #define LEN_SPECIAL_CHARS 0
48 #elif defined(TRANSLATIONS_PT)
49 #include "translations/pt.h"
50 #define LEN_SPECIAL_CHARS 0
51 #elif defined(TRANSLATIONS_NL)
52 #include "translations/nl.h"
53 #define LEN_SPECIAL_CHARS 0
55 #include "translations/en.h"
56 #define LEN_SPECIAL_CHARS 0
59 #define PSIZE(x) ( sizeof(x) - 1 )
60 #define EOFS(x) ( OFS_##x + sizeof(TR_##x) )
62 #if defined(PCBTARANIS)
63 #define HINT(s) " " s " "
69 #define TR3(x, y, z) z
72 #define TR3(x, y, z) y
75 #define TR3(x, y, z) x
79 #define TR(x, y) TR2(x, y) // for compatibility
84 #define BUTTON(x) "[" x "]"
88 #define TR_VTRAINERMODES TR_VTRAINER_MASTER_JACK TR_VTRAINER_SLAVE_JACK TR_VTRAINER_MASTER_BATTERY TR_VTRAINER_BLUETOOTH
90 #define TR_VTRAINERMODES TR_VTRAINER_MASTER_JACK TR_VTRAINER_SLAVE_JACK TR_VTRAINER_MASTER_SBUS_MODULE TR_VTRAINER_MASTER_CPPM_MODULE TR_VTRAINER_MASTER_BATTERY TR_VTRAINER_BLUETOOTH
91 #elif defined(PCBTARANIS) && defined(BLUETOOTH)
92 #define TR_VTRAINERMODES TR_VTRAINER_MASTER_JACK TR_VTRAINER_SLAVE_JACK TR_VTRAINER_MASTER_SBUS_MODULE TR_VTRAINER_MASTER_CPPM_MODULE TR_VTRAINER_MASTER_BATTERY TR_VTRAINER_BLUETOOTH
93 #elif defined(PCBTARANIS)
94 #define TR_VTRAINERMODES TR_VTRAINER_MASTER_JACK TR_VTRAINER_SLAVE_JACK TR_VTRAINER_MASTER_SBUS_MODULE TR_VTRAINER_MASTER_CPPM_MODULE TR_VTRAINER_MASTER_BATTERY
96 #define TR_VTRAINERMODES TR_VTRAINER_MASTER_JACK TR_VTRAINER_SLAVE_JACK TR_VTRAINER_MASTER_CPPM_MODULE TR_VTRAINER_MASTER_BATTERY
100 #define LCDW_128_480_LINEBREAK ""
102 #define LCDW_128_480_LINEBREAK "\036"
105 // The non-0-terminated-strings
107 extern const pm_char STR_OPEN9X
[];
110 #define OFS_MMMINV (OFS_OFFON + sizeof(TR_OFFON))
111 #define OFS_NCHANNELS (OFS_MMMINV + sizeof(TR_MMMINV))
112 #if defined(GRAPHICS)
113 #define OFS_VBEEPMODE (OFS_NCHANNELS + sizeof(TR_NCHANNELS))
115 #define OFS_VBEEPLEN (OFS_NCHANNELS + sizeof(TR_NCHANNELS))
116 #define OFS_VBEEPMODE (OFS_VBEEPLEN + sizeof(TR_VBEEPLEN))
118 #if defined(ROTARY_ENCODERS)
119 #define OFS_VRENAVIG (OFS_VBEEPMODE + sizeof(TR_VBEEPMODE))
120 #define OFS_VRENCODERS (OFS_VRENAVIG + sizeof(TR_VRENAVIG))
121 #define OFS_TRNMODE (OFS_VRENCODERS + sizeof(TR_VRENCODERS))
122 #elif defined(ROTARY_ENCODER_NAVIGATION)
123 #define OFS_VRENCODERS (OFS_VBEEPMODE + sizeof(TR_VBEEPMODE))
124 #define OFS_TRNMODE (OFS_VRENCODERS + sizeof(TR_VRENCODERS))
126 #define OFS_TRNMODE (OFS_VBEEPMODE + sizeof(TR_VBEEPMODE))
128 #define OFS_TRNCHN (OFS_TRNMODE + sizeof(TR_TRNMODE))
129 #if defined(PCBTARANIS) || defined(PCBHORUS)
130 #define OFS_UART3MODES (OFS_TRNCHN + sizeof(TR_TRNCHN))
131 #define OFS_SWTYPES (OFS_UART3MODES + sizeof(TR_UART3MODES))
132 #define OFS_POTTYPES (OFS_SWTYPES + sizeof(TR_SWTYPES))
133 #define OFS_SLIDERTYPES (OFS_POTTYPES + sizeof(TR_POTTYPES))
134 #define OFS_VTRIMINC (OFS_SLIDERTYPES + sizeof(TR_SLIDERTYPES))
136 #define OFS_VTRIMINC (OFS_TRNCHN + sizeof(TR_TRNCHN))
139 #define OFS_VDISPLAYTRIMS (OFS_VTRIMINC + sizeof(TR_VTRIMINC))
140 #define OFS_RETA123 (OFS_VDISPLAYTRIMS + sizeof(TR_VDISPLAYTRIMS))
142 #define OFS_RETA123 (OFS_VTRIMINC + sizeof(TR_VTRIMINC))
144 #define OFS_VPROTOS (OFS_RETA123 + sizeof(TR_RETA123))
145 #define OFS_POSNEG (OFS_VPROTOS + sizeof(TR_VPROTOS))
146 #if defined(PCBSKY9X) && defined(REVX)
147 #define OFS_VOUTPUT_TYPE (OFS_POSNEG + sizeof(TR_POSNEG))
148 #define OFS_VBLMODE (OFS_VOUTPUT_TYPE + sizeof(TR_VOUTPUT_TYPE))
150 #define OFS_VBLMODE (OFS_POSNEG + sizeof(TR_POSNEG))
152 #define OFS_VCURVEFUNC (OFS_VBLMODE + sizeof(TR_VBLMODE))
153 #define OFS_VMLTPX (OFS_VCURVEFUNC + sizeof(TR_VCURVEFUNC))
154 #define OFS_VMLTPX2 (OFS_VMLTPX + sizeof(TR_VMLTPX))
155 #define OFS_VMIXTRIMS (OFS_VMLTPX2 + sizeof(TR_VMLTPX2))
156 #define OFS_VCSWFUNC (OFS_VMIXTRIMS + sizeof(TR_VMIXTRIMS))
157 #define OFS_VFSWFUNC (OFS_VCSWFUNC + sizeof(TR_VCSWFUNC))
158 #define OFS_VFSWRESET (OFS_VFSWFUNC + sizeof(TR_VFSWFUNC))
159 #define OFS_FUNCSOUNDS (OFS_VFSWRESET + sizeof(TR_VFSWRESET))
160 #define OFS_VTELEMCHNS (OFS_FUNCSOUNDS + sizeof(TR_FUNCSOUNDS))
161 #if defined(TELEMETRY_FRSKY) || defined(CPUARM)
163 #define OFS_VTELEMUNIT (OFS_VTELEMCHNS)
164 #define OFS_VALARM (OFS_VTELEMUNIT + sizeof(TR_VTELEMUNIT))
166 #define OFS_VTELEMUNIT (OFS_VTELEMCHNS + sizeof(TR_VTELEMCHNS))
167 #define OFS_VALARM (OFS_VTELEMUNIT + sizeof(TR_VTELEMUNIT))
169 #define OFS_VALARMFN (OFS_VALARM + sizeof(TR_VALARM))
170 #define OFS_VTELPROTO (OFS_VALARMFN + sizeof(TR_VALARMFN))
171 #define OFS_GPSFORMAT (OFS_VTELPROTO + sizeof(TR_VTELPROTO))
172 #define OFS_AMPSRC (OFS_GPSFORMAT + sizeof(TR_GPSFORMAT))
173 #define OFS_VARIOSRC (OFS_AMPSRC + sizeof(TR_AMPSRC))
174 #define OFS_VSCREEN (OFS_VARIOSRC + sizeof(TR_VARIOSRC))
175 #define OFS_VTEMPLATES (OFS_VSCREEN + sizeof(TR_VTELEMSCREENTYPE))
177 #define OFS_VTEMPLATES (OFS_VTELEMCHNS + sizeof(TR_VTELEMCHNS))
179 #if defined(TEMPLATES)
180 #define TR_VTEMPLATES TR_TEMPLATE_CLEAR_MIXES TR_TEMPLATE_SIMPLE_4CH TR_TEMPLATE_STICKY_TCUT TR_TEMPLATE_VTAIL TR_TEMPLATE_DELTA TR_TEMPLATE_ECCPM TR_TEMPLATE_HELI TR_TEMPLATE_SERVO_TEST
181 #define OFS_VSWASHTYPE (OFS_VTEMPLATES + sizeof(TR_VTEMPLATES))
183 #define OFS_VSWASHTYPE (OFS_VTEMPLATES)
186 #define OFS_VKEYS (OFS_VSWASHTYPE + sizeof(TR_VSWASHTYPE))
188 #define OFS_VKEYS (OFS_VSWASHTYPE)
190 #define OFS_VSWITCHES (OFS_VKEYS + sizeof(TR_VKEYS))
191 #define OFS_VSRCRAW (OFS_VSWITCHES + sizeof(TR_VSWITCHES))
192 #if defined(TRANSLATIONS_CZ) && defined(CPUARM)
193 #define OFS_INPUTNAMES (OFS_VSRCRAW + sizeof(TR_VSRCRAW))
194 #define OFS_VTMRMODES (OFS_INPUTNAMES + sizeof(TR_INPUTNAMES))
196 #define OFS_VTMRMODES (OFS_VSRCRAW + sizeof(TR_VSRCRAW))
198 #define OFS_DATETIME (OFS_VTMRMODES + sizeof(TR_VTMRMODES))
199 #if defined(CPUM2560) || defined(CPUARM)
200 #define OFS_VPERSISTENT (OFS_DATETIME + sizeof(TR_DATETIME))
201 #define OFS_VLCD (OFS_VPERSISTENT + sizeof(TR_VPERSISTENT))
203 #define OFS_VLCD (OFS_DATETIME)
206 #define OFS_VUNITSSYSTEM (OFS_VLCD + sizeof(TR_VLCD))
207 #define OFS_VBEEPCOUNTDOWN (OFS_VUNITSSYSTEM + sizeof(TR_VUNITSSYSTEM))
208 #define OFS_VVARIOCENTER (OFS_VBEEPCOUNTDOWN + sizeof(TR_VBEEPCOUNTDOWN))
209 #define OFS_COUNTRYCODES (OFS_VVARIOCENTER + sizeof(TR_VVARIOCENTER))
210 #define OFS_USBMODES (OFS_COUNTRYCODES + sizeof(TR_COUNTRYCODES))
212 #define OFS_COUNTRYCODES (OFS_VLCD)
214 #if defined(PXX) || defined(CPUARM)
215 #define OFS_VFAILSAFE (OFS_USBMODES + sizeof(TR_USBMODES))
216 #define OFS_VTRAINERMODES (OFS_VFAILSAFE + sizeof(TR_VFAILSAFE))
218 #define OFS_VFAILSAFE (OFS_COUNTRYCODES)
219 #define OFS_VTRAINERMODES (OFS_VFAILSAFE)
222 #define OFS_TARANIS_PROTOCOLS (OFS_VTRAINERMODES + sizeof(TR_VTRAINERMODES))
223 #define OFS_R9M_MODES (OFS_TARANIS_PROTOCOLS + sizeof(TR_TARANIS_PROTOCOLS))
224 #define OFS_R9M_FCC_POWER_VALUES (OFS_R9M_MODES + sizeof(TR_R9M_MODES))
225 #define OFS_R9M_LBT_POWER_VALUES (OFS_R9M_FCC_POWER_VALUES + sizeof(TR_R9M_FCC_POWER_VALUES))
226 #define OFS_TELEMETRY_PROTOCOLS (OFS_R9M_LBT_POWER_VALUES + sizeof(TR_R9M_LBT_POWER_VALUES))
227 #define OFS_XJT_PROTOCOLS (OFS_TELEMETRY_PROTOCOLS + sizeof(TR_TELEMETRY_PROTOCOLS))
228 #define OFS_DSM_PROTOCOLS (OFS_XJT_PROTOCOLS + sizeof(TR_XJT_PROTOCOLS))
229 #if defined(MULTIMODULE)
230 #define OFS_MULTI_PROTOCOLS (OFS_DSM_PROTOCOLS + sizeof(TR_DSM_PROTOCOLS))
231 #define OFS_VOLTSRC (OFS_MULTI_PROTOCOLS + sizeof(TR_MULTI_PROTOCOLS))
233 #define OFS_VOLTSRC (OFS_DSM_PROTOCOLS + sizeof(TR_DSM_PROTOCOLS))
235 #define OFS_CURVE_TYPES (OFS_VOLTSRC + sizeof(TR_VOLTSRC))
236 #define OFS_VSENSORTYPES (OFS_CURVE_TYPES + sizeof(TR_CURVE_TYPES))
237 #define OFS_VFORMULAS (OFS_VSENSORTYPES + sizeof(TR_VSENSORTYPES))
238 #define OFS_VPREC (OFS_VFORMULAS + sizeof(TR_VFORMULAS))
239 #define OFS_VCELLINDEX (OFS_VPREC + sizeof(TR_VPREC))
240 #if defined(BLUETOOTH)
241 #define OFS_BLUETOOTH_MODES (OFS_VCELLINDEX + sizeof(TR_VCELLINDEX))
242 #define OFS_VANTENNATYPES (OFS_BLUETOOTH_MODES + sizeof(TR_BLUETOOTH_MODES))
244 #define OFS_VANTENNATYPES (OFS_VCELLINDEX + sizeof(TR_VCELLINDEX))
246 #define OFS_MAVLINK_BAUDS (OFS_VANTENNATYPES + sizeof(TR_VANTENNATYPES))
248 #define OFS_MAVLINK_BAUDS (OFS_VTRAINERMODES)
250 #if defined(TELEMETRY_MAVLINK)
251 #define OFS_MAVLINK_AC_MODES (OFS_MAVLINK_BAUDS + sizeof(TR_MAVLINK_BAUDS))
252 #define OFS_MAVLINK_AP_MODES (OFS_MAVLINK_AC_MODES + sizeof(TR_MAVLINK_AC_MODES))
253 #define OFS_SPARE (OFS_MAVLINK_AP_MODES + sizeof(TR_MAVLINK_AP_MODES))
255 #define OFS_SPARE (OFS_MAVLINK_BAUDS)
258 #define STR_OFFON (STR_OPEN9X + OFS_OFFON)
259 #define STR_MMMINV (STR_OPEN9X + OFS_MMMINV)
260 #define STR_NCHANNELS (STR_OPEN9X + OFS_NCHANNELS)
261 #if !defined(GRAPHICS)
262 #define STR_VBEEPLEN (STR_OPEN9X + OFS_VBEEPLEN)
264 #define STR_VBEEPMODE (STR_OPEN9X + OFS_VBEEPMODE)
265 #define STR_TRNMODE (STR_OPEN9X + OFS_TRNMODE)
266 #define STR_TRNCHN (STR_OPEN9X + OFS_TRNCHN)
267 #define STR_UART3MODES (STR_OPEN9X + OFS_UART3MODES)
268 #define STR_SWTYPES (STR_OPEN9X + OFS_SWTYPES)
269 #define STR_POTTYPES (STR_OPEN9X + OFS_POTTYPES)
270 #define STR_SLIDERTYPES (STR_OPEN9X + OFS_SLIDERTYPES)
271 #define STR_VTRIMINC (STR_OPEN9X + OFS_VTRIMINC)
272 #define STR_VDISPLAYTRIMS (STR_OPEN9X + OFS_VDISPLAYTRIMS)
273 #define STR_RETA123 (STR_OPEN9X + OFS_RETA123)
274 #define STR_VPROTOS (STR_OPEN9X + OFS_VPROTOS)
275 #define STR_POSNEG (STR_OPEN9X + OFS_POSNEG)
276 #if defined(PCBSKY9X) && defined(REVX)
277 #define STR_VOUTPUT_TYPE (STR_OPEN9X + OFS_VOUTPUT_TYPE)
279 #define STR_VBLMODE (STR_OPEN9X + OFS_VBLMODE)
280 #define STR_VCURVEFUNC (STR_OPEN9X + OFS_VCURVEFUNC)
281 #define STR_VSIDE STR_VCURVEFUNC
282 #define LEN_VSIDE LEN_VCURVEFUNC
283 #define STR_VMLTPX (STR_OPEN9X + OFS_VMLTPX)
284 #define STR_VMLTPX2 (STR_OPEN9X + OFS_VMLTPX2)
285 #define STR_VMIXTRIMS (STR_OPEN9X + OFS_VMIXTRIMS)
286 #define STR_VCSWFUNC (STR_OPEN9X + OFS_VCSWFUNC)
287 #define STR_VFSWFUNC (STR_OPEN9X + OFS_VFSWFUNC)
288 #define STR_VFSWRESET (STR_OPEN9X + OFS_VFSWRESET)
289 #define STR_FUNCSOUNDS (STR_OPEN9X + OFS_FUNCSOUNDS)
290 #define STR_VTELEMCHNS (STR_OPEN9X + OFS_VTELEMCHNS)
292 #if defined(TELEMETRY_FRSKY) || defined(CPUARM)
294 #define STR_VTELEMUNIT (STR_OPEN9X + OFS_VTELEMUNIT)
295 #define STR_VOLTSRC (STR_OPEN9X + OFS_VOLTSRC)
297 #define STR_VTELEMUNIT (STR_OPEN9X + OFS_VTELEMUNIT)
299 #define STR_VALARM (STR_OPEN9X + OFS_VALARM)
300 #define STR_VALARMFN (STR_OPEN9X + OFS_VALARMFN)
301 #define STR_VTELPROTO (STR_OPEN9X + OFS_VTELPROTO)
302 #define STR_GPSFORMAT (STR_OPEN9X + OFS_GPSFORMAT)
303 #define STR_AMPSRC (STR_OPEN9X + OFS_AMPSRC)
304 #define STR_VARIOSRC (STR_OPEN9X + OFS_VARIOSRC)
305 #define STR_VTELEMSCREENTYPE (STR_OPEN9X + OFS_VSCREEN)
306 #define STR_TELEMCHNS (STR_OPEN9X + OFS_TELEMCHNS)
309 #if defined(TEMPLATES)
310 #define STR_VTEMPLATES (STR_OPEN9X + OFS_VTEMPLATES)
314 #define STR_VSWASHTYPE (STR_OPEN9X + OFS_VSWASHTYPE)
317 #define STR_VKEYS (STR_OPEN9X + OFS_VKEYS)
318 #define STR_VSWITCHES (STR_OPEN9X + OFS_VSWITCHES)
319 #define STR_VSRCRAW (STR_OPEN9X + OFS_VSRCRAW)
320 #if defined(TRANSLATIONS_CZ) && defined(CPUARM)
321 #define STR_INPUTNAMES (STR_OPEN9X + OFS_INPUTNAMES)
323 #define STR_VTMRMODES (STR_OPEN9X + OFS_VTMRMODES)
325 #if defined(ROTARY_ENCODERS)
326 #define STR_VRENAVIG (STR_OPEN9X + OFS_VRENAVIG)
329 #if defined(ROTARY_ENCODER_NAVIGATION)
330 #define STR_VRENCODERS (STR_OPEN9X + OFS_VRENCODERS)
333 #if defined(CPUM2560) || defined(CPUARM)
334 #define STR_DATETIME (STR_OPEN9X + OFS_DATETIME)
335 #define STR_VPERSISTENT (STR_OPEN9X + OFS_VPERSISTENT)
339 #define STR_VLCD (STR_OPEN9X + OFS_VLCD)
340 #define STR_VUNITSSYSTEM (STR_OPEN9X + OFS_VUNITSSYSTEM)
341 #define STR_VBEEPCOUNTDOWN (STR_OPEN9X + OFS_VBEEPCOUNTDOWN)
342 #define STR_VVARIOCENTER (STR_OPEN9X + OFS_VVARIOCENTER)
345 #if defined(PXX) || defined(CPUARM)
346 #define STR_COUNTRYCODES (STR_OPEN9X + OFS_COUNTRYCODES)
347 #define STR_USBMODES (STR_OPEN9X + OFS_USBMODES)
348 #define STR_VFAILSAFE (STR_OPEN9X + OFS_VFAILSAFE)
352 #define STR_VTRAINERMODES (STR_OPEN9X + OFS_VTRAINERMODES)
353 #define STR_TARANIS_PROTOCOLS (STR_OPEN9X + OFS_TARANIS_PROTOCOLS)
354 #define STR_R9M_MODES (STR_OPEN9X + OFS_R9M_MODES)
355 #define STR_R9M_FCC_POWER_VALUES (STR_OPEN9X + OFS_R9M_FCC_POWER_VALUES)
356 #define STR_R9M_LBT_POWER_VALUES (STR_OPEN9X + OFS_R9M_LBT_POWER_VALUES)
357 #define STR_TELEMETRY_PROTOCOLS (STR_OPEN9X + OFS_TELEMETRY_PROTOCOLS)
358 #define STR_XJT_PROTOCOLS (STR_OPEN9X + OFS_XJT_PROTOCOLS)
359 #define STR_DSM_PROTOCOLS (STR_OPEN9X + OFS_DSM_PROTOCOLS)
360 #if defined(MULTIMODULE)
361 #define STR_MULTI_PROTOCOLS (STR_OPEN9X + OFS_MULTI_PROTOCOLS)
363 #define STR_CURVE_TYPES (STR_OPEN9X + OFS_CURVE_TYPES)
364 #define STR_VSENSORTYPES (STR_OPEN9X + OFS_VSENSORTYPES)
365 #define STR_VFORMULAS (STR_OPEN9X + OFS_VFORMULAS)
366 #define STR_VPREC (STR_OPEN9X + OFS_VPREC)
367 #define STR_VCELLINDEX (STR_OPEN9X + OFS_VCELLINDEX)
368 #define STR_VANTENNATYPES (STR_OPEN9X + OFS_VANTENNATYPES)
371 #if defined(BLUETOOTH)
372 extern const pm_char STR_BLUETOOTH
[];
373 #define STR_BLUETOOTH_MODES (STR_OPEN9X + OFS_BLUETOOTH_MODES)
376 #if defined(TELEMETRY_MAVLINK)
377 #define STR_MAVLINK_BAUDS (STR_OPEN9X + OFS_MAVLINK_BAUDS)
378 #define STR_MAVLINK_AC_MODES (STR_OPEN9X + OFS_MAVLINK_AC_MODES)
379 #define STR_MAVLINK_AP_MODES (STR_OPEN9X + OFS_MAVLINK_AP_MODES)
382 // The 0-terminated-strings
383 #define NO_INDENT(x) (x)+LEN_INDENT
385 extern const pm_char STR_POPUPS
[];
387 #if defined(OFS_EXIT)
388 #define STR_EXIT (STR_POPUPS + OFS_EXIT)
390 extern const pm_char STR_EXIT
[];
393 #if !defined(PCBHORUS)
394 extern const pm_char STR_MENUWHENDONE
[];
397 extern const pm_char STR_FREE
[];
398 #define LEN_FREE PSIZE(TR_FREE)
399 extern const pm_char STR_DELETEMODEL
[];
400 extern const pm_char STR_COPYINGMODEL
[];
401 extern const pm_char STR_MOVINGMODEL
[];
402 extern const pm_char STR_LOADINGMODEL
[];
403 extern const pm_char STR_NAME
[];
404 extern const pm_char STR_BITMAP
[];
405 extern const pm_char STR_TIMER
[];
406 extern const pm_char STR_ELIMITS
[];
407 extern const pm_char STR_ETRIMS
[];
408 extern const pm_char STR_TRIMINC
[];
409 extern const pm_char STR_DISPLAY_TRIMS
[];
410 extern const pm_char STR_TTRACE
[];
411 extern const pm_char STR_TTRIM
[];
412 extern const pm_char STR_BEEPCTR
[];
413 extern const pm_char STR_USE_GLOBAL_FUNCS
[];
414 #if defined(PCBSKY9X) && defined(REVX)
415 extern const pm_char STR_OUTPUT_TYPE
[];
417 extern const pm_char STR_PROTO
[];
418 extern const pm_char STR_PPMFRAME
[];
420 extern const pm_char STR_REFRESHRATE
[];
421 extern const pm_char SSTR_WARN_BATTVOLTAGE
[];
423 extern const pm_char STR_MS
[];
424 extern const pm_char STR_SWITCH
[];
425 extern const pm_char STR_TRIMS
[];
426 extern const pm_char STR_FADEIN
[];
427 extern const pm_char STR_FADEOUT
[];
428 extern const pm_char STR_DEFAULT
[];
429 extern const pm_char STR_CHECKTRIMS
[];
430 extern const pm_char STR_SWASHTYPE
[];
431 extern const pm_char STR_COLLECTIVE
[];
432 extern const pm_char STR_AILERON
[];
433 extern const pm_char STR_ELEVATOR
[];
434 extern const pm_char STR_SWASHRING
[];
435 extern const pm_char STR_ELEDIRECTION
[];
436 extern const pm_char STR_AILDIRECTION
[];
437 extern const pm_char STR_COLDIRECTION
[];
438 extern const pm_char STR_MODE
[];
439 #if defined(AUDIO) && defined(BUZZER)
440 extern const pm_char STR_SPEAKER
[];
441 extern const pm_char STR_BUZZER
[];
443 #define STR_SPEAKER STR_MODE
444 #define STR_BUZZER STR_MODE
446 extern const pm_char STR_NOFREEEXPO
[];
447 extern const pm_char STR_NOFREEMIXER
[];
448 extern const pm_char STR_SOURCE
[];
449 extern const pm_char STR_WEIGHT
[];
450 extern const pm_char STR_EXPO
[];
451 extern const pm_char STR_SIDE
[];
452 extern const pm_char STR_DIFFERENTIAL
[];
453 extern const pm_char STR_OFFSET
[];
454 extern const pm_char STR_TRIM
[];
455 extern const pm_char STR_DREX
[];
456 extern const pm_char STR_CURVE
[];
457 extern const pm_char STR_FLMODE
[];
458 extern const pm_char STR_MIXWARNING
[];
459 extern const pm_char STR_OFF
[];
460 extern const pm_char STR_MULTPX
[];
461 extern const pm_char STR_DELAYDOWN
[];
462 extern const pm_char STR_DELAYUP
[];
463 extern const pm_char STR_SLOWDOWN
[];
464 extern const pm_char STR_SLOWUP
[];
465 extern const pm_char STR_MIXER
[];
466 extern const pm_char STR_CV
[];
467 extern const pm_char STR_GV
[];
468 extern const pm_char STR_ACHANNEL
[];
469 extern const pm_char STR_RANGE
[];
470 extern const pm_char STR_CENTER
[];
471 extern const pm_char STR_BAR
[];
472 extern const pm_char STR_ALARM
[];
473 extern const pm_char STR_USRDATA
[];
474 extern const pm_char STR_BLADES
[];
475 extern const pm_char STR_SCREEN
[];
476 extern const pm_char STR_SOUND_LABEL
[];
477 extern const pm_char STR_LENGTH
[];
478 extern const pm_char STR_BEEP_LENGTH
[];
480 extern const pm_char STR_BEEP_LENGTH
[];
482 #define STR_BEEP_LENGTH STR_LENGTH
484 extern const pm_char STR_SPKRPITCH
[];
485 extern const pm_char STR_HAPTIC_LABEL
[];
486 extern const pm_char STR_HAPTICSTRENGTH
[];
487 extern const pm_char STR_CONTRAST
[];
488 extern const pm_char STR_ALARMS_LABEL
[];
489 #if defined(BATTGRAPH) || defined(CPUARM)
490 extern const pm_char STR_BATTERY_RANGE
[];
492 extern const pm_char STR_BATTERYWARNING
[];
493 extern const pm_char STR_INACTIVITYALARM
[];
494 extern const pm_char STR_MEMORYWARNING
[];
495 extern const pm_char STR_ALARMWARNING
[];
496 extern const pm_char STR_RSSISHUTDOWNALARM
[];
497 extern const pm_char STR_MODEL_STILL_POWERED
[];
498 extern const pm_char STR_PRESS_ENTER_TO_CONFIRM
[];
499 extern const pm_char STR_RENAVIG
[];
500 extern const pm_char STR_THROTTLEREVERSE
[];
501 extern const pm_char STR_TIMER_NAME
[];
502 extern const pm_char STR_MINUTEBEEP
[];
503 extern const pm_char STR_BEEPCOUNTDOWN
[];
504 extern const pm_char STR_PERSISTENT
[];
505 extern const pm_char STR_BACKLIGHT_LABEL
[];
506 extern const pm_char STR_BLDELAY
[];
507 #if defined(PWM_BACKLIGHT) || defined(PCBHORUS)
508 extern const pm_char STR_BLONBRIGHTNESS
[];
509 extern const pm_char STR_BLOFFBRIGHTNESS
[];
511 extern const pm_char STR_SPLASHSCREEN
[];
512 extern const pm_char STR_THROTTLEWARNING
[];
513 extern const pm_char STR_SWITCHWARNING
[];
514 extern const pm_char STR_POTWARNINGSTATE
[];
515 extern const pm_char STR_POTWARNING
[];
516 extern const pm_char STR_SLIDERWARNING
[];
517 extern const pm_char STR_TIMEZONE
[];
518 extern const pm_char STR_ADJUST_RTC
[];
519 extern const pm_char STR_GPS
[];
520 extern const pm_char STR_GPSCOORD
[];
521 extern const pm_char STR_VARIO
[];
522 extern const pm_char STR_PITCH_AT_ZERO
[];
523 extern const pm_char STR_PITCH_AT_MAX
[];
524 extern const pm_char STR_REPEAT_AT_ZERO
[];
525 extern const pm_char STR_RXCHANNELORD
[];
526 extern const pm_char STR_STICKS
[];
527 extern const pm_char STR_POTS
[];
528 extern const pm_char STR_SWITCHES
[];
529 extern const pm_char STR_SWITCHES_DELAY
[];
530 extern const pm_char STR_SLAVE
[];
531 extern const pm_char STR_MODESRC
[];
532 extern const pm_char STR_MULTIPLIER
[];
533 #define LEN_MULTIPLIER PSIZE(TR_MULTIPLIER)
534 extern const pm_char STR_CAL
[];
535 extern const pm_char STR_VTRIM
[];
536 extern const pm_char STR_BG
[];
537 extern const pm_char STR_MENUTOSTART
[];
538 extern const pm_char STR_SETMIDPOINT
[];
539 extern const pm_char STR_MOVESTICKSPOTS
[];
540 extern const pm_char STR_RXBATT
[];
541 extern const pm_char STR_TX
[];
542 #define STR_RX (STR_TX+OFS_RX)
543 extern const pm_char STR_ACCEL
[];
544 extern const pm_char STR_NODATA
[];
545 extern const pm_char STR_TOTTM1TM2THRTHP
[];
546 extern const pm_char STR_TMR1LATMAXUS
[];
547 extern const pm_char STR_TMR1LATMINUS
[];
548 extern const pm_char STR_TMR1JITTERUS
[];
549 extern const pm_char STR_TMIXMAXMS
[];
550 extern const pm_char STR_FREESTACKMINB
[];
551 extern const pm_char STR_MENUTORESET
[];
552 extern const pm_char STR_PPM_TRAINER
[];
553 extern const pm_char STR_CH
[];
554 extern const pm_char STR_MODEL
[];
555 extern const pm_char STR_FP
[];
557 extern const pm_char STR_MIX
[];
559 extern const pm_char STR_EEPROMLOWMEM
[];
560 extern const pm_char STR_ALERT
[];
561 extern const pm_char STR_PRESSANYKEYTOSKIP
[];
562 extern const pm_char STR_THROTTLENOTIDLE
[];
563 extern const pm_char STR_ALARMSDISABLED
[];
564 extern const pm_char STR_PRESSANYKEY
[];
565 #define LEN_PRESSANYKEY PSIZE(TR_PRESSANYKEY)
566 extern const pm_char STR_BAD_RADIO_DATA
[];
567 extern const pm_char STR_STORAGE_FORMAT
[];
568 extern const pm_char STR_EEPROMOVERFLOW
[];
569 extern const pm_char STR_TRIMS2OFFSETS
[];
570 extern const pm_char STR_MENURADIOSETUP
[];
571 extern const pm_char STR_MENUDATEANDTIME
[];
572 extern const pm_char STR_MENUTRAINER
[];
573 extern const pm_char STR_MENUSPECIALFUNCS
[];
574 extern const pm_char STR_MENUVERSION
[];
575 extern const pm_char STR_MENU_RADIO_SWITCHES
[];
576 extern const pm_char STR_MENU_RADIO_ANALOGS
[];
577 extern const pm_char STR_MENUCALIBRATION
[];
578 extern const pm_char STR_MENUMODELSEL
[];
579 extern const pm_char STR_MENUSETUP
[];
580 extern const pm_char STR_MENUFLIGHTMODE
[];
581 extern const pm_char STR_MENUFLIGHTMODES
[];
582 extern const pm_char STR_MENUHELISETUP
[];
583 extern const pm_char STR_MENUINPUTS
[];
584 extern const pm_char STR_MENULIMITS
[];
585 extern const pm_char STR_MENUCURVES
[];
586 extern const pm_char STR_MENUCURVE
[];
587 extern const pm_char STR_MENULOGICALSWITCH
[];
588 extern const pm_char STR_MENULOGICALSWITCHES
[];
589 extern const pm_char STR_MENUCUSTOMFUNC
[];
590 extern const pm_char STR_MENUCUSTOMSCRIPTS
[];
591 extern const pm_char STR_MENUTELEMETRY
[];
592 extern const pm_char STR_MENUTEMPLATES
[];
593 extern const pm_char STR_MENUSTAT
[];
594 extern const pm_char STR_MENUDEBUG
[];
595 extern const char * const STR_MONITOR_CHANNELS
[];
596 extern const pm_char STR_MONITOR_SWITCHES
[];
597 extern const pm_char STR_MONITOR_OUTPUT_DESC
[];
598 extern const pm_char STR_MONITOR_MIXER_DESC
[];
599 extern const pm_char STR_MENUGLOBALVARS
[];
600 extern const pm_char STR_INVERT_THR
[];
601 extern const pm_char STR_AND_SWITCH
[];
602 extern const pm_char STR_SF
[];
603 extern const pm_char STR_GF
[];
605 #if defined(FAS_OFFSET) || !defined(CPUM64)
606 extern const pm_char STR_FAS_OFFSET
[];
609 #if defined(MULTIMODULE)
610 extern const pm_char STR_MULTI_CUSTOM
[];
611 extern const pm_char STR_MULTI_OPTION
[];
612 extern const pm_char STR_MULTI_VIDFREQ
[];
613 extern const pm_char STR_MULTI_RFTUNE
[];
614 extern const pm_char STR_MULTI_TELEMETRY
[];
615 extern const pm_char STR_MULTI_AUTOBIND
[];
616 extern const pm_char STR_MULTI_DSM_AUTODTECT
[];
617 extern const pm_char STR_MULTI_LOWPOWER
[];
618 extern const pm_char STR_MODULE_NO_SERIAL_MODE
[];
619 extern const pm_char STR_MODULE_NO_INPUT
[];
620 extern const pm_char STR_MODULE_WAITFORBIND
[];
621 extern const pm_char STR_MODULE_NO_TELEMETRY
[];
622 extern const pm_char STR_MODULE_BINDING
[];
623 extern const pm_char STR_PROTOCOL_INVALID
[];
624 extern const pm_char STR_MODULE_STATUS
[];
625 extern const pm_char STR_MODULE_SYNC
[];
626 extern const pm_char STR_MULTI_SERVOFREQ
[];
628 extern const pm_char STR_SUBTYPE
[];
631 #if defined(DSM2) || defined(PXX)
632 extern const pm_char STR_RECEIVER_NUM
[];
633 extern const pm_char STR_RECEIVER
[];
636 #if defined(PXX) || defined(CPUARM)
637 extern const pm_char STR_SYNCMENU
[];
638 extern const pm_char STR_INTERNALRF
[];
639 extern const pm_char STR_EXTERNALRF
[];
640 extern const pm_char STR_MODULE_TELEMETRY
[];
641 extern const pm_char STR_FAILSAFE
[];
642 extern const pm_char STR_FAILSAFESET
[];
643 extern const pm_char STR_HOLD
[];
644 extern const pm_char STR_NONE
[];
645 extern const pm_char STR_MENUSENSOR
[];
646 extern const pm_char STR_SENSOR
[];
647 extern const pm_char STR_COUNTRYCODE
[];
648 extern const pm_char STR_USBMODE
[];
649 extern const pm_char STR_DISABLE_INTERNAL
[];
652 #if defined(TELEMETRY_FRSKY)
653 extern const pm_char STR_LIMIT
[];
657 extern const pm_char STR_MINRSSI
[];
658 extern const pm_char STR_LATITUDE
[];
659 extern const pm_char STR_LONGITUDE
[];
662 #if defined(CPUARM) || defined(CPUM2560)
663 extern const pm_char STR_SHUTDOWN
[];
664 extern const pm_char STR_SAVEMODEL
[];
668 extern const pm_char STR_POWEROFF
[];
671 extern const pm_char STR_BATT_CALIB
[];
673 #if defined(CPUARM) || defined(TELEMETRY_FRSKY)
674 extern const pm_char STR_VOLTAGE
[];
675 extern const pm_char STR_CURRENT
[];
679 extern const pm_char STR_CURRENT_CALIB
[];
680 extern const pm_char STR_UNITSSYSTEM
[];
681 extern const pm_char STR_VOICELANG
[];
682 extern const pm_char STR_MODELIDUSED
[];
683 extern const pm_char STR_BEEP_VOLUME
[];
684 extern const pm_char STR_WAV_VOLUME
[];
685 extern const pm_char STR_BG_VOLUME
[];
686 extern const pm_char STR_PERSISTENT_MAH
[];
689 #if defined(PCBSKY9X)
690 #define LEN_CALIB_FIELDS (PSIZE(TR_BATT_CALIB) > PSIZE(TR_CURRENT_CALIB) ? PSIZE(TR_BATT_CALIB) : PSIZE(TR_CURRENT_CALIB))
692 #define LEN_CALIB_FIELDS PSIZE(TR_BATT_CALIB)
695 #if defined(NAVIGATION_MENUS)
696 extern const pm_char STR_SELECT_MODEL
[];
697 extern const pm_char STR_CREATE_CATEGORY
[];
698 extern const pm_char STR_RENAME_CATEGORY
[];
699 extern const pm_char STR_DELETE_CATEGORY
[];
700 extern const pm_char STR_CREATE_MODEL
[];
701 extern const pm_char STR_DUPLICATE_MODEL
[];
702 extern const pm_char STR_COPY_MODEL
[];
703 extern const pm_char STR_MOVE_MODEL
[];
704 extern const pm_char STR_DELETE_MODEL
[];
705 extern const pm_char STR_EDIT
[];
706 extern const pm_char STR_INSERT_BEFORE
[];
707 extern const pm_char STR_INSERT_AFTER
[];
708 extern const pm_char STR_COPY
[];
709 extern const pm_char STR_MOVE
[];
710 extern const pm_char STR_PASTE
[];
711 extern const pm_char STR_INSERT
[];
712 extern const pm_char STR_DELETE
[];
713 extern const pm_char STR_RESET_FLIGHT
[];
714 extern const pm_char STR_RESET_TIMER1
[];
715 extern const pm_char STR_RESET_TIMER2
[];
716 extern const pm_char STR_RESET_TIMER3
[];
717 extern const pm_char STR_RESET_TELEMETRY
[];
718 extern const pm_char STR_STATISTICS
[];
719 extern const pm_char STR_ABOUT_US
[];
720 extern const pm_char STR_USB_JOYSTICK
[];
721 extern const pm_char STR_USB_MASS_STORAGE
[];
722 extern const pm_char STR_USB_SERIAL
[];
723 extern const pm_char STR_SETUP_SCREENS
[];
724 extern const pm_char STR_MONITOR_SCREENS
[];
727 extern const pm_char STR_RESET_BTN
[];
730 extern const pm_char STR_BACKUP_MODEL
[];
731 extern const pm_char STR_RESTORE_MODEL
[];
732 extern const pm_char STR_DELETE_ERROR
[];
733 extern const pm_char STR_SDCARD_ERROR
[];
734 extern const pm_char STR_NO_SDCARD
[];
735 extern const pm_char STR_SDCARD_FULL
[];
736 extern const pm_char STR_INCOMPATIBLE
[];
737 extern const pm_char STR_LOGS_PATH
[];
738 extern const pm_char STR_LOGS_EXT
[];
739 extern const pm_char STR_MODELS_PATH
[];
740 extern const pm_char STR_MODELS_EXT
[];
741 #define STR_UPDATE_LIST STR_DELAYDOWN
744 extern const pm_char STR_CAT_NOT_EMPTY
[];
745 extern const pm_char STR_WARNING
[];
746 extern const pm_char STR_STORAGE_WARNING
[];
747 extern const pm_char STR_EEPROM_CONVERTING
[];
748 extern const pm_char STR_THROTTLEWARN
[];
749 extern const pm_char STR_ALARMSWARN
[];
750 extern const pm_char STR_SWITCHWARN
[];
751 extern const pm_char STR_FAILSAFEWARN
[];
752 extern const pm_char STR_NIGHTLY_WARNING
[];
753 extern const pm_char STR_NIGHTLY_NOTSAFE
[];
754 extern const pm_char STR_WRONG_SDCARDVERSION
[];
755 extern const pm_char STR_WRONG_PCBREV
[];
756 extern const pm_char STR_EMERGENCY_MODE
[];
757 extern const pm_char STR_PCBREV_ERROR
[];
758 extern const pm_char STR_NO_FAILSAFE
[];
759 extern const pm_char STR_KEYSTUCK
[];
761 extern const pm_char STR_SPEAKER_VOLUME
[];
762 extern const pm_char STR_LCD
[];
763 extern const pm_char STR_BRIGHTNESS
[];
764 extern const pm_char STR_CPU_TEMP
[];
765 extern const pm_char STR_CPU_CURRENT
[];
766 extern const pm_char STR_CPU_MAH
[];
767 extern const pm_char STR_COPROC
[];
768 extern const pm_char STR_COPROC_TEMP
[];
769 extern const pm_char STR_CAPAWARNING
[];
770 extern const pm_char STR_TEMPWARNING
[];
771 extern const pm_char STR_FUNC
[];
772 extern const pm_char STR_V1
[];
773 extern const pm_char STR_V2
[];
774 extern const pm_char STR_DURATION
[];
775 extern const pm_char STR_DELAY
[];
776 extern const pm_char STR_SD_CARD
[];
777 extern const pm_char STR_SDHC_CARD
[];
778 extern const pm_char STR_NO_SOUNDS_ON_SD
[];
779 extern const pm_char STR_NO_MODELS_ON_SD
[];
780 extern const pm_char STR_NO_BITMAPS_ON_SD
[];
781 extern const pm_char STR_NO_SCRIPTS_ON_SD
[];
782 extern const pm_char STR_SCRIPT_SYNTAX_ERROR
[];
783 extern const pm_char STR_SCRIPT_PANIC
[];
784 extern const pm_char STR_SCRIPT_KILLED
[];
785 extern const pm_char STR_SCRIPT_ERROR
[];
786 extern const pm_char STR_PLAY_FILE
[];
787 extern const pm_char STR_ASSIGN_BITMAP
[];
788 extern const pm_char STR_EXECUTE_FILE
[];
789 extern const pm_char STR_DELETE_FILE
[];
790 extern const pm_char STR_COPY_FILE
[];
791 extern const pm_char STR_RENAME_FILE
[];
792 extern const pm_char STR_REMOVED
[];
793 extern const pm_char STR_SD_INFO
[];
794 extern const pm_char STR_SD_FORMAT
[];
795 extern const pm_char STR_NA
[];
796 extern const pm_char STR_HARDWARE
[];
797 extern const pm_char STR_FORMATTING
[];
798 extern const pm_char STR_TEMP_CALIB
[];
799 extern const pm_char STR_TIME
[];
800 extern const pm_char STR_MAXBAUDRATE
[];
801 extern const pm_char STR_BAUDRATE
[];
802 extern const pm_char STR_SD_INFO_TITLE
[];
803 extern const pm_char STR_SD_TYPE
[];
804 extern const pm_char STR_SD_SPEED
[];
805 extern const pm_char STR_SD_SECTORS
[];
806 extern const pm_char STR_SD_SIZE
[];
807 extern const pm_char STR_TYPE
[];
808 extern const pm_char STR_GLOBAL_VARS
[];
809 extern const pm_char STR_GVARS
[];
810 extern const pm_char STR_GLOBAL_VAR
[];
811 extern const pm_char STR_OWN
[];
812 extern const pm_char STR_ROTARY_ENCODER
[];
813 extern const pm_char STR_DATE
[];
814 extern const pm_char STR_CHANNELS_MONITOR
[];
815 extern const pm_char STR_MIXERS_MONITOR
[];
816 extern const pm_char STR_PATH_TOO_LONG
[];
817 extern const pm_char STR_VIEW_TEXT
[];
818 extern const pm_char STR_FLASH_BOOTLOADER
[];
819 extern const pm_char STR_FLASH_EXTERNAL_DEVICE
[];
820 extern const pm_char STR_FLASH_INTERNAL_MODULE
[];
821 extern const pm_char STR_FIRMWARE_UPDATE_ERROR
[];
822 extern const pm_char STR_WRITING
[];
823 extern const pm_char STR_CONFIRM_FORMAT
[];
824 extern const pm_char STR_EEBACKUP
[];
825 extern const pm_char STR_FACTORYRESET
[];
826 extern const pm_char STR_CONFIRMRESET
[];
827 extern const pm_char STR_TOO_MANY_LUA_SCRIPTS
[];
828 extern const pm_char STR_BLCOLOR
[];
830 #if defined(CPUARM) && defined(VOICE)
831 struct LanguagePack
{
834 void (*playNumber
)(getvalue_t number
, uint8_t unit
, uint8_t flags
, uint8_t id
);
835 void (*playDuration
)(int seconds
, uint8_t flags
, uint8_t id
);
838 extern const LanguagePack
* currentLanguagePack
;
839 extern uint8_t currentLanguagePackIdx
;
841 extern const LanguagePack czLanguagePack
;
842 extern const LanguagePack enLanguagePack
;
843 extern const LanguagePack esLanguagePack
;
844 extern const LanguagePack frLanguagePack
;
845 extern const LanguagePack deLanguagePack
;
846 extern const LanguagePack itLanguagePack
;
847 extern const LanguagePack plLanguagePack
;
848 extern const LanguagePack ptLanguagePack
;
849 extern const LanguagePack skLanguagePack
;
850 extern const LanguagePack seLanguagePack
;
851 extern const LanguagePack huLanguagePack
;
852 extern const LanguagePack ruLanguagePack
;
853 extern const LanguagePack
* const languagePacks
[];
854 #if defined(LANGUAGE_PACKS_DEFINITION)
855 const LanguagePack
* const languagePacks
[] = {
856 // alphabetical order
873 #define LANGUAGE_PACK_DECLARE(lng, name) const LanguagePack lng ## LanguagePack = { #lng, name, lng ## _ ## playNumber, lng ## _ ## playDuration }
875 #define LANGUAGE_PACK_DECLARE(lng, name) extern const LanguagePack lng ## LanguagePack = { #lng, name, lng ## _ ## playNumber, lng ## _ ## playDuration }
877 #define LANGUAGE_PACK_DECLARE_DEFAULT(lng, name) LANGUAGE_PACK_DECLARE(lng, name); const LanguagePack * currentLanguagePack = & lng ## LanguagePack; uint8_t currentLanguagePackIdx
878 inline PLAY_FUNCTION(playNumber
, getvalue_t number
, uint8_t unit
, uint8_t flags
) { currentLanguagePack
->playNumber(number
, unit
, flags
, id
); }
879 inline PLAY_FUNCTION(playDuration
, int seconds
, uint8_t flags
) { currentLanguagePack
->playDuration(seconds
, flags
, id
); }
881 PLAY_FUNCTION(playNumber
, getvalue_t number
, uint8_t unit
, uint8_t att
);
882 PLAY_FUNCTION(playDuration
, int seconds
);
883 #define LANGUAGE_PACK_DECLARE(lng, name)
884 #define LANGUAGE_PACK_DECLARE_DEFAULT(lng, name)
886 #define LANGUAGE_PACK_DECLARE(lng, name)
887 #define LANGUAGE_PACK_DECLARE_DEFAULT(lng, name)
891 extern const pm_char STR_MODELNAME
[];
892 extern const pm_char STR_PHASENAME
[];
893 extern const pm_char STR_MIXNAME
[];
894 extern const pm_char STR_INPUTNAME
[];
895 extern const pm_char STR_EXPONAME
[];
897 #define STR_MODELNAME STR_NAME
898 #define STR_PHASENAME STR_NAME
899 #define STR_MIXNAME STR_NAME
900 #define STR_EXPONAME STR_NAME
903 #if defined(COLORLCD)
904 #define TR_PHASES_HEADERS { TR_PHASES_HEADERS_NAME, TR_PHASES_HEADERS_SW, TR_PHASES_HEADERS_RUD_TRIM, TR_PHASES_HEADERS_ELE_TRIM, TR_PHASES_HEADERS_THT_TRIM, TR_PHASES_HEADERS_AIL_TRIM, TR_PHASES_HEADERS_CH5_TRIM, TR_PHASES_HEADERS_CH6_TRIM, TR_PHASES_HEADERS_FAD_IN, TR_PHASES_HEADERS_FAD_OUT }
905 #elif defined(PCBTARANIS)
906 #define TR_PHASES_HEADERS { HINT(TR_PHASES_HEADERS_NAME), HINT(TR_PHASES_HEADERS_SW), HINT(TR_PHASES_HEADERS_RUD_TRIM), HINT(TR_PHASES_HEADERS_ELE_TRIM), HINT(TR_PHASES_HEADERS_THT_TRIM), HINT(TR_PHASES_HEADERS_AIL_TRIM), HINT(TR_PHASES_HEADERS_FAD_IN), HINT(TR_PHASES_HEADERS_FAD_OUT) }
909 #define TR_LIMITS_HEADERS { HINT(TR_LIMITS_HEADERS_NAME), HINT(TR_LIMITS_HEADERS_SUBTRIM), HINT(TR_LIMITS_HEADERS_MIN), HINT(TR_LIMITS_HEADERS_MAX), HINT(TR_LIMITS_HEADERS_DIRECTION), HINT(TR_LIMITS_HEADERS_CURVE), HINT(TR_LIMITS_HEADERS_PPMCENTER), HINT(TR_LIMITS_HEADERS_SUBTRIMMODE) }
910 #define TR_LSW_HEADERS { HINT(TR_LSW_HEADERS_FUNCTION), HINT(TR_LSW_HEADERS_V1), HINT(TR_LSW_HEADERS_V2), HINT(TR_LSW_HEADERS_V2), HINT(TR_LSW_HEADERS_ANDSW), HINT(TR_LSW_HEADERS_DURATION), HINT(TR_LSW_HEADERS_DELAY) }
911 #define TR_GVAR_HEADERS { HINT(TR_GVAR_HEADERS_FM0), HINT(TR_GVAR_HEADERS_FM1), HINT(TR_GVAR_HEADERS_FM2), HINT(TR_GVAR_HEADERS_FM3), HINT(TR_GVAR_HEADERS_FM4), HINT(TR_GVAR_HEADERS_FM5), HINT(TR_GVAR_HEADERS_FM6), HINT(TR_GVAR_HEADERS_FM7), HINT(TR_GVAR_HEADERS_FM8) }
914 extern const char * const STR_PHASES_HEADERS
[];
915 extern const char * const STR_LIMITS_HEADERS
[];
916 extern const char * const STR_LSW_HEADERS
[];
917 extern const char * const STR_LSW_DESCRIPTIONS
[];
918 extern const char * const STR_GVAR_HEADERS
[];
922 extern const pm_char STR_TRAINER
[];
923 extern const pm_char STR_MODULE_BIND
[];
924 extern const pm_char STR_BINDING_1_8_TELEM_ON
[];
925 extern const pm_char STR_BINDING_1_8_TELEM_OFF
[];
926 extern const pm_char STR_BINDING_9_16_TELEM_ON
[];
927 extern const pm_char STR_BINDING_9_16_TELEM_OFF
[];
928 extern const pm_char STR_BINDING_25MW_CH1_8_TELEM_OFF
[];
929 extern const pm_char STR_BINDING_25MW_CH1_8_TELEM_ON
[];
930 extern const pm_char STR_BINDING_500MW_CH1_8_TELEM_OFF
[];
931 extern const pm_char STR_BINDING_500MW_CH9_16_TELEM_OFF
[];
932 extern const pm_char STR_BINDING_OPTION
[];
933 extern const pm_char STR_CHANNELRANGE
[];
934 extern const pm_char STR_ANTENNASELECTION
[];
935 extern const pm_char STR_ANTENNACONFIRM1
[];
936 extern const pm_char STR_ANTENNACONFIRM2
[];
937 extern const pm_char STR_SET
[];
938 extern const pm_char STR_PREFLIGHT
[];
939 extern const pm_char STR_CHECKLIST
[];
940 extern const pm_char STR_VIEW_NOTES
[];
941 extern const pm_char STR_MODEL_SELECT
[];
942 extern const pm_char STR_RESET_SUBMENU
[];
943 extern const pm_char STR_LOWALARM
[];
944 extern const pm_char STR_CRITICALALARM
[];
945 extern const pm_char STR_RSSIALARM_WARN
[];
946 extern const pm_char STR_NO_RSSIALARM
[];
947 extern const pm_char STR_DISABLE_ALARM
[];
948 extern const pm_char STR_TELEMETRY_TYPE
[];
949 extern const pm_char STR_TELEMETRY_SENSORS
[];
950 extern const pm_char STR_VALUE
[];
951 extern const pm_char STR_TOPLCDTIMER
[];
952 extern const pm_char STR_UNIT
[] PROGMEM
;
953 extern const pm_char STR_TELEMETRY_NEWSENSOR
[];
954 extern const pm_char STR_ID
[];
955 extern const pm_char STR_PRECISION
[];
956 extern const pm_char STR_RATIO
[];
957 extern const pm_char STR_FORMULA
[];
958 extern const pm_char STR_CELLINDEX
[];
959 extern const pm_char STR_LOGS
[];
960 extern const pm_char STR_OPTIONS
[];
961 extern const pm_char STR_ALTSENSOR
[];
962 extern const pm_char STR_CELLSENSOR
[];
963 extern const pm_char STR_GPSSENSOR
[];
964 extern const pm_char STR_CURRENTSENSOR
[];
965 extern const pm_char STR_AUTOOFFSET
[];
966 extern const pm_char STR_ONLYPOSITIVE
[];
967 extern const pm_char STR_FILTER
[];
968 extern const pm_char STR_TELEMETRYFULL
[];
969 extern const pm_char STR_SERVOS_OK
[];
970 extern const pm_char STR_SERVOS_KO
[];
971 extern const pm_char STR_INVERTED_SERIAL
[];
972 extern const pm_char STR_IGNORE_INSTANCE
[];
973 extern const pm_char STR_DISCOVER_SENSORS
[];
974 extern const pm_char STR_STOP_DISCOVER_SENSORS
[];
975 extern const pm_char STR_DELETE_ALL_SENSORS
[];
976 extern const pm_char STR_CONFIRMDELETE
[];
977 extern const pm_char STR_SELECT_WIDGET
[];
978 extern const pm_char STR_REMOVE_WIDGET
[];
979 extern const pm_char STR_WIDGET_SETTINGS
[];
980 extern const pm_char STR_REMOVE_SCREEN
[];
981 extern const pm_char STR_SETUP_WIDGETS
[];
982 extern const pm_char STR_USER_INTERFACE
[];
983 extern const pm_char STR_THEME
[];
984 extern const pm_char STR_SETUP
[];
985 extern const pm_char STR_MAINVIEWX
[];
986 extern const pm_char STR_LAYOUT
[];
987 extern const pm_char STR_ADDMAINVIEW
[];
988 extern const pm_char STR_BACKGROUND_COLOR
[];
989 extern const pm_char STR_MAIN_COLOR
[];
990 extern const pm_char STR_MULTI_RFPOWER
[];
994 extern const pm_char STR_BYTES
[];
995 extern const pm_char STR_ANTENNAPROBLEM
[];
996 extern const pm_char STR_MODULE
[];
997 extern const pm_char STR_ENABLE_POPUP
[];
998 extern const pm_char STR_DISABLE_POPUP
[];
999 extern const pm_char STR_POPUP
[];
1000 extern const pm_char STR_MIN
[];
1001 extern const pm_char STR_MAX
[];
1002 extern const pm_char STR_CURVE_PRESET
[];
1003 extern const pm_char STR_PRESET
[];
1004 extern const pm_char STR_MIRROR
[];
1005 extern const pm_char STR_CLEAR
[];
1006 extern const pm_char STR_RESET
[];
1007 extern const pm_char STR_COUNT
[];
1008 extern const pm_char STR_PT
[];
1009 extern const pm_char STR_PTS
[];
1010 extern const pm_char STR_SMOOTH
[];
1011 extern const pm_char STR_COPY_STICKS_TO_OFS
[];
1012 extern const pm_char STR_COPY_TRIMS_TO_OFS
[];
1013 extern const pm_char STR_INCDEC
[];
1014 extern const pm_char STR_GLOBALVAR
[];
1015 extern const pm_char STR_MIXSOURCE
[];
1016 extern const pm_char STR_CONSTANT
[];
1017 extern const pm_char STR_TOP_BAR
[];
1018 extern const pm_char STR_ALTITUDE
[];
1019 extern const pm_char STR_SCALE
[];
1020 extern const pm_char STR_VIEW_CHANNELS
[];
1021 extern const pm_char STR_POTWARNING
[];
1022 extern const pm_char STR_UART3MODE
[];
1023 extern const pm_char STR_THROTTLE_LABEL
[];
1024 extern const pm_char STR_SCRIPT
[];
1025 extern const pm_char STR_INPUTS
[];
1026 extern const pm_char STR_OUTPUTS
[];
1027 extern const pm_char STR_MENU_INPUTS
[];
1028 extern const pm_char STR_MENU_LUA
[];
1029 extern const pm_char STR_MENU_STICKS
[];
1030 extern const pm_char STR_MENU_POTS
[];
1031 extern const pm_char STR_MENU_MAX
[];
1032 extern const pm_char STR_MENU_HELI
[];
1033 extern const pm_char STR_MENU_TRIMS
[];
1034 extern const pm_char STR_MENU_SWITCHES
[];
1035 extern const pm_char STR_MENU_LOGICAL_SWITCHES
[];
1036 extern const pm_char STR_MENU_TRAINER
[];
1037 extern const pm_char STR_MENU_CHANNELS
[];
1038 extern const pm_char STR_MENU_GVARS
[];
1039 extern const pm_char STR_MENU_TELEMETRY
[];
1040 extern const pm_char STR_MENU_DISPLAY
[];
1041 extern const pm_char STR_MENU_OTHER
[];
1042 extern const pm_char STR_MENU_INVERT
[];
1043 extern const pm_char STR_JITTER_FILTER
[];
1047 extern const pm_char STR_UNLOCKED
[];
1048 extern const pm_char STR_MODS_FORBIDDEN
[];
1051 #if defined(PCBTARANIS) || defined(DSM2)
1052 extern const pm_char STR_MODULE_RANGE
[];
1055 #if defined(TELEMETRY_MAVLINK)
1056 extern const pm_char STR_MAVLINK_RC_RSSI_SCALE_LABEL
[];
1057 extern const pm_char STR_MAVLINK_PC_RSSI_EN_LABEL
[];
1058 extern const pm_char STR_MAVMENUSETUP_TITLE
[];
1059 extern const pm_char STR_MAVLINK_BAUD_LABEL
[];
1060 extern const pm_char STR_MAVLINK_INFOS
[];
1061 extern const pm_char STR_MAVLINK_MODE
[];
1062 extern const pm_char STR_MAVLINK_CUR_MODE
[];
1063 extern const pm_char STR_MAVLINK_ARMED
[];
1064 extern const pm_char STR_MAVLINK_BAT_MENU_TITLE
[];
1065 extern const pm_char STR_MAVLINK_BATTERY_LABEL
[];
1066 extern const pm_char STR_MAVLINK_RC_RSSI_LABEL
[];
1067 extern const pm_char STR_MAVLINK_PC_RSSI_LABEL
[];
1068 extern const pm_char STR_MAVLINK_NAV_MENU_TITLE
[];
1069 extern const pm_char STR_MAVLINK_COURSE
[];
1070 extern const pm_char STR_MAVLINK_HEADING
[];
1071 extern const pm_char STR_MAVLINK_BEARING
[];
1072 extern const pm_char STR_MAVLINK_ALTITUDE
[];
1073 extern const pm_char STR_MAVLINK_GPS
[];
1074 extern const pm_char STR_MAVLINK_NO_FIX
[];
1075 extern const pm_char STR_MAVLINK_SAT
[];
1076 extern const pm_char STR_MAVLINK_HDOP
[];
1077 extern const pm_char STR_MAVLINK_LAT
[];
1078 extern const pm_char STR_MAVLINK_LON
[];
1081 #if !defined(CPUM64)
1082 extern const pm_char STR_ABOUTUS
[];
1083 extern const pm_char STR_ABOUT_OPENTX_1
[];
1084 extern const pm_char STR_ABOUT_OPENTX_2
[];
1085 extern const pm_char STR_ABOUT_OPENTX_3
[];
1086 extern const pm_char STR_ABOUT_OPENTX_4
[];
1087 extern const pm_char STR_ABOUT_OPENTX_5
[];
1089 extern const pm_char STR_ABOUT_BERTRAND_1
[];
1090 extern const pm_char STR_ABOUT_BERTRAND_2
[];
1091 extern const pm_char STR_ABOUT_BERTRAND_3
[];
1093 extern const pm_char STR_ABOUT_MIKE_1
[];
1094 extern const pm_char STR_ABOUT_MIKE_2
[];
1095 extern const pm_char STR_ABOUT_MIKE_3
[];
1096 extern const pm_char STR_ABOUT_MIKE_4
[];
1098 extern const pm_char STR_ABOUT_ROMOLO_1
[];
1099 extern const pm_char STR_ABOUT_ROMOLO_2
[];
1100 extern const pm_char STR_ABOUT_ROMOLO_3
[];
1102 extern const pm_char STR_ABOUT_ANDRE_1
[];
1103 extern const pm_char STR_ABOUT_ANDRE_2
[];
1104 extern const pm_char STR_ABOUT_ANDRE_3
[];
1106 extern const pm_char STR_ABOUT_ROB_1
[];
1107 extern const pm_char STR_ABOUT_ROB_2
[];
1109 extern const pm_char STR_ABOUT_MARTIN_1
[];
1110 extern const pm_char STR_ABOUT_MARTIN_2
[];
1112 extern const pm_char STR_ABOUT_KJELL_1
[];
1113 extern const pm_char STR_ABOUT_KJELL_2
[];
1114 extern const pm_char STR_ABOUT_KJELL_3
[];
1115 extern const pm_char STR_ABOUT_KJELL_4
[];
1117 extern const pm_char STR_ABOUT_HARDWARE_1
[];
1118 extern const pm_char STR_ABOUT_HARDWARE_2
[];
1119 extern const pm_char STR_ABOUT_HARDWARE_3
[];
1121 extern const pm_char STR_ABOUT_PARENTS_1
[];
1122 extern const pm_char STR_ABOUT_PARENTS_2
[];
1123 extern const pm_char STR_ABOUT_PARENTS_3
[];
1124 extern const pm_char STR_ABOUT_PARENTS_4
[];
1127 #define CHR_SHORT TR_CHR_SHORT
1128 #define CHR_LONG TR_CHR_LONG
1129 #define CHR_TOGGLE TR_CHR_TOGGLE
1130 #define CHR_HOUR TR_CHR_HOUR
1131 #define CHR_INPUT TR_CHR_INPUT
1133 #endif // _TRANSLATIONS_H_