@@ -2114,11 +2114,6 @@ def set_memory(self, mem):
21142114 _mem4 .ch_attr [number ].band = 0x7
21152115 return mem
21162116
2117- # clean the channel memory, restore some bits if it was used before
2118- if _mem .get_raw ()[0 ] == "\xff " :
2119- # this was an empty memory
2120- _mem .set_raw ("\x00 " * 16 )
2121-
21222117 if number < 200 :
21232118 _mem4 .ch_attr [number ].is_scanlist1 = 0
21242119 _mem4 .ch_attr [number ].is_scanlist2 = 0
@@ -2176,32 +2171,25 @@ def set_memory(self, mem):
21762171 else :
21772172 _mem .txpower = POWER_LOW
21782173
2179- for setting in mem .extra :
2180- sname = setting .get_name ()
2181- svalue = setting .value .get_value ()
21822174
2183- if sname == "busyChLockout" :
2184- _mem .busyChLockout = bool (svalue )
21852175
2186- if sname == "pttid" :
2187- _mem .dtmf_pttid = PTTID_LIST .index (svalue )
21882176
2189- if sname == "frev" :
2190- _mem .freq_reverse = bool (svalue )
2177+ ######### EXTRA SETTINGS
21912178
2192- if sname == "dtmfdecode" :
2193- _mem .dtmf_decode = bool (svalue )
2179+ def getSetting (name , defVal ):
2180+ if name in mem .extra :
2181+ return int (mem .extra [name ].value )
2182+ return defVal
21942183
2195- if sname == "scrambler" :
2196- _mem .scrambler = SCRAMBLER_LIST .index (svalue )
2197-
2198- if sname == "compander" :
2199- _mem4 .ch_attr [number ].compander = \
2200- COMPANDER_LIST .index (svalue )
2201-
2202- if number < 200 and sname == "scanlists" :
2203- tmpVal = SCANLIST_LIST .index (svalue )
2204- _mem4 .ch_attr [number ].is_scanlist1 = bool (tmpVal & 1 )
2205- _mem4 .ch_attr [number ].is_scanlist2 = bool (tmpVal & 2 )
2184+ _mem .busyChLockout = getSetting ("busyChLockout" , False )
2185+ _mem .dtmf_pttid = getSetting ("pttid" , 0 )
2186+ _mem .freq_reverse = getSetting ("frev" , False )
2187+ _mem .dtmf_decode = getSetting ("dtmfdecode" , False )
2188+ _mem .scrambler = getSetting ("scrambler" , 0 )
2189+ _mem4 .ch_attr [number ].compander = getSetting ("compander" , 0 )
2190+ if number < 200 :
2191+ tmpVal = getSetting ("scanlists" , 0 )
2192+ _mem4 .ch_attr [number ].is_scanlist1 = bool (tmpVal & 1 )
2193+ _mem4 .ch_attr [number ].is_scanlist2 = bool (tmpVal & 2 )
22062194
22072195 return mem
0 commit comments