asiekierka / nitrotracker Goto Github PK
View Code? Open in Web Editor NEWThis project forked from 0xtob/nitrotracker
A Fasttracker II style tracker for the Nintendo DS
This project forked from 0xtob/nitrotracker
A Fasttracker II style tracker for the Nintendo DS
NitrousTracker v0.4.10 -------------------------------- original by 0xtob ^ 0x80 modifications by asie & co. -- About NitrousTracker is a fork of NitroTracker, a FastTracker II style tracker for the Nintendo DS originally created by 0xtob. If you didn't understand that, you might want to read up on trackers. For starters, NitrousTracker is a versatile tool for creating music - everywhere! It supports the popular XM file format that is used by many PC trackers and that can be played on many PC audio players such as Winamp or XMMS. -- Installation Copy NitrousTracker and some music and samples to any folder of your memory card and start tracking! -- Community Forum: http://modarchive.org/forums/index.php?board=79.0 -- I want *you* for NitrousTracker! What you can do: Find bugs and request features! Bug reports and feature requests are collected here: https://github.com/asiekierka/nitrotracker/issues If you have something that isn't already on that list, feel free to add it. Keep in mind that many reported requests remain preserved on the old issue tracker, now at: https://github.com/0xtob/nitrotracker/issues Become a NitrousTracker developer! The source and all the info on how to get started is here: https://github.com/asiekierka/nitrotracker If you want to contribute a pull request, go right ahead! -- Contact Get in touch with other NitrousTracker users in the official The NitroTracker Forum (see above). -- Thanks Big thanks to 0xtob for the work on NitroTracker and for making it available under a free software license. I'd also like to thank reinvdwoerd for their original work and ideas regarding improving NitroTracker, started shortly prior to my own work! AntonioND's BlocksDS toolchain has allowed incorporating many long put off backend improvements. It builds on the work of many giants, including the dozens of contributors to devkitPro-maintained libraries comprising the devkitARM toolchain, who should also be thanked and acknowledged. 0xtob originally thanked: There is quite a bunch of people that made the development of this project possible or easier. First of all, a huge thank you to the NitroTracker beta testers, for providing tons of ideas and helping me find even the most obscure bugs: alienspurm, andars, atomtwist, Biiaru, chrislody, grobsen, Ignatzthemouse, infradead, Jono-60, license, lotlemmwax, nitro2k01, nonfinite, parkstenator, reSet, Shagbat, silent_code, spielor, totoee, Vengeful Parasite, willgripp NitroTracker is built on the hard work of a lot of people who work on DS homebrew mostly in their spare time. This list is by nomeans comprehensive, so please don't sue me if you are missing your name here :-) * joat, dovoto and WinterMute for libnds and devkitPro * chishm for the universal FAT library * sgstair for the incredible wifi lib * Headspin for the great on-screen typewriter design * doublec for his ds development tutorials that got me started with DS coding * Martin Korth for the incredible gbatek reference and the no$gba emulator * My friends in #dsdev for patiently answering my questions * starpause for providing the samples used in the tutorial * Michael Krause for the open source SoundTracker, that was a great help with the XM format * Last but not least: Vogue and Mr.H of Triton for Fasttracker II, the tracker that NitroTracker was designed after.
A simple track Timer/Clock
It would be nice to know how much time has passed since the track has started playing.
another type of instrument envelope that controls panning
A simple "Draw waveform" feature
Would be nice. Right now I just make a noise in the microphone and try to go from there. But being able to make a simple saw or sine wave (or draw my own entirely) would be very neat.
Long story short, NitroTracker has replaced my laptop/computer for live performances. I've used it to to perform in front of sold out theaters, seedy goth bars, and at Blip Festival for the last decade. I've battle tested NitroTracker in the wild and thought I'd give my two cents in hopes of seeing the features I would love to see.
In order of "this would be awesome to have":
LOCK PATTERN > JUMP TO PATTERN
So when I'm playing my songs live, sometimes I want to jump to other parts of the song that are not in the order of the .XM. Usually, I tap the track at the very moment the last pattern is about to end. This sort of works but I've messed it up a few times haha. A simple "LOCK" button (like in the KORG DS-10 pattern mode" would be awesome.
A simple track Timer/Clock
It would be nice to know how much time has passed since the track has started playing.
A simple "Draw waveform" feature
Would be nice. Right now I just make a noise in the microphone and try to go from there. But being able to make a simple saw or sine wave (or draw my own entirely) would be very neat.
"Oops not enough memory"
I've learned to use this as down time to talk to the crowd, but if there was some way to clear the memory or something better so that I can load the song? Usually I just restart the thing (when the DS ding hits over the load speakers it always gets a laugh from people so it's not so bad).
Delete songs/Samples from card
Makes it easier for me to organize my files before a show if I'm on a plane or bus to the destination. Sure, use a laptop and an SD card adapter, but it would be desired to do this from inside NitroTracker. Not a big priority though.
Nibbles (like in FT2)
Just joking (but it would be cool, sometimes it's boring letting your songs play out. It would be nice to have something to do so it looks like im working haha)
Because of the cost and availability of the Old Nintendo DS, I really believe this will be a huge part of the live electronic music scene in the future. I hope that going forward features will remain compatible to some degree on the original DS. If I'm drunk as a skunk jumping into the crowd during a live show, I don't have to worry because I know I can replace the DS for $40. There is so much upside and value that NitroTracker brings to me as a live electronic artist that I just want to put my 2 cents here since it seems to be back in development. I'm fine with the 2 meg limits, it really forces me to be more creative. I've written a sox script to convert my samples to mono, 32k and the sound is so crunchy and Amiga like that I absolutely love it.
Japanese DSi running off internal SD CARD, launching via Nocash Ulaunch (mapped to boot up hot hotkey).
Happens all the time for me in almost all scenarios.
https://user-images.githubusercontent.com/1032331/227414722-45334fba-88cd-4308-9356-27ff91e08730.mp4
pressing and holding clr while playing should delete notes as they come.
There should be added a write buffer to the XM saving routine so you can save uncorrupted XMs regardless of whether or not your driver can write unaligned.
Another great feature to have would be the ability to "live loop". What I mean by that is queuing up the next pattern to be played. Right now I've been doing it by ear (in loud clubs lol) and it works but ... it would be a lot more reliable if it would only jump to the next pattern when the currently played pattern is finished. A simple "LIVE LOOP" toggle button (or "queue pattern" ... name doesn't matter to me whatever make sense) that knows "only play the next "queued" pattern when the current one is finished playing". I use this for cheap remixing on the fly.
Here is a primitive mock up of the idea:
The pattern highlighted in purple would be in line to be played (when the current one stops playing). Old instant pattern jumping should still be available, hence the toggle button. Renoise implements this pretty good if you are looking for ideas on that one.
Thanks!
how about a Trim function in the sample editing section
Ability to undo/redo actions (note values, sample editing etc.)
Problem possibly only with that particular sample.
Not a huge deal (you can see this is my current work around) but I thought I would report it anyway. Beautiful feature, being able to draw wave forms is seriously next level, I am grateful. Thank you. (See video for example)
https://user-images.githubusercontent.com/1032331/227416406-115d241b-f02b-49c5-9dde-99bc07ed5ee4.mp4
When I press and hold clr-button it should start scrolling down, clearing the notes as it descends.
make use of the DS's PSG for the original Game Boy sound.
Delete songs/Samples from card
Makes it easier for me to organize my files before a show if I'm on a plane or bus to the destination. Sure, use a laptop and an SD card adapter, but it would be desired to do this from inside NitroTracker. Not a big priority though.
In honor of Triton teams flagship DOS tracker FASTTRACKER 2, I think Nitrotracker 2 would fit because like with fastracker 2 the cool kids can just say "NT2" heh. It sounds good and all the OGs will love it I feel lol.
https://www.youtube.com/watch?v=BLMUfBikxTY
"Oops not enough memory"
I've learned to use this as down time to talk to the crowd, but if there was some way to clear the memory or something better so that I can load the song? Usually I just restart the thing (when the DS ding hits over the load speakers it always gets a laugh from people so it's not so bad).
Is it possible to get a docker file for this so it's easier for contributors to get up and running? I've always had weird lib issue with devkit pro in the past, since you were able to get the whole thing working, maybe it would be a good idea so others can help you out
Effects are missing from the GUI.
It would be cool if this could support BPM swing/speed timing.
Hi, me again.
It would be cool to be able to have a feature to create new folders. Right now I'm preparing for a show and I need to take songs that I will remix into a new folder. Instead of taking my sd card out and doing all that on my PC it would only take a second to make a new folder from the menu.
Can't seem to "Save As" files. File names also have question marks as seen in the video. If I move to the parent folder I am able to save the new file.
https://user-images.githubusercontent.com/1032331/227415293-73a261bf-5adc-431c-aebb-9b23ac63c132.mp4
Would it be possible to have an undo button to reverse the last action? In cases where we do something like accidentally cut off too much of a sample, etc.
if you tune a sample to a value smaller than -99 the text will break out of the textbox
Overall, it was great. With OG NT loading songs would give the DOH! error. Did not get that last night thankfully. I did run into some weird behavior though that might be hard to reproduce.
First of all, I dunno what happened, but it just STOPPED at some point. Both screens went black, I picked it up, it went back to normal, and then went black again. No sure if it's mechanical failure of the DS or what. It's in pretty good shape, almost brand new condition so I dunno. I'll try to reproduce it but I'm not sure what happened. The video shows that moment.
HOWEVER, it's a lot easier to recover from that than when OG NT used to crash, holy jeez don't even get me started.
The second issue was when I was working on files on the train to Toronto from Montreal. Songs would get stuck in the SAVING prompt. After rebooting the songs were messed up and wouldn't load (looked like a blank file when I popped the card in a computer). Old NT used to do this too so I think this isn't regression (I actually was thinking about if I could set up some sort of selenium type of thing for regression testing lol). The only thing I can think of is I was loading some LONGER wav files (drum loops and a few cheesy voice clips)? Anyway, after several broken attempts I ended up cleaning things up with milkytracker instead which worked great.
Even though this sounds sketchy, I can assure you that OG was way worse live before. The improvements added more stability than subtracted. Having to reboot into an r4, see that boot screen etc was always a vibe lol.
Here's a small video, I'll post the whole thing later but everyone had a blast and the new NT build worked great.
"inverted scroll mode" So i can freely move to a position on the pattern and the time/position-bar scrolls past. This way you can edit easily while looping the pattern .
When you select a sample with sample preview turned on, if you change the display while the sample is still playing, the ram bar appears on top after sample preview has ended. It will disappear if you simply change the page again.
not joking, if you name a song "pingpoopoo" it will crash NT lol. I got different variations of this. When I had some notes in the songs the RAM bar went all green and I got the DOH error modal/popup. So I tried a few more times and if you just save a blank file with that name it RSOD (red screen of death :P) on me. It does the "?" thing to the file name too so maybe the other issue will resolve this one but I thought I'd file a bug report because the other naming issues didn't DOH or RSOD on me. Phone is in the kitchen, I can take a picture/video later if needed.
I've got a bunch of files that I keep appending version names onto while doing my own old school versioning I guess. The problem is that after a period of time passes (years) Im not sure which was what without loading the song because the browser only shows a few characters. It would be cool if when you highlight the file, it can scroll the file name.
Hi,
First off, THANK YOU for improving NitroTracker.
I would like to see a LIVE MIX toggle button. What do I mean by this? Well, because of the output limitation of the DS audio, I've been experimenting with HARD PANNING my tracks so I can add a little spice on the mixer to post frequencies that are lacking. This is fun and all but hard panning a whole song and going back is a pain. It would be cool to be able to set each instrument (and sub instruments) as CHANNEL 1 or CHANNEL 2. So when you click "LIVE MODE" it toggles the hard pans of the instruments. So now you have 2 mono signals that can be put into channels of their own, allowing for better mixing. Why the toggle switch? Because working on a song with headphones, the hard pans aren't fun and setting them back and forth would be easier with this method.
The Nintendo DS has been my LIVE machine for a decade at least, and one thing I hear a lot from people is that the bass is low. I've had some sound techs do wonders on the default stereo output but its clear to me that this mono approach is the way to go.
Thanks!
Sample selection screen has glitching behavior see video below.
https://user-images.githubusercontent.com/1032331/227416087-a9a35325-b18b-4aaf-bb08-9b6a6e17239e.mp4
I know the effects in NT are limited and thats fine, I was wondering though if we can have a few perks that simply use the volume column (which works great out of the box).
Rush up-Rush down: What this would do is if you highlight a block of lets say 8 notes, it would automatically FADE from a start number to and end number. I'm doing this manually a lot for my drums. Desired output would be something like
The inverse would be cool as well (rush up).
Humanize: Super not a priority for me however it's good to have when I'm running hihats in a pattern. Basically a slight randomized variation of volumes to give a more natural sound. Example:
Thanks. I just got around to trying the new features they are great. And I know this might sound mad but I think there is an IMPROVEMENT in the sound, not sure what it is. Can't wait for this to be stable and my main tracker.
Most imported XMs made with other trackers work fine, but those with variable tempo and BPM start to play too fast when speed changes. For example, a song plays at 66BPM then it doubles to 133BPM and at that moment NitroTracker plays it about ten times faster.
how about some simple wave generations,. sin, square, saw, etc, a button under the mic/record one would work,. it would open up a little synth interface,. something like Stomper or what ever you can do easily
The splash screen shows just fine, but once in the program, everything is very dark. Aside this problem, everything within the program runs fine. While in the program, you can bring up the on-screen keyboard, and this runs at the correct backlighting.
Few users have reported this problem, they have used either Ninjapass Evolution or Ninjapass X9 card. No other cards are known to have this problem.
LOCK PATTERN > JUMP TO PATTERN
So when I'm playing my songs live, sometimes I want to jump to other parts of the song that are not in the order of the .XM. Usually, I tap the track at the very moment the last pattern is about to end. This sort of works but I've messed it up a few times haha. A simple "LOCK" button (like in the KORG DS-10 pattern mode" would be awesome.
I had an idea to use two Nintendo DS handheld consoles connected wirelessly to queue up tracks for live shows, which could potentially revolutionize the way people approach music mixing with the DS. The idea involves playing one song while the other DS is ready to start the next track at a specific moment for a seamless transition. Although it may be challenging to maintain real-time syncing, a simple command could be used to start playing the second song when the first song reaches a certain point. While the traditional method can be used for now, this new approach has the potential to elevate the DS MUSIC GENRE to the next level.
DSi RAM, also mentioned by 0xtob/#18, is supported as of 0.4.1-unofficial.
However, some data (like the undo/redo buffer), could be plausibly stored on a Slot-2 RAM expansion. Unfortunately, I don't have the hardware to test at this time...
would make copying complex instruments between songs possible
If it isn't too difficult, I would love to have a MONO toggle for the main output. I mentioned how I hardpan elements of a song for live to maximize the potential of the DS using outboard gear before and I think this would actually be a simpler work around. Once I get a "live" version configured with the various hard pans, and unplug the DS from my studio set up, working on it in portable is a challenge since things are in a hard panned setting.
I know this is totally MY fault but as I see people in the future using the DS ironically to make banger albums it is certain they will run into this issue.
Here is an example of a "LIVE" setup, (it had) a KAOSS PAD on one channel and the second channel is passing SYNC (made with the lovely new WAVEFORM DRAW function THANK YOU. Before it took a few tries using the microphone and various tricks to get a good one going out of the box) to a TD3. If I'm on my way to the show (usually on a bus, train, airplane, metro subway system etc) doing last minute changes it would be easier for me. My work around right now is to have the headphone be pulled out in a weird unreliable way to blend the sounds. Anyway, I thought I would document the idea.
https://user-images.githubusercontent.com/1032331/227424718-d72a95ca-2fbf-43da-b45e-c724748c8412.mp4
... is impossible and should be added
If I try to rip some samples from a file, they appear as "clicking" noises in the file preview window. If I load them they are usually fine. See video for how to reproduce the bug.
https://user-images.githubusercontent.com/1032331/227417659-bddc74e4-e833-4715-b008-cd01e6432861.mp4
Envelopes need a sustain point. When a note is triggered the envelope is "playd back" until this point. On a note off, the envelope playback continues.
If the first character in a folder name is a special character, like an exclamation mark (which I often use to keep certain folders at the top of alphabetized lists), it will appear above the [..] link.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.