break;
case 'C': //ZZCx
switch(command[3]) {
- case 'B': //ZZCB
- implemented=FALSE;
+ case 'B': //ZZCB: VFO A to B
+ if(!locked) {
+ if(command[4]==';') {
+ vfo_a_to_b();
+ }
+ }
break;
- case 'D': //ZZCD
- implemented=FALSE;
+ case 'D': //ZZCD: VFO B to A
+ if(!locked) {
+ if(command[4]==';') {
+ vfo_b_to_a();
+ }
+ }
break;
- case 'F': //ZZCF
- implemented=FALSE;
+ case 'F': //ZZCF: Swap VFO A and B
+ if(!locked) {
+ if(command[4]==';') {
+ vfo_a_swap_b();
+ }
+ }
break;
case 'I': //ZZCI
implemented=FALSE;
} else if(command[6]==';') {
int filter=atoi(&command[4]);
// update RX1 filter
+ vfo_filter_changed(filter);
}
break;
case 'J': //ZZFJ
implemented=FALSE;
break;
}
+ break;
case 'O': //ZZOx
switch(command[3]) {
default:
if(vfo[VFO_A].mode==modeCWL || vfo[VFO_A].mode==modeCWU) {
vfo[VFO_A].rit-=10;
} else {
- vfo[VFO_A].rit-=50;
+ vfo[VFO_A].rit-=rit_increment;
}
vfo_update();
} else if(command[9]==';') {
if(vfo[VFO_A].mode==modeCWL || vfo[VFO_A].mode==modeCWU) {
vfo[VFO_A].rit+=10;
} else {
- vfo[VFO_A].rit+=50;
+ vfo[VFO_A].rit+=rit_increment;
}
vfo_update();
} else if(command[9]==';') {
implemented=FALSE;
break;
}
+ break;
case 'S': //ZZSx
switch(command[3]) {
case 'A': //ZZSA
if(command[2]==';') {
sprintf(reply,"LK%d%d;",locked,locked);
send_resp(client->fd,reply);
- } else if(command[27]==';') {
- locked=command[2]=='1';
+ } else if(command[4]==';') {
+ locked = atoi(&command[2]);
vfo_update();
}
break;