Mercurial > public > ostc4
view Discovery/Src/gfx_colors.c @ 471:73da921869d9 fix-bat-2
bugfix: implement battery charge percentage in dive header
This commit is (much) less trivial than the related 919e5cb51c92.
First, rename the CCRmode attribute (corresponding to byte Ox59) of
the SLogbookHeaderOSTC3. This byte (according to the hwOS interface
document) does not contain any CCR related value, but it contains
"battery information". Already since 2017, this byte is used from
libdivecomputer to interface the charge percentage. So, its
renamed from CCRmode to batteryCharge, to reflect its true purpose.
Now, simply add a batteryCharge attribute to the SLogbookHeader
(and see below why that is possible, without breaking things).
The remaining changes are trivial to implement battery charge
percentage in dive header.
Caveat: do not get confused by the exact role of the individual
logbook header types. SLogbookHeaderOSTC3 is the formal type of
the logbook format that the OSTC4 produces. This format is
supposed to identical to the format, as is used in hwOS for the
series of small OSTCs. Only some values of attributes are different.
For example, the OSTC4 supports VPM, so byte 0x79 (deco model used
for this dive) also has a value for VPM. But the SLogbookHeader
type, despite its name and structure, is *not* a true logbook
header, as it includes attributes that are not available in the
SLogbookHeaderOSTC3 formal header type.
Signed-off-by: Jan Mulder <jan@jlmulder.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Wed, 22 Apr 2020 13:08:57 +0200 |
parents | 5f11787b4f42 |
children | 998529b3e142 |
line wrap: on
line source
/** ****************************************************************************** * @file gfx_colors.c * @author heinrichs weikamp gmbh * @version V0.0.1 * @date 02-May-2014 * @brief All colors used are defined here * @verbatim ============================================================================== ##### How to use ##### ============================================================================== @endverbatim ****************************************************************************** * @attention * * <h2><center>© COPYRIGHT(c) 2014 heinrichs weikamp</center></h2> * ****************************************************************************** */ /* Includes ------------------------------------------------------------------*/ #include "gfx_colors.h" /* Exported variables --------------------------------------------------------*/ /* 0x0000FF00, gr�n 0x00FF0000, rot 0x000000FF, blau 0x00FFFF00, gelb 0x0000FFFF, cyan 0x00000000, black 0x000092D0, hw hellblau f�r Beschriftun */ uint32_t ColorLUT[] = { // ARGB 0x00FFFFFF, // \020 wei� 0x00777777, // \021 grau f�r inaktiv / hw 151027: war zuvor 0x00555555 grau 0x0050FF50, // \022 units 0x003060FF, // \023 blau 0x00FFFF00, // \024 + CLUT_WarningYellow 0x00FF0000, // \025 + CLUT_WarningRed 0x0000FF00, // \026 + CLUT_NiceGreen 0x00FFFFFF, // \027 DIVE_MainColorIfNotWhite\020 0x00FFFFFF, // \030 DIVE_PluginBoxMainColor 0x00777777, // \031 DIVE_PluginBoxGrey 0x0050FF50, // \032 DIVE_LabelColor 0x00FFFFFF, // CLUT_DIVE_FieldSeperatorLines 0x0050FF50, // CLUT_DIVE_pluginbox // old pink 0x00FF20FF 0x00FF00FF, // CLUT_NiceBlue descent graph (apnoe) 0x00FFFFFF, // CLUT_DIVE_SPARE22 - UNUSED 0x0000FF00, // CLUT_DiveMainLabel - fast nur Debugmode 0x00555555, // CLUT_pluginboxSurface 0x00101010, // CLUT_MenuLineUnselected 0x00000000, // CLUT_MenuLineUnselectedSeperator 0x00000000, // CLUT_MenuLineSelected 0x00000000, // CLUT_MenuEditLineSelected 0x008F8F00, // CLUT_MenuLineSelectedSides 0x008F8F00, // CLUT_MenuLineSelectedSeperator 0x00000000, // CLUT_MenuTopBackground 0x00FFFF00, // CLUT_Group0 - UNUSED 0x00646464, // CLUT_MenuEditCursor, 0x008C8C8C, // CLUT_MenuEditInfo, 0x0068F10D, // CLUT_MenuEditActive, - UNUSED 0x00FFFFFF, // CLUT_MenuEditButtonColor1, 0x00FFFFFF, // CLUT_MenuEditFieldRegular, 0x00000000, // CLUT_MenuEditFieldSelected, 0x00000000, // CLUT_MenuEditField0, 0x00FFFFFF, // CLUT_MenuEditField1, 0x00FFFFFF, // CLUT_MenuEditField2, 0x00FFFFFF, // CLUT_MenuEditField3, 0x00FFFFFF, // CLUT_MenuEditField4, 0x00FFFFFF, // CLUT_MenuEditField5, 0x00FFFFFF, // CLUT_MenuEditField6, 0x00FFFFFF, // CLUT_MenuEditField7, 0x00FFFFFF, // CLUT_MenuEditField8, 0x00FFFFFF, // CLUT_MenuEditField9, 0x00FFFFFF, // CLUT_MenuEditDigit, 0x0000AEFF, // CLUT_MenuPageGasOC 0x0000AE7D, // CLUT_MenuPageGasCC 0x00A7D744, // CLUT_MenuPageGasSP 0x00EEAA00, // CLUT_MenuPageXtra 0x00FF0000, // CLUT_MenuPageDeco 0x00FFC000,//0x00C4EACC, // CLUT_MenuPageDecoParameter 0x00AC00ff,//0x00E5AE18, // CLUT_MenuPageHardware 0x00ff00ff,//0x00E5AEFF, // CLUT_MenuPageSystem 0x00C4EACC,//0x00FFFF00, // CLUT_MenuPageDivePlanner 0x00000000, // CLUT_MenuPage9 - UNUSED 0x00000000, // CLUT_MenuPage10 - UNUSED 0x00FFFFFF, // CLUT_ButtonSymbols 0x000092D0, // CLUT_InfoSurface 0x000092D0, // CLUT_InfoDive - UNUSED 0x000092D0, // CLUT_InfoCompass 0x00A0A0A0, // CLUT_InfoCursor 0x008C8C8C, // CLUT_InfoInActive, 0x0068F10D, // CLUT_InfoActive, 0x00FFFFFF, // CLUT_InfoButtonColor1, 0x00FFFFFF, // CLUT_InfoFieldRegular, 0x00000000, // CLUT_InfoFieldSelected, - UNUSED 0x00FFFFFF, // CLUT_InfoField0 0x00FFFFFF, // CLUT_InfoField1 0x00FFFFFF, // CLUT_InfoField2 0x00FFFFFF, // CLUT_InfoField3 0x00FFFFFF, // CLUT_InfoField4 0x00FFFFFF, // CLUT_InfoField5 0x00FFFFFF, // CLUT_InfoField6 0x00FFFFFF, // CLUT_InfoField7 0x00FFFFFF, // CLUT_InfoField8 0x00FFFFFF, // CLUT_InfoField9 0x003060FF, // CLUT_InfoPageLogbook 0x00AAAAAA, // CLUT_LogbookGrid, 0x00FFFFFF, // CLUT_LogbookText 0x00FF0000, // CLUT_LogbookTemperature 0x00FF8000, // CLUT_GasSensor0 0x00FFFFFF, // CLUT_GasSensor1 0x0000FF00, // CLUT_GasSensor2 0x00FF0000, // CLUT_GasSensor3 0x000000FF, // CLUT_GasSensor4 0x00FFFF00, // CLUT_GasSensor5 0x0000FFFF, // CLUT_GasSensor6 0x00FF00FF, // CLUT_GasSensor7 0x00FFFFFF, // CLUT_GasSensor8 0x00FFFFFF, // CLUT_GasSensor9 0x00FFFFFF, // CLUT_GasSensor10 0x00FFFFFF, // CLUT_GasSensor11 0x00FFFFFF, // CLUT_GasSensor12 0x00FFFFFF, // CLUT_GasSensor13 0x00FFFFFF, // CLUT_GasSensor14 0x00FFFFFF, // CLUT_GasSensor15 0x00FF5050, // CLUT_CompassUserBackHeadingTick 0x00888888, // CLUT_CompassSubTick 0x00FFFFFF, // CLUT_CompassNorthTick 0x0050FF50, // CLUT_CompassUserHeadingTick 0x0000FF00, // CLUT_EverythingOkayGreen 0x000092D0, // CLUT_ButtonSurfaceScreen 0x00FFFFFF, // CLUT_BatteryStandard 0x0000FF00, // CLUT_BatteryCharging 0x00FF8000, // CLUT_BatteryProblem 0x00FFFFFF, // \027 CLUT_MainColor ---------- colorscheme 0 0x00FFFFFF, // \030 DIVE_PluginBoxMainColor colorscheme 0 0x00777777, // \031 DIVE_PluginBoxGrey colorscheme 0 0x0050FF50, // \032 DIVE_LabelColor colorscheme 0 0x00FFFFFF, // CLUT_DIVE_FieldSeperatorLines colorscheme 0 0x0050FF50, // CLUT_DIVE_pluginbox colorscheme 0 0x00FFFFFF, // CLUT_DIVE_SPARE21 colorscheme 0 0x00FFFFFF, // CLUT_DIVE_SPARE22 colorscheme 0 0x00F29400, // CLUT_MainColor --------------- colorscheme 1 0x00F29400, // \030 DIVE_PluginBoxMainColor colorscheme 1 0x00E2001A, // \031 DIVE_PluginBoxGrey colorscheme 1 0x00E2001A, // \032 DIVE_LabelColor colorscheme 1 0x00F29400, // CLUT_DIVE_FieldSeperatorLines colorscheme 1 0x00E2001A, // CLUT_DIVE_pluginbox colorscheme 1 0x00FFFFFF, // CLUT_DIVE_SPARE21 colorscheme 1 0x00FFFFFF, // CLUT_DIVE_SPARE22 colorscheme 1 0x0000FF00, // \027 CLUT_MainColor ---------- colorscheme 2 0x0000FF00, // \030 DIVE_PluginBoxMainColor colorscheme 2 0x0000948D, // \031 DIVE_PluginBoxGrey colorscheme 2 0x0000948D, // \032 DIVE_LabelColor colorscheme 2 0x0000FF00, // CLUT_DIVE_FieldSeperatorLines colorscheme 2 0x0000948D, // CLUT_DIVE_pluginbox colorscheme 2 0x00FFFFFF, // CLUT_DIVE_SPARE21 colorscheme 2 0x00FFFFFF, // CLUT_DIVE_SPARE22 colorscheme 2 0x0033A1D6, // CLUT_MainColor --------------- colorscheme 3 0x00FFFFFF, // \030 DIVE_PluginBoxMainColor colorscheme 3 0x00777777, // \031 DIVE_PluginBoxGrey colorscheme 3 0x000000FF, // \032 DIVE_LabelColor colorscheme 3 0x0033A1D6, // CLUT_DIVE_FieldSeperatorLines colorscheme 3 0x000000FF, // CLUT_DIVE_pluginbox colorscheme 3 0x00FFFFFF, // CLUT_DIVE_SPARE21 colorscheme 3 0x00FFFFFF, // CLUT_DIVE_SPARE22 colorscheme 3 }; /* Exported functions --------------------------------------------------------*/