Browse Source

Add start of using midi events in tui

master
cancel 6 years ago
parent
commit
8806da103f
  1. 3
      sim.c
  2. 17
      tui_main.c

3
sim.c

@ -425,7 +425,7 @@ END_PHASE
BEGIN_SOLO_PHASE_0(midi)
BEGIN_ACTIVE_PORTS
for (Usz i = 1; 1 < 6; ++i) {
for (Usz i = 1; i < 6; ++i) {
PORT(0, (Isz)i, IN);
}
END_PORTS
@ -1056,5 +1056,6 @@ void orca_run(Gbuffer gbuf, Mbuffer mbuf, Usz height, Usz width,
bank_cursor_reset(&phase1_extras.cursor);
phase1_extras.vars_slots = &vars_slots[0];
phase1_extras.piano_bits = piano_bits;
phase1_extras.oevent_list = oevent_list;
sim_phase_1(gbuf, mbuf, height, width, tick_number, &phase1_extras);
}

17
tui_main.c

@ -358,6 +358,16 @@ void tui_cursor_confine(Tui_cursor* tc, Usz height, Usz width) {
tc->x = width - 1;
}
void tdraw_oevent_list(WINDOW* win, int win_h, int win_w, int pos_y, int pos_x,
Oevent_list const* oevent_list) {
(void)win;
(void)win_h;
(void)win_w;
(void)pos_y;
(void)pos_x;
(void)oevent_list;
}
void tui_resize_grid(Field* field, Markmap_reusable* markmap, Usz new_height,
Usz new_width, Usz tick_num, Field* scratch_field,
Undo_history* undo_hist, Tui_cursor* tui_cursor,
@ -569,6 +579,7 @@ int main(int argc, char** argv) {
Usz ruler_spacing_x = 8;
bool is_playing = false;
bool needs_remarking = true;
bool draw_event_list = false;
for (;;) {
int term_height = getmaxy(stdscr);
int term_width = getmaxx(stdscr);
@ -632,6 +643,9 @@ int main(int argc, char** argv) {
field.height, field.width, ruler_spacing_y, ruler_spacing_x,
tick_num, &tui_cursor, input_mode);
}
if (draw_event_list) {
tdraw_oevent_list(cont_win, content_h, content_w, 0, 0, &oevent_list);
}
wrefresh(cont_win);
int key;
@ -732,6 +746,9 @@ int main(int argc, char** argv) {
piano_bits = ORCA_PIANO_BITS_NONE;
needs_remarking = true;
break;
case AND_CTRL('e'):
draw_event_list = !draw_event_list;
break;
case ' ':
if (is_playing) {
is_playing = false;

Loading…
Cancel
Save