comparison src/menu_processor.asm @ 631:185ba2f91f59

3.09 beta 1 release
author heinrichsweikamp
date Fri, 28 Feb 2020 15:45:07 +0100
parents c40025d8e750
children 4050675965ea
comparison
equal deleted inserted replaced
630:4cd81bdbf15c 631:185ba2f91f59
1 ;============================================================================= 1 ;=============================================================================
2 ; 2 ;
3 ; File menu_processor.asm combined next generation V3.03.2 3 ; File menu_processor.asm combined next generation V3.08.6
4 ; 4 ;
5 ; Routines to handle all hwOS graphic/text menus. 5 ; Routines to handle all hwOS graphic/text menus.
6 ; 6 ;
7 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved. 7 ; Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved.
8 ;============================================================================= 8 ;=============================================================================
41 extern option_inc 41 extern option_inc
42 extern option_draw 42 extern option_draw
43 extern TFT_clear_divemode_menu 43 extern TFT_clear_divemode_menu
44 extern TFT_divemask_color 44 extern TFT_divemask_color
45 extern rtc_set_rtc 45 extern rtc_set_rtc
46 extern divemode_option0_return 46 extern divemode_option_divemenu_return
47 extern TFT_fillup_with_spaces 47 extern TFT_fillup_with_spaces
48 48
49 49
50 menu_proc CODE 50 menu_proc CODE
51 51
254 bcf switch_right ; clear left-over right button event 254 bcf switch_right ; clear left-over right button event
255 bcf switch_left ; clear left-over left button event 255 bcf switch_left ; clear left-over left button event
256 256
257 menu_line_loop_pre3: 257 menu_line_loop_pre3:
258 btfsc divemode ; in dive mode? 258 btfsc divemode ; in dive mode?
259 goto divemode_option0_return ; YES - return to it 259 goto divemode_option_divemenu_return ; YES - return to it
260 ;bra menu_line_loop_surface ; - proceed to surface mode dispatcher 260 ;bra menu_line_loop_surface ; NO - proceed to surface mode dispatcher
261 261
262 ; dispatcher for surface mode menus 262 ; dispatcher for surface mode menus
263 menu_line_loop_surface: 263 menu_line_loop_surface:
264 call reset_timeout_surfmode ; reset timeout 264 call reset_timeout_surfmode ; reset timeout
265 menu_line_loop: 265 menu_line_loop:
326 bra menu_draw_lines_2 326 bra menu_draw_lines_2
327 327
328 menu_draw_lines: 328 menu_draw_lines:
329 btfsc divemode ; in dive mode? 329 btfsc divemode ; in dive mode?
330 bra menu_draw_lines_divemode ; YES 330 bra menu_draw_lines_divemode ; YES
331 btfsc menu_flags,0 ; Dynamic title? 331 btfsc menu_flags,0 ; dynamic title?
332 rcall menu_processor_title ; YES - redraw it then 332 rcall menu_processor_title ; YES - redraw it then
333 MENU_LINE_FONT MENU_LEFT, 0 ; initialize start position/font 333 MENU_LINE_FONT MENU_LEFT, 0 ; initialize start position/font
334 movff menu_center,win_top ; computed in menu block. 334 movff menu_center,win_top ; computed in menu block
335 335
336 ; Does the menu have more than 6 lines ? 336 ; Does the menu have more than 6 lines ?
337 movf item_max,W 337 movf item_max,W
338 addlw -(MENU_LINES_MAX+1) ; 338 addlw -(MENU_LINES_MAX+1) ;
339 bnn menu_draw_long_menu ; bra if >= 7 339 bnn menu_draw_long_menu ; bra if >= 7