Some Suggestions

Renoise seems to be an excellent tracker. I like how it contains both undo and redo functions and I don’t think that I have found anything yet that cannot be both undone and redone. I have been using ModPlug Tracker for almost a decade now and few things can be undone and it does not contain a redo function whatsoever. I think that I could transition to using Renoise on a regular basis, but there are some problems. See my suggestion list below.

  1. Bulk du;ication (cloning): It would be great to be able to duplicae (clone) the following items in bulk: patterns, tracks, and groups
  2. Rearranging patterns: It would be great to be able to rearrange the sequence beginning patterns at one rather than zero.
  3. Quantities: It would be great for the quantities of patterns and rows to be increased. If the sample and instrument quantities are two hundred and fifty and six (256) or lower, then it would be great for those to be increased as well. My recommended number is at least ten and six million and seven hundred and seventy and seven thousand and two hundred and ten and six (16,777,216). I do muiscal arranging in the following manner: I take a song of p patterns and a song of q patterns and combine them. To do this, I use the least common multiple of p and q. An example is a song that consists of seven hundred and one (701) patterns and a song that consists of eight hundred and twenty and three (823) patterns. The least common multiple of these is numbers is five hundred and seventy and six thousand and nine hundred and twenty and three (576,923) (701 × 823). As you can probably imagine based on that, surpassing one million does not take much. It doesn’t take much indeed. Surpassing ten and six million and seven hundred and seventy and seven thousand and two hundred and ten and six (16,777,216) takes more work.
  4. Commas: It would be great to see commas for numbers containing four or more digits for the following items: patterns, tracks, groups, rows, samples, instruments, and hours (assuming that is the highest increment for play time).
  5. Keyboard shortcuts: I noticed that some keyboard shortcuts do not repeat upon holding the key or keys. It would be great if they did repeat upon holding the key or keys. The main ones that I have used are Control + T (insert track), Control + Shift + T (delete track), Control + G (insert group), and Control + Shift + G (delete group), but there may be others that behave in this way. It would also be great to have a shortcut for navigating to the beginning of the first track, to the end of the last track, to the beginning of the document (row 1, track 1, column 1) and to the end of the document (row r (where r is the quantity of rows in the document), track t (where t is the number of tracks in the document), column c (where c is the number of columns in the last track)
  6. Overflow pasting: I noticed something about paste continuously. Does this mean that data is pasted beyond the last row of a pattern? If it does, that is excellent and do keep the feature! If it doesn’t, then I will suggest that a feature be implemented that allows data to be pasted beyond the last row of a pattern. As an example, if I copy data from eight patterns (five hundred and ten and two (512) rows), I would like to see data on all rows that contain data in the eight patterns that it is pasted in (counting the initial pattern) (example: paste data into pattern 1, it is pasted into pattern 1-8).
  7. Pattern rearranging: It would be great to be able to rearrange patterns so that they start from one rather than zero (or that patterns started from one rather than zero, and then no rearranging would be needed).
  8. Beats: It would be great if rows started from one rather than zero. These are, unless I am mistaken, the equivalent to beats in a song. When someone counts beats, he/she usually starts counting from one, not zero (one two three four five six seven eight…). Starting at zero seems odd. The metronome effect is neat though.
  9. It would be great to have a go to function—i.e., go to: pattern, row, track, group, etcetera. This would be extremely beneficial if the above quantities are implemented. It would be extremely tedious to have to scroll down about ten thousand patterns (example) before pasting again. It would be must quicker to be able to paste into pattern 1 and then simply go to, for example, pattern 10,001 (hmmm, a palindrome, neat) (with or without the comma for input, but using the comma for display) and then paste again.
    If these features are implemented, then:
  10. The GUI will likely need to be modified slightly (although, with the ability to change tracks’ width, maybe it wouldn’t (at least, not as much as I am thinking)).
  11. Renoise would seem worth keeping and purchasing a copy of (although, it would definitely take some getting used to) (I have not found the sample and instrument editors yet.) In its current state, it does not help me. The pattern and row quantities are the largest hindrances. The fact that Renoise is available as a native 64-bit application and that it takes full advantage of multi-threaded CPUs is excellent. This would be especially true if it doesn’t do what ModPlug Tracker sometimes does. When idled for a period of time (that I don’t know exactly), ModPlug Tracker will terminate and any unsaved data is lost. I initially thought that it might have had something to do with modifications that I had made to the code, but my brother has an unmodified release version of the application and it happened to him as well. Based on that, I am thinking that it is likely caused by a bug.
    I don’t feel that the intent is to be selfish, although, because I am probably the only person or one of few people who does what I do, the post may seem selfish.
    I am looking forward to getting great use out of Renoise, but, as I stated earlier in the post, in its current state, it doesn’t help me.

1 - regarding bulk cloning of patterns, simply select more patterns in the sequencer and then clone the selection. For the other options, Lua scripting is a keyfeature that can open doors for you here. (reading that you seem to have no problem messing around with Modplug source, diving into Lua scripting should be no problem either)
2 - rightclick and uncheck the “Keep pattern sequence sorted” in the sequencer context menu, then start numbering your patterns manually or simply don’t use and remove pattern 0.
3 - I can understand why you want some limits raised, I just don’t understand why you need that high figures. you explain, but then again, you don’t say much than submitting some equations but without giving any comprehensible logic behind that.
4 - comma’s? instead of the dots when empty?
5 - Lua API also supports keyboard handling treating repeat keys and you can add routines to decide what to do when keys are triggered in a repeat state. You can in there duplicate certain facilities and allow the keyrepeat action to control the situation as desired, though as a native situation i can empathize for the fact that some keyshortcuts could also allow keyrepeat, but not all.
6 - Overflow pasting is terribly hard to create, these are the things to include in for this to make it work perfect, depending on whether the selection is or is not an even block of data:
Monitor whether any of the tracks in the selected area where the paste is applied to is aliassed and not aliassed: If one or more tracks are aliased, it has no use to overwrite their contents in the next pattern since it will overwrite what is already pasted into the current pattern.
Monitoring if subsequent pattern numbers are repeated or not (It has no use to repeat if the next pattern in the sequence has the exact same number, this is possible if you disable the automatic pattern sorting)
A combination of the above.
7 - You already asked that in point 2.
8 - Starting at zero may seem odd, it is an old inheritage from the old tracker days and a lot of stuff depend on this offset (including effect commands)

Though some ideas come with logic, quite a few are personal taste. Modplug may offer you a benefit to set things to your hands, in basic, Modplug doesn’t come with much different strategy that Renoise is coming with, yet Renoise still offers a lot more features and functionality.
Renoise may not be open source, but with the Scripting API, you still have some things at which you may be able to set some personal stuff to your hand, be it that you can’t exactly raise limits, you could create routines that calculate an amount of patterns that you would need to get an x-amount of rows available: with 512 lines per pattern, that would allow you 512000 rows to fill, if you would use each note-column as a subsequent position when using the delay values in the delay-column, you could increase that amount 12 times allowing you to trigger 6144000 subsequent note positions per track in total. Still i don’t understand why you would need millions of triggerpoints.


  1. Bulk duplication: It seems, based on that, that Renoise does offer bulk duplication of patterns. Tracks though—not that I have found
    In regard to scripting, I am not sure how easy I would find it. What I do when I modify ModPlug Tracker’s code is change numbers. That is the extent. The highest number of patterns that I have gotten it to create for a standard song is one million and seven hundred and ninety and four thousand and five hundred and sixty (1,794,560). The program’s arrays that control patterns and orders are insufficient to hold more than that apparently and even that causes the program to run out of memory. Using one channel and no samples or instruments, I have gotten it to create over two million patterns, but I have not gotten it to go past the two millions though.
  2. Rearanging patterns: Thanks for the tip.
  3. Quantities: One thousand patterns is insufficient for what I do. I suggested ten and six million and seven hundred and seventy and seven thousand and two hundred and ten and six (16,777,216) because that would be unlikely surpassed. If that number is used for both patterns and rows, the total pattern count for the sequence is four trillion and three hundred and ninety and eight billion and forty and six million and five hundred and ten and one thousand and one hundred and four (4,398,046,511,104). Many of my combinations (which usually consist of two songs) do not surpass ten and six million and seven hundred and seventy and seven thousand and two hundred and ten and six patterns (16,777,216). My highest one thus far is ten and three million and four hundred and ninety and five thousand and one hundred and seventy and eight (13,495,178) patterns in length.
  4. Commas: This is referring to numeric values, not the pattern grid itself. The dots representing an absense of something is fine. What I am referring to is the numbers themselves. For example, instead of track 1000, use track 1,000. By the way, what is the limit for those? It seems to be between four thousand and ninety and seven (4,097) and infinity (∞).
  5. Keyboard shortcuts: I am not sure how easy the scripting would be for me. I have looked at and attempted some scripting in the past, but it often involves coding. As I stated in the previous post, I find that challenging.
  6. Overflow pasting: I suppose that you do have a valid point. Because of Renoise’s flexibility in the sense of multiple notes and/or effects per track (equivalent to ModPlug Tracker’s channels) and grouping tracks, and other aspects, overflow pasting probably would be extremely challenging to effectively implement. I do know that ModPlug Tracker uses it, although, as you probably know, since these trackers are like arch rivals, it is not nearly as sophisticated (at least, not yet) as Renoise. To be honest, I think that the only way for ModPlug Tracker to become as sophisticated as Renoise would be if the development team for ModPlug Tracker increased or the development for Renoise temporarily ceased. The ceasing of Renoise’s development seems silly. I suppose that, even if the pattern limit was increased, without this,
  7. Pattern rearranging: You are correct about this already being mentioned—oops.
  8. Beats: I am aware that hexadecimal starts at zero; I am unaware of a sytem other than bijective base-26 (base-26 without a zero) that doesn’t start at zero; however, unless you are not wishing to modify the pattern editor (primarily) to accomidate for an extra digit, then I am not sure why the zero could be eliminated.
    Also, can samples be mapped to certain notes within instruments? If so, what is the limit for samples? I know that ModPlug Tracker’s is three thousand and nine hundred and ninety and nine (3,999). If the features seem to difficult to implement or you simply do not wish to implement them, then it is not a problem. It simply means that I won’t use Renoise for song creation since its current coding is insufficient for what I use ModPlug Tracker for. Also, as I stated earlier in the post, without the overflow paste (unless the paste continuously pastes data beyond the last row of a pattern), then making some of the combinations that I do would be extremely tedious.

Renoise has some hard-coded limits that are much lower than what you seem to need. I’m trying to understand what kind of musical arranging would need several million patterns. Would you mind describing what you do, or maybe what kind of music you create, and how is this massive amount of patterns vital to it?

don’t feed the troll

Raising the limits on the sample number in an instrument would actually make sense.

For example, if one has a piano with six octaves sampled with four volume layers (even without the note-off layer) one already goes above 256 sample limit, while in fact I have two sampled pianos, one with 320 something samples (which is not huge really), and another one with 16 volume layers and with excess of 600 samples.

I really wouldn’t have enough memory on my computer to run the latter properly, but it is just to show that exceeding the sample number limit is not impossible at all, since the multiple layers have been introduced.

Aren’t we all.

Here is Bookworm’s first post on the forum:

Check the next couple of pages in that thread to see more of what he’s talking about.

Whether you’ll actually understand it or not is another matter entirely.

The figures you’re talking about are simply impractical to work with. It’s quite possible that will we extend certain limitations in the future, especially for things like instruments and samples, but it’s really quite ridiculous to expect such huge limits elsewhere. Millions and billions of patterns simply isn’t going to happen (Not to mention the terabytes of RAM you’d probably need to even handle such a thing).

Do you actually have any working song files you’ve created using this technique? Anything on a slightly smaller scale that you’ve made with ModPlug, for example? Do you have an example file you could share with us, so that we can hear and understand your concept more easily? Or is this all just number theories in your mind so far?

I’ve read your other posts, and I do roughly understand what you’re trying to do by combining the songs, what your general concept is, etc. What I don’t understand is why you want to do it this way, because it seems so incredibly impractical and awkward to me. You haven’t given us any real details or explanation to understand why it must be this way.

The only bit of friendly advice I can give you is that there’s probably a much, much easier way to achieve the same result.

For example, you could simply render Song A and Song B to .WAV, and then play both .WAV files on loop simultaneously. The overall effect would be that they are playing together in sync, and I assume that they would eventually loop in the way that you desire, where they converge at a certain point in time. Perhaps you can explain to us why this technique (or something similar) is not suitable for you?

Reminds me a bit of John Cage’s “As Slow As Possible” (the score consists of eight pages, stretched to fit the wanted duration of 639 years)

not to mention how much time it would take to simply load the song: if your computer takes 1/1000th of a second to load and setup a pattern, a song made of a million patterns will take at least 1000 seconds to load, which is about 16 minutes to wait.

about one hunderd of thousands (100,000) people managed to make music using a tracker with less than two hundreds and five decines and five (255) patterns, while two (2) seem to be unable to do so: you and Azsazin

The limit is 256 samples per instrument. this gets hopefully expanded. In the past you could only assign one sample per note, you now also have velocity layers, so that could theoretically lead to 2(note-on / Noteoff layer)*128(velocity layer)*120(note link) links per instrument.
30720 samples per instrument should then be the new limit if every possible link should be considered.

Actually, layers can overlay with each other (some LUA synths, for example, use layers to create unisons), so the theoretical limit could also be higher

Actually, yes, I do. You can download them here. Renoise opens it, but some of the effects are interpreted improperly. The second one I did using Renoise itself. It took a while to complete. I am curious about some things:

  1. Is there a way to pan the tracks such that they come out the left and right, the left and center, or the right and center speakers? When I panned the tracks left (track 1) and right (track 2), the final result is the audio coming out the center speaker only. Also, when I used the impulse module that I uploaded, I panned one track center, and it came out both the right and left speakers (and possibly all three of them, I do not remember), but it was not the center only unless it the only track playing.
  2. What do the different shades of yellow on the pattern icons indicate?
  3. What does XMS stand for?
    I think that I understand, now, why you were talking about the “terabytes of RAM” needed to open the songs. The Example.xms is two hundred and two (202) megabytes in size—about the size of a standard waveform. At a rate like that, a song with over one million patterns could easily reach a terabyte in size.
  1. this comes to no surprise, since you are panning two identical (stereo) wavs, one to hard left and one to hard right. this can’t result into anything different than the same as leaving the tracks panned at the exact center (actually, you could simply use one single track panned to the center and, since the WAV is stereo, you would get the same result). OR, if your audio driver has actually a 2+1 setup, you should be able to use track routing (see the dropdown box in the first image I have linked) to route a track to the desired output

  2. Song settings => Hightlight every xx blocks
    it is simply a visual help to indentify blocks of beats. Usually a dance song, for example, is structured to have blocks of 4 patterns

  3. I don’t know what is this XMS you are talking about

about the song: what you have done with literally hundreds of patterns could have been easily done in 1/8th of the patterns by setting BPM to 50 and LPB to 1. Renoise for some reason doesn’t allow BPM to go under 32, otherwise you could have used BPM 25 and you would have needed only 1/16th of the patterns to do the same thing, not to mention that you can have patterns up to 512 rows, which would lower the patterns need to 1/64th of the pattern you used (namely: 12 patterns) using BPM 50 and 1/128th (6 patterns) if you could lower BPM to 25

no. the reason for the song being that big is that you put lots of stereo WAV files into it. Renoise also converts them to 24 bit float WAVs upon saving. the patterns of this song take 2 megabytes, while the WAV files take the remaining 200 megabytes. also, don’t confuse the space a song takes on the Hard Disk with the space that the song takes in RAM memory: the second depends on how the logical structure of the song is composed, and it can be potentially way bigger than the first

finally, enabling Autoseek feature on your samples will help you keeping track of the song way easily since you are using long samples

  1. Perhaps using more than one note for a track rather than using multiple tracks would help. By the way, I have a 5.1 speaker setup.
  2. I did find that out, but thanks for the information.
  3. The extension of Renoise’s files is XMS. I am simply curious what that stands for (if it stands for anything) (such as IT standing for Impulse Tracker module or S3M standing for Scream Tracker module).
    The song: I suppose that is true. I suppose, though, that if songs were done such that they never used more than two hundred and fifty and six (256) or two thousand and forty and eight (2,048) patterns, then why have the limit set at one thousand (especially considering the five hundred and ten and two (512) rows)? 8 (assuming sixty and four (64)-row patterns) × 256 = 2,048. Perhaps this will help you better understand why I request increased pattern limits. If it isn’t going to happen with Renoise, then, in terms of music tracking, I might be out of luck, since I have insufficient coding knowledge to either modify Renoise or ModPlug Tracker or create my own tracker to suit my needs and it seems highly unlikely that I will “stumble upon” someone who will create a tracker that will suit my needs. I have already made the developers of ModPlug Tracker quite angry by requesting the feature, and I might be doing the same thing here. There are two ways that can be dealt with. Either the developers can simply choose to not be bothered by the request or I could stop making the request. Due to my desire to continue the process of music tracking, it seems unlikely that I would stop making the request (unless either ModPlug Tracker or Renoise was coded to suit my needs or someone can help me find a tracker that suits my needs). It seems unlikely that someone will find a tracker that supports as many patterns as I need for my songs, though. I think that Renoise and ModPlug Tracker may be the only two current trackers left. I have seen some others, but I think that they are older and outdated.
    Autoseek: Thanks for the suggestion.

A bookworm who can’t even read 4 letters correctly???

Song files are .xrns and were originally .rns. rns=ReNoiseSong. xrns=eXtendedReNoiseSong when the file structure got a massive update and systems moved away from the .3 extensions as standard. At least that’s how I’ve always read it.

Did you already remove the files? Your Sky Drive looks empty to me. Do I need some special permissions to access the files?

I’m not sure about the “XMS” you’re referring to. “XM” would be an old FastTracker 2 “Extended Module”. Renoise songs actually have the extension “XRNS”, which roughly stands for “XML Renoise Song”.

Damn! I got the X bit wrong ;) It was still xml when it was just .rns which is why I thought eXtended made sense…

