From b252d394036673d2ed33a8516304e8b4f7a732d2 Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Tue, 4 Apr 2023 17:27:58 +0200 Subject: Fix a small bug and prepare a better default melody --- src/sequencer.c | 118 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 60 insertions(+), 58 deletions(-) diff --git a/src/sequencer.c b/src/sequencer.c index d69c450..4b83f5f 100644 --- a/src/sequencer.c +++ b/src/sequencer.c @@ -18,7 +18,6 @@ sram_write(u8 *src, u16 pos, u16 n_bytes) { // TODO // - Preview sound keys? // - Copy paste trigs/notes/params -// - Finish noise channel (parameter editing) void set_time(int bpm); // @@ -285,21 +284,21 @@ typedef struct ChannelNoise { const ChannelSquare default_ch1 = { .notes = { {true, NOTE_C_4}, - {true, NOTE_D_4}, - {true, NOTE_E_4}, - {true, NOTE_F_4}, + {true, NOTE_D_SHARP_4}, {true, NOTE_G_4}, - {true, NOTE_A_4}, - {true, NOTE_B_4}, - {true, NOTE_C_5}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, + {true, NOTE_A_SHARP_4}, {true, NOTE_C_4}, + {true, NOTE_D_SHARP_4}, + {true, NOTE_G_4}, + {true, NOTE_A_SHARP_4}, {true, NOTE_C_4}, + {true, NOTE_D_SHARP_4}, + {true, NOTE_G_4}, + {true, NOTE_A_SHARP_4}, {true, NOTE_C_4}, + {true, NOTE_D_SHARP_4}, + {true, NOTE_G_4}, + {true, NOTE_A_SHARP_4}, }, .params = { {8, 4, 0, 2, 0, 0, 0}, @@ -324,22 +323,22 @@ const ChannelSquare default_ch1 = { const ChannelSquare default_ch2 = { .notes = { - {true, NOTE_C_4}, - {true, NOTE_D_4}, - {true, NOTE_E_4}, - {true, NOTE_F_4}, - {true, NOTE_G_4}, - {true, NOTE_A_4}, - {true, NOTE_B_4}, - {true, NOTE_C_5}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, + {true, NOTE_C_3}, }, .params = { {8, 4, 0, 2, 0, 0, 0}, @@ -364,22 +363,22 @@ const ChannelSquare default_ch2 = { const ChannelWave default_ch3 = { .notes = { - {true, NOTE_C_4}, - {true, NOTE_D_4}, - {true, NOTE_E_4}, - {true, NOTE_F_4}, - {true, NOTE_G_4}, - {true, NOTE_A_4}, - {true, NOTE_B_4}, {true, NOTE_C_5}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, - {true, NOTE_C_4}, + {true, NOTE_C_5}, + {true, NOTE_C_5}, + {true, NOTE_A_SHARP_5}, + {true, NOTE_A_SHARP_5}, + {true, NOTE_C_5}, + {true, NOTE_C_5}, + {true, NOTE_G_5}, + {true, NOTE_C_5}, + {true, NOTE_C_5}, + {true, NOTE_C_5}, + {true, NOTE_A_SHARP_5}, + {true, NOTE_A_SHARP_5}, + {true, NOTE_C_5}, + {true, NOTE_C_5}, + {true, NOTE_G_5}, }, .params = { {3, 0, {0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x00000000},{0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x00000000}}, @@ -404,22 +403,23 @@ const ChannelWave default_ch3 = { const ChannelNoise default_ch4 = { .notes = { - {true, NOTE_C_4}, - {false, NOTE_D_4}, - {false, NOTE_E_4}, - {false, NOTE_F_4}, + {true, NOTE_D_SHARP_4}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {true, NOTE_D_SHARP_4}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {true, NOTE_D_SHARP_4}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {true, NOTE_D_SHARP_4}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, + {false, NOTE_E_6}, {false, NOTE_G_4}, - {false, NOTE_A_4}, - {false, NOTE_B_4}, - {false, NOTE_C_5}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, - {false, NOTE_C_4}, }, .params = { {0xF, 0x2, 0, 0}, @@ -2115,6 +2115,7 @@ handle_pattern_selection(void) { draw_pattern_cursor(pattern_selection_loc, COL_BG); pattern_selection_loc = pattern_selection_loc - 1; draw_pattern_cursor(pattern_selection_loc, COL_CURSOR); + draw_channels(); draw_triggers(); draw_bpm(); } @@ -2123,6 +2124,7 @@ handle_pattern_selection(void) { draw_pattern_cursor(pattern_selection_loc, COL_BG); pattern_selection_loc = pattern_selection_loc + 1; draw_pattern_cursor(pattern_selection_loc, COL_CURSOR); + draw_channels(); draw_triggers(); draw_bpm(); } -- cgit v1.2.1