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