From 4f1971b8365e05c86f71cebe9eb6f5c0c217a088 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Fri, 11 Jun 2021 17:25:11 +0200 Subject: Add back wave adjustment on ch3 --- src/sequencer.c | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'src') diff --git a/src/sequencer.c b/src/sequencer.c index fae4ce3..399a016 100644 --- a/src/sequencer.c +++ b/src/sequencer.c @@ -1165,23 +1165,23 @@ handle_param_selection_ch3(void) { // |`- odd // `-- even if (param_selection_loc < 32) { - // u8 byte_number = param_selection_loc >> 1; - // u8 byte = sequences[2][trig_selection_loc].wave_a[byte_number]; - // if (odd) { - // byte = (~0xF & byte) | ((byte + inc) & 0xF); - // } else { - // byte = (0xF & byte) | (((byte >> 4) + inc) & 0xF) << 4; - // } - // sequences[2][trig_selection_loc].wave_a[byte_number] = byte; + u8 byte_number = param_selection_loc / 2; + u8 *byte = &ch3.params[trig_selection_loc].wave_a; + byte += byte_number; + if (odd) { + *byte = (~0xF & *byte) | ((*byte + inc) & 0xF); + } else { + *byte = (0xF & *byte) | (((*byte >> 4) + inc) & 0xF) << 4; + } } else if (param_selection_loc < 64){ - // u8 byte_number = (param_selection_loc - 32) >> 1; - // u8 byte = sequences[2][trig_selection_loc].wave_b[byte_number]; - // if (odd) { - // byte = (~0xF & byte) | (byte + inc); - // } else { - // byte = (0xF & byte) | ((byte >> 4) + inc) << 4; - // } - // sequences[2][trig_selection_loc].wave_b[byte_number] = byte; + u8 byte_number = param_selection_loc / 2; + u8 *byte = &ch3.params[trig_selection_loc].wave_b; + byte += byte_number; + if (odd) { + *byte = (~0xF & *byte) | ((*byte + inc) & 0xF); + } else { + *byte = (0xF & *byte) | (((*byte >> 4) + inc) & 0xF) << 4; + } } else { u32 *wave_a = &ch3.params[trig_selection_loc].wave_a; u32 *wave_b = &ch3.params[trig_selection_loc].wave_b; @@ -1217,8 +1217,9 @@ handle_param_selection_ch3(void) { memcpy32(wave_b, rand_wave, 16); } break; } - draw_parameters(); } + draw_parameters(); + draw_parameters_cursor(param_selection_loc, COL_BLUE); } } -- cgit v1.2.1