Mercurial > public > mk2
annotate code_part1/OSTC_code_asm_part1/customview.asm @ 284:908d0013727e
115200 baud bootloader tested and debugged
author | heinrichsweikamp |
---|---|
date | Tue, 19 Apr 2011 21:48:34 +0200 |
parents | 46d1012d096a |
children | 4e43476b5a63 |
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 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
20 ; written: 101212 |
128 | 21 ; history: |
22 ; 2010-12-12: [MH] last updated | |
23 ; 2011-01-04: [jDG] Saturation graphs in customview divemode | |
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 ; | |
30 customview_menu_entry3: | |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
31 ; bcf menu3_active ;=1: menu entry three in divemode menu is active |
128 | 32 |
33 movff menupos3,WREG ; copy | |
34 dcfsnz WREG,F | |
35 bra customview_menu3_stopwatch ; Show the stopwatch option in divemode menu | |
36 dcfsnz WREG,F | |
37 bra customview_menu3_marker ; Show the marker option in divemode menu | |
38 dcfsnz WREG,F | |
39 bra customview_menu3_clock ; Show the clock option in divemode menu | |
40 dcfsnz WREG,F | |
41 bra customview_menu3_lead_tiss ; Show the leading tissue option in divemode menu | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
42 ; Menupos3=0, do nothing |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
43 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
44 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
45 customview_menu3_stopwatch: |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
46 ; bsf menu3_active ; Set Flag |
128 | 47 DISPLAYTEXT .33 ; ResetAvr |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
48 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
49 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
50 customview_menu3_marker: |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
51 ; bsf menu3_active ; Set Flag |
128 | 52 DISPLAYTEXT .30 ; Set Marker |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
53 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
54 |
128 | 55 customview_menu3_clock: ; No menu entry |
56 customview_menu3_lead_tiss ; No menu entry | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
57 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
58 |
128 | 59 ;============================================================================= |
60 ; Do every-second tasks for the custom view area | |
61 | |
62 customview_second: | |
63 movff menupos3,WREG ; copy | |
64 dcfsnz WREG,F | |
65 bra customview_1sec_stopwatch ; Update the Stopwatch | |
66 dcfsnz WREG,F | |
67 bra customview_1sec_marker ; Update the Marker | |
68 dcfsnz WREG,F | |
69 bra customview_1sec_clock ; Update the Clock | |
70 dcfsnz WREG,F | |
71 bra customview_1sec_lead_tiss ; Update the leading tissue | |
133 | 72 dcfsnz WREG,F |
131 | 73 bra customview_1sec_average ; Update the Average depth |
128 | 74 dcfsnz WREG,F |
75 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
|
76 dcfsnz WREG,F |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
77 bra customview_1sec_ead_end ; Show END and EAD in divemode |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
78 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
79 ; Menupos3=0, do nothing |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
80 return |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
81 |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
82 customview_1sec_average: |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
83 call PLED_total_average_show2 ; Update the figures only |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
84 return |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
85 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
86 customview_1sec_stopwatch: |
128 | 87 call PLED_stopwatch_show2 ; Update figures only |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
88 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
89 |
128 | 90 customview_1sec_marker: ; Do nothing extra |
91 customview_1sec_clock: ; Do nothing extra | |
92 customview_1sec_lead_tiss: ; Do nothing extra | |
133 | 93 return |
94 | |
128 | 95 customview_1sec_graphs: ; Do nothing extra |
150 | 96 decfsz apnoe_mins ; 10 sec passed ? |
97 return ; No: skip. | |
98 movlw .10 ; Yes: reset counter. | |
99 movwf apnoe_mins | |
100 | |
101 call deco_calc_desaturation_time ; calculate desaturation time | |
102 movlb b'00000001' ; select ram bank 1 | |
103 call PLED_tissue_saturation_graph | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
104 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
105 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
106 customview_1sec_ead_end: |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
107 call PLED_show_end_ead_divemode |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
108 return |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
109 |
128 | 110 ;============================================================================= |
111 ; Do every-minute tasks for the custom view area | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
112 |
128 | 113 customview_minute: |
114 movff menupos3,WREG ; copy | |
115 dcfsnz WREG,F | |
116 bra customview_minute_stopwatch ; Update the Stopwatch | |
117 dcfsnz WREG,F | |
118 bra customview_minute_marker ; Update the Marker | |
119 dcfsnz WREG,F | |
120 bra customview_minute_clock ; Update the Clock | |
121 dcfsnz WREG,F | |
122 bra customview_minute_lead_tiss ; Update the leading tissue | |
133 | 123 dcfsnz WREG,F |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
124 bra customview_minute_average ; Update the Average depth |
128 | 125 dcfsnz WREG,F |
126 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
|
127 dcfsnz WREG,F |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
128 bra customview_minute_ead_end ; Show END and EAD in divemode |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
129 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
130 ; Menupos3=0, do nothing |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
131 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
132 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
133 customview_minute_clock: |
128 | 134 call PLED_diveclock2 ; Update the clock |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
135 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
136 |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
137 customview_minute_lead_tiss: |
128 | 138 call PLED_show_leading_tissue_2 ; Update the leading tissue |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
139 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
140 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
141 customview_minute_ead_end: ; Do nothing extra |
128 | 142 customview_minute_marker: ; Do nothing extra |
143 customview_minute_stopwatch: ; Do nothing extra | |
137 | 144 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
|
145 customview_minute_graphs: ; Do nothing extra |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
146 return |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
147 |
128 | 148 ;============================================================================= |
149 ; Yes, show next customview (and delete this flag) | |
150 | |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
151 customview_toggle: |
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
152 bcf menu3_active ;=1: menu entry three in divemode menu is active |
119 | 153 ostc_debug 'X' ; Sends debug-information to screen if debugmode active |
137 | 154 |
155 btfsc FLAG_apnoe_mode ; In Apnoe mode? | |
156 bra customview_toggle_exit ; Yes, ignore custom view in divemode completely | |
157 | |
128 | 158 incf menupos3,F ; Number of customview to show |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
159 movlw d'7' ; Max number |
128 | 160 cpfsgt menupos3 ; Max reached? |
161 bra customview_mask ; No, show | |
162 clrf menupos3 ; Reset to zero (Zero=no custom view) | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
163 customview_mask: |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
164 call PLED_clear_customview_divemode |
128 | 165 movff menupos3,WREG ; Menupos3 holds number of customview function |
166 dcfsnz WREG,F | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
167 bra customview_init_stopwatch ; Show the Stopwatch |
128 | 168 dcfsnz WREG,F |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
169 bra customview_init_marker ; Show the Marker-Menu |
128 | 170 dcfsnz WREG,F |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
171 bra customview_init_clock ; Show the clock |
128 | 172 dcfsnz WREG,F |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
173 bra customview_init_lead_tissue ; Show the leading tissue |
133 | 174 dcfsnz WREG,F |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
175 bra customview_init_average ; Show Total average depth |
128 | 176 dcfsnz WREG,F |
177 bra customview_init_graphs ; Show the graphs | |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
178 dcfsnz WREG,F |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
179 bra customview_init_ead_end ; Show END and EAD in divemode |
128 | 180 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
181 customview_init_nocustomview: |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
182 bra customview_toggle_exit |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
183 |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
184 customview_init_average: |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
185 call PLED_total_average_show ; Show Average with mask |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
186 bra customview_toggle_exit |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
187 |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
188 customview_init_stopwatch: |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
189 GETCUSTOM8 d'51' ; Show Stopwatch? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
190 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
191 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
192 |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
193 call PLED_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
|
194 bsf menu3_active ; Set Flag |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
195 bra customview_toggle_exit |
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
196 |
128 | 197 customview_init_marker: ; Init Marker |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
198 GETCUSTOM8 d'50' ; Show Marker? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
199 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
200 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
201 |
150 | 202 call PLED_standard_color |
203 DISPLAYTEXT d'151' ; Set Marker? | |
277
46d1012d096a
Quick-access to menupos3 in divemode - ToDo: EAD and END in CCR mode
heinrichsweikamp
parents:
274
diff
changeset
|
204 bsf menu3_active ; Set Flag |
150 | 205 bra customview_toggle_exit |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
206 |
107 | 207 customview_init_clock: ; Init Clock |
150 | 208 call PLED_diveclock |
209 bra customview_toggle_exit | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
210 |
107 | 211 customview_init_lead_tissue: ; Show leading tissue |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
212 GETCUSTOM8 d'53' ; Show Lead Tissue? (=1 in WREG) |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
213 decfsz WREG,F ; WREG=1? |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
214 bra customview_toggle ; No, use next Customview |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
215 |
137 | 216 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
217 bra customview_toggle ; Yes, use next Customview! | |
218 | |
150 | 219 call PLED_show_leading_tissue |
220 bra customview_toggle_exit | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
221 |
274
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
222 customview_init_ead_end: |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
223 call PLED_show_end_ead_divemode |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
224 bra customview_toggle_exit |
a728b4a1b660
Setpoint changes stored in profile, EAD and END displayed in divemode (Customview 7)
heinrichsweikamp
parents:
150
diff
changeset
|
225 |
131 | 226 customview_init_graphs: ; Show tissue graph |
227 GETCUSTOM8 d'52' ; Show Tissue Graph? (=1 in WREG) | |
228 decfsz WREG,F ; WREG=1? | |
229 bra customview_toggle ; No, use next Customview | |
128 | 230 |
137 | 231 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
232 bra customview_toggle ; Yes, use next Customview! | |
233 | |
150 | 234 movlw .1 ; Draw next second. |
235 movwf apnoe_mins ; 10sec counter. | |
236 | |
237 call deco_calc_desaturation_time ; calculate desaturation time | |
238 movlb b'00000001' ; select ram bank 1 | |
239 call PLED_tissue_saturation_graph | |
240 | |
241 bra customview_toggle_exit | |
242 | |
98
6f8e3a08011e
1.73beta rc1 (Added new customview for divemode)
heinrichsweikamp
parents:
diff
changeset
|
243 customview_toggle_exit: |
107 | 244 bcf toggle_customview ; Clear flag |
128 | 245 ostc_debug 'Y' ; Sends debug-information to screen in debugmode |
107 | 246 return |
247 | |
128 | 248 ;============================================================================= |
249 ; Yes, show next customview (and delete this flag) | |
107 | 250 |
128 | 251 surfcustomview_toggle: |
107 | 252 incf menupos3,F ; Number of customview to show |
111 | 253 movlw d'4' ; Max number |
254 cpfsgt menupos3 ; Max reached? | |
107 | 255 bra surfcustomview_mask ; No, show |
256 clrf menupos3 ; Reset to zero (Zero=no custom view) | |
257 surfcustomview_mask: | |
115 | 258 call PLED_clear_customview_surfmode |
128 | 259 movff menupos3,WREG ; Menupos3 holds number of customview function |
260 dcfsnz WREG,F | |
107 | 261 bra surfcustomview_init_graphs ; Show the tissue graphs |
128 | 262 dcfsnz WREG,F |
107 | 263 bra surfcustomview_init_gaslist ; Show pre-dive gaslist/setpoint list |
128 | 264 dcfsnz WREG,F |
133 | 265 bra surfcustomview_init_interval; Show the interval counter |
128 | 266 dcfsnz WREG,F |
111 | 267 bra surfcustomview_init_cfview ; Show the interval counter |
128 | 268 |
107 | 269 surfcustomview_init_nocustomview: |
270 bra surfcustomview_toggle_exit | |
271 | |
272 surfcustomview_init_graphs: | |
137 | 273 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
274 bra surfcustomview_toggle ; Yes, use next Customview! | |
275 | |
133 | 276 call PLED_tissue_saturation_graph; Draw the graphs |
107 | 277 bra surfcustomview_toggle_exit |
278 | |
279 surfcustomview_init_gaslist: | |
137 | 280 btfsc no_deco_customviews ; no-deco-mode-flag = 1 |
281 bra surfcustomview_toggle ; Yes, use next Customview! | |
282 | |
107 | 283 call PLED_pre_dive_screen ; Show the Gaslist/Setpoint list |
284 bra surfcustomview_toggle_exit | |
285 | |
111 | 286 surfcustomview_init_interval: |
123 | 287 call PLED_standard_color |
111 | 288 DISPLAYTEXT d'189' ; Surface |
289 DISPLAYTEXT d'240' ; Interval: | |
290 call PLED_interval ; Display the interval | |
291 bra surfcustomview_toggle_exit | |
292 | |
293 surfcustomview_init_cfview: | |
294 read_int_eeprom d'34' ; Get Decomode | |
295 incf EEDATA,W ; +1 -> WREG | |
296 movwf temp10 | |
297 dcfsnz temp10,F | |
298 call PLED_show_cf11_cf12_cf29 ; =0 (ZH-L16 OC) | |
299 dcfsnz temp10,F | |
300 bra surfcustomview_toggle_exit ; =1 (Gauge) | |
301 dcfsnz temp10,F | |
302 call PLED_show_cf11_cf12_cf29 ; =2 (ZH-L16 CC) | |
303 dcfsnz temp10,F | |
304 bra surfcustomview_toggle_exit ; =3 (Apnoe) | |
305 dcfsnz temp10,F | |
306 call PLED_show_cf32_cf33_cf29 ; =4 (L16-GF OC) | |
307 dcfsnz temp10,F | |
308 call PLED_show_cf32_cf33_cf29 ; =5 (L16-GF CC) | |
309 bra surfcustomview_toggle_exit | |
310 | |
107 | 311 surfcustomview_toggle_exit: |
312 bcf toggle_customview ; Clear flag | |
129
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
313 clrf timeout_counter2 ; Clear timeout |
06c4899ddb4b
Custom views in dive mode configrable (New CF50-CF53)
Heinrichsweikamp
parents:
123
diff
changeset
|
314 return |
107 | 315 |
128 | 316 ;============================================================================= |
317 ; Do every-second tasks for the custom view area | |
107 | 318 |
128 | 319 surfcustomview_second: |
320 ; movff menupos3,WREG ; copy | |
321 ; dcfsnz WREG,F | |
322 ; bra surfcustomview_1sec_graphs ; Update the Graphs | |
323 ; dcfsnz WREG,F | |
324 ; bra surfcustomview_1sec_gaslist ; Update the Gaslist/SetPoint List | |
325 ; dcfsnz WREG,F | |
326 ; bra surfcustomview_1sec_interval ; Update the Interval display | |
327 ; dcfsnz WREG,F | |
328 ; bra surfcustomview_1sec_cfview ; Update the critical cf view | |
329 ; ; Menupos3=0, do nothing | |
330 ; return | |
331 ;surfcustomview_1sec_cfview: ; Do nothing extra | |
332 ;surfcustomview_1sec_graphs: ; Do nothing extra | |
137 | 333 ;surfcustomview_1sec_gaslist: ; Do nothing extra |
334 ;surfcustomview_1sec_interval: ; Do nothing extra | |
107 | 335 return |
336 | |
128 | 337 ;============================================================================= |
107 | 338 |
339 surfcustomview_minute: ; Do every-minute tasks for the custom view area | |
128 | 340 movff menupos3,WREG ; copy |
341 dcfsnz WREG,F | |
107 | 342 bra surfcustomview_minute_graphs ; Update the Graphs |
128 | 343 dcfsnz WREG,F |
107 | 344 bra surfcustomview_minute_gaslist ; Update the Gaslist/SetPoint List |
128 | 345 dcfsnz WREG,F |
111 | 346 bra surfcustomview_minute_interval ; Update the Interval display |
128 | 347 dcfsnz WREG,F |
137 | 348 bra surfcustomview_minute_cfview ; Update the critical cf view |
107 | 349 ; Menupos3=0, do nothing |
350 return | |
351 | |
352 surfcustomview_minute_graphs: | |
150 | 353 call deco_calc_desaturation_time ; calculate desaturation time |
354 movlb b'00000001' ; select ram bank 1 | |
355 call PLED_tissue_saturation_graph ; Draw/Update the graphs | |
107 | 356 return |
357 | |
111 | 358 surfcustomview_minute_interval: |
112 | 359 DISPLAYTEXT d'189' ; Surface |
360 DISPLAYTEXT d'240' ; Interval: | |
111 | 361 call PLED_interval ; Display the interval |
362 return | |
363 | |
107 | 364 surfcustomview_minute_gaslist: ; Do nothing extra |
111 | 365 surfcustomview_minute_cfview: ; Do nothing extra |
366 return |