Mercurial > public > mk2
annotate code_part1/OSTC_code_asm_part1/customview.asm @ 742:69c9a8c41b94
Russian update from Sergei
author | heinrichsweikamp |
---|---|
date | Thu, 08 Aug 2013 11:06:52 +0200 |
parents | 6e456a6398e0 |
children | 3096294bb06e |
rev | line source |
---|---|
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
1 ; OSTC - diving computer code |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
2 ; Copyright (C) 2008 HeinrichsWeikamp GbR |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
3 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
4 ; This program is free software: you can redistribute it and/or modify |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
5 ; it under the terms of the GNU General Public License as published by |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
6 ; the Free Software Foundation, either version 3 of the License, or |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
7 ; (at your option) any later version. |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
8 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
9 ; This program is distributed in the hope that it will be useful, |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
10 ; but WITHOUT ANY WARRANTY; without even the implied warranty of |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
11 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
12 ; GNU General Public License for more details. |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
13 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
14 ; You should have received a copy of the GNU General Public License |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
15 ; along with this program. If not, see <http://www.gnu.org/licenses/>. |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
16 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
17 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
18 ; Customviews for divemode |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
19 ; written by: Matthias Heinrichs, info@heinrichsweikamp.com |
128 | 20 ; history: |
478
fd8266b511cc
New SAC (CF56/CF57) in 5..50 l/min range (no more decimal).
JeanDo
parents:
476
diff
changeset
|
21 ; 2010-12-12: [MH] First updated |
128 | 22 ; 2011-01-04: [jDG] Saturation graphs in customview divemode |
478
fd8266b511cc
New SAC (CF56/CF57) in 5..50 l/min range (no more decimal).
JeanDo
parents:
476
diff
changeset
|
23 ; 2011-10-10: [jDG] Added Cave live gas counter |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
24 ; known bugs: |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
25 ; ToDo: |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
26 |
128 | 27 ;============================================================================= |
28 ; Show the customview-dependent entry for the divemode menu | |
29 ; | |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
30 customview_menu_entry3: |
128 | 31 movff menupos3,WREG ; copy |
32 dcfsnz WREG,F | |
33 bra customview_menu3_stopwatch ; Show the stopwatch option in divemode menu | |
34 dcfsnz WREG,F | |
35 bra customview_menu3_marker ; Show the marker option in divemode menu | |
36 dcfsnz WREG,F | |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
37 bra customview_menu3_clock ; Show nothing |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
38 dcfsnz WREG,F |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
39 bra customview_menu3_lead_tiss ; Show nothing |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
40 dcfsnz WREG,F |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
41 bra customview_menu3_average ; Show nothing |
128 | 42 dcfsnz WREG,F |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
43 bra customview_menu3_graphs ; Show nothing |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
44 dcfsnz WREG,F |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
45 bra customview_menu3_ead_end ; Show nothing |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
46 dcfsnz WREG,F |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
47 bra customview_menu3_@5 ; Show nothing |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
48 dcfsnz WREG,F |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
49 bra customview_menu3_cave_bailout; Show reset option |
666 | 50 dcfsnz WREG,F |
51 bra customview_menu3_pSCR_ppO2 ; Show nothing | |
52 dcfsnz WREG,F | |
53 bra customview_menu3_show_change_gf; Show toggle option | |
54 | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
55 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
56 |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
57 customview_menu3_cave_bailout: |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
58 customview_menu3_stopwatch: |
128 | 59 DISPLAYTEXT .33 ; ResetAvr |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
60 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
61 |
666 | 62 customview_menu3_show_change_gf: |
63 DISPLAYTEXTH .269 ; ToggleGF | |
64 return | |
65 | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
66 customview_menu3_marker: |
128 | 67 DISPLAYTEXT .30 ; Set Marker |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
68 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
69 |
128 | 70 customview_menu3_clock: ; No menu entry |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
71 customview_menu3_lead_tiss: |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
72 customview_menu3_average: |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
73 customview_menu3_graphs: |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
74 customview_menu3_ead_end: |
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
75 customview_menu3_@5: |
666 | 76 customview_menu3_pSCR_ppO2: |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
77 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
78 |
128 | 79 ;============================================================================= |
80 ; Do every-second tasks for the custom view area | |
81 | |
82 customview_second: | |
83 movff menupos3,WREG ; copy | |
84 dcfsnz WREG,F | |
85 bra customview_1sec_stopwatch ; Update the Stopwatch | |
86 dcfsnz WREG,F | |
87 bra customview_1sec_marker ; Update the Marker | |
88 dcfsnz WREG,F | |
89 bra customview_1sec_clock ; Update the Clock | |
90 dcfsnz WREG,F | |
91 bra customview_1sec_lead_tiss ; Update the leading tissue | |
133 | 92 dcfsnz WREG,F |
131 | 93 bra customview_1sec_average ; Update the Average depth |
128 | 94 dcfsnz WREG,F |
95 bra customview_1sec_graphs ; Update the leading tissue | |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
96 dcfsnz WREG,F |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
97 bra customview_1sec_ead_end ; Show END and EAD in divemode |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
98 dcfsnz WREG,F |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
99 bra customview_1sec_@5 ; Show TTS for extra time. |
476 | 100 dcfsnz WREG,F |
101 bra customview_1sec_cave_bailout; Show Cave conso prediction. | |
552 | 102 dcfsnz WREG,F |
103 bra customview_1sec_pSCR_ppO2 ; Show/Update pSCR ppO2 | |
666 | 104 dcfsnz WREG,F |
105 bra customview_1sec_show_change_gf; Show and/or change GF values | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
106 ; Menupos3=0, do nothing |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
107 return |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
108 |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
109 customview_1sec_average: |
681 | 110 goto DISP_total_average_show2 ; Update the figures only |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
111 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
112 customview_1sec_stopwatch: |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
113 btfsc gauge_mode ; In Gauge mode? |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
114 bra customview_1sec_stopwatch_gauge; Yes |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
115 |
295 | 116 bsf menu3_active ; Set Flag |
681 | 117 goto DISP_stopwatch_show2 ; Update figures only |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
118 |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
119 customview_1sec_stopwatch_gauge: |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
120 bsf menu3_active ; Set Flag |
681 | 121 goto DISP_stopwatch_show_gauge ; Update figures + Description |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
122 |
128 | 123 customview_1sec_marker: ; Do nothing extra |
666 | 124 customview_1sec_show_change_gf: ; Do nothing extra |
295 | 125 bsf menu3_active ; Set Flag |
128 | 126 customview_1sec_clock: ; Do nothing extra |
127 customview_1sec_lead_tiss: ; Do nothing extra | |
133 | 128 return |
129 | |
128 | 130 customview_1sec_graphs: ; Do nothing extra |
150 | 131 decfsz apnoe_mins ; 10 sec passed ? |
132 return ; No: skip. | |
133 movlw .10 ; Yes: reset counter. | |
134 movwf apnoe_mins | |
135 | |
136 call deco_calc_desaturation_time ; calculate desaturation time | |
137 movlb b'00000001' ; select ram bank 1 | |
681 | 138 goto DISP_tissue_saturation_graph |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
139 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
140 customview_1sec_ead_end: |
681 | 141 goto DISP_show_end_ead_divemode |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
142 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
143 customview_1sec_@5: |
681 | 144 goto DISP_show_@5 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
145 |
476 | 146 customview_1sec_cave_bailout: |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
147 bsf menu3_active ; Set Flag |
681 | 148 goto DISP_show_cave_bailout |
476 | 149 |
552 | 150 customview_1sec_pSCR_ppO2: |
681 | 151 goto DISP_show_pSCR_ppO2 ; Yes, compute and show value |
552 | 152 |
153 | |
128 | 154 ;============================================================================= |
155 ; Do every-minute tasks for the custom view area | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
156 |
128 | 157 customview_minute: |
158 movff menupos3,WREG ; copy | |
159 dcfsnz WREG,F | |
160 bra customview_minute_stopwatch ; Update the Stopwatch | |
161 dcfsnz WREG,F | |
162 bra customview_minute_marker ; Update the Marker | |
163 dcfsnz WREG,F | |
164 bra customview_minute_clock ; Update the Clock | |
165 dcfsnz WREG,F | |
166 bra customview_minute_lead_tiss ; Update the leading tissue | |
133 | 167 dcfsnz WREG,F |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
168 bra customview_minute_average ; Update the Average depth |
128 | 169 dcfsnz WREG,F |
170 bra customview_minute_graphs ; Update the graphs | |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
171 dcfsnz WREG,F |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
172 bra customview_minute_ead_end ; Show END and EAD in divemode |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
173 dcfsnz WREG,F |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
174 bra customview_minute_@5 ; Show TTS for extra time. |
476 | 175 dcfsnz WREG,F |
176 bra customview_minute_cave_bailout; Show Cave consomation prediction. | |
552 | 177 dcfsnz WREG,F |
178 bra customview_minute_pSCR_ppO2; Show pSCR ppO2 level | |
666 | 179 dcfsnz WREG,F |
180 bra customview_minute_show_change_gf; Show and/or change GF values | |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
181 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
182 ; Menupos3=0, do nothing |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
183 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
184 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
185 customview_minute_clock: |
681 | 186 goto DISP_diveclock2 ; Update the clock |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
187 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
188 customview_minute_lead_tiss: |
681 | 189 goto DISP_show_leading_tissue_2 ; Update the leading tissue |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
190 |
666 | 191 customview_minute_show_change_gf: ; Do nothing extra |
476 | 192 customview_minute_cave_bailout: ; Do nothing extra |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
193 customview_minute_@5: ; Do nothing extra |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
194 customview_minute_ead_end: ; Do nothing extra |
128 | 195 customview_minute_marker: ; Do nothing extra |
196 customview_minute_stopwatch: ; Do nothing extra | |
137 | 197 customview_minute_average: ; Do nothing extra |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
198 customview_minute_graphs: ; Do nothing extra |
552 | 199 customview_minute_pSCR_ppO2: ; Do nothing extra |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
200 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
201 |
128 | 202 ;============================================================================= |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
203 ; Show next customview (and delete this flag) |
128 | 204 |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
205 customview_toggle: |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
206 bcf menu3_active ;=1: menu entry three in divemode menu is active |
119 | 207 ostc_debug 'X' ; Sends debug-information to screen if debugmode active |
137 | 208 |
626
bab5a9fc1b10
restore last used customview in dive- and surface-mode
heinrichsweikamp
parents:
592
diff
changeset
|
209 incf menupos3,F ; Number of customview to show |
bab5a9fc1b10
restore last used customview in dive- and surface-mode
heinrichsweikamp
parents:
592
diff
changeset
|
210 customview_toggle2: |
137 | 211 btfsc FLAG_apnoe_mode ; In Apnoe mode? |
212 bra customview_toggle_exit ; Yes, ignore custom view in divemode completely | |
213 | |
666 | 214 movlw d'11' ; Max number |
128 | 215 cpfsgt menupos3 ; Max reached? |
216 bra customview_mask ; No, show | |
217 clrf menupos3 ; Reset to zero (Zero=no custom view) | |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
218 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
219 customview_mask: |
681 | 220 call DISP_clear_customview_divemode |
476 | 221 bcf tts_extra_time ; By default, CLEAR computation of @5 request. |
222 | |
128 | 223 movff menupos3,WREG ; Menupos3 holds number of customview function |
224 dcfsnz WREG,F | |
476 | 225 bra customview_init_stopwatch ; 1: Show the Stopwatch |
128 | 226 dcfsnz WREG,F |
476 | 227 bra customview_init_marker ; 2: Show the Marker-Menu |
128 | 228 dcfsnz WREG,F |
476 | 229 bra customview_init_clock ; 3: Show the clock |
128 | 230 dcfsnz WREG,F |
476 | 231 bra customview_init_lead_tissue ; 4: Show the leading tissue |
133 | 232 dcfsnz WREG,F |
476 | 233 bra customview_init_average ; 5: Show Total average depth |
128 | 234 dcfsnz WREG,F |
476 | 235 bra customview_init_graphs ; 6: Show the graphs |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
236 dcfsnz WREG,F |
476 | 237 bra customview_init_ead_end ; 7: Show END and EAD in divemode |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
238 dcfsnz WREG,F |
476 | 239 bra customview_init_@5 ; 8: Show TTS for extra time. |
240 dcfsnz WREG,F | |
241 bra customview_init_cave_bailout ; 9: Show Cave consomation prediction. | |
552 | 242 dcfsnz WREG,F |
243 bra customview_init_pSCR_ppo2 ; 10: Show ppO2 for pSCR users | |
666 | 244 dcfsnz WREG,F |
245 bra customview_init_show_change_gf ; 11: Show and/or change GF values | |
128 | 246 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
247 customview_init_nocustomview: |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
248 bra customview_toggle_exit |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
249 |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
250 customview_init_average: |
681 | 251 call DISP_total_average_show ; Show Average with mask |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
252 bra customview_toggle_exit |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
253 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
254 customview_init_stopwatch: |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
255 GETCUSTOM8 d'51' ; Show Stopwatch? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
256 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
257 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
258 |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
259 btfsc gauge_mode ; In Gauge mode? |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
260 bra customview_init_stopwatch_gauge ; Yes |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
261 |
681 | 262 call DISP_stopwatch_show ; Init Stopwatch display |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
263 bsf menu3_active ; Set Flag |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
264 bra customview_toggle_exit |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
265 |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
266 customview_init_stopwatch_gauge: |
681 | 267 call DISP_stopwatch_show_gauge ; Init Stopwatch display |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
268 bsf menu3_active ; Set Flag |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
269 bra customview_toggle_exit |
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
270 |
128 | 271 customview_init_marker: ; Init Marker |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
272 btfsc gauge_mode ; In Gauge mode? |
681 | 273 call DISP_clear_divemode_menu; Yes, clear BIG stopwatch |
386
deced1cacff7
Added velocity in divemode, BIG stopwatch in Gauge mode
heinrichsweikamp
parents:
323
diff
changeset
|
274 |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
275 GETCUSTOM8 d'50' ; Show Marker? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
276 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
277 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
278 |
681 | 279 call DISP_standard_color |
150 | 280 DISPLAYTEXT d'151' ; Set Marker? |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
281 bsf menu3_active ; Set Flag |
674 | 282 |
283 btfss event_occured ; Is an event active? | |
284 bra customview_toggle_exit ; No | |
285 | |
286 movlw d'6' ; Type of Alarm (Manual Marker) | |
287 cpfseq AlarmType ; Marker recently set? | |
288 bra customview_toggle_exit ; No | |
289 | |
681 | 290 call DISP_marker_set ; Show some feedback |
150 | 291 bra customview_toggle_exit |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
292 |
107 | 293 customview_init_clock: ; Init Clock |
681 | 294 call DISP_diveclock |
150 | 295 bra customview_toggle_exit |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
296 |
107 | 297 customview_init_lead_tissue: ; Show leading tissue |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
298 GETCUSTOM8 d'53' ; Show Lead Tissue? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
299 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
300 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
301 |
137 | 302 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
303 bra customview_toggle ; Yes, use next Customview! | |
304 | |
681 | 305 call DISP_show_leading_tissue |
150 | 306 bra customview_toggle_exit |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
307 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
308 customview_init_ead_end: |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
309 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
310 bra customview_toggle ; Yes, use next Customview! |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
311 |
681 | 312 call DISP_show_end_ead_divemode |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
313 bra customview_toggle_exit |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
314 |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
315 customview_init_@5: |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
316 GETCUSTOM8 d'58' ; Extra time to simulate |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
317 iorwf WREG,F ; Null ? |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
318 bz customview_toggle ; Yes: use next Customview ! |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
319 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
320 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
321 bra customview_toggle ; Yes, use next Customview! |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
322 |
323 | 323 setf WREG ; WAIT marker: display "---" |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
324 movff WREG,int_O_extra_ascenttime+0 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
325 movff WREG,int_O_extra_ascenttime+1 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
326 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
327 movlw 1 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
328 movwf apnoe_mins ; Start compute after next cycle. |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
329 bsf tts_extra_time |
681 | 330 call DISP_show_@5 ; Show (wait) |
312
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
331 |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
332 bra customview_toggle_exit |
b7e4e74c0e17
New @5 variant: compute TTS if staying some extra time (CF58) at current depth.
JeanDo
parents:
295
diff
changeset
|
333 |
476 | 334 customview_init_cave_bailout: |
335 GETCUSTOM15 d'59' ; Conso level warning set ? | |
336 movf lo,W | |
337 iorwf hi,W | |
338 bz customview_toggle ; No: jump to next Customview ! | |
339 | |
479
9fc8feff27a5
Enable reset in cave bailout prediction, by using chrono average depth.
JeanDo
parents:
478
diff
changeset
|
340 bsf menu3_active ; Set Flag |
681 | 341 call DISP_show_cave_bailout |
476 | 342 bra customview_toggle_exit |
343 | |
131 | 344 customview_init_graphs: ; Show tissue graph |
345 GETCUSTOM8 d'52' ; Show Tissue Graph? (=1 in WREG) | |
346 decfsz WREG,F ; WREG=1? | |
347 bra customview_toggle ; No, use next Customview | |
128 | 348 |
137 | 349 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
350 bra customview_toggle ; Yes, use next Customview! | |
351 | |
150 | 352 movlw .1 ; Draw next second. |
353 movwf apnoe_mins ; 10sec counter. | |
354 | |
355 call deco_calc_desaturation_time ; calculate desaturation time | |
356 movlb b'00000001' ; select ram bank 1 | |
681 | 357 call DISP_tissue_saturation_graph |
150 | 358 |
359 bra customview_toggle_exit | |
360 | |
552 | 361 customview_init_pSCR_ppo2: |
362 GETCUSTOM8 d'61' ; Show pSCR ppO2? | |
363 decfsz WREG,F ; WREG=1? | |
364 bra customview_toggle ; No, use next Customview | |
365 | |
666 | 366 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
367 bra customview_toggle ; Yes, use next Customview! | |
368 | |
681 | 369 call DISP_show_pSCR_ppO2 ; Yes, compute and show value |
552 | 370 |
371 bra customview_toggle_exit | |
372 | |
666 | 373 customview_init_show_change_gf: |
374 GETCUSTOM8 d'69' ; Allow GF change? | |
375 decfsz WREG,F ; WREG=1? | |
376 bra customview_toggle ; No, use next Customview | |
377 | |
378 btfsc no_deco_customviews ; no-deco-mode-flag = 1 | |
379 bra customview_toggle ; Yes, use next Customview! | |
380 | |
381 movff char_I_deco_model,lo | |
382 decfsz lo,F ; jump over next line if char_I_deco_model == 1 | |
383 bra customview_toggle_exit | |
384 | |
385 bsf menu3_active ; Set Flag | |
681 | 386 call DISP_show_gf_customview ; Show info |
666 | 387 bra customview_toggle_exit |
388 | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
389 customview_toggle_exit: |
107 | 390 bcf toggle_customview ; Clear flag |
128 | 391 ostc_debug 'Y' ; Sends debug-information to screen in debugmode |
107 | 392 return |
393 | |
128 | 394 ;============================================================================= |
395 ; Yes, show next customview (and delete this flag) | |
107 | 396 |
128 | 397 surfcustomview_toggle: |
107 | 398 incf menupos3,F ; Number of customview to show |
626
bab5a9fc1b10
restore last used customview in dive- and surface-mode
heinrichsweikamp
parents:
592
diff
changeset
|
399 surfcustomview_toggle2: |
111 | 400 movlw d'4' ; Max number |
401 cpfsgt menupos3 ; Max reached? | |
107 | 402 bra surfcustomview_mask ; No, show |
403 clrf menupos3 ; Reset to zero (Zero=no custom view) | |
404 surfcustomview_mask: | |
681 | 405 call DISP_clear_customview_surfmode |
128 | 406 movff menupos3,WREG ; Menupos3 holds number of customview function |
407 dcfsnz WREG,F | |
107 | 408 bra surfcustomview_init_graphs ; Show the tissue graphs |
128 | 409 dcfsnz WREG,F |
107 | 410 bra surfcustomview_init_gaslist ; Show pre-dive gaslist/setpoint list |
128 | 411 dcfsnz WREG,F |
133 | 412 bra surfcustomview_init_interval; Show the interval counter |
128 | 413 dcfsnz WREG,F |
111 | 414 bra surfcustomview_init_cfview ; Show the interval counter |
128 | 415 |
107 | 416 surfcustomview_init_nocustomview: |
417 bra surfcustomview_toggle_exit | |
418 | |
419 surfcustomview_init_graphs: | |
137 | 420 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
421 bra surfcustomview_toggle ; Yes, use next Customview! | |
422 | |
681 | 423 call DISP_tissue_saturation_graph; Draw the graphs |
107 | 424 bra surfcustomview_toggle_exit |
425 | |
426 surfcustomview_init_gaslist: | |
137 | 427 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
428 bra surfcustomview_toggle ; Yes, use next Customview! | |
429 | |
681 | 430 call DISP_pre_dive_screen ; Show the Gaslist/Setpoint list |
107 | 431 bra surfcustomview_toggle_exit |
432 | |
111 | 433 surfcustomview_init_interval: |
681 | 434 call DISP_standard_color |
111 | 435 DISPLAYTEXT d'189' ; Surface |
436 DISPLAYTEXT d'240' ; Interval: | |
681 | 437 call DISP_interval ; Display the interval |
111 | 438 bra surfcustomview_toggle_exit |
439 | |
440 surfcustomview_init_cfview: | |
441 read_int_eeprom d'34' ; Get Decomode | |
442 incf EEDATA,W ; +1 -> WREG | |
443 movwf temp10 | |
444 dcfsnz temp10,F | |
681 | 445 call DISP_show_cf11_cf12_cf29 ; =0 (ZH-L16 OC) |
111 | 446 dcfsnz temp10,F |
447 bra surfcustomview_toggle_exit ; =1 (Gauge) | |
448 dcfsnz temp10,F | |
681 | 449 call DISP_show_cf11_cf12_cf29 ; =2 (ZH-L16 CC) |
111 | 450 dcfsnz temp10,F |
451 bra surfcustomview_toggle_exit ; =3 (Apnoe) | |
452 dcfsnz temp10,F | |
681 | 453 call DISP_show_cf32_cf33_cf29 ; =4 (L16-GF OC) |
111 | 454 dcfsnz temp10,F |
681 | 455 call DISP_show_cf32_cf33_cf29 ; =5 (L16-GF CC) |
592
cda5b45b953f
NEW: Deco mode "pSCR-GF": Computes deco and CNS based on pSCR parameters (CF62/63)
heinrichsweikamp
parents:
552
diff
changeset
|
456 dcfsnz temp10,F |
681 | 457 call DISP_show_cf32_cf33_cf62_cf63 ; =6 (pSCR-GF) |
592
cda5b45b953f
NEW: Deco mode "pSCR-GF": Computes deco and CNS based on pSCR parameters (CF62/63)
heinrichsweikamp
parents:
552
diff
changeset
|
458 |
111 | 459 bra surfcustomview_toggle_exit |
460 | |
107 | 461 surfcustomview_toggle_exit: |
462 bcf toggle_customview ; Clear flag | |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
463 clrf timeout_counter2 ; Clear timeout |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
464 return |
107 | 465 |
128 | 466 ;============================================================================= |
467 ; Do every-second tasks for the custom view area | |
107 | 468 |
128 | 469 surfcustomview_second: |
470 ; movff menupos3,WREG ; copy | |
471 ; dcfsnz WREG,F | |
472 ; bra surfcustomview_1sec_graphs ; Update the Graphs | |
473 ; dcfsnz WREG,F | |
474 ; bra surfcustomview_1sec_gaslist ; Update the Gaslist/SetPoint List | |
475 ; dcfsnz WREG,F | |
476 ; bra surfcustomview_1sec_interval ; Update the Interval display | |
477 ; dcfsnz WREG,F | |
478 ; bra surfcustomview_1sec_cfview ; Update the critical cf view | |
479 ; ; Menupos3=0, do nothing | |
480 ; return | |
481 ;surfcustomview_1sec_cfview: ; Do nothing extra | |
482 ;surfcustomview_1sec_graphs: ; Do nothing extra | |
137 | 483 ;surfcustomview_1sec_gaslist: ; Do nothing extra |
484 ;surfcustomview_1sec_interval: ; Do nothing extra | |
107 | 485 return |
486 | |
128 | 487 ;============================================================================= |
107 | 488 |
489 surfcustomview_minute: ; Do every-minute tasks for the custom view area | |
128 | 490 movff menupos3,WREG ; copy |
491 dcfsnz WREG,F | |
107 | 492 bra surfcustomview_minute_graphs ; Update the Graphs |
128 | 493 dcfsnz WREG,F |
107 | 494 bra surfcustomview_minute_gaslist ; Update the Gaslist/SetPoint List |
128 | 495 dcfsnz WREG,F |
111 | 496 bra surfcustomview_minute_interval ; Update the Interval display |
128 | 497 dcfsnz WREG,F |
137 | 498 bra surfcustomview_minute_cfview ; Update the critical cf view |
107 | 499 ; Menupos3=0, do nothing |
500 return | |
501 | |
502 surfcustomview_minute_graphs: | |
150 | 503 call deco_calc_desaturation_time ; calculate desaturation time |
504 movlb b'00000001' ; select ram bank 1 | |
681 | 505 call DISP_tissue_saturation_graph ; Draw/Update the graphs |
107 | 506 return |
507 | |
111 | 508 surfcustomview_minute_interval: |
112 | 509 DISPLAYTEXT d'189' ; Surface |
510 DISPLAYTEXT d'240' ; Interval: | |
681 | 511 call DISP_interval ; Display the interval |
111 | 512 return |
513 | |
107 | 514 surfcustomview_minute_gaslist: ; Do nothing extra |
111 | 515 surfcustomview_minute_cfview: ; Do nothing extra |
516 return |