Mercurial > public > mk2
comparison code_part1/OSTC_code_asm_part1/menu_reset.asm @ 573:77c8ff191cd7
Preparations for third bank of Custom Functions
author | heinrichsweikamp |
---|---|
date | Sat, 21 Apr 2012 12:09:37 +0200 |
parents | 44e9b961f156 |
children | 101fec6a6137 |
comparison
equal
deleted
inserted
replaced
572:80a1d2d5a9ee | 573:77c8ff191cd7 |
---|---|
106 | 106 |
107 ; resets all customfunctions to the following default values | 107 ; resets all customfunctions to the following default values |
108 cf_default_table0: | 108 cf_default_table0: |
109 ;---- BANK0 custom function defaults ------------------------------------- | 109 ;---- BANK0 custom function defaults ------------------------------------- |
110 ; DEFAULT MIN MAX | 110 ; DEFAULT MIN MAX |
111 CF_DEFAULT CF_CENTI, d'100', d'50', d'250' ; dive_threshold 100cm | 111 CF_DEFAULT CF_CENTI, d'100', d'50', d'250' ; CF00 dive_threshold 100cm |
112 CF_DEFAULT CF_CENTI, d'30', d'10', d'100' ; surf_threshold 30cm | 112 CF_DEFAULT CF_CENTI, d'30', d'10', d'100' ; CF01 surf_threshold 30cm |
113 CF_DEFAULT CF_INT15, d'240', d'0', d'600' ; diveloop_timeout 240s | 113 CF_DEFAULT CF_INT15, d'240', d'0', d'600' ; CF02 diveloop_timeout 240s |
114 CF_DEFAULT CF_SEC, d'120', d'30', d'240' ; surfloop_timeout 120s | 114 CF_DEFAULT CF_SEC, d'120', d'30', d'240' ; CF03 surfloop_timeout 120s |
115 CF_DEFAULT CF_SEC, d'5', d'1', d'30' ; premenu_timeout 5s | 115 CF_DEFAULT CF_SEC, d'5', d'1', d'30' ; CF04 premenu_timeout 5s |
116 | 116 |
117 CF_DEFAULT CF_INT8, d'7', d'3', d'18' ; minimum_velocity 7min/min | 117 CF_DEFAULT CF_INT8, d'7', d'3', d'18' ; CF05 minimum_velocity 7min/min |
118 CF_DEFAULT CF_INT15, d'1160',d'950', 0 ; pressure_offset_divemode 1160mbar | 118 CF_DEFAULT CF_INT15, d'1160',d'950', 0 ; pressure_offset_divemode 1160mbar |
119 CF_DEFAULT CF_INT15, d'1080',d'1080', 0 ; max_surfpressure 1080mbar | 119 CF_DEFAULT CF_INT15, d'1080',d'1080', 0 ; max_surfpressure 1080mbar |
120 CF_DEFAULT CF_PERCENT, d'20', d'1', d'99' ; min_gradient_factor 20% | 120 CF_DEFAULT CF_PERCENT, d'20', d'1', d'99' ; min_gradient_factor 20% |
121 CF_DEFAULT CF_PERCENT, d'20', d'1', d'22' ; oxygen_threshold 22% | 121 CF_DEFAULT CF_PERCENT, d'20', d'1', d'22' ; oxygen_threshold 22% |
122 | 122 |
123 CF_DEFAULT CF_SEC, d'45', d'5', d'60' ; dive_menu_timeout 45s | 123 CF_DEFAULT CF_SEC, d'45', d'5', d'60' ; CF10 dive_menu_timeout 45s |
124 CF_DEFAULT CF_PERCENT, d'110', d'110', d'200' ; saturation_multiplier x1.10 | 124 CF_DEFAULT CF_PERCENT, d'110', d'110', d'200' ; saturation_multiplier x1.10 |
125 CF_DEFAULT CF_PERCENT, d'90', d'50', d'90' ; desaturation_multiplier x0.90 | 125 CF_DEFAULT CF_PERCENT, d'90', d'50', d'90' ; desaturation_multiplier x0.90 |
126 CF_DEFAULT CF_PERCENT, d'60', d'60', d'100' ; nofly_time_ratio 60% | 126 CF_DEFAULT CF_PERCENT, d'60', d'60', d'100' ; nofly_time_ratio 60% |
127 CF_DEFAULT CF_PERCENT, d'100', d'50', d'100' ; gradient_factor_alarm1 100% | 127 CF_DEFAULT CF_PERCENT, d'100', d'50', d'100' ; gradient_factor_alarm1 100% |
128 | 128 |
129 CF_DEFAULT CF_PERCENT, d'10', d'0', d'100' ; cns_display_surface 10% | 129 CF_DEFAULT CF_PERCENT, d'10', d'0', d'100' ; CF15 cns_display_surface 10% |
130 CF_DEFAULT CF_DECI, d'10', d'0', d'10' ; deco_distance_for_sim 1m | 130 CF_DEFAULT CF_DECI, d'10', d'0', d'10' ; deco_distance_for_sim 1m |
131 CF_DEFAULT CF_CENTI, d'019', d'19', d'021' ; ppo2_warning_low 0.19 bar | 131 CF_DEFAULT CF_CENTI, d'019', d'19', d'021' ; ppo2_warning_low 0.19 bar |
132 CF_DEFAULT CF_CENTI, d'160', d'0', d'160' ; ppo2_warning_high 1.60 bar | 132 CF_DEFAULT CF_CENTI, d'160', d'0', d'160' ; ppo2_warning_high 1.60 bar |
133 CF_DEFAULT CF_CENTI, d'140', d'0', d'150' ; ppo2_display_high 1.40 bar | 133 CF_DEFAULT CF_CENTI, d'140', d'0', d'150' ; ppo2_display_high 1.40 bar |
134 | 134 |
135 CF_DEFAULT CF_INT8, d'10', d'1', d'120' ; sampling_rate 10s | 135 CF_DEFAULT CF_INT8, d'10', d'1', d'120' ; CF20 sampling_rate 10s |
136 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_temp /6 | 136 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_temp /6 |
137 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_deco /6 | 137 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_deco /6 |
138 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_gf /6 | 138 CF_DEFAULT CF_INT8, d'6', d'0', d'15' ; sampling_divisor_gf /6 |
139 CF_DEFAULT CF_INT8, d'0', d'0', d'15' ; sampling_divisor_ppo2 never | 139 CF_DEFAULT CF_INT8, d'0', d'0', d'15' ; sampling_divisor_ppo2 never |
140 | 140 |
141 CF_DEFAULT CF_INT8, d'0', d'0', d'15' ; sampling_divisor_deco2 never | 141 CF_DEFAULT CF_INT8, d'0', d'0', d'15' ; CF25 sampling_divisor_deco2 never |
142 CF_DEFAULT CF_INT8, d'12', d'0', d'15' ; sampling_divisor_cns /12 | 142 CF_DEFAULT CF_INT8, d'12', d'0', d'15' ; sampling_divisor_cns /12 |
143 CF_DEFAULT CF_PERCENT, d'20', d'5', d'75' ; cns_display_high 20% | 143 CF_DEFAULT CF_PERCENT, d'20', d'5', d'75' ; cns_display_high 20% |
144 CF_DEFAULT CF_INT15, d'0', d'0', 0 ; logbook_offset No Offset, but 15Bit value | 144 CF_DEFAULT CF_INT15, d'0', d'0', 0 ; logbook_offset No Offset, but 15Bit value |
145 CF_DEFAULT CF_INT8, d'3', d'2', d'6' ; last_deco_depth 3m | 145 CF_DEFAULT CF_INT8, d'3', d'2', d'6' ; last_deco_depth 3m |
146 | 146 |
147 CF_DEFAULT CF_SEC, d'10', d'1', d'15' ; timeout_apnoe_mode 10min | 147 CF_DEFAULT CF_SEC, d'10', d'1', d'15' ; CF30 timeout_apnoe_mode 10min |
148 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; show_voltage_value =1 Show value instead of symbol, =0 Show Symbol | 148 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF31 show_voltage_value =1 Show value instead of symbol, =0 Show Symbol |
149 | 149 |
150 ;---- BANK1 custom function defaults ------------------------------------- | 150 ;---- BANK1 custom function defaults ------------------------------------- |
151 cf_default_table1: | 151 cf_default_table1: |
152 ; DEFAULT MIN MAX | 152 ; DEFAULT MIN MAX |
153 CF_DEFAULT CF_PERCENT, d'30', d'5', d'90' ; GF_low_default 30% | 153 CF_DEFAULT CF_PERCENT, d'30', d'5', d'90' ; CF32 GF_low_default 30% |
154 CF_DEFAULT CF_PERCENT, d'90', d'30', d'95' ; GF_high_default 90% | 154 CF_DEFAULT CF_PERCENT, d'90', d'30', d'95' ; CF33 GF_high_default 90% |
155 CF_DEFAULT CF_COLOR, d'199', 0, 0 ; color_battery_surface Color Battery sign: Deep blue | 155 CF_DEFAULT CF_COLOR, d'199', 0, 0 ; CF34 color_battery_surface Color Battery sign: Deep blue |
156 CF_DEFAULT CF_COLOR, d'255', 0, 0 ; color_standard1 Color Standard: White | 156 CF_DEFAULT CF_COLOR, d'255', 0, 0 ; CF35 color_standard1 Color Standard: White |
157 CF_DEFAULT CF_COLOR, d'62', 0, 0 ; color_divemask Color Divemask: Light green | 157 CF_DEFAULT CF_COLOR, d'62', 0, 0 ; CF36 color_divemask Color Divemask: Light green |
158 | 158 |
159 CF_DEFAULT CF_COLOR, d'224', 0, 0 ; CF37 color_warnings Color Warnings: Red | 159 CF_DEFAULT CF_COLOR, d'224', 0, 0 ; CF37 color_warnings Color Warnings: Red |
160 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; show_seconds_divemode =1 Show the seconds in Divemode | 160 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF38 show_seconds_divemode =1 Show the seconds in Divemode |
161 CF_DEFAULT CF_BOOL, 0, 0, 0 ; Adjust SetPoint if Diluent ppO2 > SetPoint | 161 CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF39 Adjust SetPoint if Diluent ppO2 > SetPoint |
162 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; warn_ceiling_divemode =1 Warn ceiling violation in divemode | 162 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; CF40 warn_ceiling_divemode =1 Warn ceiling violation in divemode |
163 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; Show mix type is surfmode | 163 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; CF41 Show mix type is surfmode |
164 | 164 |
165 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; blink_gas_divemode =1 blink better gas | 165 CF_DEFAULT CF_BOOL, d'1', 0, 0 ; CF42 blink_gas_divemode =1 blink better gas |
166 CF_DEFAULT CF_INT15, d'13000', 0, d'13000' ; color_warn_depth_mbar Warn depths | 166 CF_DEFAULT CF_INT15, d'13000', 0, d'13000' ; CF43 color_warn_depth_mbar Warn depths |
167 CF_DEFAULT CF_PERCENT, d'101', d'50', d'101' ; color_warn_cns_percent Warn-% | 167 CF_DEFAULT CF_PERCENT, d'101', d'50', d'101' ; CF44 color_warn_cns_percent Warn-% |
168 CF_DEFAULT CF_PERCENT, d'101', d'50', d'101' ; color_warn_gf_percent Warn-% | 168 CF_DEFAULT CF_PERCENT, d'101', d'50', d'101' ; CF45 color_warn_gf_percent Warn-% |
169 CF_DEFAULT CF_CENTI, d'161', d'100', d'161' ; color_warn_ppo2_cbar ppO2 warn | 169 CF_DEFAULT CF_CENTI, d'161', d'100', d'161' ; CF46 color_warn_ppo2_cbar ppO2 warn |
170 | 170 |
171 CF_DEFAULT CF_INT8, d'15', d'7', d'20' ; CF47 color_warn_celocity_mmin warn at xx m/min | 171 CF_DEFAULT CF_INT8, d'15', d'7', d'20' ; CF47 color_warn_celocity_mmin warn at xx m/min |
172 CF_DEFAULT CF_SEC+CF_NEG,d'0', -d'120' ,d'120' ; CF48 time_correction_value_default Adds to Seconds on Midnight | 172 CF_DEFAULT CF_SEC+CF_NEG,d'0', -d'120' ,d'120' ; CF48 time_correction_value_default Adds to Seconds on Midnight |
173 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF49 Show Altimeter in surface mode | 173 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF49 Show Altimeter in surface mode |
174 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF50 Show Log-Marker | 174 CF_DEFAULT CF_BOOL, d'0', 0, 0 ; CF50 Show Log-Marker |
186 CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF60 Show Graphical ascend speed indicator | 186 CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF60 Show Graphical ascend speed indicator |
187 CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF61 Show pSCR ppO2 | 187 CF_DEFAULT CF_BOOL, 0, 0, 0 ; CF61 Show pSCR ppO2 |
188 | 188 |
189 CF_DEFAULT CF_PERCENT, .4, .0, .100 ; CF62 pSCR O2 Drop | 189 CF_DEFAULT CF_PERCENT, .4, .0, .100 ; CF62 pSCR O2 Drop |
190 CF_DEFAULT CF_INT8, .10, .0, .100 ; CF63 pSCR counterlung ratio | 190 CF_DEFAULT CF_INT8, .10, .0, .100 ; CF63 pSCR counterlung ratio |
191 ; CF_DEFAULT CF_INT15, 0, 0, 0 ; UNUSED | |
192 cf_default_table2: | 191 cf_default_table2: |
193 | 192 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF64 unused |
193 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF65 unused | |
194 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF66 unused | |
195 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF67 unused | |
196 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF68 unused | |
197 | |
198 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF69 unused | |
199 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF70 unused | |
200 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF71 unused | |
201 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF72 unused | |
202 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF73 unused | |
203 | |
204 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF74 unused | |
205 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF75 unused | |
206 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF76 unused | |
207 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF77 unused | |
208 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF78 unused | |
209 | |
210 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF79 unused | |
211 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF80 unused | |
212 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF81 unused | |
213 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF82 unused | |
214 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF83 unused | |
215 | |
216 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF84 unused | |
217 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF85 unused | |
218 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF87 unused | |
219 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF88 unused | |
220 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF89 unused | |
221 | |
222 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF90 unused | |
223 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF91 unused | |
224 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF92 unused | |
225 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF93 unused | |
226 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF94 unused | |
227 | |
228 CF_DEFAULT CF_INT8, d'0', d'0', d'0' ; GF95 unused | |
229 cf_default_table3: | |
194 ;============================================================================= | 230 ;============================================================================= |
195 | 231 |
196 menu_reset: | 232 menu_reset: |
197 movlw d'1' | 233 movlw d'1' |
198 movwf menupos | 234 movwf menupos |
393 cf_bank0_loop: | 429 cf_bank0_loop: |
394 ; Did we already read 32 (decimal) words or double-words (with types) ? | 430 ; Did we already read 32 (decimal) words or double-words (with types) ? |
395 movf TBLPTRL,W | 431 movf TBLPTRL,W |
396 sublw LOW (cf_default_table1) | 432 sublw LOW (cf_default_table1) |
397 bz reset_all_cf_bank1 | 433 bz reset_all_cf_bank1 |
398 | |
399 rcall reset_customfunction ; saves default and current value | 434 rcall reset_customfunction ; saves default and current value |
400 bra cf_bank0_loop | 435 bra cf_bank0_loop |
401 | 436 |
402 reset_all_cf_bank1: | 437 reset_all_cf_bank1: |
403 movlw d'1' | 438 movlw d'1' |
404 movwf EEADRH ; EEPROM BANK 1 !! | 439 movwf EEADRH ; EEPROM BANK 1 |
405 movlw d'127' ; address of low byte of first custom function | 440 movlw d'127' ; address of low byte of first custom function |
406 movwf EEADR | 441 movwf EEADR |
407 | 442 |
408 cf_bank1_loop: | 443 cf_bank1_loop: |
409 ; Did we already read another 32 (decimal) words or double-words ? | 444 ; Did we already read another 32 (decimal) words or double-words ? |
410 movf TBLPTRL,W | 445 movf TBLPTRL,W |
411 sublw LOW (cf_default_table2) | 446 sublw LOW (cf_default_table2) |
412 bz cf_bank1_end | 447 bz reset_all_cf_bank2 |
413 | |
414 rcall reset_customfunction ; saves default and current value | 448 rcall reset_customfunction ; saves default and current value |
415 bra cf_bank1_loop | 449 bra cf_bank1_loop |
416 | 450 |
417 cf_bank1_end: | 451 reset_all_cf_bank2: |
418 clrf EEADRH ; EEPROM BANK 0 ! | 452 movlw d'2' |
453 movwf EEADRH ; EEPROM BANK 2 | |
454 movlw d'127' ; address of low byte of first custom function | |
455 movwf EEADR | |
456 | |
457 cf_bank2_loop: | |
458 ; Did we already read another 32 (decimal) words or double-words ? | |
459 movf TBLPTRL,W | |
460 sublw LOW (cf_default_table3) | |
461 bz cf_bank2_end | |
462 rcall reset_customfunction ; saves default and current value | |
463 bra cf_bank2_loop | |
464 | |
465 cf_bank2_end: | |
466 clrf EEADRH ; EEPROM BANK 0 | |
419 | 467 |
420 ;call reset_external_eeprom ; delete profile memory | 468 ;call reset_external_eeprom ; delete profile memory |
421 return | 469 return |
422 | 470 |
423 reset_gases: | 471 reset_gases: |
424 clrf EEADRH ; EEPROM BANK 0 ! | 472 clrf EEADRH ; EEPROM BANK 0 |
425 | 473 |
426 movlw d'3' ; address of first gas-1 | 474 movlw d'3' ; address of first gas-1 |
427 movwf EEADR | 475 movwf EEADR |
428 clrf hi ; He part (default for all gases: 0%) | 476 clrf hi ; He part (default for all gases: 0%) |
429 movlw d'21' ; O2 part (21%) | 477 movlw d'21' ; O2 part (21%) |