ModPlug Central

OpenMPT => Development Corner => Topic started by: Really Weird Person on January 30, 2012, 01:09:17

Title: Start Rows at 1
Post by: Really Weird Person on January 30, 2012, 01:09:17
What I glean from Jojo's reply to the feature request that I submitted is that the rows starting from zero is derived from use of the hexadecimal system. I didn't think of the pattern break command. Because the pattern editor uses hexadecimal, starting the rows at one rather than zero would indeed be odd.
Title: Re: Start Rows at 1
Post by: Saga Musix on January 30, 2012, 23:25:20
Please stop cross-posting about the same issues in the forums and the issue tracker.

It doesn't have anything to do with hexadecimal, rather with the fact that OpenMPT starts counting at 0 for everything, yes, even for samples and instruments, where "0" means "no sample / instrument". If someone tells you that's not logical, then ask them why they start counting at 1 and not 0. You can also count your beats starting from 0, if this is something that wouldn't cross a classically trained person's mind then it's not my problem.
Title: Re: Start Rows at 1
Post by: Really Weird Person on June 09, 2012, 03:11:17
Quote from: JojoIt doesn't have anything to do with hexadecimal, rather with the fact that OpenMPT starts counting at 0 for everything, yes, even for samples and instruments, where "0" means "no sample / instrument." If someone tells you that's not logical, then ask them why they start counting at 1 and not 0. You can also count your beats starting from 0, if this is something that wouldn't cross a classically trained person's mind then it's not my problem.
I suppose that is a good point. In that vain, would it not make logical sense to start counting everything from zero (as channels and effects on the general tab (at least) do not)? In fact, I think that ModPlug Tracker is one of the few trackers that actually does not do that. Another way that it can be viewed is this. If the zero is to be quantitative (as it is for samples and instruments), then it would make sense to start everything at one except for panning, time, and volume. This would be especially true since you would never have a pattern with zero rows or a file with zero channels. This could affect panning in the following manner. Zero is centered and negative values are panned left and positive values are panned right. If it is based on 255, this would be from -127 to 127. A file with zero patterns (and, thus, zero sequences) is possibe, but that would simply be silly. I am aware that the second view would require major modifications to the code and would likely not happen, but, nonetheless, it is an idea.