it seems the rule is... except for cambiata, motion to and from a
dissonance only by step.
Yes, that's accurate. It's even more accurate to note that motion to a dissonance is always by step. Motion from a dissonance only has the one exception (nota cambiata).
The rationale for the cambiata's different treatment is apparently due
to the cantus firmus tone not changing so you can leap to the next
Fux's explanation for the cambiata is not very good and certainly not with any historical basis. The figure originally came from a simple ornamentation of a fourth leap down that became popular in the 15th century, i.e., moving stepwise down then skipping a third down. It was so idiomatic that it stuck around into Palestrina style even when dissonance usage became much more regulated.
It's easy enough to imitate Fux's examples. That isn't my concern. I'm
looking for a logical wording to define acceptable motion.
I personally don't think it's easy to imitate Fux at all. There's a lot of implicit stuff going on that one needs to understand from the examples.
Quite a few years ago, I once had to instruct some students in Fuxian counterpoint. I too tried to formalize these principles, which was not necessarily an easy task. For what it's worth, this is my summary that I gave them of Fux's principles for third species in two voices (referencing the Mann translation):
- Follow all applicable rules from first and second species.
- The counterpoint consists solely of quarter notes, except for the final note.
- The very first beat of the first measure (only) may be a quarter rest.
- Immediate repetition of the same note is not allowed in the counterpoint.
- The first beat of each measure is always a consonance. The other beats of the measure may be consonant or dissonant, according to the following rules.
- There are only two types of dissonances allowed: passing tones and the nota cambiata.
- Passing tones, when dissonant, must be approached and left by step.
- Passing tone dissonances can occur on the 2nd, 3rd, and 4th beats according to these rules:
a. Second beat dissonance – the third beat must be consonant (with one exception—see below).
b. Third beat (use sparingly) – the second and fourth beats must be consonant.
c. Fourth beat – the third beat must be consonant.
- The above rules about passing dissonances can be easily summarized by one rule: a dissonant passing tone must be preceded by and followed by a consonance.
- The nota cambiata (or simply, “cambiata”) is a special figure available only in black notes. It consists of five notes. (All five notes are necessary in Fux.) The first note is a consonance on the first beat. The second note descends by step to a dissonance. The third note skips down by a third to a consonance. The fourth and fifth notes move up by step following the third note. This is the only possible leap out of a dissonance in Fux. See fig. 50.
- Fux provides only two cadential formulas for the penultimate bar when the counterpoint is in the upper part and only one cadential formula for the lower part. See figures 53 and 54.
- The Phrygian mode again requires a special cadence when the counterpoint is in the lower part. There are two possibilities. One is given in fig. 58 and is rather awkward. The other is given in the footnote on p. 54 and is the only exception to the rules about passing tones. In this cadence, the second and third note are both dissonant.
Some of Fux's principles have no historical basis in Palestrina style (for example, rule 8b and 9). And there are other implicit guidelines that were less strong than the aforesaid rules, but which could sometimes be broken. I also mentioned these, mostly based in Fux's examples (but also trying to ground his advice in actual Palestrina style):
- If you wish, you may use the exception for passing dissonances mentioned in the footnote on p. 50. In this case, a scalar ascent or descent is required for the entire measure, moving from a 6th to a 3rd. The intervening notes in such a measure usually make a perfect 5th and a perfect 4th, obeying the rules. However, sometimes the fifth is diminished, thus making dissonances on beats 2 and 3 (against the rules). This violation is allowed only if the tritone cannot be conveniently corrected to a perfect fifth.
- Most of the motion should be by step. Skips and leaps should only account for perhaps 1/4 of all the melodic motions (at most 1/3).
- Avoid more than two skips in the same direction. In successive skips, the larger interval should generally be on the bottom.
- Avoid changing directions a number of times in rapid succession. Three changes of direction within six quarters is about the most changes of direction acceptable in a short span.
- Avoid skipping up to a weak beat (2nd or 4th beat), except occasionally when the line continues upward. [Fux does this a lot more often than Palestrina does, however.]
- Avoid having a high point (or even a temporary high point) fall on a weak beat.
- Unisons may be used on any beat other than the first (except, of course, at the very beginning or last measure of the counterpoint).
- Skips greater than a third should be relatively rare, but planning a couple larger leaps is a good idea.
- Having the same harmonic interval with the C.F. on more than three successive downbeats should be avoided. Four such downbeats is the limit.
- Avoid parallel perfect fifths and octaves on successive strong beats (i.e., on the third beat of one measure and the first of the next). They are possible on successive downbeats when used with care.
I don't know if these are helpful for what you're working through, but it's my attempt to distill Fux (which I tried for the various species).