Great info! I'm not sure it's the best way, but it looks like it works better than what I'm doing now.
Macros are another way of getting around this - Padauk IDE supports for loops with values like this:
.FOR octave, <O4, O5, O6, O7>
tm2s = octave;
.FOR note, <Cn, Dn, En, Fn, Gn, An, Bn>
tm2b = note;
.delay(800000);
.ENDM
.ENDM