Skip to content

Commit

Permalink
Refactor RB
Browse files Browse the repository at this point in the history
  • Loading branch information
spm81 committed Feb 25, 2024
1 parent 3c477c3 commit 93ce379
Show file tree
Hide file tree
Showing 11 changed files with 386 additions and 188 deletions.
44 changes: 38 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,16 @@ ENABLE_DTMF_CALLING := 0
ENABLE_DTMF_SIDETONES := 1
ENABLE_TX1750 := 0
# Keep this in stock options, and add option in mods for extra rogers
ENABLE_ROGERBEEP := 1
ENABLE_MDC := 0
ENABLE_ROGER_DEFAULT := 0
ENABLE_ROGER_MOTOTRBO := 0
ENABLE_ROGER_TPT := 0
ENABLE_ROGER_MOTOTRBOT40 := 0
ENABLE_ROGER_MOTOTRBOTLKRT80 := 0
ENABLE_ROGER_ROGERCOBRAAM845 := 0
ENABLE_ROGER_POLICE_ITA := 1
ENABLE_ROGER_UV5RC := 0
ENABLE_ROGER_MARIO := 1
ENABLE_MDC := 1

#============== MODIFICATIONS =============#
# AM Modulation Fix - 544 bytes
Expand Down Expand Up @@ -66,7 +74,7 @@ ENABLE_MESSENGER_UART := 1
# 3408 bytes
ENABLE_MESSENGER_ENCRYPTION := 1
# 140 bytes
ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION := 1
ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION := 0