That post right there is a reason for me to not use (and definitely not purchase a copy of) Renoise, as I hate profanity and certainly do not wish to support/condone it. Thanks for the idea. Although, I will say this. The autoseek function is neat. It is tedious that it must be enabled for each sample, though.

Nah, you’re actually quite correct. If you look at the file type registrations in Windows explorer (and other OS’es I suppose), it does actually say “Extended Renoise Song”, “Extended Renoise Instrument”, etc.

I guess I just read the “X” a bit too literally. In my opinion, “Extended” is a bit too vague, whereas something like “XML-based Renoise Song” gives a clearer picture of the file structure… not counting the ZIP aspect, of course. Maybe we need to switch to “ZXXRNS” for “ZIP-Archived XML-Based Extended Renoise Song”. :P

PS. As far as I can remember, all .RNS files should be the old binary format. If you’ve actually got an .RNS file which really contains Song.xml and what not, it may simply have the wrong file extension. Don’t hold me to that, though. It’s been quite a while since the changeover took place, and I can’t remember the specifics.

Maybe I’ve missed something here…

Which exact post are you referring to?

Where is the profanity that is directed at you?


I think I understand the “XMS” thing now. In certain fonts, the “r” and “n” from “.xrns” ( . x r n s ) can blend together a bit, making it look like “.xms”.

Harmless mistake to make.