2004-06-30 TAMUKI Shoichi <tamuki@linet.gr.jp>
* interface/alsaseq_c.c, interface/rtsyn_common.c,
- timidity/playmidi.[ch], timidity/timidity.[ch]:
+ timidity/playmidi.[ch], timidity/readmidi.c,
+ timidity/timidity.[ch]:
Interlock interfaces with -K and -T command options
+ Hack up force keysig calculation
+ Change the base of measure (bar) as 1 (was 0)
2004-06-14 TAMUKI Shoichi <tamuki@linet.gr.jp>
signal(SIGHUP, sig_reset);
if (opt_force_keysig != 8) {
- i = current_keysig + ((current_keysig < 8) ? 7 : -6);
- j = opt_force_keysig + ((current_keysig < 8) ? 7 : 10);
- while (i != j && i != j + 12) {
- if (++note_key_offset > 6)
- note_key_offset -= 12;
- i += (i > 10) ? -5 : 7;
- }
+ i = current_keysig - ((current_keysig < 8) ? 0 : 16), j = 0;
+ while (i != opt_force_keysig)
+ i += (i > 0) ? -5 : 7, j++;
+ note_key_offset = (j != 0 && opt_force_keysig < 0) ? j - 12 : j;
}
i = current_keysig + ((current_keysig < 8) ? 7 : -9), j = 0;
while (i != 7)
time_advance >>= 1;
if (opt_force_keysig != 8) {
- i = current_keysig + ((current_keysig < 8) ? 7 : -6);
- j = opt_force_keysig + ((current_keysig < 8) ? 7 : 10);
- while (i != j && i != j + 12) {
- if (++note_key_offset > 6)
- note_key_offset -= 12;
- i += (i > 10) ? -5 : 7;
- }
+ i = current_keysig - ((current_keysig < 8) ? 0 : 16), j = 0;
+ while (i != opt_force_keysig)
+ i += (i > 0) ? -5 : 7, j++;
+ note_key_offset = (j != 0 && opt_force_keysig < 0) ? j - 12 : j;
}
i = current_keysig + ((current_keysig < 8) ? 7 : -9), j = 0;
while (i != 7)
current_keysig = current_event->a + current_event->b * 16;
ctl_mode_event(CTLE_KEYSIG, 1, current_keysig, 0);
if (opt_force_keysig != 8) {
- i = current_keysig + ((current_keysig < 8) ? 7 : -6);
- note_key_offset -= floor(note_key_offset / 12.0) * 12;
- for (j = 0; j < note_key_offset; j++)
- i += (i > 10) ? -5 : 7;
- j = opt_force_keysig + ((current_keysig < 8) ? 7 : 10);
- while (i != j && i != j + 12) {
- if (++note_key_offset > 6)
- note_key_offset -= 12;
- i += (i > 10) ? -5 : 7;
- }
+ i = current_keysig - ((current_keysig < 8) ? 0 : 16), j = 0;
+ while (i != opt_force_keysig)
+ i += (i > 0) ? -5 : 7, j++;
+ note_key_offset = (j != 0 && opt_force_keysig < 0) ? j - 12 : j;
kill_all_voices();
ctl_mode_event(CTLE_KEY_OFFSET, 1, note_key_offset, 0);
}
ctl_mode_event(CTLE_TEMPER_KEYSIG, 1, current_event->a, 0);
i = current_temper_keysig + ((current_temper_keysig < 8) ? 7 : -9);
j = 0;
- while (i != 7 && i != 19)
+ while (i != 7)
i += (i < 7) ? 5 : -7, j++;
j += note_key_offset, j -= floor(j / 12.0) * 12;
current_temper_freq_table = j;
ctl_mode_event(CTLE_KEYSIG, 0, current_keysig, 0);
ctl_mode_event(CTLE_TEMPER_KEYSIG, 0, 0, 0);
if (opt_force_keysig != 8) {
- i = current_keysig + ((current_keysig < 8) ? 7 : -6);
- j = opt_force_keysig + ((current_keysig < 8) ? 7 : 10);
- while (i != j && i != j + 12) {
- if (++note_key_offset > 6)
- note_key_offset -= 12;
- i += (i > 10) ? -5 : 7;
- }
+ i = current_keysig - ((current_keysig < 8) ? 0 : 16), j = 0;
+ while (i != opt_force_keysig)
+ i += (i > 0) ? -5 : 7, j++;
+ note_key_offset = (j != 0 && opt_force_keysig < 0) ? j - 12 : j;
}
ctl_mode_event(CTLE_KEY_OFFSET, 0, note_key_offset, 0);
i = current_keysig + ((current_keysig < 8) ? 7 : -9), j = 0;