# -------------- EXTRA: SPECTRUM --------------
ENABLE_SPECTRUM := 1
Expand Down Expand Up @@ -330,12 +338,36 @@ endif
ifeq ($(ENABLE_FMRADIO_FAST_RESTORE),1)
CFLAGS += -DENABLE_FMRADIO_FAST_RESTORE
endif
ifeq ($(ENABLE_ROGERBEEP),1)
CFLAGS += -DENABLE_ROGERBEEP
endif
ifeq ($(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION),1)
CFLAGS += -DENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION
endif
ifeq ($(ENABLE_ROGER_DEFAULT),1)
CFLAGS += -DENABLE_ROGER_DEFAULT
endif
ifeq ($(ENABLE_ROGER_MOTOTRBO),1)
CFLAGS += -DENABLE_ROGER_MOTOTRBO
endif
ifeq ($(ENABLE_ROGER_TPT),1)
CFLAGS += -DENABLE_ROGER_TPT
endif
ifeq ($(ENABLE_ROGER_MOTOTRBOT40),1)
CFLAGS += -DENABLE_ROGER_MOTOTRBOT40
endif
ifeq ($(ENABLE_ROGER_MOTOTRBOTLKRT80),1)
CFLAGS += -DENABLE_ROGER_MOTOTRBOTLKRT80
endif
ifeq ($(ENABLE_ROGER_ROGERCOBRAAM845),1)
CFLAGS += -DENABLE_ROGER_ROGERCOBRAAM845
endif
ifeq ($(ENABLE_ROGER_POLICE_ITA),1)
CFLAGS += -DENABLE_ROGER_POLICE_ITA
endif
ifeq ($(ENABLE_ROGER_UV5RC),1)
CFLAGS += -DENABLE_ROGER_UV5RC
endif
ifeq ($(ENABLE_ROGER_MARIO),1)
CFLAGS += -DENABLE_ROGER_MARIO
endif
ifeq ($(ENABLE_MDC),1)
CFLAGS += -DENABLE_MDC
endif
Expand Down
6 changes: 3 additions & 3 deletions app/menu.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ int MENU_GetLimits(uint8_t Cursor, uint8_t *pMin, uint8_t *pMax) {
//*pMin = 0;
*pMax = 2;
break;
#if defined (ENABLE_ROGERBEEP) || defined (ENABLE_MDC)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC)
case MENU_ROGER:
//*pMin = 0;
*pMax = ARRAY_SIZE(gSubMenu_ROGER) - 1;
Expand Down Expand Up @@ -509,7 +509,7 @@ void MENU_AcceptSetting(void) {
gEeprom.POWER_ON_DISPLAY_MODE = gSubMenuSelection;
break;

#if defined (ENABLE_ROGERBEEP) || defined (ENABLE_MDC)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC)
case MENU_ROGER:
gEeprom.ROGER = gSubMenuSelection;
break;
Expand Down Expand Up @@ -889,7 +889,7 @@ void MENU_ShowCurrentSetting(void) {
case MENU_PONMSG:
gSubMenuSelection = gEeprom.POWER_ON_DISPLAY_MODE;
break;
#if defined (ENABLE_ROGERBEEP) || defined (ENABLE_MDC)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC)
case MENU_ROGER:
gSubMenuSelection = gEeprom.ROGER;
break;
Expand Down
61 changes: 55 additions & 6 deletions board.c
Original file line number Diff line number Diff line change
Expand Up @@ -614,13 +614,62 @@ void BOARD_EEPROM_Init(void)

// 0EA8..0EAF
EEPROM_ReadBuffer(0x0EA8, Data, 8);
#if defined(ENABLE_ROGER_OFF) || defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC)
int NUM_ROGER_MODES;
NUM_ROGER_MODES = 1;

#ifdef ENABLE_ROGER_DEFAULT
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_MOTOTRBO
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_TPT
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_MOTOTRBOT40
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_MOTOTRBOTLKRT80
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_ROGERCOBRAAM845
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_POLICE_ITA
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_UV5RC
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_ROGER_MARIO
NUM_ROGER_MODES++;

#endif

#ifdef ENABLE_MDC
NUM_ROGER_MODES++;

#endif

gEeprom.ROGER = (Data[1] < NUM_ROGER_MODES) ? Data[1] : ROGER_MODE_OFF;

#if defined(ENABLE_ROGERBEEP) && defined(ENABLE_MDC)
gEeprom.ROGER = (Data[1] < 10) ? Data[1] : ROGER_MODE_OFF;
#elif !defined(ENABLE_MDC) && defined(ENABLE_ROGERBEEP)
gEeprom.ROGER = (Data[1] < 9) ? Data[1] : ROGER_MODE_OFF;
#elif defined (ENABLE_MDC) && !defined(ENABLE_ROGERBEEP)
gEeprom.ROGER = (Data[1] < 2) ? Data[1] : ROGER_MODE_OFF;
#endif
gEeprom.REPEATER_TAIL_TONE_ELIMINATION = (Data[2] < 11) ? Data[2] : 0;
gEeprom.TX_CHANNEL = (Data[3] < 2) ? Data[3] : 0;
Expand Down
149 changes: 84 additions & 65 deletions driver/bk4819.c
Original file line number Diff line number Diff line change
Expand Up @@ -1041,7 +1041,7 @@ void BK4819_EnterExitTxMuteSequence3(void) {
}
*/

#if defined(ENABLE_ROGERBEEP) || defined(ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION) || defined(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC) || defined(ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION) || defined(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION)
void BK4819_PlayBeep(const uint16_t freq, const int delay)
{
BK4819_WriteRegister(BK4819_REG_71, scale_freq(freq));
Expand All @@ -1063,77 +1063,96 @@ void BK4819_PlayRoger(int t)
// NEED TO HAD IFDEF ON ROGER'S BEEP
switch (t) {

#if defined(ENABLE_ROGERBEEP)
#ifdef ENABLE_ROGER_DEFAULT
case 0: // DEFAULT
BK4819_PlayBeep(500, 50);
BK4819_PlayBeep(700, 50);
break;
BK4819_PlayBeep(500, 50);
BK4819_PlayBeep(700, 50);
break;
#endif

#ifdef ENABLE_ROGER_MOTOTRBO
case 1: // MOTOTRBO
BK4819_PlayBeep(1540, 50);
BK4819_PlayBeep(1310, 50);
break;
BK4819_PlayBeep(1540, 50);
BK4819_PlayBeep(1310, 50);
break;
#endif

#ifdef ENABLE_ROGER_TPT
case 2: // MOTOROLA APX6000 TPT
BK4819_PlayBeep(910, 25);
BK4819_PlayBeep(0, 25);
BK4819_PlayBeep(910, 25);
BK4819_PlayBeep(0, 25);
BK4819_PlayBeep(910, 50);
break;
BK4819_PlayBeep(910, 25);
BK4819_PlayBeep(0, 25);
BK4819_PlayBeep(910, 25);
BK4819_PlayBeep(0, 25);
BK4819_PlayBeep(910, 50);
break;
#endif

#ifdef ENABLE_ROGER_MOTOTRBOT40
case 3: // MOTOROLA T40
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
break;
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
BK4819_PlayBeep(2000, 50);
BK4819_PlayBeep(2200, 50);
break;
#endif

#ifdef ENABLE_ROGER_MOTOTRBOTLKRT80
case 4: // MOTOROLA TLKRT80
BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 50);
BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 50);
BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 80);
break;

BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 50);
BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 50);
BK4819_PlayBeep(1190, 50);
BK4819_PlayBeep(992, 50);
BK4819_PlayBeep(507, 80);
break;
#endif

#ifdef ENABLE_ROGER_ROGERCOBRAAM845
case 5: // MOTOROLA CobraAM845
BK4819_PlayBeep(435, 50);
BK4819_PlayBeep(872, 50);
BK4819_PlayBeep(1742, 50);
break;

case 6: // PlayRoger Police Italy
BK4819_PlayBeep(800, 60);
BK4819_PlayBeep(2200, 60);
BK4819_PlayBeep(885, 60);
BK4819_PlayBeep(1540, 60);
BK4819_PlayBeep(1300, 60);
BK4819_PlayBeep(975, 60);
BK4819_PlayBeep(1180, 60);
BK4819_PlayBeep(1075, 60);
break;

