int main(int argc, char* argv[]) { consoleDemoInit(); InstallSoundSys(); iprintf("\n\n\tSSEQ player PoC v1\n"); iprintf("\tfincs.drunkencoders.com\n"); iprintf("\tgithub.com/fincs"); if (argc < 4) { if (!nitroFSInit()) { error("Can't initialize NitroFS!"); anykey(); return 0; } if (defaultLoad(&g_sseqData, &g_sbnkData, g_swarData) != 0) { anykey(); return 0; } }else { if (!fatInitDefault()) { error("Can't initialize FAT!"); anykey(); return 0; } if (argvLoad(argc-1, argv+1, &g_sseqData, &g_sbnkData, g_swarData) != 0) { anykey(); return 0; } } PlaySeq(g_sseqData, g_sbnkData, g_swarData); for(;;) { swiWaitForVBlank(); scanKeys(); if (keysDown() & KEY_START) break; if (keysDown() & KEY_B) StopSeq(); } return 0; }
int main( int argc, char *argv[]) { char c; TSequencer mySequencer; OpenSeq(&mySequencer, argv[1]); printf ( "\nmsMidiPlayer <midifile> \n\n"); printf ( "msMidiPlayer plays a MIDIfile\n\n"); printf ( "Use p or P to start playing\n"); printf ( "Use s or S to stop playing\n"); printf ( "Use l or L to start playing and loop\n"); printf ( "Use q or Q to quit the application\n\n"); while ((c = getchar()) && c != 'q' && c != 'Q') switch (c) { case 'P': case 'p': PlaySeq(&mySequencer); break; case 'S': case 's': StopSeq(&mySequencer); break; case 'L': case 'l': PlayLoop(&mySequencer); break; } CloseSeq(&mySequencer); }
MSALARMAPI void LoopTask (long date, short r, TSequencer * s, long dur, long unused) { PlaySeq(s); s->looptask = MidiTask((TaskPtr)LoopTask, date+dur, r, (long)s, dur, 0); }