It seems to revert to the incorrect operation before the changes I submitted.
I don't see how your case statement can work for the modes. The only valid numbers in byte 6 are 0, 1, 2, 3, 4. You use case numbers based on byte 6 ranging from 0 to 7 which correspond to the menu, but doesn't correspond to the data from the rig on byte 6. For example, CW is 2 whether or not it is wide or narrow. In the menu, the numbers are 2 and 3 respectively.
?
So, I reverted to my version of FT890.cxx which worked for all of the non-narrow modes and added if statements to fix the narrow modes.
vfo-a now works correctly on all modes. Maybe you can do it in a better way or make any corrections.
// After the base mode has been determined, we need to check for the narrow filters. // We need to verify the base mode, as the narrow mode bits remain on until changed.