Project

General

Profile

Bug #1013 » 0001-uv5r-broadcast-fm-settings.patch

Peter Ross, 07/21/2013 07:35 AM

View differences:

chirp/uv5r.py
183 183
     unknown5:6;
184 184
} vfob;
185 185

  
186
#seekto 0x0F48;
187
struct {
188
  char fm65_line1[7];
189
  char fm65_line2[7];
190
  u16 freq;
191
  char fm76_line1[7];
192
  char fm76_line2[7];
193
} broadcast;
194

  
186 195
#seekto 0x1000;
187 196
struct {
188 197
  u8 unknown1[8];
......
1192 1201
                                                DTMFSPEED_LIST[self._memobj.ani.dtmfoff]))
1193 1202
        dtmf.append(rs)
1194 1203

  
1204
        broadcast = RadioSettingGroup("broadcast", "Broadcast FM Settings")
1205

  
1206
        _msg = self._memobj.broadcast
1207
        rs = RadioSetting("broadcast.fm65_line1", "65-75M Message 1",
1208
                          RadioSettingValueString(0, 7, _filter(_msg.fm65_line1)))
1209
        broadcast.append(rs)
1210
        rs = RadioSetting("broadcast.fm65_line2", "65-75M Message 2",
1211
                          RadioSettingValueString(0, 7, _filter(_msg.fm65_line2)))
1212
        broadcast.append(rs)
1213
        rs = RadioSetting("broadcast.fm76_line1", "76-108M Message 1",
1214
                          RadioSettingValueString(0, 7, _filter(_msg.fm76_line1)))
1215
        broadcast.append(rs)
1216
        rs = RadioSetting("broadcast.fm76_line2", "76-108M Message 2",
1217
                          RadioSettingValueString(0, 7, _filter(_msg.fm76_line2)))
1218
        broadcast.append(rs)
1219

  
1220
        def convert_broadcast_value_to_freq(value):
1221
           freq = int(650 + value) * 100000
1222
           return chirp_common.format_freq(freq)
1223

  
1224
        def apply_broadcast_freq(setting, obj):
1225
            value = chirp_common.parse_freq(str(setting.value)) / 100000 - 650
1226
            obj.freq = value
1227

  
1228
        rs = RadioSetting("broadcast.freq", "Frequency (MHz)",
1229
                          RadioSettingValueString(0, 10, convert_broadcast_value_to_freq(_msg.freq)))
1230
        rs.set_apply_callback(apply_broadcast_freq, _msg)
1231
        broadcast.append(rs)
1232

  
1233
        group.append(broadcast)
1234

  
1195 1235
        return group
1196 1236

  
1197 1237
    def get_settings(self):
(1-1/2)