Page 1 of 1

Nesmaker music limitations

Posted: Sun Dec 02, 2018 7:56 pm
by Redherring32
What are the exact limits to what music can be used by Nesmaker?
Like, how many instruments, and which ones.

Also how long/ how many channels?

Re: Nesmaker music limitations

Posted: Mon Dec 03, 2018 8:35 pm
by chronosv2
Instruments are custom patterns for the 4 channel types we can use in NESMaker. I've heard there's a hard limit of 64 instruments without some ASM trickery.

You can use the Square1, Square2, Triangle and Noise channels. DPCM is not usable because it can interfere with things like controller reads.

As for the song size, the current importer can only import 640 notes (or patterns 00-09 in FamiTracker).

You cannot use FamiTracker's Effects columns with NESMaker/GGSound either. Those are not supported.

Re: Nesmaker music limitations

Posted: Mon Dec 03, 2018 9:30 pm
by Redherring32
Thanks Chronos that's a huge help!

Re: Nesmaker music limitations

Posted: Tue Dec 04, 2018 5:39 am
by chronosv2
Glad to help!
Some of this I knew from my own experience, but gotta' give credit where it's due -- some of the limitations (like the note limit) I had to look up from viewtopic.php?f=4&t=219 and I recall the instrument limit from Facebook.

Re: Nesmaker music limitations

Posted: Wed Dec 05, 2018 3:03 pm
by cargo
NESMaker's music system is not very friendly at this point, but it still follows the NES hardware and Famitracker quirks.
In practical terms (from a user's perspective):

+ Your song has two tracks for melody, one for bass, and two (noise and DPCM) for effects and percussion sounds.
+ Your tracks are monophonic (single note).
+ You can only use 2A03-type instruments.
+ NESMaker appears to have trouble with noise channels. At least for now forget about using DPCM. If you want percussion focus on the noise channel (and then again it might not sound correctly). Listen to games like Acclaim's WWF Wrestlemania or Cobra Triangle to get an idea of what to expect more or less.
+ The effects channels are not only for, erm, effects. Famitracker has a few useful commands for manipulating volume, change speed, making triplets, stop a song from repeating, and skipping frame gaps, etc. With this in mind:
+ Since NESMaker ignores effects commands, you can't do triplets. The following video shows how a song I was working on sounds with triplets, then how it sounds on a compiled NESMaker game:

+ Again because of lack of effects you can't skip to the next frame (Famitracker term for a block of music data). This will become painfully obvious to anyone who, if their song doesn't completely fill the last frame, will have an empty space of silence at every loop.
+ Same goes for changing speed during playback. NESMaker can't do that currently.
+ Unlike in MIDI sequencing, trackers don't track when a note is released. If your instrument has no delay then it will play indefinitely. A group of consecutive same notes will sound like one long note. You'll have to issue a note cut command (default is "1" on the keyboard) or use an instrument that fakes a note release. Take a look at "Off We Go!" for an example of this.
+ NESMaker's import feature is very broken. Even if you follow all the strict (and obscure) guidelines in the previously mentioned thread the chances of NESMaker rejecting your Famitracker text file are still pretty good.

The best advice I can give is to make a copy of the platform or adventure famitracker text file found in the beta assets folder in NESMaker and use that as a template for Famitracker.

It will get you started with a file you already know NESMaker accepts and a set of pre-built instruments ready to go. Of course there's no guarantee your modifications will get rejected but it will increase your chances of success. Import the text file to Famitracker by selecting "File->Import text" from the menu.

+ If you have means get a USB MIDI keyboard.
+ Still have your old Rock Band keyboard or have a music keyboard with MIDI outputs but no USB port? Then get yourself a MIDI to USB adapter. Make sure the description for the adapter explicitly says Windows 10 is supported! Personally I prefer the MIDISPORT product series from M-Audio, but there are many options out there.
+ If you are stuck with a computer keyboard then use this as a guide. (credit: Ben Burne's blog)


+ The guy who made this picture also did a video and written Famitracker tutorial.
+ F7 to resume playing from the spot the tracker is pointing at.
+ Learn to read Famitracker's data format: Note-Octave-Instrument ID (in hex)-effect values...
+ To append a new song: Go to "Module->Properties" then hit the "Add" or "Import file" button.
+ As mentioned elsewhere don't use spaces or fancy characters in your song and instrument names.
+ Use menu command "Edit->Clean up->Remove unused instruments" to clear the clutter once you are done.
+ Select a whole track: double click on the track or press CTRL+A. Do it again to select the whole frame.
+ Make your life easier by changing the "Stop / Play" keyboard shortcut to Space and the "Edit enable/disable" to "Enter" at the File->Configuration window.
+ Explore the right click pop up menu. You can quickly change an instrument and transpose notes (among other things).
+ Learn to use Framtracker's "Follow Mode". There's a button for it at the menu toolbar but you can also toggle it with the Scroll Lock key.
+ Want follow mode to count quarter notes? Change step value under "Edit settings" on the interface to 4. Use 2 for eights. Use 1 for sixteens.
+ Follow mode stops working when using a midi keyboard? If the follow mode toggle doesn't solve it then uncheck "Receive Tick Syncs" at menu "File->Configuration->MIDI" window. Also check if there is an instrument selected and if said instrument produces sound.

Re: Nesmaker music limitations

Posted: Wed Dec 05, 2018 7:52 pm
by Redherring32
Thanks for the answers guys!
I wasn't sure what the limitations were, but you guys cleared things up!!! :)

Re: Nesmaker music limitations

Posted: Wed Dec 19, 2018 5:58 pm
by lewisb42
Something hopefully useful I just found: NESmaker apparently doesn't like it if your instruments (as listed in Famitracker) start at a number other than 00. (I.e., if instruments have been deleted). I only had instruments 05 and 06 and it would import, but crash NESmaker if I tried to click on the song.

As an attempt at fixing this I just copy/pasted some valid instruments (from the Adventure Module songs) into the empty slots (00-04), but that didn't work. I had to renumber by hand (e.g., 05 -> 00, 06 -> 01; fortunately it was a short test song).