case 7: // Baofeng UV-5RC
BK4819_PlayBeep(1120, 135);
BK4819_PlayBeep(861, 200);
break;

case 8: // Mario Dies
BK4819_PlayBeep(494, 286/2);
BK4819_PlayBeep(698, 190/2);
BK4819_PlayBeep(0, 306/2);
BK4819_PlayBeep(698, 258/2);
BK4819_PlayBeep(698, 340/2);
BK4819_PlayBeep(659, 328/2);
BK4819_PlayBeep(587, 344/2);
BK4819_PlayBeep(523, 262/2);
break;
BK4819_PlayBeep(435, 50);
BK4819_PlayBeep(872, 50);
BK4819_PlayBeep(1742, 50);
break;
#endif

#ifdef ENABLE_ROGER_POLICE_ITA
case 6: // PlayRoger Police Italy
BK4819_PlayBeep(800, 60);
BK4819_PlayBeep(2200, 60);
BK4819_PlayBeep(885, 60);
BK4819_PlayBeep(1540, 60);
BK4819_PlayBeep(1300, 60);
BK4819_PlayBeep(975, 60);
BK4819_PlayBeep(1180, 60);
BK4819_PlayBeep(1075, 60);
break;
#endif

#ifdef ENABLE_ROGER_UV5RC
case 7: // Baofeng UV-5RC
BK4819_PlayBeep(1120, 135);
BK4819_PlayBeep(861, 200);
break;
#endif

#ifdef ENABLE_ROGER_MARIO
case 8: // Mario Dies
BK4819_PlayBeep(494, 286 / 2);
BK4819_PlayBeep(698, 190 / 2);
BK4819_PlayBeep(0, 306 / 2);
BK4819_PlayBeep(698, 258 / 2);
BK4819_PlayBeep(698, 340 / 2);
BK4819_PlayBeep(659, 328 / 2);
BK4819_PlayBeep(587, 344 / 2);
BK4819_PlayBeep(523, 262 / 2);
break;
#endif


#endif

#ifdef ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION

Expand Down
6 changes: 3 additions & 3 deletions driver/bk4819.h
Original file line number Diff line number Diff line change
Expand Up @@ -146,11 +146,11 @@ uint8_t BK4819_GetCTCType(void);
void BK4819_SendFSKData(uint16_t *pData);
void BK4819_PrepareFSKReceive(void);


#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC) || defined(ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION) || defined(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION)
void BK4819_PlayBeep(const uint16_t freq, const int delay);
#endif


#if defined(ENABLE_ROGERBEEP) || defined(ENABLE_MESSENGER) || defined(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MESSENGER_ROGERBEEP_NOTIFICATION) || defined(ENABLE_TIMEOUT_ROGERBEEP_NOTIFICATION)
void BK4819_PlayRoger(int);
#endif
#if defined(ENABLE_MDC)
Expand Down
6 changes: 3 additions & 3 deletions helper/boot.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ void BOOT_ProcessMode(BOOT_Mode_t Mode)

#if defined(ENABLE_DTMF_CALLING)
#if defined(ENABLE_STATUS_BATTERY_PERC)
#if defined(ENABLE_ROGERBEEP) && defined(ENABLE_LCD_CONTRAST_OPTION)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC) && defined(ENABLE_LCD_CONTRAST_OPTION)
gMenuListCount = 57;
#elif defined(ENABLE_ROGERBEEP)
gMenuListCount = 56;
Expand All @@ -119,7 +119,7 @@ void BOOT_ProcessMode(BOOT_Mode_t Mode)
gMenuListCount = 55;
#endif
#else
#if defined(ENABLE_ROGERBEEP) && defined(ENABLE_LCD_CONTRAST_OPTION)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC) && defined(ENABLE_LCD_CONTRAST_OPTION)
gMenuListCount = 56;
#elif defined(ENABLE_ROGERBEEP)
gMenuListCount = 55;
Expand All @@ -130,7 +130,7 @@ void BOOT_ProcessMode(BOOT_Mode_t Mode)
#endif
#endif
#elif defined(ENABLE_STATUS_BATTERY_PERC)
#if defined(ENABLE_ROGERBEEP) && defined(ENABLE_LCD_CONTRAST_OPTION)
#if defined(ENABLE_ROGER_DEFAULT) || defined(ENABLE_ROGER_MOTOTRBO) || defined(ENABLE_ROGER_TPT) || defined(ENABLE_ROGER_MOTOTRBOT40) || defined(ENABLE_ROGER_MOTOTRBOTLKRT80) || defined(ENABLE_ROGER_ROGERCOBRAAM845) || defined(ENABLE_ROGER_POLICE_ITA) || defined(ENABLE_ROGER_UV5RC) || defined(ENABLE_ROGER_MARIO) || defined(ENABLE_MDC) && defined(ENABLE_LCD_CONTRAST_OPTION)
gMenuListCount = 47;
#elif defined(ENABLE_ROGERBEEP)
gMenuListCount = 46;
Expand Down
Loading

0 comments on commit 93ce379

Please sign in to comment.