annotate Discovery/Src/tMenuEditSystem.c @ 1026:5fedf7ba2392 GasConsumption

Added text based edit item: In previous version only numbers could be entered as data field. This changes introduces a edit field for entering text in upper characters. '_' are used for seperation because simple white spaces (' ') would cause problems in the handling of the edit field. String length is limited to eigth charecters.
author Ideenmodellierer
date Sun, 07 Sep 2025 18:55:45 +0200
parents 5924a2d1d3ba
children 158100a84ebd
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/tMenuEditSystem.c
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
5 /// \brief Main Template file for Menu Edit 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 "tMenuEditSystem.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
31
138
cc9c18075e00 Removed no longer supported scooter code
Ideenmodellierer
parents: 118
diff changeset
32 #include "data_exchange_main.h"
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
33 #include "externLogbookFlash.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
34 #include "gfx_fonts.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
35 #include "ostc.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
36 #include "settings.h" // for getLicence()
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
37 #include "tHome.h" // for enum CUSTOMVIEWS and init_t7_compass()
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
38 #include "tMenu.h"
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
39 #include "tMenuEdit.h"
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
40 #include "tMenuSystem.h"
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
41 #include "tMenuEditCustom.h"
389
ebc2b571a0b9 Fix case for case sensitive OS
Jan Mulder <jan@jlmulder.nl>
parents: 384
diff changeset
42 #include "motion.h"
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
43 #include "t7.h"
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
44 #include "math.h"
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
45
493
b560e474e319 Added possibility to switch between "classic" bigfont views and a selection with a new information combination
Ideenmodellierer
parents: 468
diff changeset
46
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
47 /*#define HAVE_DEBUG_VIEW */
379
0dbf550dc743 Added missing customerview selection
ideenmodellierer
parents: 373
diff changeset
48 static uint8_t infoPage = 0;
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
49
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
50 /* Private function prototypes -----------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
51 void openEdit_DateTime(void);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
52 void openEdit_DateFormat(void);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
53 void openEdit_Language(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
54 void openEdit_Design(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
55 void openEdit_Information(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
56 void openEdit_Reset(void);
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
57 void openEdit_Maintenance(void);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
58 //void openEdit_ShowDebugInfo(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
59 //void openEdit_Salinity(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
60
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
61 static uint32_t swapBytes(uint32_t source)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
62 {
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
63 uint32_t ret = 0;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
64
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
65 ret = ((source & 0x000000FF) << 24)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
66 | ((source & 0x0000FF00) << 8)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
67 | ((source & 0x00FF0000) >> 8)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
68 | ((source & 0xFF000000) >> 24);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
69
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
70 return ret;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
71 }
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
72
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
73
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
74 /* Announced function prototypes -----------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
75 uint8_t OnAction_Date (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
76 uint8_t OnAction_Time (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
567
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
77 uint8_t OnAction_12HR (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
78 uint8_t OnAction_Format (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
79 uint8_t OnAction_DDMMYY (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
80 uint8_t OnAction_MMDDYY (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
81 uint8_t OnAction_YYMMDD (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
82 uint8_t OnAction_DST (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
83 uint8_t OnAction_UTC (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
84 uint8_t OnAction_SetGnss (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
85 uint8_t OnAction_English (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
86 uint8_t OnAction_German (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
87 uint8_t OnAction_French (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
88 uint8_t OnAction_Italian (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
89 uint8_t OnAction_Espanol (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
90 //uint8_t OnAction_Design_t7 (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
91 //uint8_t OnAction_Design_t7ft (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
92 //uint8_t OnAction_Design_t3 (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
93
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
94 uint8_t OnAction_Units (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
95 uint8_t OnAction_Colorscheme (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
96 uint8_t OnAction_DebugInfo (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
97
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
98 uint8_t OnAction_Exit (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
99 uint8_t OnAction_Confirm (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
100 uint8_t OnAction_Maintenance (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
101 uint8_t OnAction_RebootRTE (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
102 uint8_t OnAction_ResetDeco (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
103 uint8_t OnAction_ResetAll (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
104 uint8_t OnAction_ResetLogbook (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
105 uint8_t OnAction_RebootMainCPU (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
106 uint8_t OnAction_Nothing (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
107 uint8_t OnAction_LogbookOffset(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
108 uint8_t OnAction_SetFactoryDefaults(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
109 uint8_t OnAction_SetBatteryCharge(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
110 uint8_t OnAction_AdjustSurfacePressure (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
468
aa1d71875e25 Moved and deactivated analyse sample buffer switch:
ideenmodellierer
parents: 446
diff changeset
111 #ifdef ENABLE_ANALYSE_SAMPLES
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
112 uint8_t OnAction_RecoverSampleIdx(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
468
aa1d71875e25 Moved and deactivated analyse sample buffer switch:
ideenmodellierer
parents: 446
diff changeset
113 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
114 #ifdef SCREENTEST
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
115 uint8_t OnAction_ScreenTest (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
116 #endif
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
117 uint8_t OnAction_Information (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
118 uint8_t OnAction_FlashBootloader (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
119
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
120 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
121 uint8_t OnAction_Salinity (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
122 uint8_t OnAction_TestCLog (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
123 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
124
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
125 /* Exported functions --------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
126
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
127 void openEdit_System(uint8_t line)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
128 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
129 set_globalState_Menu_Line(line);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
130 resetMenuEdit(CLUT_MenuPageSystem);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
131
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
132 if(actual_menu_content == MENU_SURFACE)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
133 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
134 switch(line)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
135 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
136 case 1:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
137 default:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
138 openEdit_DateTime();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
139 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
140 case 2:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
141 openEdit_Language();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
142 break;
999
ac25c35a3c97 New Tab for dynamic configuration:
Ideenmodellierer
parents: 988
diff changeset
143 case 3:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
144 openEdit_Design();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
145 break;
999
ac25c35a3c97 New Tab for dynamic configuration:
Ideenmodellierer
parents: 988
diff changeset
146 case 4:
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
147 openEdit_Information();
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
148 break;
999
ac25c35a3c97 New Tab for dynamic configuration:
Ideenmodellierer
parents: 988
diff changeset
149 case 5:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
150 openEdit_Reset();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
151 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
152 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
153 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
154 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
155 {
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
156 openEdit_CustomviewDivemodeMenu(line);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
157 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
158
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
159 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
160
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
161 /* Private functions ---------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
162
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
163
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
164 void refresh_DateTime()
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
165 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
166 RTC_DateTypeDef Sdate;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
167 RTC_TimeTypeDef Stime;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
168 uint8_t day,month,year,hour,minute;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
169 char text[32];
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
170 char formatStr[20];
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
171 SSettings *pSettings;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
172 const SFirmwareData *pFirmwareInfo;
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
173 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
174 uint8_t localHours = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
175 uint8_t localMinutes = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
176 #endif
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
177 pFirmwareInfo = firmwareDataGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
178 const SDiveState * pStateReal = stateRealGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
179
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
180 pSettings = settingsGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
181
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
182 translateDate(pStateReal->lifeData.dateBinaryFormat, &Sdate);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
183 translateTime(pStateReal->lifeData.timeBinaryFormat, &Stime);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
184 year = Sdate.Year;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
185 month = Sdate.Month;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
186 day = Sdate.Date;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
187 hour = Stime.Hours;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
188 minute= Stime.Minutes;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
189
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
190 if(year < pFirmwareInfo->release_year)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
191 year = pFirmwareInfo->release_year;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
192
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
193 if(month < 1)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
194 month = 1;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
195
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
196 if(day < 1)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
197 day = 1;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
198
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
199 getStringOfFormat_DDMMYY(formatStr, 20);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
200
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
201 text[0] = '\001';
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
202 text[1] = TXT_DateAndTime;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
203 text[2] = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
204
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
205 write_topline(text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
206
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
207 write_label_fix( 20, 340, ME_Y_LINE1, &FontT42, TXT_TimeConfig);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
208 write_label_fix( 20, 340, ME_Y_LINE2, &FontT42, TXT_Format);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
209 write_label_fix( 20, 340, ME_Y_LINE3, &FontT42, TXT_DateConfig);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
210 write_label_fix( 20, 790, ME_Y_LINE4, &FontT42, TXT_Format);
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
211 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
212 write_label_var( 20, 340, ME_Y_LINE5, &FontT42, "GNSS");
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
213 snprintf(text, 32, "%c%c", TXT_2BYTE, TXT2BYTE_TIMEZONE);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
214 write_label_var( 20, 340, ME_Y_LINE6, &FontT42, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
215 #endif
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
216
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
217
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
218 tMenuEdit_newInput(StMSYS1_Time, hour, minute, 0, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
219 tMenuEdit_set_on_off(StMSYS1_12HR, pSettings->amPMTime);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
220
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
221 switch(pSettings->date_format)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
222 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
223 default:
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
224 case DDMMYY: tMenuEdit_newInput(StMSYS1_Date, day, month, year, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
225 break;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
226 case MMDDYY: tMenuEdit_newInput(StMSYS1_Date, month, day, year, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
227 break;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
228 case YYMMDD: tMenuEdit_newInput(StMSYS1_Date, year, month, day, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
229 break;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
230 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
231 tMenuEdit_newButtonText(StMSYS1_FORMAT, formatStr);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
232
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
233 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
234 if(pStateReal->lifeData.gnssData.alive & GNSS_ALIVE_STATE_TIME)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
235 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
236 convertUTCToLocal(pStateReal->lifeData.gnssData.DateTime.hour, pStateReal->lifeData.gnssData.DateTime.min, &localHours, &localMinutes);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
237 convertStringOfDate_DDMMYY(formatStr, 20, pStateReal->lifeData.gnssData.DateTime.day
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
238 , pStateReal->lifeData.gnssData.DateTime.month
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
239 , pStateReal->lifeData.gnssData.DateTime.year);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
240 snprintf(text, 32, "%02d:%02d - %s", localHours, localMinutes, formatStr);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
241 tMenuEdit_newButtonText(StMSYS1_GNSSDT, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
242 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
243 else
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
244 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
245 snprintf(text, 32, "--:--");
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
246 write_label_var( 320, 790, ME_Y_LINE5, &FontT42, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
247 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
248 tMenuEdit_newInput(StMSYS1_ZONE, pSettings->timeZone.hours, pSettings->timeZone.minutes, 0, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
249 #endif
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
250 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
251 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
252 void openEdit_DateTime(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
253 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
254 RTC_DateTypeDef Sdate;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
255 RTC_TimeTypeDef Stime;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
256 uint8_t day,month,year,hour,minute;
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
257 char text[32];
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
258 char formatStr[20];
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
259 SSettings *pSettings;
730
9c65d226f4f6 Update sensor menu support for automatic sensor detection:
Ideenmodellierer
parents: 720
diff changeset
260 const SFirmwareData *pFirmwareInfo;
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
261
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
262 pFirmwareInfo = firmwareDataGetPointer();
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
263 const SDiveState * pStateReal = stateRealGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
264
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
265 pSettings = settingsGetPointer();
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
266
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
267 set_globalState(StMSYS1_DateTime);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
268 resetMenuEdit(CLUT_MenuPageSystem);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
269
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
270 translateDate(pStateReal->lifeData.dateBinaryFormat, &Sdate);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
271 translateTime(pStateReal->lifeData.timeBinaryFormat, &Stime);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
272 year = Sdate.Year;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
273 month = Sdate.Month;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
274 day = Sdate.Date;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
275 hour = Stime.Hours;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
276 minute= Stime.Minutes;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
277
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
278 if(year < pFirmwareInfo->release_year)
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
279 year = pFirmwareInfo->release_year;
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
280
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
281 if(month < 1)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
282 month = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
283
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
284 if(day < 1)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
285 day = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
286
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
287 getStringOfFormat_DDMMYY(formatStr, 20);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
288
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
289 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
290 text[1] = TXT_DateAndTime;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
291 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
292
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
293 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
294
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
295 write_label_fix( 20, 340, ME_Y_LINE1, &FontT42, TXT_TimeConfig);
567
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
296 write_label_fix( 20, 340, ME_Y_LINE2, &FontT42, TXT_Format);
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
297 write_label_fix( 20, 340, ME_Y_LINE3, &FontT42, TXT_DateConfig);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
298 write_label_fix( 20, 790, ME_Y_LINE4, &FontT42, TXT_Format);
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
299 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
300 write_label_var( 20, 340, ME_Y_LINE5, &FontT42, "GNSS");
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
301 snprintf(text, 32, "%c%c", TXT_2BYTE, TXT2BYTE_TIMEZONE);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
302 write_label_var( 20, 340, ME_Y_LINE6, &FontT42, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
303 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
304
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
305 write_field_2digit(StMSYS1_Time, 320, 780, ME_Y_LINE1, &FontT48, "##:##", (uint32_t)hour, (uint32_t)minute, 0, 0);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
306 write_field_on_off(StMSYS1_12HR, 320, 790, ME_Y_LINE2, &FontT48, "12 HR", pSettings->amPMTime);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
307
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
308 switch(pSettings->date_format)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
309 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
310 default:
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
311 case DDMMYY: write_field_2digit(StMSYS1_Date, 320, 780, ME_Y_LINE3, &FontT48, "##-##-20##", (uint32_t)day, (uint32_t)month, (uint32_t)year, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
312 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
313 case MMDDYY: write_field_2digit(StMSYS1_Date, 320, 780, ME_Y_LINE3, &FontT48, "##-##-20##", (uint32_t)month, (uint32_t)day, (uint32_t)year, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
314 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
315 case YYMMDD: write_field_2digit(StMSYS1_Date, 320, 780, ME_Y_LINE3, &FontT48, "20##-##-##", (uint32_t)year, (uint32_t)month, (uint32_t)day, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
316 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
317 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
318
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
319 write_field_button(StMSYS1_FORMAT, 320, 790, ME_Y_LINE4, &FontT48, formatStr);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
320
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
321 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
322 snprintf(text, 32, "--:--");
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
323 write_field_button(StMSYS1_GNSSDT, 320, 790, ME_Y_LINE5, &FontT48, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
324 write_field_sdigit(StMSYS1_ZONE, 320, 780, ME_Y_LINE6, &FontT48, "UTC: ###:###", pSettings->timeZone.hours, pSettings->timeZone.minutes,0,0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
325 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
326
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
327 setEvent(StMSYS1_Date, (uint32_t)OnAction_Date);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
328 setEvent(StMSYS1_Time, (uint32_t)OnAction_Time);
567
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
329 setEvent(StMSYS1_12HR, (uint32_t)OnAction_12HR);
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
330 setEvent(StMSYS1_FORMAT, (uint32_t)OnAction_Format);
988
d9290c76b840 OSTC4/5 joined code:
ideenmodellierer
parents: 959
diff changeset
331 #if defined ENABLE_GNSS_INTERN || defined ENABLE_GNSS_EXTERN
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
332 setEvent(StMSYS1_GNSSDT, (uint32_t)OnAction_SetGnss);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
333 setEvent(StMSYS1_ZONE, (uint32_t)OnAction_UTC);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
334 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
335 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
336 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
337
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
338
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
339 uint8_t OnAction_Date(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
340 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
341 uint8_t digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
342 uint32_t newDay, newMonth, newYear;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
343 RTC_DateTypeDef sdatestructure;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
344
730
9c65d226f4f6 Update sensor menu support for automatic sensor detection:
Ideenmodellierer
parents: 720
diff changeset
345 const SFirmwareData *pFirmwareInfo;
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
346 pFirmwareInfo = firmwareDataGetPointer();
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
347
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
348 uint8_t mapDMY[3];
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
349 switch(settingsGetPointer()->date_format)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
350 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
351 default:
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
352 case DDMMYY: mapDMY[0] = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
353 mapDMY[1] = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
354 mapDMY[2] = 2;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
355 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
356 case MMDDYY: mapDMY[0] = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
357 mapDMY[1] = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
358 mapDMY[2] = 2;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
359 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
360 case YYMMDD: mapDMY[0] = 2;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
361 mapDMY[1] = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
362 mapDMY[2] = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
363 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
364 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
365
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
366 if(action == ACTION_BUTTON_ENTER)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
367 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
368 return digitContent;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
369 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
370 if(action == ACTION_BUTTON_ENTER_FINAL)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
371 {
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
372 switch(settingsGetPointer()->date_format)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
373 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
374 default:
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
375 case DDMMYY: evaluateNewString(editId, &newDay, &newMonth, &newYear, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
376 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
377 case MMDDYY: evaluateNewString(editId, &newMonth, &newDay, &newYear, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
378 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
379 case YYMMDD: evaluateNewString(editId, &newYear, &newMonth, &newDay, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
380 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
381 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
382
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
383 if(newDay == 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
384 newDay = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
385 if(newDay > 31)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
386 newDay = 31;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
387 if(newMonth == 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
388 newMonth = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
389 if(newMonth > 12)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
390 newMonth = 12;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
391 if((newMonth == 2) && (newDay > 29))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
392 newDay = 29;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
393 if((newDay > 30) && ((newMonth == 4) ||(newMonth == 6) ||(newMonth == 9) ||(newMonth == 11)))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
394 newDay = 30;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
395 if(newYear < 17)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
396 newYear = 17;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
397 if(newYear > 99)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
398 newYear = 99;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
399
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
400 sdatestructure.Date = newDay;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
401 sdatestructure.Month = newMonth;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
402 sdatestructure.Year = newYear;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
403 setWeekday(&sdatestructure);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
404
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
405 setDate(sdatestructure);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
406
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
407 switch(settingsGetPointer()->date_format)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
408 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
409 default:
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
410 case DDMMYY: tMenuEdit_newInput(editId, newDay, newMonth, newYear, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
411 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
412 case MMDDYY: tMenuEdit_newInput(editId, newMonth, newDay, newYear, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
413 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
414 case YYMMDD: tMenuEdit_newInput(editId, newYear, newMonth, newDay, 0);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
415 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
416 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
417
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
418 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
419 }
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
420 if(action == ACTION_BUTTON_NEXT) /* clip values to a specific range e.g. 12 months */
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
421 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
422 digitContentNew = digitContent + 1;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
423
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
424 if((blockNumber == mapDMY[0]) && (digitContentNew > '0' + 31))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
425 {
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
426 digitContentNew = '1';
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
427 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
428 if((blockNumber == mapDMY[1]) && (digitContentNew > '0' + 12))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
429 {
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
430 digitContentNew = '1';
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
431 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
432 if((blockNumber == mapDMY[2]) && (digitContentNew > '0' + pFirmwareInfo->release_year + 10))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
433 {
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
434 digitContentNew = '0' + pFirmwareInfo->release_year;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
435 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
436 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
437 }
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
438 if(action == ACTION_BUTTON_BACK) /* clip values to a specific range e.g. 12 months */
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
439 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
440 digitContentNew = digitContent - 1;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
441 if((blockNumber == mapDMY[0]) && (digitContentNew < '1'))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
442 {
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
443 digitContentNew = '0' + 31;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
444 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
445 if((blockNumber == mapDMY[1]) && (digitContentNew < '1'))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
446 {
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
447 digitContentNew = '0' + 12;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
448 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
449 if((blockNumber == mapDMY[2]) && (digitContentNew < '0' + pFirmwareInfo->release_year))
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
450 {
720
4f70155362d2 Bugfix set date (year):
Ideenmodellierer
parents: 671
diff changeset
451 digitContentNew = '0' + pFirmwareInfo->release_year + 10;
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
452 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
453 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
454 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
455 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
456 if(action == ACTION_BUTTON_NEXT)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
457 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
458 digitContentNew = digitContent + 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
459 if((blockNumber == 2) && (digitNumber == 0) && (digitContentNew > '2'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
460 digitContentNew = '1';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
461 if((blockNumber == 0) && (digitNumber == 0) && (digitContentNew > '3'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
462 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
463 if((blockNumber == 1) && (digitNumber == 0) && (digitContentNew > '1'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
464 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
465 if(digitContentNew > '9')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
466 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
467 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
468 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
469 if(action == ACTION_BUTTON_BACK)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
470 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
471 digitContentNew = digitContent - 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
472 if((blockNumber == 2) && (digitNumber == 0) && (digitContentNew < '1'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
473 digitContentNew = '2';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
474 if((blockNumber == 0) && (digitNumber == 0) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
475 digitContentNew = '3';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
476 if((blockNumber == 1) && (digitNumber == 0) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
477 digitContentNew = '1';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
478 if(digitContentNew < '0')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
479 digitContentNew = '9';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
480 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
481 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
482 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
483 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
484 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
485
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
486
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
487 uint8_t OnAction_Time(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
488 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
489 uint8_t digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
490 uint32_t newHour, newMinute;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
491 RTC_TimeTypeDef stimestructure;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
492
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
493 if(action == ACTION_BUTTON_ENTER)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
494 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
495 return digitContent;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
496 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
497 if(action == ACTION_BUTTON_ENTER_FINAL)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
498 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
499 evaluateNewString(editId, &newHour, &newMinute, 0, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
500 if(newHour > 23)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
501 newHour = 23;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
502 if(newMinute > 59)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
503 newMinute = 59;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
504
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
505 stimestructure.Hours = newHour;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
506 stimestructure.Minutes = newMinute;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
507 stimestructure.Seconds = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
508
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
509 setTime(stimestructure);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
510
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
511 tMenuEdit_newInput(editId, newHour, newMinute, 0, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
512 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
513 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
514 if(action == ACTION_BUTTON_NEXT)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
515 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
516 digitContentNew = digitContent + 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
517 if((blockNumber == 0) && (digitContentNew > '0' + 23))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
518 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
519 if((blockNumber == 1) && (digitContentNew > '0' + 59))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
520 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
521 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
522 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
523 if(action == ACTION_BUTTON_BACK)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
524 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
525 digitContentNew = digitContent - 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
526 if((blockNumber == 0) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
527 digitContentNew = '0' + 23;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
528 if((blockNumber == 1) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
529 digitContentNew = '0' + 59;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
530 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
531 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
532 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
533 if(action == ACTION_BUTTON_NEXT)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
534 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
535 digitContentNew = digitContent + 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
536 if((blockNumber == 0) && (digitNumber == 0) && (digitContentNew > '2'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
537 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
538 if((blockNumber == 1) && (digitNumber == 0) && (digitContentNew > '5'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
539 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
540 if(digitContentNew > '9')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
541 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
542 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
543 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
544 if(action == ACTION_BUTTON_BACK)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
545 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
546 digitContentNew = digitContent - 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
547 if((blockNumber == 0) && (digitNumber == 0) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
548 digitContentNew = '2';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
549 if((blockNumber == 1) && (digitNumber == 0) && (digitContentNew < '0'))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
550 digitContentNew = '5';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
551 if(digitContentNew < '0')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
552 digitContentNew = '9';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
553 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
554 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
555 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
556 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
557 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
558
567
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
559 uint8_t OnAction_12HR(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
560 {
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
561 SSettings *pSettings;
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
562
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
563 pSettings = settingsGetPointer();
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
564 pSettings->amPMTime = !(pSettings->amPMTime);
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
565
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
566 tMenuEdit_set_on_off(editId, pSettings->amPMTime);
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
567
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
568 return UNSPECIFIC_RETURN;
1c95f811967c -Add 12HR Time Support
izzni
parents: 558
diff changeset
569 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
570
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
571 uint8_t OnAction_SetGnss(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
572 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
573 RTC_DateTypeDef sdatestructure;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
574 RTC_TimeTypeDef stimestructure;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
575 uint8_t localHours = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
576 uint8_t localMinutes = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
577
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
578 const SDiveState * pStateReal = stateRealGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
579
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
580 if(pStateReal->lifeData.gnssData.alive & GNSS_ALIVE_STATE_TIME)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
581 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
582 convertUTCToLocal(pStateReal->lifeData.gnssData.DateTime.hour, pStateReal->lifeData.gnssData.DateTime.min, &localHours, &localMinutes);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
583 stimestructure.Hours = localHours;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
584 stimestructure.Minutes = localMinutes;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
585 stimestructure.Seconds = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
586 setTime(stimestructure);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
587
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
588 sdatestructure.Date = pStateReal->lifeData.gnssData.DateTime.day;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
589 sdatestructure.Month = pStateReal->lifeData.gnssData.DateTime.month;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
590 sdatestructure.Year = pStateReal->lifeData.gnssData.DateTime.year;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
591 setWeekday(&sdatestructure);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
592 setDate(sdatestructure);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
593 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
594 return UNSPECIFIC_RETURN;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
595 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
596
944
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
597 void openEdit_DateFormat(void)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
598 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
599 char text[32];
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
600 SSettings *pSettings;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
601
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
602 uint8_t ddmmyy = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
603 uint8_t mmddyy= 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
604 uint8_t yymmdd = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
605
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
606 pSettings = settingsGetPointer();
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
607
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
608
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
609 set_globalState(StMSYS1_FORMAT);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
610 resetMenuEdit(CLUT_MenuPageSystem);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
611 setBackMenu((uint32_t)openEdit_DateTime,0,4);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
612
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
613 switch(pSettings->date_format)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
614 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
615 default:
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
616 case DDMMYY: ddmmyy = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
617 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
618 case MMDDYY: mmddyy = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
619 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
620 case YYMMDD: yymmdd = 1;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
621 break;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
622 };
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
623
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
624 text[0] = '\001';
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
625 text[1] = TXT_Format;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
626 text[2] = 0;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
627
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
628 write_topline(text);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
629
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
630 write_label_fix( 20, 790, ME_Y_LINE2, &FontT42, TXT_Format);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
631
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
632 write_field_on_off(StMSYS1_DDMMYY, 320, 790, ME_Y_LINE1, &FontT48, "DDMMYY", ddmmyy);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
633 write_field_on_off(StMSYS1_MMDDYY, 320, 790, ME_Y_LINE2, &FontT48, "MMDDYY", mmddyy);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
634 write_field_on_off(StMSYS1_YYMMDD, 320, 790, ME_Y_LINE3, &FontT48, "YYMMDD", yymmdd);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
635
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
636 setEvent(StMSYS1_DDMMYY, (uint32_t)OnAction_DDMMYY);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
637 setEvent(StMSYS1_MMDDYY, (uint32_t)OnAction_MMDDYY);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
638 setEvent(StMSYS1_YYMMDD, (uint32_t)OnAction_YYMMDD);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
639
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
640 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
641 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
642
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
643 uint8_t OnAction_Format(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
644 {
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
645 openEdit_DateFormat();
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
646
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
647 return UNSPECIFIC_RETURN;
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
648 }
44599695df41 Restructure Date/Time menu:
Ideenmodellierer
parents: 884
diff changeset
649
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
650 uint8_t OnAction_DDMMYY(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
651 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
652 SSettings *pSettings;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
653
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
654 pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
655 pSettings->date_format = DDMMYY;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
656
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
657 tMenuEdit_set_on_off(editId, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
658 tMenuEdit_set_on_off(StMSYS1_MMDDYY, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
659 tMenuEdit_set_on_off(StMSYS1_YYMMDD, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
660
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
661 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
662 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
663
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
664
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
665 uint8_t OnAction_MMDDYY(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
666 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
667 SSettings *pSettings;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
668
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
669 pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
670 pSettings->date_format = MMDDYY;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
671
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
672 tMenuEdit_set_on_off(editId, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
673 tMenuEdit_set_on_off(StMSYS1_DDMMYY, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
674 tMenuEdit_set_on_off(StMSYS1_YYMMDD, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
675
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
676 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
677 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
678
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
679
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
680 uint8_t OnAction_YYMMDD(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
681 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
682 SSettings *pSettings;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
683
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
684 pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
685 pSettings->date_format = YYMMDD;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
686
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
687 tMenuEdit_set_on_off(editId, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
688 tMenuEdit_set_on_off(StMSYS1_MMDDYY, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
689 tMenuEdit_set_on_off(StMSYS1_DDMMYY, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
690
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
691 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
692 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
693
949
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
694 uint8_t OnAction_UTC(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
695 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
696 SSettings *settings = settingsGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
697 const SDiveState * pStateReal = stateRealGetPointer();
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
698 int32_t utcHour;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
699 uint32_t utcMinutes;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
700 uint8_t digitContentNew;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
701 uint8_t localHours = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
702 uint8_t localMinutes = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
703 char text[32];
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
704 char timeStr[20];
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
705
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
706 switch (action) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
707 case ACTION_BUTTON_ENTER:
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
708
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
709 return digitContent;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
710 case ACTION_BUTTON_ENTER_FINAL:
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
711 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
712
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
713 evaluateNewString(editId, (uint32_t *)&utcHour, &utcMinutes, NULL, NULL);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
714
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
715 if (utcHour > 14) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
716 utcHour = 14;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
717 } else if (utcHour < -12) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
718 utcHour = -12;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
719 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
720
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
721 if (utcMinutes % 15 != 0)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
722 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
723 utcMinutes = (utcMinutes / 15) * 15;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
724 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
725 if(utcMinutes > 45)
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
726 {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
727 utcMinutes = 45;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
728 } else if (utcMinutes < 0) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
729 utcMinutes = 0;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
730 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
731 settings->timeZone.hours = utcHour;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
732 settings->timeZone.minutes = utcMinutes;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
733
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
734 tMenuEdit_newInput(editId, ((input_u)utcHour).uint32, utcMinutes, 0, 0);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
735 convertUTCToLocal(pStateReal->lifeData.gnssData.DateTime.hour, pStateReal->lifeData.gnssData.DateTime.min, &localHours, &localMinutes);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
736 convertStringOfDate_DDMMYY(timeStr, 20, pStateReal->lifeData.gnssData.DateTime.day
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
737 , pStateReal->lifeData.gnssData.DateTime.month
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
738 , pStateReal->lifeData.gnssData.DateTime.year);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
739 snprintf(text, 32, "%2d:%2d - %s", localHours, localMinutes, timeStr);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
740 tMenuEdit_newButtonText(StMSYS1_GNSSDT, text);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
741 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
742
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
743 break;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
744 case ACTION_BUTTON_NEXT:
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
745 if ((blockNumber == 0) && (digitNumber == 0)) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
746 digitContentNew = togglePlusMinus(digitContent);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
747 } else {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
748 digitContentNew = digitContent + 1;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
749 if (digitContentNew > '9') {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
750 digitContentNew = '0';
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
751 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
752 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
753
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
754 return digitContentNew;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
755 case ACTION_BUTTON_BACK:
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
756 if ((blockNumber == 0) && (digitNumber == 0)) {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
757 digitContentNew = togglePlusMinus(digitContent);
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
758 } else {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
759 digitContentNew = digitContent - 1;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
760 if (digitContentNew < '0') {
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
761 digitContentNew = '9';
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
762 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
763 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
764 return digitContentNew;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
765 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
766 return UNSPECIFIC_RETURN;
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
767 }
c6b858f2e025 GNSS UTC in Date-Time menu:
Ideenmodellierer
parents: 944
diff changeset
768
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
769
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
770 uint8_t OnAction_DST(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
771 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
772 RTC_TimeTypeDef stimestructure;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
773 uint8_t newDST;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
774
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
775 get_RTC_DateTime(0, &stimestructure);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
776 newDST = stimestructure.DayLightSaving;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
777 if(newDST)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
778 newDST = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
779 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
780 newDST = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
781 stimestructure.DayLightSaving = newDST;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
782 set_RTC_DateTime(0, &stimestructure);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
783
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
784 tMenuEdit_set_on_off(editId, newDST);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
785
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
786 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
787 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
788
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
789
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
790 void openEdit_Language(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
791 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
792 char text[32];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
793 uint8_t actualLanguage, active;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
794 SSettings *pSettings;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
795
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
796 pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
797 actualLanguage = pSettings->selected_language;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
798
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
799 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
800 text[1] = TXT_Language;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
801 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
802 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
803
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
804 text[0] = TXT_LanguageName;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
805 text[1] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
806
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
807 pSettings->selected_language = LANGUAGE_English;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
808 if( actualLanguage == pSettings->selected_language)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
809 active = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
810 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
811 active = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
812 write_field_on_off(StMSYS2_English, 30, 500, ME_Y_LINE1, &FontT48, text, active);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
813
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
814 pSettings->selected_language = LANGUAGE_German;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
815 if( actualLanguage == pSettings->selected_language)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
816 active = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
817 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
818 active = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
819 write_field_on_off(StMSYS2_German, 30, 800, ME_Y_LINE2, &FontT48, text, active);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
820
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
821 pSettings->selected_language = LANGUAGE_French;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
822 if( actualLanguage == pSettings->selected_language)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
823 active = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
824 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
825 active = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
826 write_field_on_off(StMSYS2_French, 30, 800, ME_Y_LINE3, &FontT48, text, active);
55
a7683f9765da Italian activated (needs some fine tuning), special characters (?,?,?,?,? and others) currently not working...
heinrichsweikamp
parents: 38
diff changeset
827
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
828
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
829 pSettings->selected_language = LANGUAGE_Italian;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
830 if( actualLanguage == pSettings->selected_language)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
831 active = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
832 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
833 active = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
834 write_field_on_off(StMSYS2_Italian, 30, 800, ME_Y_LINE4, &FontT48, text, active);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
835
102
4276d56eb37c hPa instead of mbar, enabled Spanish language
heinrichsweikamp
parents: 64
diff changeset
836
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
837 pSettings->selected_language = LANGUAGE_Espanol;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
838 if( actualLanguage == pSettings->selected_language)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
839 active = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
840 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
841 active = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
842 write_field_on_off(StMSYS2_Espanol, 30, 800, ME_Y_LINE5, &FontT48, text, active);
102
4276d56eb37c hPa instead of mbar, enabled Spanish language
heinrichsweikamp
parents: 64
diff changeset
843
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
844 pSettings->selected_language = actualLanguage;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
845
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
846 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
847
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
848 setEvent(StMSYS2_English, (uint32_t)OnAction_English);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
849 setEvent(StMSYS2_German, (uint32_t)OnAction_German);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
850 setEvent(StMSYS2_French, (uint32_t)OnAction_French);
55
a7683f9765da Italian activated (needs some fine tuning), special characters (?,?,?,?,? and others) currently not working...
heinrichsweikamp
parents: 38
diff changeset
851 setEvent(StMSYS2_Italian, (uint32_t)OnAction_Italian);
102
4276d56eb37c hPa instead of mbar, enabled Spanish language
heinrichsweikamp
parents: 64
diff changeset
852 setEvent(StMSYS2_Espanol, (uint32_t)OnAction_Espanol);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
853 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
854
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
855
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
856 uint8_t OnAction_English (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
857 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
858 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
859 pSettings->selected_language = LANGUAGE_English;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
860 return EXIT_TO_MENU_WITH_LOGO;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
861 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
862
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
863
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
864 uint8_t OnAction_German (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
865 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
866 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
867 pSettings->selected_language = LANGUAGE_German;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
868 return EXIT_TO_MENU_WITH_LOGO;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
869 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
870
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
871
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
872 uint8_t OnAction_French (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
873 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
874 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
875 pSettings->selected_language = LANGUAGE_French;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
876 return EXIT_TO_MENU_WITH_LOGO;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
877 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
878
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
879
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
880 uint8_t OnAction_Italian (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
881 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
882 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
883 pSettings->selected_language = LANGUAGE_Italian;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
884 return EXIT_TO_MENU_WITH_LOGO;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
885 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
886
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
887
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
888 uint8_t OnAction_Espanol (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
889 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
890 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
891 pSettings->selected_language = LANGUAGE_Espanol;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
892 return EXIT_TO_MENU_WITH_LOGO;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
893 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
894
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
895
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
896 void openEdit_Design(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
897 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
898 refresh_Design();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
899
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
900 write_field_button(StMSYS3_Units, 400, 700, ME_Y_LINE1, &FontT48, "");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
901 write_field_button(StMSYS3_Colors, 400, 700, ME_Y_LINE2, &FontT48, "");
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
902 #ifdef HAVE_DEBUG_VIEW
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
903 write_field_button(StMSYS3_Debug, 400, 700, ME_Y_LINE3, &FontT48, "");
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
904 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
905 setEvent(StMSYS3_Units, (uint32_t)OnAction_Units);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
906 setEvent(StMSYS3_Colors, (uint32_t)OnAction_Colorscheme);
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
907 #ifdef HAVE_DEBUG_VIEW
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
908 setEvent(StMSYS3_Debug, (uint32_t)OnAction_DebugInfo);
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
909 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
910 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
911
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
912
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
913 void refresh_Design(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
914 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
915 char text[32];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
916
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
917 // header
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
918 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
919 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
920 text[2] = TXT2BYTE_Layout;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
921 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
922 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
923
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
924 // units
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
925 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
926 text[1] = TXT2BYTE_Units;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
927 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
928 write_label_var( 30, 200, ME_Y_LINE1, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
929
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
930 if(settingsGetPointer()->nonMetricalSystem)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
931 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
932 text[1] = TXT2BYTE_Units_feet;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
933 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
934 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
935 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
936 text[1] = TXT2BYTE_Units_metric;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
937 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
938 write_label_var( 400, 700, ME_Y_LINE1, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
939
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
940 // colorscheme
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
941 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
942 text[1] = TXT2BYTE_Farbschema;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
943 text[2] = 0;
118
ee7f2cd9b9b4 Enlarge text limits to get string displayed completly
Ideenmodellierer
parents: 103
diff changeset
944 write_label_var( 30, 300, ME_Y_LINE2, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
945
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
946 text[0] = '0' + settingsGetPointer()->tX_colorscheme;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
947 text[1] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
948 write_label_var( 400, 700, ME_Y_LINE2, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
949
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
950 #ifdef HAVE_DEBUG_VIEW
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
951 // specials
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
952 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
953 text[1] = TXT2BYTE_ShowDebug;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
954 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
955 write_label_var( 30, 700, ME_Y_LINE3, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
956
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
957 if(settingsGetPointer()->showDebugInfo)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
958 text[0] = '\005';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
959 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
960 text[0] = '\006';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
961 text[1] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
962 write_label_var( 400, 700, ME_Y_LINE3, &FontT48, text);
343
c9d217b110cc Added compile switch to enable debug view option in system menu
ideenmodellierer
parents: 259
diff changeset
963 #endif
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
964
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
965 // design
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
966 text[0] = TXT_Depth;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
967 text[1] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
968 write_content( 30, 700, ME_Y_LINE4, &FontT24, text, CLUT_Font031);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
969 write_content( 30, 700, ME_Y_LINE4 + 30 + 70, &FontT48, "___________", CLUT_DIVE_FieldSeperatorLines);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
970 write_content(280, 700, ME_Y_LINE4 + 30 + 70 - 3, &FontT48, "|", CLUT_DIVE_pluginbox);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
971 write_content(290, 700, ME_Y_LINE4 + 30 + 70 - 37, &FontT48, "_______________", CLUT_DIVE_pluginbox);
884
940f8e132638 Minor screen cleanup:
Ideenmodellierer
parents: 854
diff changeset
972 write_content( 30, 700, ME_Y_LINE4 + 42, &FontT144, "24.7", CLUT_Font027);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
973
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
974 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
975 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
976
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
977
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
978 uint8_t OnAction_Units(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
979 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
980 settingsGetPointer()->nonMetricalSystem = !(settingsGetPointer()->nonMetricalSystem);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
981 return EXIT_TO_MENU_WITH_LOGO;//UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
982 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
983
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
984
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
985 uint8_t OnAction_Colorscheme(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
986 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
987 uint8_t newColorscheme;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
988
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
989 newColorscheme = settingsGetPointer()->tX_colorscheme + 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
990
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
991 if(newColorscheme > 3)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
992 newColorscheme = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
993
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
994 settingsGetPointer()->tX_colorscheme = newColorscheme;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
995 GFX_use_colorscheme(newColorscheme);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
996 tHome_init_compass();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
997 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
998 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
999
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1000
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1001 uint8_t OnAction_DebugInfo(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1002 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1003 settingsGetPointer()->showDebugInfo = !(settingsGetPointer()->showDebugInfo);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1004 return UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1005 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1006
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1007
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1008
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1009
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1010 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1011 uint8_t OnAction_Design_t7ft (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1012 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1013 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1014 if((pSettings->design == 7) && pSettings->nonMetricalSystem)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1015 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1016 pSettings->design = 7;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1017 pSettings->nonMetricalSystem = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1018 tMenuEdit_set_on_off(StMSYS3_t7, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1019 tMenuEdit_set_on_off(StMSYS3_t7ft, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1020 tMenuEdit_set_on_off(StMSYS3_t3, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1021 return UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1022 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1023
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1024
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1025 uint8_t OnAction_Design_t7 (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1026 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1027 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1028 if((pSettings->design == 7) && (pSettings->nonMetricalSystem == 0))
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1029 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1030 pSettings->design = 7;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1031 pSettings->nonMetricalSystem = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1032 tMenuEdit_set_on_off(StMSYS3_t7, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1033 tMenuEdit_set_on_off(StMSYS3_t7ft, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1034 tMenuEdit_set_on_off(StMSYS3_t3, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1035 return UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1036 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1037
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1038
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1039 uint8_t OnAction_Design_t3 (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1040 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1041 SSettings *pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1042 if(pSettings->design == 3)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1043 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1044 pSettings->design = 3;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1045 pSettings->nonMetricalSystem = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1046 tMenuEdit_set_on_off(StMSYS3_t7, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1047 tMenuEdit_set_on_off(StMSYS3_t7ft,0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1048 tMenuEdit_set_on_off(StMSYS3_t3, 1);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1049 return UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1050 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1051 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1052
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1053
368
50ea68c7a153 Added menu item for motion detection. There are several possibility to use motion detection for user action input. To select of the a new menu entry has been added to the Sys2 =>Custom View Menu (Variables in german)
ideenmodellierer
parents: 259
diff changeset
1054
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1055 void openEdit_Information(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1056 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1057 char text[70];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1058
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1059 infoPage = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1060
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1061 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1062 text[1] = TXT_Information;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1063 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1064 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1065
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1066 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1067 text[1] = TXT2BYTE_ButtonNext;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1068 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1069
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1070 write_field_button(StMSYS4_Info, 30, 800, ME_Y_LINE6, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1071
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1072 setEvent(StMSYS4_Info, (uint32_t)OnAction_Information);
854
48b6a3b1f3f8 Development bugfix menu id handling:
Ideenmodellierer
parents: 844
diff changeset
1073 tMenuEdit_select(StMSYS4_Info);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1074 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1075
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1076
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1077 uint8_t OnAction_Information (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1078 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1079 resetEnterPressedToStateBeforeButtonAction();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1080
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1081 infoPage++;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1082 if(infoPage > 3)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1083 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1084 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1085 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1086 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1087
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1088
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1089 void refresh_InformationPage(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1090 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1091 char text_header[5];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1092 char text_button[5];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1093 char text_content[256];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1094 uint8_t date[3], year,month,day;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1095
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1096 RTC_DateTypeDef Sdate, Sdate2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1097 float temperature1, temperature2, voltage, offsetTemperature;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1098
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1099 //RTC_TimeTypeDef Stime;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1100
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1101 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1102 SDeviceLine batteryChargeCycles;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1103 SDeviceLine batteryChargeCompleteCycles;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1104 SDeviceLine temperatureMinimum;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1105 SDeviceLine temperatureMaximum;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1106 SDeviceLine depthMaximum;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1107 SDeviceLine diveCycles;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1108 SDeviceLine voltageMinimum;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1109 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1110
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1111 switch(infoPage)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1112 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1113 case 0:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1114 text_header[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1115 text_header[1] = TXT_Information;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1116 text_header[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1117
1013
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1118 if(isNewDisplay())
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1119 {
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1120 write_label_var( 20, 800, ME_Y_LINE1, &FontT42, "Dive Computer OSTC5");
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1121 }
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1122 else
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1123 {
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1124 write_label_var( 20, 800, ME_Y_LINE1, &FontT42, "Dive Computer OSTC4");
fa1af49319e5 Update Information view:
Ideenmodellierer
parents: 999
diff changeset
1125 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1126 write_label_var( 20, 800, ME_Y_LINE2, &FontT42, "Design heinrichs/weikamp");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1127
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1128 Sdate.Year = firmwareDataGetPointer()->release_year;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1129 Sdate.Month = firmwareDataGetPointer()->release_month;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1130 Sdate.Date = firmwareDataGetPointer()->release_day;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1131
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1132 if(settingsGetPointer()->date_format == DDMMYY)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1133 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1134 day = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1135 month = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1136 year = 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1137 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1138 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1139 if(settingsGetPointer()->date_format == MMDDYY)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1140 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1141 day = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1142 month = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1143 year = 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1144 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1145 else
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1146 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1147 day = 2;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1148 month = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1149 year = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1150 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1151 date[day] = Sdate.Date;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1152 date[month] = Sdate.Month;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1153 date[year] = Sdate.Year;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1154 snprintf(text_content,40,"Firmware release date: %02d.%02d.%02d",date[0],date[1],date[2]);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1155 write_label_var( 20, 800, ME_Y_LINE3, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1156 write_label_var( 20, 800, ME_Y_LINE4, &FontT42, "for more information");
64
98b479d0618f typo in info menu...
heinrichsweikamp
parents: 57
diff changeset
1157 write_label_var( 20, 800, ME_Y_LINE5, &FontT42, "info@heinrichsweikamp.com");
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1158
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1159 text_button[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1160 text_button[1] = TXT2BYTE_ButtonNext;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1161 text_button[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1162 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1163
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1164 case 1:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1165 text_header[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1166 text_header[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1167 text_header[2] = TXT2BYTE_Usage_Battery;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1168 text_header[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1169
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1170 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1171 text_content[1] = TXT2BYTE_ChargeCycles;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1172 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1173 write_label_var( 20, 800, ME_Y_LINE1, &FontT42, text_content);
646
0fc1b47d2482 Remove battery charge counter from information menu:
Ideenmodellierer
parents: 567
diff changeset
1174 /* snprintf(text_content,80,"%ld (%ld)",stateDeviceGetPointer()->batteryChargeCycles.value_int32,stateDeviceGetPointer()->batteryChargeCompleteCycles.value_int32);
0fc1b47d2482 Remove battery charge counter from information menu:
Ideenmodellierer
parents: 567
diff changeset
1175 write_label_var( 20, 800, ME_Y_LINE2, &FontT42, text_content); */
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1176
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1177 translateDate(stateDeviceGetPointer()->batteryChargeCycles.date_rtc_dr, &Sdate);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1178 translateDate(stateDeviceGetPointer()->batteryChargeCompleteCycles.date_rtc_dr, &Sdate2);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1179 snprintf(text_content,80,"%u.%u.20%02u (%u.%u.20%02u)",Sdate.Date,Sdate.Month,Sdate.Year, Sdate2.Date,Sdate2.Month,Sdate2.Year);
646
0fc1b47d2482 Remove battery charge counter from information menu:
Ideenmodellierer
parents: 567
diff changeset
1180 write_label_var( 20, 800, ME_Y_LINE2, &FontT42, text_content);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1181
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1182 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1183 text_content[1] = TXT2BYTE_LowestVoltage;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1184 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1185 write_label_var( 20, 800, ME_Y_LINE4, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1186
404
e729b8e7654d Bugfix: display of time of minimum voltag:
ideenmodellierer
parents: 389
diff changeset
1187 translateDate(stateDeviceGetPointer()->voltageMinimum.date_rtc_dr, &Sdate);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1188 voltage = ((float)stateDeviceGetPointer()->voltageMinimum.value_int32) / 1000;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1189 snprintf(text_content,80,"%0.3fV (%u.%u.20%02u)",voltage, Sdate.Date,Sdate.Month,Sdate.Year);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1190 write_label_var( 20, 800, ME_Y_LINE5, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1191
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1192 text_button[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1193 text_button[1] = TXT2BYTE_ButtonNext;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1194 text_button[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1195 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1196
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1197 case 2:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1198 text_header[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1199 text_header[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1200 text_header[2] = TXT2BYTE_Usage_Dives;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1201 text_header[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1202
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1203 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1204 text_content[1] = TXT2BYTE_NumberOfDives;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1205 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1206 write_label_var( 20, 800, ME_Y_LINE1, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1207
57
e941c9e49f73 Resolve format warnings
Ideenmodellierer
parents: 55
diff changeset
1208 snprintf(text_content,80,"%ld (%ld)",stateDeviceGetPointer()->diveCycles.value_int32,(stateDeviceGetPointer()->depthMaximum.value_int32 - 1000) / 100);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1209 write_label_var( 20, 800, ME_Y_LINE2, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1210
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1211 translateDate(stateDeviceGetPointer()->diveCycles.date_rtc_dr, &Sdate);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1212 translateDate(stateDeviceGetPointer()->depthMaximum.date_rtc_dr, &Sdate2);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1213 snprintf(text_content,80,"%u.%u.20%02u (%u.%u.20%02u)",Sdate.Date,Sdate.Month,Sdate.Year, Sdate2.Date,Sdate2.Month,Sdate2.Year);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1214 write_label_var( 20, 800, ME_Y_LINE3, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1215
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1216 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1217 text_content[1] = TXT2BYTE_HoursOfOperation;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1218 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1219 write_label_var( 20, 800, ME_Y_LINE4, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1220
57
e941c9e49f73 Resolve format warnings
Ideenmodellierer
parents: 55
diff changeset
1221 snprintf(text_content,80,"%ld",(stateDeviceGetPointer()->hoursOfOperation.value_int32)/3600);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1222 write_label_var( 20, 800, ME_Y_LINE5, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1223
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1224 text_button[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1225 text_button[1] = TXT2BYTE_ButtonNext;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1226 text_button[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1227 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1228
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1229 case 3:
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1230 text_header[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1231 text_header[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1232 text_header[2] = TXT2BYTE_Usage_Environment;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1233 text_header[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1234
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1235 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1236 text_content[1] = TXT2BYTE_AmbientTemperature;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1237 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1238 write_label_var( 20, 800, ME_Y_LINE1, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1239
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1240 temperature1 = ((float)stateDeviceGetPointer()->temperatureMinimum.value_int32) / 100;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1241 temperature2 = ((float)stateDeviceGetPointer()->temperatureMaximum.value_int32) / 100;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1242 snprintf(text_content,80,"%0.2f\140C / %0.2f\140C",temperature1,temperature2);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1243 write_label_var( 20, 800, ME_Y_LINE2, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1244
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1245 translateDate(stateDeviceGetPointer()->temperatureMinimum.date_rtc_dr, &Sdate);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1246 translateDate(stateDeviceGetPointer()->temperatureMaximum.date_rtc_dr, &Sdate2);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1247 snprintf(text_content,80,"(%u.%u.20%02u / %u.%u.20%02u)",Sdate.Date,Sdate.Month,Sdate.Year, Sdate2.Date,Sdate2.Month,Sdate2.Year);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1248 write_label_var( 20, 800, ME_Y_LINE3, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1249
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1250 text_content[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1251 text_content[1] = TXT2BYTE_Korrekturwerte;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1252 text_content[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1253 write_label_var( 20, 800, ME_Y_LINE4, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1254
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1255 offsetTemperature = ((float)settingsGetPointer()->offsetTemperature_centigrad) / 10;
103
f5d2f02dc73f Generalize TEXT of pressure unit
Dmitry Romanov <kitt@bk.ru>
parents: 102
diff changeset
1256 snprintf(text_content,80,"%i %s / %0.2f\140C",settingsGetPointer()->offsetPressure_mbar, TEXT_PRESSURE_UNIT, offsetTemperature);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1257 write_label_var( 20, 800, ME_Y_LINE5, &FontT42, text_content);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1258
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1259 text_button[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1260 text_button[1] = TXT2BYTE_Exit;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1261 text_button[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1262 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1263 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1264
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1265 write_topline(text_header);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1266 tMenuEdit_newButtonText(StMSYS4_Info, text_button);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1267 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonNext,0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1268 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1269
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1270
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1271 void openEdit_Reset(void)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1272 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1273 char text[32];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1274
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1275 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1276 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1277 text[2] = TXT2BYTE_ResetMenu;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1278 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1279 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1280
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1281 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1282 text[1] = TXT2BYTE_LogbookOffset;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1283 text[7] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1284
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1285 write_label_var( 30, 400, ME_Y_LINE1, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1286
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1287 write_field_udigit(StMSYS5_LogbookOffset,420, 800, ME_Y_LINE1, &FontT48, "####", settingsGetPointer()->logbookOffset,0,0,0);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1288
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1289 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1290 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1291
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1292 text[1] = TXT2BYTE_ResetAll;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1293 write_field_button(StMSYS5_ResetAll, 30, 800, ME_Y_LINE2, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1294
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1295 text[1] = TXT2BYTE_ResetDeco;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1296 write_field_button(StMSYS5_ResetDeco, 30, 800, ME_Y_LINE3, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1297
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1298 text[1] = TXT2BYTE_Reboot;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1299 write_field_button(StMSYS5_Reboot, 30, 800, ME_Y_LINE4, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1300
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1301 text[1] = TXT2BYTE_Maintenance;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1302 write_field_button(StMSYS5_Maintenance, 30, 800, ME_Y_LINE5, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1303
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1304 #ifndef RESETLOGBLOCK
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1305 text[1] = TXT2BYTE_ResetLogbook;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1306 write_field_button(StMSYS5_ResetLogbook,30, 800, ME_Y_LINE6, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1307 #else
528
a9c195be907e Added new option to gas configuration: "Off":
Ideenmodellierer
parents: 520
diff changeset
1308 text[0] = '\031';
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1309 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1310 text[2] = TXT2BYTE_ResetLogbook;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1311 text[3] = 0;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1312 write_field_button(StMSYS5_ResetLogbook,30, 800, ME_Y_LINE6, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1313 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1314 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1315 #endif
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1316
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1317 setEvent(StMSYS5_LogbookOffset, (uint32_t)OnAction_LogbookOffset);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1318 setEvent(StMSYS5_ResetAll, (uint32_t)OnAction_Confirm);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1319 setEvent(StMSYS5_ResetDeco, (uint32_t)OnAction_Confirm);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1320 setEvent(StMSYS5_Reboot, (uint32_t)OnAction_Confirm);
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1321 setEvent(StMSYS5_Maintenance, (uint32_t)OnAction_Maintenance);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1322 #ifndef RESETLOGBLOCK
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1323 setEvent(StMSYS5_ResetLogbook, (uint32_t)OnAction_Confirm);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1324 #else
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1325 setEvent(StMSYS5_ResetLogbook, (uint32_t)OnAction_Nothing);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1326 #endif
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1327
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1328 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1329 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1330
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1331
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1332 void openEdit_ResetConfirmation(uint32_t editIdOfCaller)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1333 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1334 char text[32];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1335
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1336 resetMenuEdit(CLUT_MenuPageSystem);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1337
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1338 text[0] = '\001';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1339 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1340 text[2] = TXT2BYTE_AreYouSure;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1341 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1342 write_topline(text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1343
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1344 text[0] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1345 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1346 text[1] = TXT2BYTE_Abort;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1347
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1348 write_field_button(StMSYS5_Exit, 30, 800, ME_Y_LINE1, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1349
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1350 text[2] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1351 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1352 switch(editIdOfCaller)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1353 {
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1354 case StMSYS5_Reboot:
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1355 case StMSYS5_RebootRTE:
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1356 case StMSYS5_RebootMainCPU:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1357 text[1] = TXT2BYTE_RebootMainCPU;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1358 write_field_button(StMSYS5_RebootMainCPU, 30, 800, ME_Y_LINE2, &FontT48, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1359 text[1] = TXT2BYTE_RebootRTE;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1360 write_field_button(StMSYS5_RebootRTE, 30, 800, ME_Y_LINE3, &FontT48, text);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1361 setEvent(StMSYS5_Exit, (uint32_t)OnAction_Exit);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1362 setEvent(StMSYS5_RebootMainCPU, (uint32_t)OnAction_RebootMainCPU);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1363 setEvent(StMSYS5_RebootRTE, (uint32_t)OnAction_RebootRTE);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1364 text[0] = '\025';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1365 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1366 text[2] = TXT2BYTE_DecoDataLost;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1367 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1368 write_label_var( 30, 800, ME_Y_LINE4, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1369 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1370
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1371 case StMSYS5_ResetDeco:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1372 text[1] = TXT2BYTE_ResetDeco;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1373 write_field_button(editIdOfCaller, 30, 800, ME_Y_LINE2, &FontT48, text);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1374 setEvent(StMSYS5_Exit, (uint32_t)OnAction_Exit);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1375 setEvent(editIdOfCaller, (uint32_t)OnAction_ResetDeco);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1376 text[0] = '\025';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1377 text[1] = TXT_2BYTE;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1378 text[2] = TXT2BYTE_DecoDataLost;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1379 text[3] = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1380 write_label_var( 30, 800, ME_Y_LINE4, &FontT48, text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1381 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1382
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1383 case StMSYS5_ResetAll:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1384 text[1] = TXT2BYTE_ResetAll;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1385 write_field_button(editIdOfCaller, 30, 800, ME_Y_LINE2, &FontT48, text);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1386 setEvent(StMSYS5_Exit, (uint32_t)OnAction_Exit);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1387 setEvent(editIdOfCaller, (uint32_t)OnAction_ResetAll);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1388 break;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1389
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1390 case StMSYS5_ResetLogbook:
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1391 text[1] = TXT2BYTE_ResetLogbook;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1392 write_field_button(editIdOfCaller, 30, 800, ME_Y_LINE2, &FontT48, text);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1393 setEvent(StMSYS5_Exit, (uint32_t)OnAction_Exit);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1394 setEvent(editIdOfCaller, (uint32_t)OnAction_ResetLogbook);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1395 break;
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1396 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1397
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1398 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1399 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1400
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1401 customBlockInfo_t blockInfo;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1402
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1403 void openEdit_Maintenance(void)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1404 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1405 char text[32];
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1406 unsigned char index = 0;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1407 SSettings *pSettings = settingsGetPointer();
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1408 SSensorDataDiveO2* pDiveO2Data = NULL;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1409
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1410 customBlockInfo_t* pCustumBlockInfo = (customBlockInfo_t *) CUSTOM_BLOCK_INFO_ADDR;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1411
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1412 blockInfo.Type = swapBytes(pCustumBlockInfo->Type);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1413 blockInfo.fletcher = swapBytes(pCustumBlockInfo->fletcher);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1414 blockInfo.length = swapBytes(pCustumBlockInfo->length);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1415
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1416 resetMenuEdit(CLUT_MenuPageSystem);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1417
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1418 text[0] = '\001';
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1419 text[1] = TXT_2BYTE;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1420 text[2] = TXT2BYTE_Maintenance;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1421 text[3] = 0;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1422 write_topline(text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1423
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1424 text[0] = TXT_2BYTE;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1425 text[1] = TXT2BYTE_SetFactoryDefaults;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1426 text[2] = 0;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1427 write_field_button(StMSYS5_SetFactoryBC, 30, 800, ME_Y_LINE1, &FontT48, text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1428
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1429
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1430 if(stateRealGetPointer()->lifeData.battery_charge <= 0)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1431 {
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1432 text[0] = TXT_2BYTE;
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1433 text[1] = TXT2BYTE_SetBatteryCharge;
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1434 text[2] = 0;
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1435 snprintf(&text[2],10,": %u%%",pSettings->lastKnownBatteryPercentage);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1436 write_field_button(StMSYS5_SetBattCharge, 30, 800, ME_Y_LINE2, &FontT48, text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1437 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1438
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1439 if((pSettings->ppo2sensors_source == O2_SENSOR_SOURCE_ANADIG) || (pSettings->ppo2sensors_source == O2_SENSOR_SOURCE_DIGITAL))
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1440 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1441 for (index = 0; index < 3; index++)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1442 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1443 if(pSettings->ext_sensor_map[index] == SENSOR_DIGO2M)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1444 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1445 pDiveO2Data = (SSensorDataDiveO2*)stateRealGetPointer()->lifeData.extIf_sensor_data[index];
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1446 if(pDiveO2Data->pressure != 0)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1447 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1448 snprintf(text,32,"%c%c (%1.3lf => %1.3f)\016\016Bar",TXT_2BYTE,TXT2BYTE_AdjustAmbPressure,(float)(pDiveO2Data->pressure/1000000.0),
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1449 stateRealGetPointer()->lifeData.pressure_surface_bar);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1450
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1451 write_field_button(StMSYS5_AdjustSurfPres, 30, 800, ME_Y_LINE4, &FontT48, text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1452 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1453 break;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1454 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1455 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1456 }
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1457
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1458 if((blockInfo.Type & 0x0000FF00)== 0x0100)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1459 {
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1460 snprintf(text,32,"Flash Bootloader");
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1461 write_field_button(StMSYS5_FlashBoot, 30, 800, ME_Y_LINE4, &FontT48, text);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1462 }
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1463
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1464 #ifdef ENABLE_ANALYSE_SAMPLES
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1465 text[0] = TXT_2BYTE;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1466 text[1] = TXT2BYTE_SetSampleIndex;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1467 text[2] = 0;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1468 write_field_button(StMSYS5_SetSampleIndx, 30, 800, ME_Y_LINE4, &FontT48, text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1469 #endif
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1470
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1471 setEvent(StMSYS5_SetFactoryBC, (uint32_t)OnAction_SetFactoryDefaults);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1472 if(stateRealGetPointer()->lifeData.battery_charge <= 0)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1473 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1474 setEvent(StMSYS5_SetBattCharge, (uint32_t)OnAction_SetBatteryCharge);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1475 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1476 if((pSettings->ppo2sensors_source == O2_SENSOR_SOURCE_ANADIG) || (pSettings->ppo2sensors_source == O2_SENSOR_SOURCE_DIGITAL))
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1477 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1478 if(pDiveO2Data != NULL)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1479 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1480 setEvent(StMSYS5_AdjustSurfPres, (uint32_t)OnAction_AdjustSurfacePressure);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1481 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1482 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1483 #ifdef ENABLE_ANALYSE_SAMPLES
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1484 setEvent(StMSYS5_SetSampleIndx, (uint32_t)OnAction_RecoverSampleIdx);
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1485 #endif
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1486
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1487 if((blockInfo.Type & 0x0000FF00)== 0x0100)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1488 {
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1489 setEvent(StMSYS5_FlashBoot, (uint32_t)OnAction_FlashBootloader);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1490 }
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1491
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1492
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1493
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1494 text[0] = TXT_2BYTE;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1495 text[1] = TXT2BYTE_WarnBatteryLow;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1496 text[2] = 0;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1497 snprintf(&text[2],10,": %01.2fV",stateRealGetPointer()->lifeData.battery_voltage);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1498 write_label_var( 30, 800, ME_Y_LINE5, &FontT42, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1499
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1500 snprintf(&text[0],30,"Code: %X",getLicence());
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1501 write_label_var( 30, 800, ME_Y_LINE6, &FontT42, text);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1502
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1503 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1504 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1505
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1506 uint8_t OnAction_LogbookOffset(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1507 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1508 uint8_t digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1509 uint32_t newOffset;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1510
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1511 if(action == ACTION_BUTTON_ENTER)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1512 return digitContent;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1513
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1514 if(action == ACTION_BUTTON_ENTER_FINAL)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1515 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1516 evaluateNewString(editId, &newOffset, 0, 0, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1517 if(newOffset > 9000)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1518 newOffset = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1519 tMenuEdit_newInput(editId, newOffset, 0, 0, 0);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1520 settingsGetPointer()->logbookOffset = (uint16_t)newOffset;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1521 return UPDATE_DIVESETTINGS;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1522 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1523
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1524 if(action == ACTION_BUTTON_NEXT)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1525 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1526 digitContentNew = digitContent + 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1527 if(digitContentNew > '9')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1528 digitContentNew = '0';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1529 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1530 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1531
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1532 if(action == ACTION_BUTTON_BACK)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1533 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1534 digitContentNew = digitContent - 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1535 if(digitContentNew < '0')
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1536 digitContentNew = '9';
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1537 return digitContentNew;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1538 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1539 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1540 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1541
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1542 uint8_t OnAction_Nothing (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1543 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1544 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1545 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1546
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1547 uint8_t OnAction_Exit (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1548 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1549 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1550 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1551 uint8_t OnAction_Confirm (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1552 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1553 openEdit_ResetConfirmation(editId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1554 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1555 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1556
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1557 uint8_t OnAction_Maintenance (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1558 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1559 openEdit_Maintenance();
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1560 return UNSPECIFIC_RETURN;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1561 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1562
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1563 uint8_t OnAction_RebootRTE (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1564 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1565 MX_SmallCPU_Reset_To_Standard();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1566 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1567 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1568
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1569 uint8_t OnAction_ResetDeco (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1570 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1571 clearDeco();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1572 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1573 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1574
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1575 uint8_t OnAction_ResetAll (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1576 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1577 set_settings_to_Standard();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1578 check_and_correct_settings();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1579
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1580 return UPDATE_AND_EXIT_TO_HOME;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1581 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1582
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1583 uint8_t OnAction_ResetLogbook (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1584 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1585 write_label_var( 430, 740, 350, &FontT42, "Wait");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1586 ext_flash_erase_logbook();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1587
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1588 SSettings * pSettings = settingsGetPointer();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1589 pSettings->lastDiveLogId = 255;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1590 pSettings->logFlashNextSampleStartAddress = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1591
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1592 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1593 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1594
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1595 uint8_t OnAction_RebootMainCPU (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1596 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1597 settingsGetPointer()->showDebugInfo = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1598 extern uint8_t bootToBootloader;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1599 bootToBootloader = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1600 return UNSPECIFIC_RETURN;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1601 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1602
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1603
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1604 uint8_t OnAction_SetFactoryDefaults(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1605 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1606 settingsWriteFactoryDefaults(settingsGetPointer()->ButtonResponsiveness[3], settingsGetPointer()->buttonBalance);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1607 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1608 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1609
468
aa1d71875e25 Moved and deactivated analyse sample buffer switch:
ideenmodellierer
parents: 446
diff changeset
1610 #ifdef ENABLE_ANALYSE_SAMPLES
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1611 uint8_t OnAction_RecoverSampleIdx(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1612 {
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1613 char text[32];
558
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1614 uint8_t openSec;
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1615 uint8_t retval = UNSPECIFIC_RETURN;
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1616 openSec = ext_flash_AnalyseSampleBuffer();
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1617 snprintf(&text[0],30,"OpenSec: %d",openSec);
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1618 write_label_var( 30, 800, ME_Y_LINE6, &FontT42, text);
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1619
558
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1620 if(openSec == 2)
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1621 {
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1622 retval = UPDATE_DIVESETTINGS;
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1623 }
66aef216828b Changed operation mode of RecoverSampleIndex:
Ideenmodellierer
parents: 528
diff changeset
1624 return retval;
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1625 }
468
aa1d71875e25 Moved and deactivated analyse sample buffer switch:
ideenmodellierer
parents: 446
diff changeset
1626 #endif
424
2b31cf1ebbcc Added (optional) menu item to analyse log sample buffer:
ideenmodellierer
parents: 404
diff changeset
1627
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1628 uint8_t OnAction_SetBatteryCharge(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1629 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1630 setBatteryPercentage(settingsGetPointer()->lastKnownBatteryPercentage);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1631 // setBatteryPercentage(100);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1632 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1633 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1634
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1635 uint8_t OnAction_AdjustSurfacePressure (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1636 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1637 SSensorDataDiveO2* pDiveO2Data;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1638 const SDiveState* pDiveState = stateRealGetPointer();
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1639 SSettings* pSettings = settingsGetPointer();
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1640 uint8_t index = 0;
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1641 float orgpressure_surface_mbar;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1642 float DiveO2_mbar;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1643 int8_t newOffset_mbar = 0;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1644
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1645
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1646 char text[32];
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1647
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1648
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1649
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1650 for (index = 0; index < 3; index++)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1651 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1652 if(settingsGetPointer()->ext_sensor_map[index] == SENSOR_DIGO2M)
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1653 {
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1654 pDiveO2Data = (SSensorDataDiveO2*)stateRealGetPointer()->lifeData.extIf_sensor_data[index];
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1655 DiveO2_mbar = (pDiveO2Data->pressure/1000.0);
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1656
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1657 orgpressure_surface_mbar = (pDiveState->lifeData.pressure_surface_bar * 1000) - (settingsGetPointer()->offsetPressure_mbar);
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1658 newOffset_mbar = DiveO2_mbar - orgpressure_surface_mbar;
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1659
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1660 if(fabs(orgpressure_surface_mbar + ((float)newOffset_mbar) - DiveO2_mbar) > 0.5) /* there might be a rounding difference => compensate */
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1661 {
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1662 if((orgpressure_surface_mbar + ((float)newOffset_mbar)) - (pDiveO2Data->pressure/1000.0) > 0.0)
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1663 {
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1664 newOffset_mbar -=1;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1665 }
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1666 else
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1667 {
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1668 newOffset_mbar +=1;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1669 }
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1670 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1671
959
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1672 pSettings->offsetPressure_mbar = newOffset_mbar;
5d5fa0a3b409 Devbugfix: external surface pressure calibration:
Ideenmodellierer
parents: 949
diff changeset
1673 snprintf(text,32,"%c%c (%1.3lf => %1.3f)\016\016Bar",TXT_2BYTE,TXT2BYTE_AdjustAmbPressure,(float)(pDiveO2Data->pressure/1000000.0), (orgpressure_surface_mbar + pSettings->offsetPressure_mbar) / 1000.0);
844
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1674 tMenuEdit_newButtonText(StMSYS5_AdjustSurfPres,text);
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1675 break;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1676 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1677 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1678
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1679 return UNSPECIFIC_RETURN;
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1680 }
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1681
e04d7dd199fb Added option to adjust pressure to diveO2 reference:
Ideenmodellierer
parents: 805
diff changeset
1682
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1683 #ifdef SCREENTEST
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1684 uint8_t OnAction_ScreenTest (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1685 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1686 static uint8_t FrameCount = 1; // 0 is invisible frame
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1687 char text[5];
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1688 GFX_DrawCfgScreen tTestScreen;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1689 tTestScreen.FBStartAdress = 0;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1690 tTestScreen.ImageHeight = 480;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1691 tTestScreen.ImageWidth = 800;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1692 tTestScreen.LayerIndex = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1693
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 505
diff changeset
1694 set_globalState(StMSYS5_ScreenTest);
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1695 tTestScreen.FBStartAdress = getFrameByNumber(FrameCount);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1696 if(tTestScreen.FBStartAdress == 0)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1697 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1698 extern uint8_t bootToBootloader;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1699 bootToBootloader = 1;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1700 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1701 GFX_fill_buffer(tTestScreen.FBStartAdress, 0xFF, FrameCount);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1702 snprintf(text,5,"%u",FrameCount);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1703 Gfx_write_label_var(&tTestScreen, 10,100,10,&FontT48,CLUT_Font027,text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1704 GFX_SetFramesTopBottom(tTestScreen.FBStartAdress, NULL,480);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1705 FrameCount++;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1706 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1707 #endif
1017
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1708
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1709 uint8_t OnAction_FlashBootloader (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1710 {
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1711 SHardwareData HwInfo;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1712 customBlockInfo_t* pCustumBlockInfo = (customBlockInfo_t *) CUSTOM_BLOCK_INFO_ADDR;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1713 customBlockInfo_t blockInfo;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1714 uint32_t checksum;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1715 uint8_t* pSource = (uint8_t *) 0x08100000;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1716
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1717 checksum = CalcFletcher32(0x08100000,0x0811FFEF); /* last nibble contains block info => exclude */
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1718
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1719 blockInfo.Type = swapBytes(pCustumBlockInfo->Type);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1720 blockInfo.fletcher = swapBytes(pCustumBlockInfo->fletcher);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1721 blockInfo.length = swapBytes(pCustumBlockInfo->length);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1722
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1723 if(checksum == blockInfo.fletcher)
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1724 {
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1725 memcpy (&HwInfo, hardwareDataGetPointer(), sizeof(SHardwareData)); /* create backup copy because data will be overwritten during flash erase */
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1726
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1727 bootloader_eraseFlashMemory();
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1728 bootloader_programFlashMemory(pSource, blockInfo.length, &HwInfo);
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1729 }
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1730 return UNSPECIFIC_RETURN;
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1731 }
5924a2d1d3ba Prepare custom block update function:
Ideenmodellierer
parents: 1013
diff changeset
1732
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1733 /*
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1734 uint8_t OnAction_TestCLog (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1735 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1736 write_label_var( 430, 740, 350, &FontT42, "Wait");
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1737
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1738 test_log_only(20, 5);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1739 test_log_only(30, 10);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1740 ext_flash_write_settings();
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1741 return EXIT_TO_MENU;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1742 }
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1743 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1744