Mercurial > public > hwos_code
comparison src/divemode.inc @ 604:ca4556fb60b9
bump to 2.99beta, work on 3.00 stable
author | heinrichsweikamp |
---|---|
date | Thu, 22 Nov 2018 19:47:26 +0100 |
parents | b455b31ce022 |
children | d866684249bd |
comparison
equal
deleted
inserted
replaced
603:00b24fb4324d | 604:ca4556fb60b9 |
---|---|
1 ;============================================================================= | 1 ;============================================================================= |
2 ; | 2 ; |
3 ; File divemode.inc REFACTORED VERSION V2.97 | 3 ; File divemode.inc REFACTORED VERSION V2.99d |
4 ; | 4 ; |
5 ; | 5 ; |
6 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved. | 6 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved. |
7 ;============================================================================= | 7 ;============================================================================= |
8 ; HISTORY | 8 ; HISTORY |
13 extern apnoe_calc_maxdepth | 13 extern apnoe_calc_maxdepth |
14 extern calc_deko_divemode_sensor | 14 extern calc_deko_divemode_sensor |
15 | 15 |
16 | 16 |
17 ; Divemode layout: | 17 ; Divemode layout: |
18 ; row=0...239 | 18 ; row =0...239 |
19 ; column=0...159 (x2) | 19 ; column =0...159 (x2) |
20 | 20 |
21 ; Divemode has multiple layouts but basicly splits the screen into 3 rows: | 21 ; Divemode has multiple layouts but basicly splits the screen into 3 rows: |
22 ; - upper content row: depth, max depth, dive time, etc. | 22 ; - upper content row: depth, max depth, dive time, etc. |
23 ; - custom content view with selectable views | 23 ; - custom content view with selectable views |
24 ; - bottom content: temp, gas, ndl, tts, etc. | 24 ; - bottom content: temp, gas, ndl, tts, etc. |
25 | 25 |
26 ; I. The upper content row. (0-99) | 26 ; I. The upper content row (0-99) |
27 ; The top row can be divided 2 areas: | 27 ; The top row can be divided 2 areas: |
28 ; - header: has the titles (mask) | 28 ; - header : has the titles (mask) |
29 ; - content: has the values | 29 ; - content: has the values |
30 ;******* Upper content / header row ******* | 30 ;******* Upper content / header row ******* |
31 #DEFINE dm_mask_depth_row .0 | 31 #DEFINE dm_mask_depth_row .0 |
32 #DEFINE dm_mask_depth_column .12 | 32 #DEFINE dm_mask_depth_column .12 |
33 #DEFINE dm_mask_maxdepth_row .0 | 33 #DEFINE dm_mask_maxdepth_row .0 |
41 ; - max depth and warning messages | 41 ; - max depth and warning messages |
42 ; - dive time, apnea dive times and warning icon | 42 ; - dive time, apnea dive times and warning icon |
43 ; DIVEMODE_OFFSET=position below the title row | 43 ; DIVEMODE_OFFSET=position below the title row |
44 ;******* Upper content / content row / 1st col ******* | 44 ;******* Upper content / content row / 1st col ******* |
45 ; GLOBAL | 45 ; GLOBAL |
46 #DEFINE dm_offset .14 ; 14 | 46 #DEFINE dm_offset .14 ; 14 |
47 ; Depth | 47 ; Depth |
48 #DEFINE dm_depth_row dm_offset ; TOP - 14 - start position of the detph numbers | 48 #DEFINE dm_depth_row dm_offset ; TOP - 14 - start position of the depth numbers |
49 #DEFINE dm_depth_column .0 ; LEFT - 0 | 49 #DEFINE dm_depth_column .0 ; LEFT - 0 |
50 #DEFINE dm_depth_bot dm_depth_row+.61 ; 75 | 50 #DEFINE dm_depth_bot dm_depth_row+.61 ; 75 |
51 #DEFINE dm_depth_rgt dm_depth_column+.59 ; 59 | 51 #DEFINE dm_depth_rgt dm_depth_column+.59 ; 59 |
52 #DEFINE dm_depth_dm_row dm_depth_row+.25 ; 39 - if metric and d<100, decimeter shown as: ".5" | 52 #DEFINE dm_depth_dm_row dm_depth_row+.25 ; 39 - if metric and d<100, decimeter shown as: ".5" |
53 #DEFINE dm_depth_dm_column dm_depth_column+.40 ; 40 - bottom aligned so it has its own position (2nd content line only) | 53 #DEFINE dm_depth_dm_column dm_depth_column+.40 ; 40 - bottom aligned so it has its own position (2nd content line only) |
54 ; Ascend rate | 54 ; Ascend rate |
55 #DEFINE dm_velocity_text_row dm_depth_row+.62 ; 76 | 55 #DEFINE dm_velocity_text_row dm_depth_row+.62 ; 76 |
56 #DEFINE dm_velocity_text_column dm_depth_column ; 0 | 56 #DEFINE dm_velocity_text_column dm_depth_column ; 0 |
57 #DEFINE dm_velocity_text_bot dm_velocity_text_row+.23 ; 99 | 57 #DEFINE dm_velocity_text_bot dm_velocity_text_row+.23 ; 99 |
58 #DEFINE dm_velocity_text_rgt dm_depth_rgt ; 61 | 58 #DEFINE dm_velocity_text_rgt dm_depth_rgt ; 61 |
59 ; Ascend/Descend bar | 59 ; Ascend/Descend bar |
60 #DEFINE dm_velobar_top dm_offset ; 14 | 60 #DEFINE dm_velobar_top dm_offset ; 14 |
61 #DEFINE dm_velobar_lft dm_depth_rgt+.1 ; 62 | 61 #DEFINE dm_velobar_lft dm_depth_rgt+.1 ; 62 |
62 #DEFINE dm_velobar_bot dm_offset+.70 ; 84 | 62 #DEFINE dm_velobar_bot dm_offset+.70 ; 84 |
63 #DEFINE dm_velobar_rgt .73 ; 73 | 63 #DEFINE dm_velobar_rgt .73 ; 73 |
64 #DEFINE dm_velobar_width .12 | 64 #DEFINE dm_velobar_width .12 |
65 | 65 |
66 ;******* Upper content / content row / 2nd col ******* | 66 ;******* Upper content / content row / 2nd col ******* |
67 #DEFINE dm_upcnt_2ndcol .74 ; 74 | 67 #DEFINE dm_upcnt_2ndcol .74 ; 74 |
68 #DEFINE dm_upcnt_2ndcol_nvsi .64 ; 64 | 68 #DEFINE dm_upcnt_2ndcol_nvsi .64 ; 64 |
69 ; Max depth | 69 ; Max depth |
70 #DEFINE dm_max_depth_row dm_offset ; 14 | 70 #DEFINE dm_max_depth_row dm_offset ; 14 |
71 #DEFINE dm_max_depth_column dm_upcnt_2ndcol ; 74 | 71 #DEFINE dm_max_depth_column dm_upcnt_2ndcol ; 74 |
72 #DEFINE dm_max_depth_column_nvsi dm_upcnt_2ndcol_nvsi ; 64 | 72 #DEFINE dm_max_depth_column_nvsi dm_upcnt_2ndcol_nvsi ; 64 |
73 #DEFINE dm_max_depth_bot dm_max_depth_row+.34 ; 48 | 73 #DEFINE dm_max_depth_bot dm_max_depth_row+.34 ; 48 |
74 #DEFINE dm_max_depth_rgt dm_max_depth_column+.36 ; 100 | 74 #DEFINE dm_max_depth_rgt dm_max_depth_column+.36 ; 100 |
75 #DEFINE dm_max_depth_dm_row dm_max_depth_row+.11 ; 25 | 75 #DEFINE dm_max_depth_dm_row dm_max_depth_row+.11 ; 25 |
76 #DEFINE dm_max_depth_dm_column dm_max_depth_column+.23 ; 87 | 76 #DEFINE dm_max_depth_dm_column dm_max_depth_column+.23 ; 87 |
77 #DEFINE dm_max_depth_dm_column_nvsi dm_max_depth_column_nvsi+.23 ; 77 | 77 #DEFINE dm_max_depth_dm_column_nvsi dm_max_depth_column_nvsi+.23 ; 77 |
78 #DEFINE dm_max_alt_column .0 ; 0 | 78 #DEFINE dm_max_alt_column .0 ; 0 |
79 #DEFINE dm_max_alt_row .170 ; 170 | 79 #DEFINE dm_max_alt_row .170 ; 170 |
80 #DEFINE dm_max_dm_alt_column dm_max_alt_column+.60 ; 60 | 80 #DEFINE dm_max_dm_alt_column dm_max_alt_column+.60 ; 60 |
81 ; Warning area (combined) | 81 ; Warning area (combined) |
82 #DEFINE dm_warning_row dm_offset+.36 ; 50 | 82 #DEFINE dm_warning_row dm_offset+.36 ; 50 |
83 #DEFINE dm_warning_column dm_upcnt_2ndcol ; 74 | 83 #DEFINE dm_warning_column dm_upcnt_2ndcol ; 74 |
84 #DEFINE dm_warning_bot dm_warning_row+.49 ; 99 | 84 #DEFINE dm_warning_bot dm_warning_row+.49 ; 99 |
85 #DEFINE dm_warning_rgt dm_warning_column+.62 ; 136 | 85 #DEFINE dm_warning_rgt dm_warning_column+.62 ; 136 |
86 #DEFINE dm_warning_length .9 ; total string length | 86 #DEFINE dm_warning_length .9 ; total string length |
87 ; Warning row #1 | 87 ; Warning row #1 |
88 #DEFINE dm_warning1_row dm_warning_row ; 36/50 | 88 #DEFINE dm_warning1_row dm_warning_row ; 50 |
89 #DEFINE dm_warning1_column dm_warning_column ; 64 | 89 #DEFINE dm_warning1_column dm_warning_column ; 64 |
90 #DEFINE dm_warning1_bot dm_warning1_row+.23 ; 59/73 | 90 #DEFINE dm_warning1_bot dm_warning1_row+.23 ; 73 |
91 #DEFINE dm_warning1_rgt dm_warning_rgt ; 136 | 91 #DEFINE dm_warning1_rgt dm_warning_rgt ; 136 |
92 ; Warning row #2 | 92 ; Warning row #2 |
93 #DEFINE dm_warning2_row dm_warning_row+.24 ; 60/74 | 93 #DEFINE dm_warning2_row dm_warning_row+.24 ; 74 |
94 #DEFINE dm_warning2_column dm_warning_column ; 64 | 94 #DEFINE dm_warning2_column dm_warning_column ; 64 |
95 #DEFINE dm_warning2_bot dm_warning2_row+.23 ; 83/97 | 95 #DEFINE dm_warning2_bot dm_warning2_row+.23 ; 97 |
96 #DEFINE dm_warning2_rgt dm_warning_rgt ; 136 | 96 #DEFINE dm_warning2_rgt dm_warning_rgt ; 136 |
97 | 97 |
98 ;******* Upper content / content row / 3rd col ******* | 98 ;******* Upper content / content row / 3rd col ******* |
99 ; Dive time | 99 ; Dive time |
100 #DEFINE dm_divetime_row dm_offset ; 14 | 100 #DEFINE dm_divetime_row dm_offset ; 14 |
101 #DEFINE dm_divetime_column .115 ; 115 | 101 #DEFINE dm_divetime_column .115 ; 115 |
102 #DEFINE dm_divetime_minsonly_column .111 ; 111 | 102 #DEFINE dm_divetime_minsonly_column .111 ; 111 |
103 #DEFINE dm_divetime_bot dm_divetime_row+.34 ; 48 | 103 #DEFINE dm_divetime_bot dm_divetime_row+.34 ; 48 |
104 #DEFINE dm_divetime_rgt .159 ; 159 | 104 #DEFINE dm_divetime_rgt .159 ; 159 |
105 #DEFINE dm_divetime_secs_row dm_divetime_row+.11 ; 25 | 105 #DEFINE dm_divetime_secs_row dm_divetime_row+.11 ; 25 |
106 #DEFINE dm_divetime_secs_column dm_divetime_column+.24 ; 139 | 106 #DEFINE dm_divetime_secs_column dm_divetime_column+.24 ; 139 |
107 #DEFINE dm_divetime_alt_row dm_offset ; 14 | 107 #DEFINE dm_divetime_alt_row dm_offset ; 14 |
108 #DEFINE dm_divetime_alt_column .68 ; 68 | 108 #DEFINE dm_divetime_alt_column .68 ; 68 |
109 ; Warning icon | 109 ; Warning icon |
110 #DEFINE dm_warning_icon_row dm_offset+.41 ; 55 | 110 #DEFINE dm_warning_icon_row dm_offset+.41 ; 55 |
111 #DEFINE dm_warning_icon_column .137 ; 137 | 111 #DEFINE dm_warning_icon_column .137 ; 137 |
112 #DEFINE dm_warning_icon_bot dm_warning_icon_row+.38 ; 93 | 112 #DEFINE dm_warning_icon_bot dm_warning_icon_row+.38 ; 93 |
113 #DEFINE dm_warning_icon_rgt dm_warning_icon_column+.21 ; 156 | 113 #DEFINE dm_warning_icon_rgt dm_warning_icon_column+.21 ; 156 |
114 ; Apnea dive time | 114 ; Apnea dive time |
115 #DEFINE dm_divetime_apnoe_row dm_offset ; 14 | 115 #DEFINE dm_divetime_apnoe_row dm_offset ; 14 |
116 #DEFINE dm_divetime_apnoe_column .103 ; 103 | 116 #DEFINE dm_divetime_apnoe_column .103 ; 103 |
117 #DEFINE dm_divetime_apnoe_secs_row dm_divetime_apnoe_row+.11 ; 25 | 117 #DEFINE dm_divetime_apnoe_secs_row dm_divetime_apnoe_row+.11 ; 25 |
118 #DEFINE dm_divetime_apnoe_secs_column dm_divetime_apnoe_column+.36 ; 139 | 118 #DEFINE dm_divetime_apnoe_secs_column dm_divetime_apnoe_column+.36 ; 139 |
119 ; Apnea total time | 119 ; Apnea total time |
120 #DEFINE dm_apnoe_total_divetime_row dm_divetime_apnoe_row+.50 ; 64 | 120 #DEFINE dm_apnoe_total_divetime_row dm_divetime_apnoe_row+.50 ; 64 |
121 #DEFINE dm_apnoe_total_divetime_column dm_divetime_apnoe_column ; 103 | 121 #DEFINE dm_apnoe_total_divetime_column dm_divetime_apnoe_column ; 103 |
122 #DEFINE dm_apnoe_total_divetime_secs_row dm_apnoe_total_divetime_row+.11 ; 75 | 122 #DEFINE dm_apnoe_total_divetime_secs_row dm_apnoe_total_divetime_row+.11 ; 75 |
123 #DEFINE dm_apnoe_total_divetime_secs_col dm_divetime_apnoe_column+.36 ; 139 | 123 #DEFINE dm_apnoe_total_divetime_secs_col dm_divetime_apnoe_column+.36 ; 139 |
124 #DEFINE dm_total_apnoe_text_row dm_apnoe_total_divetime_row-.11 ; 53 | 124 #DEFINE dm_total_apnoe_text_row dm_apnoe_total_divetime_row-.11 ; 53 |
125 #DEFINE dm_total_apnoe_text_column .132 ; 132 | 125 #DEFINE dm_total_apnoe_text_column .132 ; 132 |
126 ; I. End of the upper content row. (0-99) | 126 ; I. End of the upper content row. (0-99) |
127 | 127 |
128 ; 1px space between the 1st and 2nd content rows | 128 ; 1px space between the 1st and 2nd content rows |
129 #DEFINE dm_sep_1_2_row dm_offset+.86 ; 100 | 129 #DEFINE dm_sep_1_2_row dm_offset+.86 ; 100 |
130 | 130 |
131 ; II. Custom/selectable content row | 131 ; II. Custom/selectable content row |
132 ; The costume view display area is: 101,163,0,159 (t,b,l,r), or 0,101->159,163 | 132 ; The custom view display area is: 101,163,0,159 (t,b,l,r), or 0,101->159,163 |
133 ; 1. Stopwatch with avarage depth | 133 |
134 ; 2. Decoplan - decompression stops up to 6 stops | 134 ;******* Custom View: Global ******* |
135 ; 3. Time, EAD/END and tissue saturation (graph) | |
136 ; 4. GF and aGF pairs | |
137 ; 5. Compass | |
138 ; 6. HUD - 3 sensor readings | |
139 ; 7. Gas list | |
140 ; 8. Ceiling (for GF_hi) | |
141 ;******* Custom content / Global ******* | |
142 #DEFINE dm_customview_row dm_offset+.87 ; 101 | 135 #DEFINE dm_customview_row dm_offset+.87 ; 101 |
143 #DEFINE dm_customview_column .0 ; 0 | 136 #DEFINE dm_customview_column .0 ; 0 |
144 #DEFINE dm_customview_bot dm_customview_row+.62 ; 163 | 137 #DEFINE dm_customview_bot dm_customview_row+.62 ; 163 |
145 #DEFINE dm_customview_rgt .159 ; 159 | 138 #DEFINE dm_customview_rgt .159 ; 159 |
146 | 139 |
147 ;******* Custom content / #1 - Avg depth, stopwatch and avg depth ******* | 140 ;******* Custom View: Avg depth, stopwatch and avg depth ******* |
148 ; Title | |
149 #DEFINE dm_custom_avr_stop_title_row dm_customview_row+.1 ; 102 | 141 #DEFINE dm_custom_avr_stop_title_row dm_customview_row+.1 ; 102 |
150 #DEFINE dm_custom_avr_stop_title_column1 .2 ; 2 | |
151 #DEFINE dm_custom_avr_stop_title_column2 .57 ; 57 | |
152 #DEFINE dm_custom_avr_stop_title_column3 .110 ; 110 | |
153 ; Values | |
154 #DEFINE dm_custom_avr_stop_row dm_customview_row+.16 ; 117 | 142 #DEFINE dm_custom_avr_stop_row dm_customview_row+.16 ; 117 |
155 #DEFINE dm_custom_avr_stop_column1 .0 ; 0 | 143 #DEFINE dm_custom_avr_stop_column1 .0 ; 0 |
156 #DEFINE dm_custom_avr_stop_column2 .54 ; 54 | 144 #DEFINE dm_custom_avr_stop_column2 .54 ; 54 |
157 #DEFINE dm_custom_avr_stop_column3 .118 ; 118 | 145 #DEFINE dm_custom_avr_stop_column3 .118 ; 118 |
158 | 146 |
159 ;******* Custom content / #2 - Decompressions stops ******* | 147 ;******* Custom View: Decompressions stops ******* |
160 ; Title | 148 ; Title |
161 #DEFINE dm_custom_decoplan_title_row dm_customview_row ; 101 | 149 #DEFINE dm_custom_decoplan_title_row dm_customview_row ; 101 |
162 #DEFINE dm_custom_decoplan_title_column .65 ; 65 | 150 #DEFINE dm_custom_decoplan_title_column .65 ; 65 |
163 ; 1st col | 151 ; 1st col |
164 #DEFINE dm_cust_dstop_2nd_stop_row dm_customview_row+.14 ; 115 | 152 #DEFINE dm_cust_dstop_2nd_stop_row dm_customview_row+.14 ; 115 |
165 #DEFINE dm_cust_dstop_2nd_stop_column .0 ; 0 | 153 #DEFINE dm_cust_dstop_2nd_stop_column .0 ; 0 |
166 #DEFINE dm_cust_dstop_3rd_stop_row dm_customview_row+.37 ; 138 | 154 #DEFINE dm_cust_dstop_3rd_stop_row dm_customview_row+.37 ; 138 |
167 #DEFINE dm_cust_dstop_3rd_stop_column dm_cust_dstop_2nd_stop_column ; 0 | 155 #DEFINE dm_cust_dstop_3rd_stop_column dm_cust_dstop_2nd_stop_column ; 0 |
168 ; 2nd col | 156 ; 2nd col |
169 #DEFINE dm_cust_dstop_4th_stop_row dm_cust_dstop_2nd_stop_row ; 116 | 157 #DEFINE dm_cust_dstop_4th_stop_row dm_cust_dstop_2nd_stop_row ; 115 |
170 #DEFINE dm_cust_dstop_4th_stop_column .56 ; 56 | 158 #DEFINE dm_cust_dstop_4th_stop_column .56 ; 56 |
171 #DEFINE dm_cust_dstop_5th_stop_row dm_cust_dstop_3rd_stop_row ; 140 | 159 #DEFINE dm_cust_dstop_5th_stop_row dm_cust_dstop_3rd_stop_row ; 138 |
172 #DEFINE dm_cust_dstop_5th_stop_column dm_cust_dstop_4th_stop_column ; 56 | 160 #DEFINE dm_cust_dstop_5th_stop_column dm_cust_dstop_4th_stop_column ; 56 |
173 ; 3rd col | 161 ; 3rd col |
174 #DEFINE dm_cust_dstop_6th_stop_row dm_cust_dstop_2nd_stop_row ; 116 | 162 #DEFINE dm_cust_dstop_6th_stop_row dm_cust_dstop_2nd_stop_row ; 115 |
175 #DEFINE dm_cust_dstop_6th_stop_column .111 ; 111 | 163 #DEFINE dm_cust_dstop_6th_stop_column .111 ; 111 |
176 #DEFINE dm_cust_dstop_7th_stop_row dm_cust_dstop_3rd_stop_row ; 140 | 164 #DEFINE dm_cust_dstop_7th_stop_row dm_cust_dstop_3rd_stop_row ; 138 |
177 #DEFINE dm_cust_dstop_7th_stop_column dm_cust_dstop_6th_stop_column ; 111 | 165 #DEFINE dm_cust_dstop_7th_stop_column dm_cust_dstop_6th_stop_column ; 111 |
178 | 166 |
179 ;******* Custom content / #3 - Time, EAD/END and tissue saturation ******* | 167 ;******* Custom View: Time, Battery, Surface Pressure ******* |
180 ; Clock | 168 ; Clock |
181 #DEFINE dm_custom_clock_title_row dm_customview_row+.1 ; 102 | 169 #DEFINE dm_custom_clock_title_row dm_customview_row+.1 ; 102 |
182 #DEFINE dm_custom_clock_row dm_customview_row+.16 ; 117 | 170 #DEFINE dm_custom_clock_row dm_customview_row+.16 ; 117 |
183 #DEFINE dm_custom_clock_column .0 ; 0 | 171 #DEFINE dm_custom_clock_column .0 ; 0 |
184 #DEFINE dm_custom_endtime_row dm_custom_clock_row+.23 ; 140 - not used | 172 ; Battery |
185 #DEFINE dm_custom_endtime_column dm_custom_clock_column ; 0 - not used | 173 #DEFINE dm_custom_battery_title_row dm_customview_row+.1 ; 102 |
186 ; EAD/AND | 174 #DEFINE dm_custom_battery_volt_row dm_customview_row+.16 ; 117 |
175 #DEFINE dm_custom_battery_percent_row dm_custom_ead_row+.23 ; 140 | |
176 #DEFINE dm_custom_battery_column .62 ; 62 | |
177 ; Surface Pressure | |
178 #DEFINE dm_custom_surfpres_title_row dm_customview_row+.1 ; 102 | |
179 #DEFINE dm_custom_surfpres_row dm_customview_row+.16 ; 117 | |
180 #DEFINE dm_custom_surfpres_column .95 ; 95 | |
181 | |
182 ;****** Custom View: ppO2, EAD/ENDS and CNS ******* | |
183 ; ppO2 | |
184 #DEFINE dm_custom_ppo2_title_row dm_customview_row+.1 ; 102 | |
185 #DEFINE dm_custom_ppo2_row dm_customview_row+.18 ; 119 | |
186 #DEFINE dm_custom_ppo2_column .2 ; 2 | |
187 ; EAD/END | |
187 #DEFINE dm_custom_eadend_title_row dm_customview_row+.1 ; 102 | 188 #DEFINE dm_custom_eadend_title_row dm_customview_row+.1 ; 102 |
188 #DEFINE dm_custom_ead_row dm_customview_row+.16 ; 117 | 189 #DEFINE dm_custom_ead_row dm_customview_row+.16 ; 117 |
189 #DEFINE dm_custom_ead_column .50 ; 50 | 190 #DEFINE dm_custom_ead_column .50 ; 50 |
190 #DEFINE dm_custom_end_row dm_custom_ead_row+.23 ; 140 | 191 #DEFINE dm_custom_end_row dm_custom_ead_row+.23 ; 140 |
191 #DEFINE dm_custom_end_column dm_custom_ead_column ; 50 | 192 #DEFINE dm_custom_end_column dm_custom_ead_column ; 50 |
193 ; CNS | |
194 #DEFINE dm_custom_cns_title_row dm_customview_row+.1 ; 102 | |
195 #DEFINE dm_custom_cns_row dm_customview_row+.18 ; 119 | |
196 #DEFINE dm_custom_cns_column .115 ; 115 | |
197 | |
198 ;****** Custom View: tripple CNS ******* | |
199 #DEFINE dm_custom_cns3_title_row dm_customview_row+.1 ; 102 | |
200 #DEFINE dm_custom_cns3_row dm_customview_row+.16 ; 117 | |
201 #DEFINE dm_custom_cns3_column1 .8 ; 8 | |
202 #DEFINE dm_custom_cns3_column2 .62 ; 62 | |
203 #DEFINE dm_custom_cns3_column3 .115 ; 115 | |
204 | |
205 ;****** Custom View: Ceiling, Tissues, (current GF) | |
206 ; Ceiling | |
207 #DEFINE dm_custom_ceiling_title_row dm_customview_row+.1 ; 102 | |
208 #DEFINE dm_custom_ceiling_row dm_customview_row+.18 ; 119 | |
209 #DEFINE dm_custom_ceiling_column .62 ; 62 | |
192 ; Tissue title | 210 ; Tissue title |
193 #DEFINE dm_custom_tissue_title_row dm_customview_row+.1 ; 102 | 211 #DEFINE dm_custom_tissue_title_row dm_customview_row+.1 ; 102 |
194 #DEFINE dm_custom_tissue_title_column .120 ; 120 | 212 #DEFINE dm_custom_tissue_title_column .120 ; 120 |
195 ; N2 / He values | 213 ; N2 / He values |
196 #DEFINE dm_custom_tissue_N2_row dm_custom_ead_row+.5 ; 122 | 214 #DEFINE dm_custom_tissue_N2_row dm_custom_ead_row+.5 ; 122 |
199 #DEFINE dm_custom_tissue_He_column dm_custom_tissue_N2_column ; 105 | 217 #DEFINE dm_custom_tissue_He_column dm_custom_tissue_N2_column ; 105 |
200 ; Tissue diagram | 218 ; Tissue diagram |
201 #DEFINE dm_custom_tissue_diagram_top dm_customview_row+.16 ; 117 | 219 #DEFINE dm_custom_tissue_diagram_top dm_customview_row+.16 ; 117 |
202 #DEFINE dm_custom_tissue_diagram_bottom dm_custom_tissue_diagram_top+.43; 160 | 220 #DEFINE dm_custom_tissue_diagram_bottom dm_custom_tissue_diagram_top+.43; 160 |
203 #DEFINE dm_custom_tissue_diagram_left .116 ; 116 | 221 #DEFINE dm_custom_tissue_diagram_left .116 ; 116 |
204 #DEFINE dm_custom_tissue_diagram_frame_spacing .8 ; 8 | 222 #DEFINE dm_custom_tissue_diagram_frame_spacing .8 ; 8 |
205 | 223 |
206 ;******* Custom content / #4 - GF-lo/hi, aGF-lo/hi, current GF value ******* | 224 ;******* Custom View: GF-lo/hi, aGF-lo/hi, current GF value ******* |
207 ; Title | 225 ; Title |
208 #DEFINE dm_custom_gf_title_row dm_customview_row+.1 ; 102 | 226 #DEFINE dm_custom_gf_title_row dm_customview_row+.1 ; 102 |
209 #DEFINE dm_custom_gf_title_col1 .8 ; 8 | |
210 #DEFINE dm_custom_gf_title_col2 .62 ; 62 | |
211 #DEFINE dm_custom_gf_title_col3 .115 ; 115 | |
212 ; GF | |
213 #DEFINE dm_custom_gf_row dm_customview_row+.18 ; 119 | 227 #DEFINE dm_custom_gf_row dm_customview_row+.18 ; 119 |
214 #DEFINE dm_custom_gf_column .0 ; 0 | 228 #DEFINE dm_custom_gf_column1 .0 ; 0 |
215 ; aGF | 229 #DEFINE dm_custom_gf_column2 .60 ; 60 |
216 #DEFINE dm_custom_agf_row dm_custom_gf_row ; 119 | 230 #DEFINE dm_custom_gf_column3 .118 ; 118 |
217 #DEFINE dm_custom_agf_column .60 ; 60 | 231 |
218 ; Current GF | 232 ;******* Custom View: Compass ******* |
219 #DEFINE dm_custom_currentgf_row dm_custom_gf_row ; 119 | |
220 #DEFINE dm_custom_currentgf_column .118 ; 118 | |
221 | |
222 ;******* Custom content / #5 - Compass ******* | |
223 ; Title | 233 ; Title |
224 #DEFINE dm_custom_compass_mask_row dm_customview_row ; 101 | 234 #DEFINE dm_custom_compass_mask_row dm_customview_row ; 101 |
225 #DEFINE dm_custom_compass_mask_column .65 ; 65 | 235 #DEFINE dm_custom_compass_mask_column .65 ; 65 |
226 ; Head and arrows | 236 ; Head and arrows |
227 #DEFINE dm_custom_compass_head_row dm_customview_row+.39 ; 140 | 237 #DEFINE dm_custom_compass_head_row dm_customview_row+.39 ; 140 |
228 #DEFINE dm_custom_compass_head_column .62 ; 62 | 238 #DEFINE dm_custom_compass_head_column .62 ; 62 |
229 #DEFINE dm_custom_compass_ldir_column .5 ; 5 | 239 #DEFINE dm_custom_compass_ldir_column .5 ; 5 |
230 #DEFINE dm_custom_compass_rdir_column .140 ; 140 | 240 #DEFINE dm_custom_compass_rdir_column .140 ; 140 |
231 ; Ruler | 241 ; Ruler |
232 #DEFINE dm_custom_compass_graph_row dm_customview_row ; 101 | 242 #DEFINE dm_custom_compass_graph_row dm_customview_row ; 101 |
233 #DEFINE dm_custom_compass_graph_height .33 ; 33 | 243 #DEFINE dm_custom_compass_graph_height .33 ; 33 |
234 #DEFINE dm_custom_compass_tick_height .3 ; 3 | 244 #DEFINE dm_custom_compass_tick_height .3 ; 3 |
235 #DEFINE dm_custom_compass_tick_top_top dm_custom_compass_graph_row+.1 ; 102 | 245 #DEFINE dm_custom_compass_tick_top_top dm_custom_compass_graph_row+.1 ; 102 |
236 #DEFINE dm_custom_compass_tick_top_bot dm_custom_compass_graph_row+.4 ; 105 | 246 #DEFINE dm_custom_compass_tick_top_bot dm_custom_compass_graph_row+.4 ; 105 |
237 #DEFINE dm_custom_compass_label_row dm_custom_compass_graph_row+.6 ; 107 | 247 #DEFINE dm_custom_compass_label_row dm_custom_compass_graph_row+.6 ; 107 |
238 #DEFINE dm_custom_compass_label_height .24 ; 24 | 248 #DEFINE dm_custom_compass_label_height .24 ; 24 |
239 #DEFINE dm_custom_compass_tick_bot_top dm_custom_compass_graph_row+.30 ; 131 | 249 #DEFINE dm_custom_compass_tick_bot_top dm_custom_compass_graph_row+.30 ; 131 |
240 #DEFINE dm_custom_compass_tick_bot_bot dm_custom_compass_graph_row+.33 ; 134 | 250 #DEFINE dm_custom_compass_tick_bot_bot dm_custom_compass_graph_row+.33 ; 134 |
241 | 251 |
242 ;******* Custom content / #6 - HUD / O2 sensor values ******* | 252 ;******* Custom View: O2 Sensor Values ******* |
243 #DEFINE dm_custom_hud_row dm_customview_row+.1 ; 102 | 253 #DEFINE dm_custom_hud_title_row dm_customview_row+.1 ; 102 |
244 #DEFINE dm_custom_hud_column1 .10 ; 10 | 254 #DEFINE dm_custom_hud_row dm_customview_row+.16 ; 117 |
245 #DEFINE dm_custom_hud_column2 .65 ; 65 | 255 #DEFINE dm_custom_hud_sensor1_column .6 ; 6 |
246 #DEFINE dm_custom_hud_column3 .120 ; 120 | 256 #DEFINE dm_custom_hud_sensor2_column .62 ; 62 |
247 #DEFINE dm_custom_hud_data_row dm_customview_row+.16 ; 117 | |
248 #DEFINE dm_custom_hud_sensor1_column .6 ; 6 | |
249 #DEFINE dm_custom_hud_sensor2_column .62 ; 62 | |
250 #DEFINE dm_custom_hud_sensor3_column .118 ; 118 | 257 #DEFINE dm_custom_hud_sensor3_column .118 ; 118 |
251 | 258 |
252 ;******* Custom content / #7 - Gas list ******* | 259 ;******* Custom View: Gas Needs ******* |
253 ; Title | 260 #DEFINE dm_custom_gas_mask_row dm_customview_row ; 101 |
254 #DEFINE dm_custom_dyn_gas_mask_row dm_customview_row ; 101 | 261 #DEFINE dm_custom_gas_row1 dm_customview_row+.14 ; 115 |
255 #DEFINE dm_custom_dyn_gas_mask_column .59 ; 59 | 262 #DEFINE dm_custom_gas_row2 dm_customview_row+.37 ; 138 |
256 ; col #1 | 263 #DEFINE dm_custom_gas_column_title .29 ; 29 |
257 #DEFINE dm_custom_dyn_gas_row1 dm_customview_row+.14 ; 115 | 264 #DEFINE dm_custom_gas_column1 .5 ; 5 |
258 #DEFINE dm_custom_dyn_gas_column1 .0 ; 0 | 265 #DEFINE dm_custom_gas_column2 .85 ; 85 |
259 ; col #2 | 266 |
260 #DEFINE dm_custom_dyn_gas_row2 dm_customview_row+.37 ; 138 | 267 ; ******* Custom View: Tank Pressures ******* |
261 #DEFINE dm_custom_dyn_gas_column2 .80 ; 80 | 268 #DEFINE dm_custom_tankdata_mask_row dm_customview_row+.1 ; 102 |
262 | 269 #DEFINE dm_custom_tankdata_row dm_customview_row+.16 ; 117 |
263 ;******* Custom content / #8 - Ceiling value for GF_hi ******* | 270 #DEFINE dm_custom_tankdata_pres1_col .2 ; 2 |
264 ; Title | 271 #DEFINE dm_custom_tankdata_pres2_col .115 ; 115 |
265 #DEFINE dm_custom_ceiling_text_row dm_customview_row+.1 ; 102 | 272 #DEFINE dm_custom_tankdata_SAC_col .56 ; 56 |
266 #DEFINE dm_custom_ceiling_text_column .68 ; 66 | 273 |
267 #DEFINE dm_custom_ceiling_ppo2_column .8 ; 8 | 274 ;******* Custom View: Sensor Check ******* |
268 #DEFINE dm_custom_ceiling_ppo2_col_dil .0 ; 0 | 275 #DEFINE dm_custom_s_check_title_row dm_customview_row+.1 ; 102 |
269 | 276 #DEFINE dm_custom_s_check_row dm_customview_row+.18 ; 119 |
270 ; Value | 277 #DEFINE dm_custom_s_check_title_column .50 ; 50 |
271 #DEFINE dm_custom_ceiling_value_row dm_customview_row+.18 ; 119 | 278 #DEFINE dm_custom_ppO2_column .115 ; 115 |
272 #DEFINE dm_custom_ceiling_value_column .66 ; 64 | 279 #DEFINE dm_custom_ppDil_column .2 ; 2 |
273 #DEFINE dm_custom_ceiling_ppo2_val_col .2 ; 2 | 280 |
274 | 281 ;******* Custom View: PSCR Info ******* |
275 ;******* Custom content / #10 - Sensor check view ******* | 282 #DEFINE dm_custom_pscr_title_row dm_customview_row+.1 ; 102 |
276 ; Title | 283 #DEFINE dm_custom_pscr_row dm_customview_row+.18 ; 119 |
277 #DEFINE dm_custom_s_check_text_row dm_customview_row+.1 ; 102 | 284 #DEFINE dm_custom_pscr_drop_column .55 ; 55 |
278 #DEFINE dm_custom_s_check_text_column .50 ; 50 | 285 #DEFINE dm_custom_pscr_ratio_column .105 ; 105 |
279 #DEFINE dm_custom_ppO2_text_column .115 ; 115 | 286 |
280 #DEFINE dm_custom_ppDil_text_column .2 ; 2 | 287 ; II. End of the custom content row (101-163) |
281 ; Value | |
282 #DEFINE dm_custom_s_check_ppo2_o2_column .108 ; 108 | |
283 #DEFINE dm_custom_s_check_ppo2_dil_col .8 ; 8 | |
284 #DEFINE dm_custom_s_check_value_row dm_customview_row+.18 ; 119 | |
285 | |
286 ;******* Custom content / #12 - PSCR Info ******* | |
287 ; Title | |
288 #DEFINE dm_custom_pscr_text_row dm_customview_row+.1 ; 102 | |
289 #DEFINE dm_custom_pscr_text_drop_column .55 | |
290 #DEFINE dm_custom_pscr_text_ratio_column .105 | |
291 ; Value | |
292 #DEFINE dm_custom_pscr_drop_column .66 | |
293 #DEFINE dm_custom_pscr_drop_row dm_customview_row+.18 | |
294 #DEFINE dm_custom_pscr_ratio_column .110 | |
295 #DEFINE dm_custom_pscr_ratio_row dm_customview_row+.18 | |
296 | |
297 ; II. End of the custom content row. (101-163) | |
298 | 288 |
299 ; 1px space between the 2nd and 3rd content rows | 289 ; 1px space between the 2nd and 3rd content rows |
300 #DEFINE dm_sep_2_3_row dm_offset+.150 ; 164 | 290 #DEFINE dm_sep_2_3_row dm_offset+.150 ; 164 |
301 | 291 |
302 | 292 |
303 ; III. The 3rd content row contains temperature, active gas, NDL/TTS time, | 293 ; III. The 3rd content row contains temperature, active gas, NDL/TTS time, |
304 ; simulator menu, active/dil gas, decostop, Apnea surface time and max depth | 294 ; simulator menu, active/dil gas, decostop, Apnea surface time and max depth |
305 ; The content row contains 2 columns: | 295 ; The content row contains 2 columns: |
306 ; - temperature, gas names | 296 ; - temperature, gas names |
307 ; - NDL/TTS, DecoStop | 297 ; - NDL/TTS, DecoStop |
308 #DEFINE dm_3rdrow_top dm_offset+.151 ; 165 | 298 #DEFINE dm_3rdrow_top dm_offset+.151 ; 165 |
309 #DEFINE dm_3rdrow_bot .239 ; 239 | 299 #DEFINE dm_3rdrow_bot .239 ; 239 |
310 #DEFINE dm_3rdrow_lft .0 ; 0 | 300 #DEFINE dm_3rdrow_lft .0 ; 0 |
311 #DEFINE dm_3rdrow_rgt .159 ; 159 | 301 #DEFINE dm_3rdrow_rgt .159 ; 159 |
312 | 302 |
313 ;******* Bottom content / 1st col ******* | 303 ;******* Bottom content / 1st col ******* |
314 ; Temperature | 304 ; Temperature |
315 #DEFINE dm_temp_row dm_3rdrow_top-.4 ; 161 | 305 #DEFINE dm_temp_row dm_3rdrow_top-.4 ; 161 |
316 #DEFINE dm_temp_column .0 ; 0 | 306 #DEFINE dm_temp_column .0 ; 0 |
317 ; Simulation text | 307 ; Simulation text |
318 #DEFINE dm_simtext_row dm_3rdrow_top ; 165 | 308 #DEFINE dm_simtext_row dm_3rdrow_top+.18 ; 183 |
319 #DEFINE dm_simtext_column .35 ; 35 | 309 #DEFINE dm_simtext_column .36 ; 35 |
320 ; Diluent gas | 310 ; Diluent gas |
321 #DEFINE dm_active_dil_row dm_3rdrow_top+.19 ; 185 | 311 #DEFINE dm_active_dil_row dm_3rdrow_top+.19 ; 185 |
322 #DEFINE dm_active_dil_column .0 ; 0 | 312 #DEFINE dm_active_dil_column .0 ; 0 |
323 ; active gas for OC, blinking better gas, setpoint or bailout for CCR | 313 ; active gas for OC, blinking better gas, setpoint or bailout for CCR |
324 #DEFINE dm_active_gas_row .208 ; 208 | 314 #DEFINE dm_active_gas_row .208 ; 208 |
325 #DEFINE dm_active_gas_column .0 ; 0 | 315 #DEFINE dm_active_gas_column .0 ; 0 |
326 | 316 |
327 ;******* Bottom content / 2nd col ******* | 317 ;******* Bottom content / 2nd col ******* |
328 ; Next deco stop for TTS | 318 ; Next deco stop for TTS |
329 #DEFINE dm_decostop_1st_stop_row dm_3rdrow_top ; 165 | 319 #DEFINE dm_decostop_1st_stop_row dm_3rdrow_top ; 165 |
330 #DEFINE dm_decostop_1st_stop_column .82 ; 82 | 320 #DEFINE dm_decostop_1st_stop_column .82 ; 82 |
331 ; Safety Stop | 321 ; Safety Stop |
332 #DEFINE dm_safetystop_row dm_3rdrow_top ; 165 | 322 #DEFINE dm_safetystop_row dm_3rdrow_top ; 165 |
333 #DEFINE dm_safetystop_column .118 ; 118 | 323 #DEFINE dm_safetystop_column .118 ; 118 |
334 #DEFINE dm_safetystop_bot dm_safetystop_row+.31 ; 196 | 324 #DEFINE dm_safetystop_bot dm_safetystop_row+.31 ; 196 |
335 #DEFINE dm_safetystop_text_row dm_safetystop_row+.1 ; 166 | 325 #DEFINE dm_safetystop_text_row dm_safetystop_row+.1 ; 166 |
336 #DEFINE dm_safetystop_text_column .80 ; 80 - for the 4char "Stop"!!! | 326 #DEFINE dm_safetystop_text_column .80 ; 80 for the 4 chars "Stop" |
337 ; TTS | 327 ; TTS |
338 #DEFINE dm_tts_value_row dm_3rdrow_top+.32; ; 197 (pre: 207) | 328 #DEFINE dm_tts_value_row dm_3rdrow_top+.32; ; 197 |
339 #DEFINE dm_tts_value_column .118 ; 118 | 329 #DEFINE dm_tts_value_column .118 ; 118 |
340 #DEFINE dm_tts_text_row dm_tts_value_row+.5 ; 202 (pre: 211) | 330 #DEFINE dm_tts_text_row dm_tts_value_row+.5 ; 202 |
341 #DEFINE dm_tts_text_column .85 ; 85 | 331 #DEFINE dm_tts_text_column .85 ; 85 |
342 ; NDL - the same position as TTS | 332 ; NDL - the same position as TTS |
343 #DEFINE dm_ndl_value_row dm_tts_value_row ; 197 | 333 #DEFINE dm_ndl_value_row dm_tts_value_row ; 197 |
344 #DEFINE dm_ndl_value_column dm_tts_value_column ; 118 | 334 #DEFINE dm_ndl_value_column dm_tts_value_column ; 118 |
345 #DEFINE dm_ndl_text_row dm_tts_text_row ; 202 | 335 #DEFINE dm_ndl_text_row dm_tts_text_row ; 202 |
346 #DEFINE dm_ndl_text_column dm_tts_text_column ; 85 | 336 #DEFINE dm_ndl_text_column dm_tts_text_column ; 85 |
347 ; FTTS (only modded screen) | 337 ; FTTS (only modded screen) |
348 #DEFINE dm_ftts_value_row dm_3rdrow_top+.64 ; 215 | 338 #DEFINE dm_ftts_value_row dm_3rdrow_top+.64 ; 215 |
349 #DEFINE dm_ftts_value_column .97 ; 97 | 339 #DEFINE dm_ftts_value_column .97 ; 97 |
350 ; Grid line (only modded screen) | 340 ; Grid line (only modded screen) |
351 #DEFINE dm_gassep_row dm_sep_2_3_row ; 164 | 341 #DEFINE dm_gassep_row dm_sep_2_3_row ; 164 |
352 #DEFINE dm_gassep_bot .239 ; .239 | 342 #DEFINE dm_gassep_bot .239 ; 239 |
353 #DEFINE dm_gassep_column .78 ; .78 | 343 #DEFINE dm_gassep_column .78 ; 78 |
354 | 344 |
355 ;******* Bottom content / Apnea mode *******; | 345 ;******* Bottom content / Apnea mode *******; |
356 #DEFINE dm_apnoe_surface_time_text_row .190 ; 190 | 346 #DEFINE dm_apnoe_surface_time_text_row .192 ; 192 |
357 #DEFINE dm_apnoe_surface_time_text_col .30 ; 30 | 347 #DEFINE dm_apnoe_surface_time_text_col .30 ; 30 |
358 #DEFINE dm_apnoe_surface_time_row .204 ; 204 | 348 #DEFINE dm_apnoe_surface_time_row .207 ; 207 |
359 #DEFINE dm_apnoe_surface_time_column .15 ; 15 | 349 #DEFINE dm_apnoe_surface_time_column .15 ; 15 |
360 #DEFINE dm_apnoe_last_max_depth_text_row .190 ; 190 | 350 #DEFINE dm_apnoe_last_max_depth_text_row .192 ; 192 |
361 #DEFINE dm_apnoe_last_max_depth_text_col .100 ; 100 | 351 #DEFINE dm_apnoe_last_max_depth_text_col .100 ; 100 |
362 #DEFINE dm_apnoe_last_max_depth_row .204 ; 204 | 352 #DEFINE dm_apnoe_last_max_depth_row .207 ; 207 |
363 #DEFINE dm_apnoe_last_max_depth_column .100 ; 100 | 353 #DEFINE dm_apnoe_last_max_depth_column .100 ; 100 |
364 | 354 |
365 | 355 |
366 ; IV. The last set of parameters are for the menus displayed in dive mode | 356 ; IV. The last set of parameters is for the menus displayed in dive mode |
367 ; Divemode menu | 357 ; Divemode menu |
368 #DEFINE dm_menu_row .164 ; 164 Upper row -- the frame's top line is the separator | 358 #DEFINE dm_menu_row .164 ; 164 upper row, the frame's top line is the separator |
369 #DEFINE dm_menu_lower .239 ; 239 Lower border | 359 #DEFINE dm_menu_lower .239 ; 239 lower border |
370 #DEFINE dm_menu_left .0 ; 0 Left | 360 #DEFINE dm_menu_left .0 ; 0 left |
371 #DEFINE dm_menu_right .159 ; 159 Right | 361 #DEFINE dm_menu_right .159 ; 159 right |
372 | 362 |
373 #DEFINE dm_menu_item1_row dm_menu_row+.1 ; 165 | 363 #DEFINE dm_menu_item1_row dm_menu_row+.1 ; 165 |
374 #DEFINE dm_menu_item1_column .9 ; 9 | 364 #DEFINE dm_menu_item1_column .9 ; 9 |
375 #DEFINE dm_menu_item2_row dm_menu_item1_row+.24 ; 189 | 365 #DEFINE dm_menu_item2_row dm_menu_item1_row+.24 ; 189 |
376 #DEFINE dm_menu_item2_column dm_menu_item1_column ; 9 | 366 #DEFINE dm_menu_item2_column dm_menu_item1_column ; 9 |
377 #DEFINE dm_menu_item3_row dm_menu_item2_row+.24 ; 213 | 367 #DEFINE dm_menu_item3_row dm_menu_item2_row+.24 ; 213 |
378 #DEFINE dm_menu_item3_column dm_menu_item1_column ; 9 | 368 #DEFINE dm_menu_item3_column dm_menu_item1_column ; 9 |
379 | 369 |
380 #DEFINE dm_menu_item4_row dm_menu_row+.1 ; 165 | 370 #DEFINE dm_menu_item4_row dm_menu_row+.1 ; 165 |
381 #DEFINE dm_menu_item4_column .89 ; 89 | 371 #DEFINE dm_menu_item4_column .89 ; 89 |
382 #DEFINE dm_menu_item5_row dm_menu_item4_row+.24 ; 189 | 372 #DEFINE dm_menu_item5_row dm_menu_item4_row+.24 ; 189 |
383 #DEFINE dm_menu_item5_column dm_menu_item4_column ; 89 | 373 #DEFINE dm_menu_item5_column dm_menu_item4_column ; 89 |
384 #DEFINE dm_menu_item6_row dm_menu_item5_row+.24 ; 213 | 374 #DEFINE dm_menu_item6_row dm_menu_item5_row+.24 ; 213 |
385 #DEFINE dm_menu_item6_column dm_menu_item4_column ; 89 | 375 #DEFINE dm_menu_item6_column dm_menu_item4_column ; 89 |
386 | 376 |