Auto full-combo Koibumi2000 in Taiko no Tatsujin CS5
Dependencies: fll mbed-rtos mbed
main.cpp
- Committer:
- sierra
- Date:
- 2015-02-17
- Revision:
- 32:fdf9f6fca8a2
- Parent:
- 31:2dbed2eea0f2
- Child:
- 33:cc84b10e6c67
File content as of revision 32:fdf9f6fca8a2:
#include "mbed.h" #include "rtos.h" #include "fll.h" #include "fllaux.h" #include "taiko.h" int main(void) { /* button_t array0[] = {R1, 0}; button_t array1[] = {CIRCLE, 0}; Producer* source0 = new RepeaterSource(array0, sizeof(array0)/sizeof(button_t)); Producer* source1 = new RepeaterSource(array1, sizeof(array1)/sizeof(button_t)); Producer* ss[] = {source0, source1}; Producer* source = new MergeFlow(ss, 2); */ note don1 = { Don, 1 }; note don075 = { Don, 0.75 }; note don05 = { Don, 0.5 }; note don025 = { Don, 0.25 }; note un1 = { Un, 1 }; note un05 = { Un, 0.5 }; note ka1 = { Ka, 1 }; note ka05 = { Ka, 0.5 }; note ka025 = { Ka, 0.25 }; note renda3 = { Renda, 3 }; note renda2 = { Renda, 2 }; note dondai05 = { DonDai, 0.5 }; note dondai1 = { DonDai, 1 }; note kadai05 = { KaDai, 0.5 }; note kadai1 = { KaDai, 1 }; /* // Radetzkymarsch perfect score note* note_seq[] = { &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don1, &don025, &don025, &don025, &don025, &don05, &don05, &don1, &un05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &don05, &ka05, &don1, &un1, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don075, &don025, &don025, &don025, &don025, &don025, &don05, &don05, &don1, &renda3, &un1, &renda3, &un1, &don1, &don075, &don025, &don1, &don1, &ka05, &ka025, &ka025, &ka05, &don05, &ka05, &ka025, &ka025, &ka1, &don1, &don075, &don025, &don1, &don1, &ka05, &ka025, &ka025, &ka05, &don05, &ka05, &ka025, &ka025, &ka05, &don05, &ka05, &ka025, &ka025, &ka05, &ka025, &ka025, &ka05, &ka025, &ka025, &ka05, &ka025, &ka025, &ka1, &un1, &un1, &un05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &don05, &ka05, &don1, &un1, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don075, &don025, &don025, &don025, &don025, &don025, &don05, &don05, &don1, // changing tempo? &don1, &un05, &don05, &don05, &don05, &don05, &don05, &don05, &ka025, &ka025, &ka05, &ka05, &ka1, &un1, // &don1, &ka1, &don05, &don05, &ka1, &don1, &ka05, &ka05, &don1, &un1, &don1, &ka05, &ka05, &don025, &don025, &don05, &ka1, &don1, &ka05, &ka05, &don1, &un1, &don1, &ka1, &don05, &don05, &ka1, &don1, &ka05, &ka05, &don1, &un1, &don1, &ka05, &ka05, &don025, &don025, &don05, &ka1, &don025, &don025, &don05, &don025, &don025, &don05, &don1, &un1, // &don05, &don025, &don025, &don1, &ka05, &ka05, &ka05, &ka05, &don05, &don025, &don025, &don1, &ka05, &ka05, &ka1, &don05, &don025, &don025, &don1, &ka05, &ka05, &ka05, &ka05, &don1, &un05, &don025, &don025, &don1, &un1, &don1, &ka1, &don05, &don05, &ka1, &don1, &ka05, &ka05, &don1, &un1, &don1, &ka05, &ka05, &don025, &don025, &don05, &ka1, &don025, &don025, &don05, &don025, &don025, &don05, &don1, &un1, &don05, &don025, &don025, &don1, &ka05, &ka05, &ka05, &ka05, &don05, &don025, &don025, &don1, &ka05, &ka05, &ka1, &don05, &don025, &don025, &don1, &ka05, &ka05, &ka05, &ka05, &don1, &un05, &don025, &don025, &don1, &un1, &don025, &don025, &don025, &don025, &don05, &ka05, &don025, &don025, &don025, &don025, &don05, &ka05, &don025, &don025, &don025, &don025, &don05, &ka05, &ka1, &un1, &don025, &don025, &don025, &don025, &don1, &don025, &don025, &don025, &don025, &don1, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don1, // &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don1, &don025, &don025, &don025, &don025, &don05, &don05, &don1, &un05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &don05, &ka05, &don1, &un1, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &un05, &don05, &ka05, &ka05, &un05, &don05, &ka05, &ka05, &un05, &don075, &don025, &don025, &don025, &don025, &don025, &don05, &don05, &don1 }; Producer* source = new TaikoSource(note_seq, sizeof(note_seq)/sizeof(note*), 119.9); */ button_t menu_bs[] = { /* START, START, START, START, START, START, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, LEFT, LEFT, LEFT, LEFT, LEFT, LEFT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, */ CIRCLE, CIRCLE, }; Producer* menu = new OnetimeSource(menu_bs, sizeof(menu_bs) / sizeof(button_t)); // Koibumi2000 note* note_seq[] = { &un1, &un1, &un1, &un1, &un1, &un1, &un05, &dondai05, &un1, &don05, &don05, &un1, &un1, &un1, &un1, &un1, &un1, &un1, &don05, &don05, &un1, &un1, &un1, &dondai1, &un1, &dondai1, &un1, // &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &don05, &ka05, &ka05, &don05, &don05, &ka1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don1, &don05, &don05, &ka05, &ka05, &don05, &don05, &ka1, // &dondai1, &un1, &don025, &don025, &don025, &don025, &don1, // // &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &don05, &ka05, &ka05, &don05, &don05, &ka1, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &kadai05, &un1, // &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &kadai05, &kadai05, &kadai05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don025, &don025, &don025, &don025, &don1, // &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &dondai1, &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &dondai1, &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &kadai1, &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &kadai1, &don025, &don025, &don05, &un05, &ka025, &ka025, &ka05, &un05, &dondai1, &don025, &don025, &don05, &un05, &ka025, &ka025, &ka05, &un05, &dondai1, &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &kadai1, &don025, &don025, &don05, &un05, &don025, &don025, &don05, &un05, &kadai1, // &don05, &don05, &don1, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don1, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don1, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don05, &don05, &don025, &don025, &don05, &don05, &don05, &ka05, &don05, &ka05, &don05, &don025, &don025, &don05, &don05, &don05, &ka05, &don05, &ka05, &don05, &don025, &don025, &don05, &don05, &don05, &ka05, &don05, &ka05, &don05, &don025, &don025, &don05, &ka05, &don05, &don025, &don025, &don05, &ka05, &don05, &ka025, &ka025, &ka05, &ka05, // &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don025, &don025, &don05, &don05, &don025, &don025, &don025, &don025,&don05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don05, &dondai1, // irregular time &don05, &don1, &don1, &don1, &don05, &un05, &don05, &don05, &don05, &don1, &don05, &don05, &un05, &don1, &don1, &don1, &don05, &don05, &don05, &don1, // ? &don05, &don1, &don1, &don05, &don05, &don05, &un05, &ka025, &ka025, &ka05, &ka025, &ka025, &ka1, &don05, &don05, &un05, &don1, &don05, &don05, &don05, &un05, &ka025, &ka025, &ka05, &ka025, &ka025, &ka05, &un05, &don05, &don025, &don025, &don05, &don1, &don1, &ka025, &ka025, &ka05, &ka025, &ka025, &ka05, &don025, &don025, &don1, &don05, &don1, &don1, &don1, &ka025, &ka025, &ka05, &ka025, &ka025, &ka05, &don05, &don05, &don05, // normal time &don1, &ka1, &don1, &ka1, &don05, &don05, &ka05, &ka05, &don05, &don05, &ka1, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don1, &un1, &un05, &don025, &don025, &don05, &don05, &don1, &ka1, &don1, &ka1, &don05, &don05, &ka05, &ka05, &don05, &don05, &ka1, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don05, &don05, &don05, &don05, &don1, &ka1, &don1, &ka1, &dondai1, &kadai1, &dondai1, &kadai1, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka025, &ka025, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka025, &ka025, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka025, &ka025, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &renda2, &un05, &don025, &don025, &don1, // switch (tatsujin) &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &ka05, &don05, &kadai05, &un05, &kadai05, // &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don05, &don025, &don025, &don05, &don05, &don05, &don05, &don05, &don05, &don05, &don05, &don05, &don05, &don025, &don025, &don025, &don025, &don05, // &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don05, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka025, &ka025, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka025, &ka025, &don025, &don025, &don05, &ka05, &ka05, &don025, &don025, &don025, &don025, &don05, &ka05, // &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &don025, &don025, &ka025, &ka025, &ka05, &don025, &don025, &ka025, &ka025, &don025, &don025, &ka025, &ka025, &don025, &don025, &ka025, &ka025, &don025, &don025, &ka025, &ka025, &don05, &don05, &don05, &don05, &don025, &don025, &don025, &don025, &don025, &don025, &don05, // irregular time &don05, &don05, &un05, &don05, &un05, &don05, &un05, &don05, &un05, &don05, &don05, &don05, &don1, &don05, &don05, &un05, &don05, &un05, &don05, &un05, &don05, &un05, &don05, &don05, &don05, &don1, // last &dondai05, &dondai05 }; Producer* taiko = new TaikoSource(note_seq, sizeof(note_seq)/sizeof(note*), 200); Producer* delayed = new DelayFlow(taiko, 9.0827); // 3.49 Producer* src_seq[] = { menu, delayed }; Producer* source = new SequentialFlow(src_seq, 2); FLL fll(source); fll.run(); }