Mercurial > public > hwos_code
annotate src/menu_tree.asm @ 545:7e6df19264b6
BUGFIX: Simulator in CC mode
BUGFIX: Changing the dive mode and starting the simulator (without leaving the menu first) caused false calculations in the simulator
BUGFIX: PSCR Mode "OC Gases" showed Diluents, not OC gases
BUGFIX: CCR Mode ("First Diluent") was chosen based on OC "First Gas" number
author | heinrichsweikamp |
---|---|
date | Wed, 06 Sep 2017 21:26:18 +0200 |
parents | 64a45f203144 |
children | b7eb98dbd800 |
rev | line source |
---|---|
0 | 1 ;============================================================================= |
2 ; | |
3 ; File menu_tree.asm | |
4 ; | |
275 | 5 ; OSTC menus |
0 | 6 ; |
7 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved. | |
8 ;============================================================================= | |
9 ; HISTORY | |
10 ; 2011-07-11 : [jDG] Creation. | |
11 | |
275 | 12 #include "hwos.inc" ; Mandatory header |
0 | 13 #include "gaslist.inc" |
14 #include "menu_processor.inc" | |
505
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
15 #include "start.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
16 #include "comm.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
17 #include "logbook.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
18 #include "tft.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
19 #include "eeprom_rs232.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
20 #include "external_flash.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
21 #include "shared_definitions.h" ; Mailbox from/to p2_deco.c |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
22 #include "isr.inc" |
bef07a837a60
BUGFIX: Reset to MOD in Diluent Menu did reset Setpoint change depth
heinrichsweikamp
parents:
502
diff
changeset
|
23 #include "ghostwriter.inc" |
0 | 24 #include "adc_lightsensor.inc" |
355 | 25 #include "wait.inc" |
457 | 26 #include "i2c.inc" |
0 | 27 |
174
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
28 CBLOCK tmp+0x40 ; Keep space for menu processor |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
29 gaslist_gas ; Check ram position in gaslist.asm, too! |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
30 ENDC |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
31 |
0 | 32 gui CODE |
33 ;============================================================================= | |
34 ; Main Menu | |
66
00636132cca6
BUGFIX: Maintain last selected customview in surface mode
heinrichsweikamp
parents:
64
diff
changeset
|
35 global do_main_menu,do_main_menu2 |
0 | 36 do_main_menu: |
39
e4e91fe8b09d
remember last customview in dive and surface mode
mh@mh-THINK.fritz.box
parents:
23
diff
changeset
|
37 movff menupos3,customview_surfmode; save last customview |
66
00636132cca6
BUGFIX: Maintain last selected customview in surface mode
heinrichsweikamp
parents:
64
diff
changeset
|
38 do_main_menu2: |
502
0910c227018f
BUGFIX: PSCR mode showed bailout gaslist instead of diluent gaslist
heinrichsweikamp
parents:
481
diff
changeset
|
39 call TFT_boot |
0 | 40 bcf sleepmode ; for timeout |
41 call menu_processor_reset ; restart from first icon. | |
42 | |
43 do_continue_main_menu: | |
428 | 44 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 45 |
46 extern do_demo_divemode, restart | |
47 MENU_BEGIN tMainMenu, .7 | |
48 MENU_CALL tLogbook, logbook | |
49 MENU_CALL tGasSetup, do_gas_menu | |
50 MENU_CALL tCCRSetup, do_ccr_menu | |
51 MENU_CALL tPlan, do_planner_menu_reset | |
52 MENU_CALL tDiveModeMenu, do_divemode_menu | |
53 MENU_CALL tSystSets, do_settings_menu | |
54 MENU_CALL tExit, restart | |
55 MENU_END | |
56 | |
57 do_info_menu: | |
453
b4f28ab23b87
NEW: Show Uptime (Time since last firmware boot) in information menu
heinrichsweikamp
parents:
451
diff
changeset
|
58 MENU_BEGIN tInfoMenu, .6 |
0 | 59 MENU_DYNAMIC info_menu_serial, 0 |
60 MENU_DYNAMIC info_menu_firmware, 0 | |
61 MENU_DYNAMIC info_menu_total_dives, 0 | |
62 | 62 MENU_DYNAMIC info_menu_battery_volts,0 |
453
b4f28ab23b87
NEW: Show Uptime (Time since last firmware boot) in information menu
heinrichsweikamp
parents:
451
diff
changeset
|
63 MENU_DYNAMIC info_menu_uptime,0 |
0 | 64 MENU_CALL tExit, do_return_settings |
65 MENU_END | |
66 | |
67 ;============================================================================= | |
68 ; CCR Setup | |
69 | |
70 return_ccr_menu: | |
428 | 71 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 72 |
73 do_ccr_menu: | |
113 | 74 bcf menu_show_sensors ; Clear flag |
75 bcf menu_show_sensors2 ; Clear flag | |
236 | 76 btfsc analog_o2_input |
240 | 77 bra do_ccr_menu_cR |
78 btfss optical_input | |
79 bra do_ccr_menu_ostc2 | |
80 | |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
81 MENU_BEGIN tCCRSetup, .6 ; OSTC3 menu |
174
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
82 MENU_OPTION tCCRMode, oCCRMode, 0 |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
83 MENU_CALL tCCRSensor, do_ccr_sensor |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
84 MENU_CALL tDiluentSetup, do_diluent_setup |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
85 MENU_CALL tFixedSetpoints, do_fixed_setpoints |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
86 MENU_CALL tPSCRMenu, do_PSCR_menu |
174
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
87 MENU_CALL tExit, do_continue_main_menu |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
88 MENU_END |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
89 |
240 | 90 do_ccr_menu_cR: ; cR menu |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
91 MENU_BEGIN tCCRSetup, .7 |
0 | 92 MENU_OPTION tCCRMode, oCCRMode, 0 |
93 MENU_CALL tCCRSensor, do_ccr_sensor | |
113 | 94 MENU_CALL tCalibrateMenu, do_calibrate_menu |
0 | 95 MENU_CALL tDiluentSetup, do_diluent_setup |
96 MENU_CALL tFixedSetpoints, do_fixed_setpoints | |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
97 MENU_CALL tPSCRMenu, do_PSCR_menu |
0 | 98 MENU_CALL tExit, do_continue_main_menu |
99 MENU_END | |
100 | |
240 | 101 do_ccr_menu_ostc2: |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
102 MENU_BEGIN tCCRSetup, .5 ; ostc2 menu |
359 | 103 MENU_OPTION tCCRMode, oCCRMode, 0 |
240 | 104 MENU_CALL tDiluentSetup, do_diluent_setup |
105 MENU_CALL tFixedSetpoints, do_fixed_setpoints | |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
106 MENU_CALL tPSCRMenu, do_PSCR_menu |
240 | 107 MENU_CALL tExit, do_continue_main_menu |
108 MENU_END | |
109 | |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
110 do_PSCR_menu: |
481 | 111 MENU_BEGIN tPSCRMenu, .3 ; PSCR Menu |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
112 MENU_OPTION tPSCR_O2_drop, oPSCR_drop, 0 |
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
113 MENU_OPTION tPSCR_lungratio,oPSCR_lungratio, 0 |
523
8e75aecb3290
BUGFIX: Menu tree cleaned up (Exited to CCR menu from simulator settings)
heinrichsweikamp
parents:
507
diff
changeset
|
114 MENU_CALL tExit, return_ccr_menu |
480
ad8acade5567
NEW: PSCR mode (Passive semi-closed rebreather)
heinrichsweikamp
parents:
477
diff
changeset
|
115 MENU_END |
240 | 116 |
113 | 117 do_calibrate_menu: |
187
669b5d00706d
CHANGE: Longer timeout (4 min) for calibration menu
heinrichsweikamp
parents:
174
diff
changeset
|
118 call enable_ir_s8 ; Enable IR/S8-Port |
113 | 119 bsf menu_show_sensors2 ; Set flag |
120 do_calibrate_menu2: | |
121 MENU_BEGIN tCalibrateMenu, .6 | |
122 MENU_CALL tDiveHudMask1, 0 | |
123 MENU_CALL tDiveHudMask2, 0 | |
124 MENU_CALL tDiveHudMask3, 0 | |
125 MENU_OPTION tCalibrationGas,oCalGasO2, 0 | |
126 MENU_CALL tCalibrate, do_calibrate_mix | |
127 MENU_CALL tExit, return_ccr_menu | |
128 MENU_END | |
129 | |
130 do_calibrate_mix: | |
131 extern calibrate_mix | |
132 call calibrate_mix ; Calibrate with opt_calibration_O2_ratio, also calibrate S8 HUD if connected | |
355 | 133 WAITMS d'250' ; Wait for HUD v3 |
530 | 134 movlw .9 |
135 movwf customview_surfmode ; show sensor mV custom view after restart | |
524 | 136 goto restart ; Restart into surface mode |
113 | 137 |
0 | 138 do_ccr_sensor: |
187
669b5d00706d
CHANGE: Longer timeout (4 min) for calibration menu
heinrichsweikamp
parents:
174
diff
changeset
|
139 call enable_ir_s8 ; Enable IR/S8-Port |
0 | 140 bsf menu_show_sensors ; Set flag |
145
e3ac5b2021bc
NEW: Setpoint-Fallback option for external O2 sensor failure
heinrichsweikamp
parents:
144
diff
changeset
|
141 MENU_BEGIN tCCRSensor, .5 |
0 | 142 MENU_CALL tDiveHudMask1, 0 |
143 MENU_CALL tDiveHudMask2, 0 | |
144 MENU_CALL tDiveHudMask3, 0 | |
145
e3ac5b2021bc
NEW: Setpoint-Fallback option for external O2 sensor failure
heinrichsweikamp
parents:
144
diff
changeset
|
145 MENU_OPTION tSensorFallback,oSensorFallback, 0 |
0 | 146 MENU_CALL tExit, return_ccr_menu |
147 MENU_END | |
148 | |
149 do_diluent_setup: | |
150 bsf ccr_diluent_setup ; =1: Setting up Diluents ("Gas6-10") | |
139 | 151 bcf short_gas_decriptions ; =1: Use short versions of gaslist_strcat_gas_mod and gaslist_strcat_setpoint |
0 | 152 call gaslist_cleanup_list ; Takes care that only one gas can be first and first has 0m change depth |
153 MENU_BEGIN tDiluentSetup, .6 | |
154 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
155 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
156 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
157 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
158 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
159 MENU_CALL tExit, return_ccr_menu | |
160 MENU_END | |
161 | |
162 do_return_fixed_setpoints: | |
428 | 163 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 164 |
165 do_fixed_setpoints: | |
139 | 166 bcf short_gas_decriptions ; =1: Use short versions of gaslist_strcat_gas_mod and gaslist_strcat_setpoint |
0 | 167 MENU_BEGIN tFixedSetpoints, .6 |
168 MENU_DYNAMIC gaslist_strcat_setpoint, do_edit_sp_menu | |
169 MENU_DYNAMIC gaslist_strcat_setpoint, do_edit_sp_menu | |
170 MENU_DYNAMIC gaslist_strcat_setpoint, do_edit_sp_menu | |
171 MENU_DYNAMIC gaslist_strcat_setpoint, do_edit_sp_menu | |
172 MENU_DYNAMIC gaslist_strcat_setpoint, do_edit_sp_menu | |
173 MENU_CALL tExit, return_ccr_menu | |
174 MENU_END | |
175 | |
176 do_edit_sp_menu: | |
177 call gaslist_setSP ; Save current item. | |
178 MENU_BEGIN tFixedSetpoints, .5 | |
179 MENU_DYNAMIC gaslist_strcat_setpoint_0,0 | |
180 MENU_CALL tSPPlus, gaslist_spplus | |
181 MENU_CALL tDepthPlus, gaslist_spdepthplus | |
182 MENU_CALL tDepthMinus, gaslist_spdepthminus | |
183 MENU_CALL tExit, do_return_fixed_setpoints | |
184 MENU_END | |
185 | |
186 ;============================================================================= | |
187 ; OC Gas Setup | |
188 | |
189 return_gas_menu: | |
428 | 190 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 191 |
192 btfsc ccr_diluent_setup ; Return to CCR-Menu? | |
193 bra do_diluent_setup ; Yes. | |
194 do_gas_menu: | |
195 bcf ccr_diluent_setup ; =1: Setting up Diluents ("Gas6-10") | |
139 | 196 bcf short_gas_decriptions ; =1: Use short versions of gaslist_strcat_gas_mod and gaslist_strcat_setpoint |
0 | 197 call gaslist_cleanup_list ; Takes care that only one gas can be first and first has 0m change depth |
198 MENU_BEGIN tGaslist, .6 | |
199 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
200 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
201 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
202 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
203 MENU_DYNAMIC gaslist_strcat_gas_mod, do_edit_gas_menu | |
204 MENU_CALL tExit, do_continue_main_menu | |
205 MENU_END | |
206 | |
207 return_gas_depth: | |
428 | 208 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 209 bra do_edit_gas_menu_1 |
210 | |
211 do_edit_gas_menu: | |
212 call gaslist_setgas ; Save current item. | |
213 do_edit_gas_menu_1: ; Keep current gas. | |
214 MENU_BEGIN tGasEdit, .6 | |
215 MENU_DYNAMIC gaslist_gastitle, 0 | |
216 MENU_DYNAMIC gaslist_MOD_END, 0 | |
217 MENU_DYNAMIC gaslist_show_type, gaslist_toggle_type | |
218 MENU_CALL tSetup_mix, do_setup_mix | |
219 MENU_CALL tGasDepth, do_gas_depth_menu | |
220 MENU_CALL tExit, return_gas_menu | |
221 MENU_END | |
222 | |
223 do_setup_mix: | |
224 MENU_BEGIN tGasEdit, .7 | |
225 MENU_DYNAMIC gaslist_gastitle, 0 | |
226 MENU_DYNAMIC gaslist_MOD_END, 0 | |
227 MENU_CALL tO2Plus, gaslist_pO2 | |
228 MENU_CALL tO2Minus, gaslist_mO2 | |
229 MENU_CALL tHePlus, gaslist_pHe | |
230 MENU_CALL tHeMinus, gaslist_mHe | |
231 MENU_CALL tExit, return_gas_depth | |
232 MENU_END | |
233 | |
428 | 234 menu_tree_double_pop: |
235 call menu_processor_pop ; drop exit line. | |
236 goto menu_processor_pop ; back to last gas and return | |
237 | |
238 | |
0 | 239 global do_gas_depth_menu |
240 do_gas_depth_menu: | |
174
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
241 movff gaslist_gas,WREG |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
242 lfsr FSR1,opt_gas_type ; Read opt_gas_type[WREG] |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
243 movff PLUSW1,lo ; Used as temp |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
244 movlw .3 ; 3=Deco |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
245 btfsc ccr_diluent_setup ; =1: Setting up Diluents ("Gas6-10") |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
246 movlw .2 ; 2=Normal |
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
247 cpfseq lo |
524 | 248 bra return_gas_depth ; Non-Deco gas or "Normal" Diluent, Return! |
174
932e91074bdb
CHANGE: Clarify Travel Gases with "---" as change depth
heinrichsweikamp
parents:
155
diff
changeset
|
249 |
154
afa31c815f24
NEW: Show ppO2 for change depth during gas setup
heinrichsweikamp
parents:
148
diff
changeset
|
250 MENU_BEGIN tGasEdit, .7 |
0 | 251 MENU_DYNAMIC gaslist_gastitle, 0 |
252 MENU_DYNAMIC gaslist_MOD_END, 0 | |
154
afa31c815f24
NEW: Show ppO2 for change depth during gas setup
heinrichsweikamp
parents:
148
diff
changeset
|
253 MENU_DYNAMIC gaslist_ppo2, 0 ; ppO2 at change depth |
0 | 254 MENU_CALL tDepthPlus, gaslist_pDepth |
255 MENU_CALL tDepthMinus, gaslist_mDepth | |
256 MENU_DYNAMIC gaslist_reset_mod_title,gaslist_reset_mod | |
257 MENU_CALL tExit, return_gas_depth | |
258 MENU_END | |
259 | |
260 ;============================================================================= | |
261 ; Simulator menus | |
262 | |
263 global do_planner_menu | |
264 | |
265 do_planner_menu_reset: | |
545 | 266 extern option_save_all |
267 call option_save_all | |
268 call restart_set_modes_and_flags ; To have correct simulator results for mode changes without prior surfacemode call | |
0 | 269 ;---- Reset dive time/depth to default values |
270 extern option_reset | |
271 lfsr FSR0,odiveInterval | |
272 call option_reset | |
273 lfsr FSR0,obottomTime | |
274 call option_reset | |
275 lfsr FSR0,obottomDepth | |
276 call option_reset | |
277 | |
278 do_planner_menu: | |
279 extern do_demo_planner | |
298
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
280 MENU_BEGIN tPlan, .7 |
0 | 281 MENU_CALL tInter, do_demo_divemode |
282 MENU_OPTION tIntvl, odiveInterval, 0 | |
283 MENU_OPTION tBtTm, obottomTime, 0 | |
284 MENU_OPTION tMxDep, obottomDepth, 0 | |
285 MENU_CALL tDeco, do_demo_planner | |
298
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
286 MENU_CALL tSystSets, do_planner_config |
0 | 287 MENU_CALL tExit, do_continue_main_menu |
288 MENU_END | |
289 | |
298
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
290 do_planner_config: |
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
291 MENU_BEGIN tPlan, .3 |
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
292 MENU_OPTION tSetBotUse, obottom_usage, 0 |
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
293 MENU_OPTION tSetDecoUse, odeco_usage, 0 |
524 | 294 MENU_CALL tExit, do_planner_menu |
298
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
295 MENU_END |
524 | 296 |
298
2fe34fc0e2ae
new submenu for gas consumption, show actual mix instead of GAS1-GAS5 in deco planner
heinrichsweikamp
parents:
275
diff
changeset
|
297 |
0 | 298 ;============================================================================= |
299 ; Divemode menu | |
300 | |
301 do_return_divemode_menu: | |
428 | 302 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 303 |
304 do_divemode_menu: | |
305 MENU_BEGIN tDiveModeMenu, .7 | |
306 MENU_OPTION tDvMode, oDiveMode, 0 | |
307 MENU_OPTION tDkMode, oDecoMode, 0 | |
104
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
308 MENU_CALL tppO2settings, do_ppo2_menu |
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
309 MENU_OPTION tsafetystopmenu,oSafetyStop, 0 |
0 | 310 MENU_OPTION tFTTSMenu, oExtraTime,0 |
311 MENU_CALL tDecoparameters, do_decoparameters_menu | |
312 MENU_CALL tExit, do_continue_main_menu | |
313 MENU_END | |
314 | |
104
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
315 do_ppo2_menu: |
507
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
316 MENU_BEGIN tppO2settings, .5 |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
317 MENU_DYNAMIC divesets_ppo2_max, do_toggle_ppo2_max |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
318 MENU_DYNAMIC divesets_ppo2_max_deco, do_toggle_ppo2_max_deco |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
319 MENU_DYNAMIC divesets_ppo2_min, do_toggle_ppo2_min |
337
508d7fb98b34
cleanup menu, add "Auto SP" option (Not working yet), minor layout change in compass menu
heinrichsweikamp
parents:
335
diff
changeset
|
320 MENU_OPTION tShowppO2, oShowppO2, 0 |
104
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
321 MENU_CALL tExit, do_return_divemode_menu |
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
322 MENU_END |
223579e905c3
Show a Safety Stop if enabled (Menu "Deco Parameters")
heinrichsweikamp
parents:
90
diff
changeset
|
323 |
0 | 324 do_return_decoparameters_menu: |
428 | 325 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 326 do_decoparameters_menu: |
327 MENU_BEGIN tDecoparameters, .7 | |
328 MENU_OPTION tGF_low, oGF_low, 0 | |
329 MENU_OPTION tGF_high, oGF_high, 0 | |
330 MENU_CALL taGFMenu, do_aGF_menu | |
331 MENU_OPTION tSaturationMult,osatmult, 0 | |
332 MENU_OPTION tDesaturationMult,odesatmult,0 | |
333 MENU_OPTION tLastDecostop,oLastDeco, 0 | |
334 MENU_CALL tExit, do_return_divemode_menu | |
335 MENU_END | |
336 | |
337 do_aGF_menu: | |
338 MENU_BEGIN taGFMenu, .4 | |
339 MENU_OPTION taGF_enable,oEnable_aGF, 0 | |
340 MENU_OPTION taGF_low, oaGF_low, 0 | |
341 MENU_OPTION taGF_high, oaGF_high, 0 | |
342 MENU_CALL tExit, do_return_decoparameters_menu | |
343 MENU_END | |
344 ;============================================================================= | |
345 ; Setup Menu | |
346 | |
347 do_return_settings: | |
348 bcf settime_setdate ; Clear flag | |
428 | 349 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 350 |
351 extern compass_calibration_loop | |
352 do_settings_menu: | |
345 | 353 btfsc ble_available ; ble available |
354 bra do_settings_menu_ble ; Yes. | |
355 MENU_BEGIN tSystSets, .6 | |
0 | 356 MENU_CALL tInfoMenu, do_info_menu |
357 MENU_CALL tSetTimeDate, do_date_time_menu | |
358 MENU_CALL tDispSets, do_dispsets_menu | |
359 MENU_OPTION tLanguage, oLanguage, 0 | |
155
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
360 MENU_CALL tMore, do_settings_menu_more |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
361 MENU_CALL tExit, do_continue_main_menu |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
362 MENU_END |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
363 |
345 | 364 do_settings_menu_ble: |
365 MENU_BEGIN tSystSets, .7 | |
366 MENU_CALL tInfoMenu, do_info_menu | |
367 MENU_CALL tBleTitle, comm_mode0 | |
368 MENU_CALL tSetTimeDate, do_date_time_menu | |
369 MENU_CALL tDispSets, do_dispsets_menu | |
370 MENU_OPTION tLanguage, oLanguage, 0 | |
371 MENU_CALL tMore, do_settings_menu_more | |
372 MENU_CALL tExit, do_continue_main_menu | |
373 MENU_END | |
326
d21b172d5a7a
VSIbar #4: VSI settings submenu, graph option, logbook offset and compass calib. menu exit fix
Janos Kovacs <kovjanos@gmail.com>
parents:
307
diff
changeset
|
374 |
d21b172d5a7a
VSIbar #4: VSI settings submenu, graph option, logbook offset and compass calib. menu exit fix
Janos Kovacs <kovjanos@gmail.com>
parents:
307
diff
changeset
|
375 do_return_settings_more: |
428 | 376 rcall menu_tree_double_pop ; drop exit line and back to last line |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
377 |
155
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
378 do_settings_menu_more: |
448 | 379 btfsc battery_gauge_available ; piezo buttons available |
269
1207cf9a9408
adjust menu for different hardware versions
heinrichsweikamp
parents:
243
diff
changeset
|
380 bra do_settings_menu_more_piezo |
243 | 381 btfsc ble_available ; ble available |
269
1207cf9a9408
adjust menu for different hardware versions
heinrichsweikamp
parents:
243
diff
changeset
|
382 bra do_settings_menu_more_ostc3p |
345 | 383 MENU_BEGIN tSystSets, .7 |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
384 MENU_CALL tCompassMenu, do_compass_menu |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
385 MENU_CALL tLogOffset, do_log_offset_menu |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
386 MENU_OPTION tUnits, oUnits, 0 |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
387 MENU_OPTION tSamplingrate,oSamplingRate,0 |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
388 MENU_OPTION tDvSalinity,oDiveSalinity, 0 |
345 | 389 MENU_CALL tResetMenu, do_reset_menu |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
390 MENU_CALL tExit, do_return_settings |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
391 MENU_END |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
392 |
375
a9e35c1327aa
1.88 release, BUGFIX: Start with Sensor use from sleep (cR only), CHANGE: Apply button settings when button menu is closed, NEW: Reset button settings on a magnet reset (cR and OSTC 2)
heinrichsweikamp
parents:
359
diff
changeset
|
393 do_settings_menu_more_piezo_exit: |
a9e35c1327aa
1.88 release, BUGFIX: Start with Sensor use from sleep (cR only), CHANGE: Apply button settings when button menu is closed, NEW: Reset button settings on a magnet reset (cR and OSTC 2)
heinrichsweikamp
parents:
359
diff
changeset
|
394 call TFT_ClearScreen |
a9e35c1327aa
1.88 release, BUGFIX: Start with Sensor use from sleep (cR only), CHANGE: Apply button settings when button menu is closed, NEW: Reset button settings on a magnet reset (cR and OSTC 2)
heinrichsweikamp
parents:
359
diff
changeset
|
395 extern piezo_config |
a9e35c1327aa
1.88 release, BUGFIX: Start with Sensor use from sleep (cR only), CHANGE: Apply button settings when button menu is closed, NEW: Reset button settings on a magnet reset (cR and OSTC 2)
heinrichsweikamp
parents:
359
diff
changeset
|
396 call piezo_config ; Configure buttons |
524 | 397 |
269
1207cf9a9408
adjust menu for different hardware versions
heinrichsweikamp
parents:
243
diff
changeset
|
398 do_settings_menu_more_piezo: |
218 | 399 MENU_BEGIN tSystSets, .7 |
18
4e3f133dfbf4
add new opt_compass_gain option to work with more magnetic battery types
heinrichsweikamp
parents:
0
diff
changeset
|
400 MENU_CALL tCompassMenu, do_compass_menu |
155
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
401 MENU_CALL tLogOffset, do_log_offset_menu |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
402 MENU_OPTION tUnits, oUnits, 0 |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
403 MENU_OPTION tSamplingrate,oSamplingRate,0 |
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
404 MENU_OPTION tDvSalinity,oDiveSalinity, 0 |
345 | 405 MENU_CALL tMore, do_settings_piezo_menu |
155
5f71e31bd5b3
CHANGE: Re-arranged Settings Menu, add 180? rotate to menu
heinrichsweikamp
parents:
154
diff
changeset
|
406 MENU_CALL tExit, do_return_settings |
0 | 407 MENU_END |
408 | |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
409 extern comm_mode0 |
243 | 410 |
345 | 411 do_settings_piezo_menu: |
412 ; Menu with features only available in piezo button hardware | |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
413 MENU_BEGIN tSystSets, .4 |
345 | 414 MENU_CALL tResetMenu, do_reset_menu |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
415 MENU_OPTION tButtonleft,ocR_button_left ,0 ; left button sensitivity |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
416 MENU_OPTION tButtonright,ocR_button_right,0 ; right button sensitivity |
375
a9e35c1327aa
1.88 release, BUGFIX: Start with Sensor use from sleep (cR only), CHANGE: Apply button settings when button menu is closed, NEW: Reset button settings on a magnet reset (cR and OSTC 2)
heinrichsweikamp
parents:
359
diff
changeset
|
417 MENU_CALL tExit, do_settings_menu_more_piezo_exit |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
418 MENU_END |
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
419 |
269
1207cf9a9408
adjust menu for different hardware versions
heinrichsweikamp
parents:
243
diff
changeset
|
420 do_settings_menu_more_ostc3p: ; Menu with BLE feature |
243 | 421 MENU_BEGIN tSystSets, .7 |
422 MENU_CALL tCompassMenu, do_compass_menu | |
423 MENU_CALL tLogOffset, do_log_offset_menu | |
424 MENU_OPTION tUnits, oUnits, 0 | |
425 MENU_OPTION tSamplingrate,oSamplingRate,0 | |
426 MENU_OPTION tDvSalinity,oDiveSalinity, 0 | |
345 | 427 MENU_CALL tResetMenu, do_reset_menu |
243 | 428 MENU_CALL tExit, do_return_settings |
429 MENU_END | |
220
effd7259f5a5
make button sensitivity configurable (cR hardware)
heinrichsweikamp
parents:
218
diff
changeset
|
430 |
18
4e3f133dfbf4
add new opt_compass_gain option to work with more magnetic battery types
heinrichsweikamp
parents:
0
diff
changeset
|
431 do_compass_menu: |
544
64a45f203144
NEW: Show Compass calibration results in Compass menu
heinrichsweikamp
parents:
530
diff
changeset
|
432 MENU_BEGIN tSystSets, .5 |
18
4e3f133dfbf4
add new opt_compass_gain option to work with more magnetic battery types
heinrichsweikamp
parents:
0
diff
changeset
|
433 MENU_CALL tCompassMenu, compass_calibration_loop |
90
3274e87fd027
NEW: automatic compass gain makes calibration quicker
heinrichsweikamp
parents:
78
diff
changeset
|
434 ; MENU_OPTION tCompassGain, oCompassGain, 0 |
544
64a45f203144
NEW: Show Compass calibration results in Compass menu
heinrichsweikamp
parents:
530
diff
changeset
|
435 MENU_DYNAMIC menu_cal_x, 0 |
64a45f203144
NEW: Show Compass calibration results in Compass menu
heinrichsweikamp
parents:
530
diff
changeset
|
436 MENU_DYNAMIC menu_cal_y, 0 |
64a45f203144
NEW: Show Compass calibration results in Compass menu
heinrichsweikamp
parents:
530
diff
changeset
|
437 MENU_DYNAMIC menu_cal_z, 0 |
326
d21b172d5a7a
VSIbar #4: VSI settings submenu, graph option, logbook offset and compass calib. menu exit fix
Janos Kovacs <kovjanos@gmail.com>
parents:
307
diff
changeset
|
438 MENU_CALL tExit, do_return_settings_more |
18
4e3f133dfbf4
add new opt_compass_gain option to work with more magnetic battery types
heinrichsweikamp
parents:
0
diff
changeset
|
439 MENU_END |
4e3f133dfbf4
add new opt_compass_gain option to work with more magnetic battery types
heinrichsweikamp
parents:
0
diff
changeset
|
440 |
0 | 441 ;============================================================================= |
442 ; Reset and confirmation menu. | |
443 | |
444 do_reset_menu: | |
63 | 445 MENU_BEGIN tResetMenu, .6 |
0 | 446 MENU_CALL tExit, do_return_settings |
529 | 447 MENU_CALL tReboot, do_reset_menu2 ; Confirm |
448 MENU_CALL tResetDeco, do_reset_menu3 ; Confirm | |
449 MENU_CALL tResetSettings, do_reset_menu4 ; Confirm | |
63 | 450 MENU_CALL tResetLogbook, do_reset_menu5 ; Confirm |
0 | 451 MENU_CALL tResetBattery, new_battery_menu ; New Battery submenu |
452 MENU_END | |
453 | |
454 do_reset_menu2: | |
455 MENU_BEGIN tResetMenu2, .2 | |
456 MENU_CALL tAbort, do_continue_menu_3stack | |
457 MENU_CALL tReboot, do_reboot ; Reboot | |
458 MENU_END | |
459 | |
460 do_reset_menu3: | |
461 MENU_BEGIN tResetMenu2, .2 | |
462 MENU_CALL tAbort, do_continue_menu_3stack | |
463 MENU_CALL tResetDeco, do_reset_deco ; Reset Deco | |
464 MENU_END | |
465 | |
466 do_reset_menu4: | |
467 MENU_BEGIN tResetMenu2, .2 | |
468 MENU_CALL tAbort, do_continue_menu_3stack | |
469 MENU_CALL tResetSettings, do_reset_settings ; Reset all settings | |
470 MENU_END | |
471 | |
63 | 472 do_reset_menu5: |
473 MENU_BEGIN tResetMenu2, .2 | |
474 MENU_CALL tAbort, do_continue_menu_3stack | |
475 MENU_CALL tResetLogbook, do_reset_logbook ; Reset logbook | |
476 MENU_END | |
477 | |
478 do_reset_logbook: | |
479 clrf EEADRH ; Make sure to select eeprom bank 0 | |
480 clrf EEDATA | |
78
668b432dcae9
BUGFIX: Reset Logbook did not reset Logbook TOC properly
mh@mh-THINK.localdomain
parents:
76
diff
changeset
|
481 read_int_eeprom .2 |
396
61984f91174a
place total dives backup counter in eeprom 16:17
heinrichsweikamp
parents:
375
diff
changeset
|
482 write_int_eeprom .16 |
78
668b432dcae9
BUGFIX: Reset Logbook did not reset Logbook TOC properly
mh@mh-THINK.localdomain
parents:
76
diff
changeset
|
483 read_int_eeprom .3 |
396
61984f91174a
place total dives backup counter in eeprom 16:17
heinrichsweikamp
parents:
375
diff
changeset
|
484 write_int_eeprom .17 ; Copy number of dives |
144 | 485 clrf EEDATA |
78
668b432dcae9
BUGFIX: Reset Logbook did not reset Logbook TOC properly
mh@mh-THINK.localdomain
parents:
76
diff
changeset
|
486 write_int_eeprom .2 |
668b432dcae9
BUGFIX: Reset Logbook did not reset Logbook TOC properly
mh@mh-THINK.localdomain
parents:
76
diff
changeset
|
487 write_int_eeprom .3 ; Clear total dives |
63 | 488 write_int_eeprom .4 |
489 write_int_eeprom .5 | |
490 write_int_eeprom .6 ; Reset logbook pointers | |
491 call ext_flash_erase_logbook ; And complete logbook (!) | |
524 | 492 goto do_continue_main_menu ; back to menu |
63 | 493 |
0 | 494 |
495 do_reset_deco: | |
496 movlw d'79' ; 79% N2 | |
497 movff WREG,char_I_N2_ratio | |
498 movlw d'0' | |
499 movff WREG,char_I_step_is_1min ; 2 second deco mode | |
500 SAFE_2BYTE_COPY amb_pressure,int_I_pres_respiration ; copy for deco routine | |
501 movff int_I_pres_respiration+0,int_I_pres_surface+0 ; copy for desat routine | |
502 movff int_I_pres_respiration+1,int_I_pres_surface+1 | |
503 | |
504 extern deco_reset | |
505 call deco_reset | |
506 call deco_calc_desaturation_time ; calculate desaturation time | |
507 banksel common | |
508 call deco_calc_wo_deco_step_1_min ; calculate deco in surface mode | |
509 banksel common | |
510 clrf nofly_time+0 ; Reset NoFly | |
511 clrf nofly_time+1 | |
512 clrf desaturation_time+0 ; Reset Desat | |
513 clrf desaturation_time+1 | |
524 | 514 goto do_return_settings ; back to menu |
0 | 515 |
516 do_reset_settings: | |
470
81faca166e1b
minor: clear screen while resetting settings
heinrichsweikamp
parents:
464
diff
changeset
|
517 call TFT_ClearScreen ; Clear screen |
139 | 518 banksel common |
0 | 519 extern option_reset_all |
520 call option_reset_all ; Reset all options to factory default. | |
524 | 521 goto restart ; Restart into surfacemode |
0 | 522 |
523 do_continue_menu_3stack: ; Return three levels deep | |
524 call menu_processor_pop | |
524 | 525 goto do_return_settings |
0 | 526 |
527 do_reboot: | |
528 call ext_flash_enable_protection ; Enables write protection | |
529 reset | |
530 | |
531 | |
532 do_date_time_menu: | |
533 MENU_BEGIN tSetTimeDate, .4 | |
534 MENU_CALL tSetTime, do_time_menu | |
535 MENU_CALL tSetDate, do_date_menu | |
536 MENU_OPTION tDateFormat,oDateFormat, 0 | |
537 MENU_CALL tExit, do_return_settings | |
538 MENU_END | |
539 | |
540 do_date_menu: | |
541 bsf settime_setdate | |
542 MENU_BEGIN tSetDate, .4 | |
543 MENU_OPTION tSetDay, oSetDay, 0 | |
50 | 544 MENU_OPTION tSetMonth, oSetMonth, 0 |
0 | 545 MENU_OPTION tSetYear, oSetYear, 0 |
546 MENU_CALL tExit, do_continue_menu_3stack | |
547 MENU_END | |
548 | |
549 | |
550 do_reset_seconds: | |
551 clrf secs | |
552 extern rtc_set_rtc | |
553 call rtc_set_rtc ; writes mins,sec,hours,day,month and year to rtc module | |
554 do_time_menu: | |
555 bsf settime_setdate | |
556 MENU_BEGIN tSetTime, .4 | |
557 MENU_OPTION tSetHours, oSetHours, 0 | |
558 MENU_OPTION tSetMinutes,oSetMinutes, 0 | |
559 MENU_CALL tSetSeconds, do_reset_seconds | |
560 MENU_CALL tExit, do_continue_menu_3stack | |
561 MENU_END | |
562 | |
563 | |
564 do_toggle_ppo2_max: ; add 0.1bar, with hard-coded max. | |
565 movff opt_ppO2_max,lo ; banksafe | |
566 movlw .10 | |
567 addwf lo,F | |
568 movlw ppo2_highest_setting | |
569 cpfsgt lo | |
570 bra do_toggle_ppo2_max2 | |
571 movlw .120 | |
572 movwf lo | |
573 do_toggle_ppo2_max2: | |
574 movff lo,opt_ppO2_max | |
575 return | |
576 | |
507
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
577 do_toggle_ppo2_max_deco: ; add 0.1bar, with hard-coded max. |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
578 movff opt_ppO2_max_deco,lo ; banksafe |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
579 movlw .10 |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
580 addwf lo,F |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
581 movlw ppo2_highest_setting_deco |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
582 cpfsgt lo |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
583 bra do_toggle_ppo2_max_deco2 |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
584 movlw .120 |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
585 movwf lo |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
586 do_toggle_ppo2_max_deco2: |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
587 movff lo,opt_ppO2_max_deco |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
588 return |
4e6f5c36f4cc
NEW: Two ppO2 max settings. One for travel/bottom and one for deco gases
heinrichsweikamp
parents:
505
diff
changeset
|
589 |
0 | 590 do_toggle_ppo2_min: ; sub 0.1bar, with hard-coded min. |
591 movff opt_ppO2_min,lo ; banksafe | |
592 incf lo,F | |
593 movlw .21 | |
594 cpfsgt lo | |
595 bra do_toggle_ppo2_min2 | |
596 movlw ppo2_lowest_setting | |
597 movwf lo | |
598 do_toggle_ppo2_min2: | |
599 movff lo,opt_ppO2_min | |
600 return | |
601 | |
602 | |
603 ; Logbook offset sub-menu | |
604 do_log_offset_menu: | |
605 MENU_BEGIN tLogOffset, .6 | |
606 MENU_DYNAMIC TFT_LogOffset_Logtitle, 0 | |
607 MENU_CALL tLogOffsetp1, do_logoffset_plus1 | |
608 MENU_CALL tLogOffsetp10, do_logoffset_plus10 | |
609 MENU_CALL tLogOffsetm1, do_logoffset_minus1 | |
610 MENU_CALL tLogOffsetm10, do_logoffset_minus10 | |
326
d21b172d5a7a
VSIbar #4: VSI settings submenu, graph option, logbook offset and compass calib. menu exit fix
Janos Kovacs <kovjanos@gmail.com>
parents:
307
diff
changeset
|
611 MENU_CALL tExit, do_return_settings_more |
0 | 612 MENU_END |
613 | |
614 | |
615 do_logoffset_minus1: | |
616 call do_logoffset_common_read ; Read into lo:hi | |
617 movlw d'1' | |
618 subwf lo | |
619 movlw d'0' | |
620 subwfb hi | |
621 btfss hi,7 ; <0? | |
622 goto do_logoffset_common_write ; Store and return | |
623 clrf lo | |
624 clrf hi | |
625 goto do_logoffset_common_write ; Store and return | |
626 | |
627 do_logoffset_minus10: | |
628 call do_logoffset_common_read ; Read into lo:hi | |
629 movlw d'10' | |
630 subwf lo | |
631 movlw d'0' | |
632 subwfb hi | |
633 btfss hi,7 ; <0? | |
634 goto do_logoffset_common_write ; Store and return | |
635 clrf lo | |
636 clrf hi | |
637 goto do_logoffset_common_write ; Store and return | |
638 | |
639 do_logoffset_plus1: | |
640 call do_logoffset_common_read ; Read into lo:hi | |
148 | 641 infsnz lo,F |
642 incf hi,F | |
0 | 643 goto do_logoffset_common_write ; Store and return |
644 | |
645 do_logoffset_plus10: | |
646 call do_logoffset_common_read ; Read into lo:hi | |
647 movlw d'10' | |
648 addwf lo | |
649 movlw d'0' | |
650 addwfc hi | |
651 goto do_logoffset_common_write ; Store and return | |
652 | |
653 do_dispsets_menu_3stack: | |
50 | 654 bcf in_color_menu |
428 | 655 rcall menu_tree_double_pop ; drop exit line and back to last line |
0 | 656 |
657 do_dispsets_menu: | |
337
508d7fb98b34
cleanup menu, add "Auto SP" option (Not working yet), minor layout change in compass menu
heinrichsweikamp
parents:
335
diff
changeset
|
658 MENU_BEGIN tDispSets, .5 |
303
9b1b0b32e7d5
Add configuration option to control depth warning blinking
janos_kovacs <kovjanos@gmail.com>
parents:
298
diff
changeset
|
659 MENU_OPTION tBright, oBrightness, 0 |
9b1b0b32e7d5
Add configuration option to control depth warning blinking
janos_kovacs <kovjanos@gmail.com>
parents:
298
diff
changeset
|
660 MENU_CALL tColorScheme, do_color_scheme |
9b1b0b32e7d5
Add configuration option to control depth warning blinking
janos_kovacs <kovjanos@gmail.com>
parents:
298
diff
changeset
|
661 MENU_OPTION tFlip, oFlipScreen, 0 |
335
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
662 MENU_CALL tMore, do_dispsets_menu_more |
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
663 MENU_CALL tExit, do_return_settings |
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
664 MENU_END |
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
665 |
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
666 do_dispsets_menu_more: |
448 | 667 MENU_BEGIN tDispSets, .5 |
337
508d7fb98b34
cleanup menu, add "Auto SP" option (Not working yet), minor layout change in compass menu
heinrichsweikamp
parents:
335
diff
changeset
|
668 MENU_OPTION tMODwarning, oMODwarning, 0 |
508d7fb98b34
cleanup menu, add "Auto SP" option (Not working yet), minor layout change in compass menu
heinrichsweikamp
parents:
335
diff
changeset
|
669 MENU_OPTION tVSItext2, oVSItextv2, 0 |
508d7fb98b34
cleanup menu, add "Auto SP" option (Not working yet), minor layout change in compass menu
heinrichsweikamp
parents:
335
diff
changeset
|
670 MENU_OPTION tVSIgraph, oVSIgraph, 0 |
448 | 671 MENU_OPTION tTimeoutDive, oDiveTimeout, 0 |
335
3d43da7acfe1
Always show ppO2 (warning position, standard color) option
janos_kovacs <kovjanos@gmail.com>
parents:
333
diff
changeset
|
672 MENU_CALL tExit, do_dispsets_menu_3stack |
0 | 673 MENU_END |
674 | |
50 | 675 extern oColorSetDive |
676 do_color_scheme: | |
677 bsf in_color_menu | |
678 MENU_BEGIN tColorScheme, .2 | |
679 MENU_OPTION tColorSetDive,oColorSetDive, 0 | |
680 MENU_CALL tExit, do_dispsets_menu_3stack | |
681 MENU_END | |
682 | |
683 | |
0 | 684 ;============================================================================= |
685 | |
686 global new_battery_menu | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
687 extern surfloop |
0 | 688 new_battery_menu: |
689 bsf enable_screen_dumps ; To prevent exiting into COMM mode immediately | |
690 call TFT_boot ; Initialize TFT (includes clear screen) | |
691 call TFT_Display_FadeIn ; Show splash | |
692 movlw .100 | |
693 movwf batt_percent ; make sure to reset batt_percent | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
694 |
0 | 695 ; Default (In cases of timeout or USB): Use old battery |
696 clrf EEADRH | |
697 read_int_eeprom 0x07 | |
698 movff EEDATA,battery_gauge+0 | |
699 read_int_eeprom 0x08 | |
700 movff EEDATA,battery_gauge+1 | |
701 read_int_eeprom 0x09 | |
702 movff EEDATA,battery_gauge+2 | |
703 read_int_eeprom 0x0A | |
704 movff EEDATA,battery_gauge+3 | |
705 read_int_eeprom 0x0B | |
706 movff EEDATA,battery_gauge+4 | |
707 read_int_eeprom 0x0C | |
708 movff EEDATA,battery_gauge+5 | |
709 | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
710 call menu_processor_reset ; restart from first icon. |
474 | 711 |
712 MENU_BEGIN tNewBattTitle, .1 | |
713 MENU_CALL tEnter, new_battery_menu2 | |
714 MENU_END | |
715 | |
716 new_battery_menu2: | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
717 ; hardware_flag: |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
718 ; 3: 0x0A or 0x13 (2016) |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
719 ; cR: 0x05 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
720 ; 2 with BLE: 0x11 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
721 ; Sport: 0x12 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
722 ; 3 with BLE: 0x1A |
76 | 723 |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
724 movlw 0x0A |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
725 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
726 bra $+4 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
727 bra menu_new_battery_AA |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
728 movlw 0x13 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
729 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
730 bra $+4 |
474 | 731 bra menu_new_battery_AA_16650 |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
732 movlw 0x12 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
733 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
734 bra $+4 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
735 bra menu_new_battery_AA |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
736 movlw 0x1A |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
737 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
738 bra $+4 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
739 bra menu_new_battery_AA |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
740 movlw 0x11 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
741 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
742 bra $+4 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
743 bra menu_new_battery_18650 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
744 movlw 0x05 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
745 cpfseq hardware_flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
746 bra $+4 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
747 bra menu_new_battery_18650 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
748 bra use_old_batteries ; any unsupported value |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
749 |
474 | 750 menu_new_battery_AA_16650: |
751 MENU_BEGIN tNewBattTitle, .5 | |
752 MENU_CALL tNewBattOld, use_old_batteries | |
753 MENU_CALL tNewBattNew36, use_new_36V_batteries | |
754 MENU_CALL tNewBattNew15, use_new_15V_batteries | |
755 MENU_CALL tNewBattAccu, use_36V_rechargeable | |
756 MENU_CALL tNew16650, use_16650_battery | |
757 MENU_END | |
758 | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
759 menu_new_battery_AA: |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
760 MENU_BEGIN tNewBattTitle, .4 |
448 | 761 MENU_CALL tNewBattOld, use_old_batteries |
0 | 762 MENU_CALL tNewBattNew36, use_new_36V_batteries |
763 MENU_CALL tNewBattNew15, use_new_15V_batteries | |
448 | 764 MENU_CALL tNewBattAccu, use_36V_rechargeable |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
765 MENU_END |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
766 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
767 menu_new_battery_18650: |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
768 MENU_BEGIN tNewBattTitle, .2 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
769 MENU_CALL tNewBattOld, use_old_batteries |
448 | 770 MENU_CALL tNew18650, use_18650_battery |
0 | 771 MENU_END |
772 | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
773 |
457 | 774 global use_old_prior_209 |
775 use_old_prior_209: | |
776 clrf EEADRH | |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
777 read_int_eeprom 0x0F ; =0:1.5V, =1:3,6V Saft, =2:LiIon 3,7V/0.8Ah, =3:LiIon 3,7V/3.1Ah, =4: LiIon 3,7V/2.3Ah |
457 | 778 incfsz EEDATA,F ; Was 0xFF? |
477
44b8a826b314
NEW: Show battery type in surface mode next to battery voltage
heinrichsweikamp
parents:
474
diff
changeset
|
779 return ; No, done. |
44b8a826b314
NEW: Show battery type in surface mode next to battery voltage
heinrichsweikamp
parents:
474
diff
changeset
|
780 |
457 | 781 call lt2942_get_status ; Check for gauge IC |
782 movlw .3 ; Assume a 18650 | |
783 btfss battery_gauge_available ; cR/2 hardware? | |
784 movlw .1 ; Assume a Saft | |
785 movwf EEDATA | |
786 write_int_eeprom 0x0F ; Store the new battery type into EEPROM | |
787 return | |
788 | |
0 | 789 global use_old_batteries |
790 use_old_batteries: | |
791 clrf EEADRH | |
792 read_int_eeprom 0x07 | |
793 movff EEDATA,battery_gauge+0 | |
794 read_int_eeprom 0x08 | |
795 movff EEDATA,battery_gauge+1 | |
796 read_int_eeprom 0x09 | |
797 movff EEDATA,battery_gauge+2 | |
798 read_int_eeprom 0x0A | |
799 movff EEDATA,battery_gauge+3 | |
800 read_int_eeprom 0x0B | |
801 movff EEDATA,battery_gauge+4 | |
802 read_int_eeprom 0x0C | |
803 movff EEDATA,battery_gauge+5 | |
448 | 804 read_int_eeprom 0x0F |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
805 movff EEDATA,battery_type; =0:1.5V, =1:3,6V Saft, =2:LiIon 3,7V/0.8Ah, =3:LiIon 3,7V/3.1Ah, =4: LiIon 3,7V/2.3Ah |
448 | 806 |
450 | 807 rcall setup_new_saft ; Any other value |
477
44b8a826b314
NEW: Show battery type in surface mode next to battery voltage
heinrichsweikamp
parents:
474
diff
changeset
|
808 incf EEDATA,F ; 1 ... 5 |
450 | 809 dcfsnz EEDATA,F |
448 | 810 rcall setup_new_15v ;=0 |
450 | 811 dcfsnz EEDATA,F |
448 | 812 rcall setup_new_saft ;=1 |
450 | 813 dcfsnz EEDATA,F |
448 | 814 rcall setup_new_panasonic ;=2 |
477
44b8a826b314
NEW: Show battery type in surface mode next to battery voltage
heinrichsweikamp
parents:
474
diff
changeset
|
815 dcfsnz EEDATA,F |
448 | 816 rcall setup_new_18650 ;=3 |
477
44b8a826b314
NEW: Show battery type in surface mode next to battery voltage
heinrichsweikamp
parents:
474
diff
changeset
|
817 dcfsnz EEDATA,F |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
818 rcall setup_new_16650 ;=4 |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
819 |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
820 bcf use_old_batt_flag ; clear flag |
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
821 goto surfloop ; Jump to Surfaceloop! |
0 | 822 |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
823 setup_new_15v: |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
824 bsf charge_disable |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
825 bcf TRISE,2 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
826 movlw .100 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
827 movwf batt_percent ; To have 1,5V batteries right after firmware update |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
828 movlw .0 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
829 movff WREG,battery_type |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
830 return |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
831 |
448 | 832 setup_new_saft: |
833 banksel battery_capacity | |
834 movlw LOW internal_saft_capacity | |
835 movwf internal_battery_capacity+0 | |
836 movlw HIGH internal_saft_capacity | |
837 movwf internal_battery_capacity+1 | |
838 movlw LOW saft_capacity | |
839 movwf battery_capacity+0 | |
840 movlw HIGH saft_capacity | |
841 movwf battery_capacity+1 | |
842 movlw LOW saft_offset | |
843 movwf battery_offset+0 | |
844 movlw HIGH saft_offset | |
845 movwf battery_offset+1 | |
846 banksel common | |
847 bsf charge_disable | |
848 bcf TRISE,2 | |
849 movlw .1 | |
850 movff WREG,battery_type | |
851 return | |
852 | |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
853 setup_new_panasonic: |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
854 banksel battery_capacity |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
855 movlw LOW internal_panasonic_capacity |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
856 movwf internal_battery_capacity+0 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
857 movlw HIGH internal_panasonic_capacity |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
858 movwf internal_battery_capacity+1 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
859 movlw LOW panasonic_capacity |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
860 movwf battery_capacity+0 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
861 movlw HIGH panasonic_capacity |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
862 movwf battery_capacity+1 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
863 movlw LOW panasonic_offset |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
864 movwf battery_offset+0 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
865 movlw HIGH panasonic_offset |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
866 movwf battery_offset+1 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
867 banksel common |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
868 bcf charge_disable |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
869 bsf TRISE,2 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
870 movlw .2 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
871 movff WREG,battery_type |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
872 return |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
873 |
448 | 874 setup_new_18650: |
875 banksel battery_capacity | |
876 clrf internal_battery_capacity+0 | |
877 clrf internal_battery_capacity+1 | |
878 movlw LOW ncr18650_capacity | |
879 movwf battery_capacity+0 | |
880 movlw HIGH ncr18650_capacity | |
881 movwf battery_capacity+1 | |
882 movlw LOW ncr18650_offset | |
883 movwf battery_offset+0 | |
884 movlw HIGH ncr18650_offset | |
885 movwf battery_offset+1 | |
886 banksel common | |
887 bcf charge_disable | |
888 bsf TRISE,2 | |
889 movlw .3 | |
890 movff WREG,battery_type | |
891 return | |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
892 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
893 setup_new_16650: |
448 | 894 banksel battery_capacity |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
895 clrf internal_battery_capacity+0 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
896 clrf internal_battery_capacity+1 |
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
897 movlw LOW ur16650_capacity |
448 | 898 movwf battery_capacity+0 |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
899 movlw HIGH ur16650_capacity |
448 | 900 movwf battery_capacity+1 |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
901 movlw LOW ur16650_offset |
448 | 902 movwf battery_offset+0 |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
903 movlw HIGH ur16650_offset |
448 | 904 movwf battery_offset+1 |
905 banksel common | |
906 bcf charge_disable | |
907 bsf TRISE,2 | |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
908 movlw .4 |
448 | 909 movff WREG,battery_type |
910 return | |
472
4fdf6886004b
CHANGE: Show warnings either in Customview (If active) _or_ next to warning sign
heinrichsweikamp
parents:
470
diff
changeset
|
911 |
474 | 912 use_16650_battery: |
913 rcall setup_new_16650 | |
914 bra use_new_36V_2 | |
448 | 915 use_18650_battery: |
916 rcall setup_new_18650 | |
917 bra use_new_36V_2 | |
0 | 918 use_new_36V_batteries: |
448 | 919 rcall setup_new_saft |
920 bra use_new_36V_2 | |
921 use_new_15V_batteries: | |
922 rcall setup_new_15v | |
923 use_new_36V_2: | |
0 | 924 call reset_battery_pointer ; Resets battery pointer 0x07-0x0C and battery_gauge:5 |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
925 goto surfloop ; Jump to Surfaceloop! |
448 | 926 use_36V_rechargeable: |
927 rcall setup_new_panasonic | |
928 call reset_battery_internal_only | |
464
0491a84fd0b8
CHANGE: Easier to understand "New Battery" menu (OSTC model dependent)
heinrichsweikamp
parents:
457
diff
changeset
|
929 goto surfloop ; Jump to Surfaceloop! |
0 | 930 |
931 END |