Mercurial > public > ostc4
comparison Discovery/Src/tMenu.c @ 662:1b995079c045 Betatest
PSCR Mode
| author | heinrichs weikamp |
|---|---|
| date | Tue, 14 Dec 2021 15:36:10 +0100 |
| parents | 4df22790dc0c |
| children | 6169309d6eb9 |
comparison
equal
deleted
inserted
replaced
| 661:87bee7cc77b3 | 662:1b995079c045 |
|---|---|
| 56 #define TAB_HEADER_HIGH 25 | 56 #define TAB_HEADER_HIGH 25 |
| 57 #define TAB_BAR_HIGH 5 | 57 #define TAB_BAR_HIGH 5 |
| 58 #define MENU_WDW_HIGH 390 | 58 #define MENU_WDW_HIGH 390 |
| 59 #define KEY_LABEL_HIGH 25 /* Height of the label used for the the user keys */ | 59 #define KEY_LABEL_HIGH 25 /* Height of the label used for the the user keys */ |
| 60 | 60 |
| 61 #define SLOW_UPDATE_CNT 10 /* Some content shall not be update in short intervals => add prescalar */ | |
| 62 | |
| 61 typedef struct | 63 typedef struct |
| 62 { | 64 { |
| 63 uint32_t StartAddressForPage[MAXPAGES+1]; | 65 uint32_t StartAddressForPage[MAXPAGES+1]; |
| 64 uint8_t lineMemoryForNavigationForPage[MAXPAGES+1]; | 66 uint8_t lineMemoryForNavigationForPage[MAXPAGES+1]; |
| 65 uint8_t pageMemoryForNavigation; | 67 uint8_t pageMemoryForNavigation; |
| 528 // if((pSettings->dive_mode != DIVEMODE_Gauge) && (pSettings->dive_mode != DIVEMODE_Apnea)) | 530 // if((pSettings->dive_mode != DIVEMODE_Gauge) && (pSettings->dive_mode != DIVEMODE_Apnea)) |
| 529 // { | 531 // { |
| 530 tM_add(StMDECOP); | 532 tM_add(StMDECOP); |
| 531 // } | 533 // } |
| 532 | 534 |
| 533 if((pSettings->dive_mode == DIVEMODE_CCR) || (stateUsed->diveSettings.ccrOption == 1)) | 535 if((isLoopMode(pSettings->dive_mode)) || (stateUsed->diveSettings.ccrOption == 1)) |
| 534 { | 536 { |
| 535 tM_add(StMCG); | 537 tM_add(StMCG); |
| 536 tM_add(StMSP); | 538 tM_add(StMSP); |
| 537 if (actual_menu_content == MENU_SURFACE) /* StMOG is now accessed using StMCG in CCR mode*/ | 539 if (actual_menu_content == MENU_SURFACE) /* StMOG is now accessed using StMCG in CCR mode*/ |
| 538 { | 540 { |
| 584 } | 586 } |
| 585 | 587 |
| 586 | 588 |
| 587 void tM_refresh_live_content(void) | 589 void tM_refresh_live_content(void) |
| 588 { | 590 { |
| 591 static uint8_t slowUpdate = SLOW_UPDATE_CNT; | |
| 589 uint8_t page = 0; | 592 uint8_t page = 0; |
| 590 char text[MAX_PAGE_TEXTSIZE]; | 593 char text[MAX_PAGE_TEXTSIZE]; |
| 591 char subtext[MAX_PAGE_TEXTSIZE]; | 594 char subtext[MAX_PAGE_TEXTSIZE]; |
| 592 uint16_t tabPosition; | 595 uint16_t tabPosition; |
| 593 | 596 |
| 594 if((get_globalState() == StMSYS) && (actual_menu_content == MENU_SURFACE)) | 597 uint32_t globalState = get_globalState(); |
| 595 { | 598 |
| 596 page = menu.pageMemoryForNavigation; | 599 slowUpdate--; |
| 597 tMSystem_refresh(0, text, &tabPosition, subtext); | 600 page = menu.pageMemoryForNavigation; |
| 598 update_content_with_new_frame(page, text, tabPosition, subtext); | 601 switch(globalState) |
| 599 } | 602 { |
| 600 else | 603 case StMSYS: if(actual_menu_content == MENU_SURFACE) |
| 601 if(get_globalState() == StMHARD) | 604 { |
| 602 { | 605 tMSystem_refresh(0, text, &tabPosition, subtext); |
| 603 page = menu.pageMemoryForNavigation; | 606 update_content_with_new_frame(page, text, tabPosition, subtext); |
| 604 tMHardware_refresh(0, text, &tabPosition, subtext); | 607 } |
| 605 update_content_with_new_frame(page, text, tabPosition, subtext); | 608 break; |
| 609 case StMHARD: tMHardware_refresh(0, text, &tabPosition, subtext); | |
| 610 update_content_with_new_frame(page, text, tabPosition, subtext); | |
| 611 break; | |
| 612 case StMOG: if((actual_menu_content != MENU_SURFACE) && (slowUpdate == 0)) | |
| 613 { | |
| 614 tMOG_refresh(0, text, &tabPosition, subtext); | |
| 615 update_content_with_new_frame(page, text, tabPosition, subtext); | |
| 616 } | |
| 617 break; | |
| 618 case StMCG: if((actual_menu_content != MENU_SURFACE) && (slowUpdate == 0)) | |
| 619 { | |
| 620 tMCG_refresh(0, text, &tabPosition, subtext); | |
| 621 update_content_with_new_frame(page, text, tabPosition, subtext); | |
| 622 } | |
| 623 break; | |
| 624 default: | |
| 625 break; | |
| 626 } | |
| 627 if(slowUpdate == 0) | |
| 628 { | |
| 629 slowUpdate = SLOW_UPDATE_CNT; | |
| 606 } | 630 } |
| 607 | 631 |
| 608 tMscreen.FBStartAdress = menu.StartAddressForPage[page]; | 632 tMscreen.FBStartAdress = menu.StartAddressForPage[page]; |
| 609 tHome_show_lost_connection_count(&tMscreen); | 633 tHome_show_lost_connection_count(&tMscreen); |
| 610 /* | 634 /* |
