- if (get_cfg_string(sdi, ":CHAN1:DISP?", &t_s) != SR_OK)
- return SR_ERR;
- devc->analog_channels[0] = !strcmp(t_s, "ON") || !strcmp(t_s, "1");
- g_free(t_s);
- if (get_cfg_string(sdi, ":CHAN2:DISP?", &t_s) != SR_OK)
- return SR_ERR;
- devc->analog_channels[1] = !strcmp(t_s, "ON") || !strcmp(t_s, "1");
- g_free(t_s);
- sr_dbg("Current analog channel state CH1 %s CH2 %s",
- devc->analog_channels[0] ? "on" : "off",
- devc->analog_channels[1] ? "on" : "off");
+ for (i = 0; i < devc->model->analog_channels; i++) {
+ cmd = g_strdup_printf(":CHAN%d:DISP?", i + 1);
+ res = get_cfg_string(sdi, cmd, &t_s);
+ g_free(cmd);
+ if (res != SR_OK)
+ return SR_ERR;
+ devc->analog_channels[i] = !strcmp(t_s, "ON") || !strcmp(t_s, "1");
+ }
+ sr_dbg("Current analog channel state:");
+ for (i = 0; i < devc->model->analog_channels; i++)
+ sr_dbg("CH%d %s", i + 1, devc->analog_channels[i] ? "on" : "off");