Mod Archive Forums

Music Production => NitroTracker => Tracking => NitroTracker Community => Topic started by: zukero on November 30, 2011, 00:44:14

Title: Creating a bliptracker-like fork of nitrotracker
Post by: zukero on November 30, 2011, 00:44:14
Hi everyone, and a big and warm thank you to all the people who made nitrotracker possible !

I've been playing with it and other DS music homebrews for a while, but not really as intended... Nitrotracker has been my band's drummer for a while  ;D
We lack drums and drummer, so I took out my cheap ol' DS, loaded samples of drum elements recorded from real drums available on the web, and wrote the whole songs' drum tabs in Nitrotracker. It worked really well, even in a live show, with the little DS plugged in the professionnal amplification system, and sounded great.
But, (sadly, there's a but), it has a few drawbacks : we need to play exactly the song, we can't "ask" the drummer to replay specific parts without me dropping the bass, etc...
Now, i've aquired a music looper (think jamman), and would like to use my DS to create my drum loops "live".
I really love what I can do with bliptracker, but it's unmaintained now, and kind of limited in terms of samples compatibility.

My idea, was to "reuse" some portions of nitrotracker to write my own DS drummachine.
Below is a list of the features I'd like to include.
- Use touchscreen to display 8 pads (simple color squares will do :) ).
- Touching a pad plays the associated sample
- Holding a pad plays the associated sample in "loop" mode (more on that below)
- Touching a pad while holding A will open a file selection menu to select the sample's wave file
- Touching a pad while holding B will open the sample editor from nitrotracker, to edit pitch, envelope, "loop" mode, etc...

What I call loop mode (not sure of the FT2 tracker vocabulary on this matter) is defining two markers (A and B) at some points in a sample, so that the loop spectrum shows Start->A->B->End. Then, the following scenario occurs:
1 When the pad is pressed, start playing the sample from start.
2 When sample playback reaches point B, check if pad is still pressed.
3 If so, play the A->B portions of the sample.
4 Go back to 2.
4 If not, play the B->End portion of the sample.
I hope I'm clear.

As background info on me, I am a professional developer/architect, with a mainly Java background, good knowledge of Bash/Shell scripting, a few experiences in Python, have played a little with C/C++, and wrote a very simple devkitPro demo app a few years ago (meaning I know what DLDI means, how the DS hardware is done, etc...).

I'd like to know if you think my project is feasible, how hard it could get, and how much of the nitrotracker code could be reused. Any comments, advices, cheering up, or insults, are welcome !

Thank you for reading the rather large chunk of text !