annotate Discovery/Src/tMenuSystem.c @ 949:c6b858f2e025 Evo_2_23

GNSS UTC in Date-Time menu: The UTC time provided by the gnss module is not shown in the date-time settings menu. If a valid time signal is available then the OSTC RTC may be set to it by selecting the UTC menu entry. The time zone has to be selected manually. This is possible using a separate edit line.
author Ideenmodellierer
date Sun, 22 Dec 2024 21:19:21 +0100
parents 44599695df41
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1 ///////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
2 /// -*- coding: UTF-8 -*-
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
3 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
4 /// \file Discovery/Src/tMenuSystem.c
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
5 /// \brief Main Template file for Menu Page System settings
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
6 /// \author heinrichs weikamp gmbh
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
7 /// \date 05-Aug-2014
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
8 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
9 /// \details
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
10 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
11 /// $Id$
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
12 ///////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
13 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
14 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
15 /// This program is free software: you can redistribute it and/or modify
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
16 /// it under the terms of the GNU General Public License as published by
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
17 /// the Free Software Foundation, either version 3 of the License, or
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
18 /// (at your option) any later version.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
19 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
20 /// This program is distributed in the hope that it will be useful,
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
21 /// but WITHOUT ANY WARRANTY; without even the implied warranty of
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
22 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
23 /// GNU General Public License for more details.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
24 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
25 /// You should have received a copy of the GNU General Public License
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
26 /// along with this program. If not, see <http://www.gnu.org/licenses/>.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
27 //////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
28
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
29 /* Includes ------------------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
30 #include "tMenu.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
31 #include "tMenuSystem.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
32 #include "tHome.h" // for enum CUSTOMVIEWS and init_t7_compass()
851
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
33 #include "t7.h"
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
34
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
35 static uint8_t customviewsSubpage = 0;
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
36
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
37 /* Private function prototypes -----------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
38 char customview_TXT2BYTE_helper(uint8_t customViewId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
39
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
40 void set_CustomsviewsSubpage(uint8_t page)
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
41 {
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
42 customviewsSubpage = page;
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
43 }
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
44
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
45 /* Exported functions --------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
46
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
47 uint32_t tMSystem_refresh(uint8_t line, char *text, uint16_t *tab, char *subtext)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
48 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
49 SSettings *data;
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
50 int i;
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
51 uint8_t textPointer;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
52 uint8_t RTEhigh, RTElow;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
53 RTC_DateTypeDef Sdate;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
54 RTC_TimeTypeDef Stime;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
55 const SDiveState * pStateReal = stateRealGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
56
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
57 data = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
58 textPointer = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
59 *tab = 300;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
60 *subtext = 0;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
61 char tmpString[15];
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
62
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
63 resetLineMask(StMSYS);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
64
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
65 // dive mode
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
66 if(actual_menu_content != MENU_SURFACE)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
67 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
68 uint8_t id;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
69
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
70 for(i=0; i<5;i++) /* fill maximum 5 items and leave last one for sub page selection */
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
71 {
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
72 id = cv_changelist[customviewsSubpage * 5 + i];
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
73 if(id == CVIEW_END) /* last list item? */
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
74 {
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
75 break;
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
76 }
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
77 else
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
78 {
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
79 text[textPointer++] = '\006' - CHECK_BIT_THOME(data->cv_configuration,id);
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
80 text[textPointer++] = ' ';
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
81 textPointer += snprintf(&text[textPointer], 60,
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
82 "%c%c\n\r",
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
83 TXT_2BYTE, customview_TXT2BYTE_helper(id));
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
84 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
85 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
86
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
87 for(;i<5;i++) /* clear empty lines in case menu shows less than 5 entries */
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
88 {
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
89 text[textPointer++]='\n';
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
90 text[textPointer++]='\r';
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
91 text[textPointer] = 0;
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
92 switch(i)
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
93 {
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
94 case 0: disableLine(StMSYS_Custom0);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
95 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
96 case 1: disableLine(StMSYS_Custom1);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
97 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
98 case 2: disableLine(StMSYS_Custom2);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
99 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
100 case 3: disableLine(StMSYS_Custom3);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
101 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
102 case 4: disableLine(StMSYS_Custom4);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
103 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
104 default:
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
105 case 5: disableLine(StMSYS_Custom5);
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
106 break;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
107 }
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
108 }
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 210
diff changeset
109
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
110 text[textPointer++] = TXT_2BYTE;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
111 text[textPointer++] = TXT2BYTE_ButtonNext;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
112 text[textPointer] = 0;
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
113
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
114 return StMSYS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
115 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
116
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
117 // surface mode
139
decb0461302a Get version from local memory instead from incoming data
Ideenmodellierer
parents: 138
diff changeset
118 getActualRTEandFONTversion(&RTEhigh,&RTElow,NULL,NULL);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
119
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
120 if((RTEhigh == 0xFF) || (RTElow == 0xFF))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
121 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
122 RTEhigh = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
123 RTElow = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
124 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
125
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
126 if((line == 0) || (line == 1))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
127 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
128 translateDate(pStateReal->lifeData.dateBinaryFormat, &Sdate);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
129 translateTime(pStateReal->lifeData.timeBinaryFormat, &Stime);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
130
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
131 text[textPointer++] = TXT_Date;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
132 getStringOfFormat_DDMMYY(tmpString,15);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
133 textPointer += snprintf(&text[textPointer], 40,"\016\016 %s ",tmpString);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
134 convertStringOfDate_DDMMYY(tmpString,15,Sdate.Date, Sdate.Month, Sdate.Year);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 851
diff changeset
135 textPointer += snprintf(&text[textPointer], 40,"\017\t%s ",tmpString);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
136
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
137 textPointer += snprintf(&text[textPointer], 60,
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
138 "%02d:%02d:%02d"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
139 "\n\r"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
140 ,Stime.Hours, Stime.Minutes, Stime.Seconds
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
141 );
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
142 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
143 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
144 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
145 strcpy(&text[textPointer],"\n\r");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
146 textPointer += 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
147 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
148
851
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
149 if (line == 0 || line == 2)
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
150 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
151 if(t7_customview_disabled(CVIEW_Timer))
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
152 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
153 text[textPointer++] = '\031'; /* change text color */
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
154 textPointer += snprintf(&text[textPointer], 21, "%c%c\t%u:%02u \016\016[m:ss]\017\n\r", TXT_2BYTE, TXT2BYTE_Timer, data->timerDurationS / 60, data->timerDurationS % 60);
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
155 disableLine(StMSYS_Timer);
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
156 text[textPointer++] = '\020'; /* restore text color */
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
157 }
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
158 else
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
159 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
160 textPointer += snprintf(&text[textPointer], 21, "%c%c\t%u:%02u \016\016[m:ss]\017\n\r", TXT_2BYTE, TXT2BYTE_Timer, data->timerDurationS / 60, data->timerDurationS % 60);
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
161 }
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
162 } else
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
163 {
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
164 textPointer += snprintf(&text[textPointer], 3, "\n\r");
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
165 }
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
166
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
167 if((line == 0) || (line == 3))
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
168 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
169 text[textPointer++] = TXT_Language;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
170 text[textPointer++] = '\t';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
171 text[textPointer++] = TXT_LanguageName;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
172 text[textPointer++] = '\n';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
173 text[textPointer++] = '\r';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
174 text[textPointer] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
175 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
176 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
177 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
178 strcpy(&text[textPointer],"\n\r");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
179 textPointer += 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
180 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
181
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
182 if((line == 0) || (line == 4))
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
183 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
184 text[textPointer++] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
185 text[textPointer++] = TXT2BYTE_Layout;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
186 text[textPointer++] = '\t';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
187
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
188 if(!data->showDebugInfo)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
189 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
190 text[textPointer++] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
191 if(data->nonMetricalSystem == 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
192 text[textPointer++] = TXT2BYTE_Units_metric;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
193 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
194 text[textPointer++] = TXT2BYTE_Units_feet;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
195
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
196 if(data->tX_colorscheme != 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
197 {
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
198 text[textPointer++] = ' ';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
199 text[textPointer++] = '/';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
200 text[textPointer++] = '\027';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
201 text[textPointer++] = ' ';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
202 text[textPointer++] = '0' + data->tX_colorscheme;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
203 text[textPointer++] = '\020';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
204 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
205 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
206 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
207 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
208 if(data->nonMetricalSystem == 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
209 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
210 text[textPointer++] = 'm';
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
211 text[textPointer++] = ' ';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
212 text[textPointer++] = '/';
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
213 text[textPointer++] = ' ';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
214 text[textPointer++] = 'C';
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
215 text[textPointer++] = ' ';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
216 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
217 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
218 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
219 text[textPointer++] = 'f';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
220 text[textPointer++] = 't';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
221 text[textPointer++] = ' ';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
222 text[textPointer++] = '/';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
223 text[textPointer++] = ' ';
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
224 text[textPointer++] = 'F';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
225 text[textPointer++] = ' ';
536
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
226 }
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
227 if(data->tX_colorscheme != 0)
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
228 {
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
229 text[textPointer++] = '/';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
230 text[textPointer++] = '\027';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
231 text[textPointer++] = ' ';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
232 text[textPointer++] = '0' + data->tX_colorscheme;
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
233 text[textPointer++] = ' ';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
234 text[textPointer++] = '\020';
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
235 }
54c5ec8416c4 Changed visualization of Depth / temperatur / debugview entry
Ideenmodellierer
parents: 520
diff changeset
236 text[textPointer++] = '/';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
237 text[textPointer++] = ' ';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
238 text[textPointer++] = 'd';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
239 text[textPointer++] = 'e';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
240 text[textPointer++] = 'b';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
241 text[textPointer++] = 'u';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
242 text[textPointer++] = 'g';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
243 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
244
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
245 text[textPointer++] = '\n';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
246 text[textPointer++] = '\r';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
247 text[textPointer] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
248 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
249 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
250 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
251 strcpy(&text[textPointer],"\n\r");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
252 textPointer += 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
253 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
254
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
255 if((line == 0) || (line == 5))
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
256 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
257 text[textPointer++] = TXT_Information;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
258 text[textPointer++] = '\t';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
259 textPointer += snprintf(&text[textPointer],29,"RTE %u.%u OS %i.%i.%i"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
260 ,RTEhigh
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
261 ,RTElow
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
262 ,firmwareDataGetPointer()->versionFirst
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
263 ,firmwareDataGetPointer()->versionSecond
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
264 ,firmwareDataGetPointer()->versionThird
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
265 );
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
266 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
267 strcpy(&text[textPointer],"\n\r");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
268 textPointer += 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
269
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 536
diff changeset
270 if((line == 0) || (line == 6))
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
271 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
272 text[textPointer++] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
273 text[textPointer++] = TXT2BYTE_ResetMenu;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
274 text[textPointer] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
275 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
276 strcpy(&text[textPointer],"\n\r");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
277 textPointer += 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
278
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
279 return StMSYS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
280 }
851
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
281 void tMSystem_checkLineStatus(void)
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
282 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
283 uint8_t localLineMask = 0;
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
284 uint8_t lineMask = getLineMask(StMSYS);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
285
851
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
286 if(t7_customview_disabled(CVIEW_Timer))
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
287 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
288 localLineMask |= 1 << 2;
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
289 }
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
290 if(lineMask != localLineMask)
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
291 {
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
292 updateMenu();
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
293 }
9f487ad38170 Added line checks for System Menu:
Ideenmodellierer
parents: 815
diff changeset
294 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
295
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
296 /* Private functions ---------------------------------------------------------*/