Mod Archive Forums Mod Archive Forums
Advanced search  

News:

Please note: Your main modarchive.org account will not work here, you must create a forum account to post on the forums.

Pages: 1 [2]   Go Down

Author Topic: Question about Volume Slide (Axy)  (Read 715 times)

0 Members and 1 Guest are viewing this topic.

looper231

  • Newbie
  • Offline Offline
  • Posts: 57
  • Casual guy
    • View Profile
    • My site
Re: Question about Volume Slide (Axy)
« Reply #10 on: March 02, 2024, 14:35:46 »

Best of luck, brother. I may not respond from time to time, but I am still looking forward to seeing your work in practice  :angel:
Logged
"Beyond the reach of human range. A bit of evil. A touch of strange" - Paradox

DZ-Jay

  • New User
  • Offline Offline
  • Posts: 42
  • I [heart] Intellivision.
    • View Profile
    • Carol Vs. Ghost
Re: Question about Volume Slide (Axy)
« Reply #11 on: March 02, 2024, 14:53:15 »

Best of luck, brother. I may not respond from time to time, but I am still looking forward to seeing your work in practice  :angel:

Thanks, mate.

Here is the current progress:  I have implemented a rudimentary "effects memory" to support the Note Portamento + Volume Slide (5xy) and Vibrato + Volume Slide (6xy) effects.  I aim to have these two effects ready today.

I also want to get Tremolo (7xy) ready this week-end, since it seems I can re-use most of my Vibrato (4xy) code.

That would bring the total set of available effects to:
  • (0xy) Arpeggio
  • (1xx) Portamento Up
  • (2xx) Portamento Down
  • (3xx) Portamento To Note
  • (4xy) Vibrato
  • (5xy) Portamento To Note Plus Volume Slide
  • (6xy) Vibrato Plus Volume Slide
  • (7xy) Tremolo
  • (Axy) Volume Slide

That's a nice set of useful effects!  I then will try testing them all together by porting a few patterns from an existing XM module, and see how that goes.

It's slow going work, but the work is on-going.  I'll make sure to continue posting my progress here for those interested. :)

     -dZ.
Logged
P. Machinery:
   Another hope feeds another dream...
   Another truth installed by the machine.

   -- Propaganda

DZ-Jay

  • New User
  • Offline Offline
  • Posts: 42
  • I [heart] Intellivision.
    • View Profile
    • Carol Vs. Ghost
Re: Question about Volume Slide (Axy)
« Reply #12 on: March 03, 2024, 22:42:10 »

Here is today's update:  I have finally implemented Note Portamento + Volume slide (5xy) and Vibrato + Volume Slide (6xy) effects.

I discovered a bug in my code which resulted in the last effect command being left on for a single tick when a new pattern starts.

It turned out to be a very pernicious bug, caused by some vestiges of legacy code from the old tracker still remaining.  I decided to eradicate the buggy code, and re-implement large chunks of the old music player.

Anyway ... that's all done now.  Phew!  The current line up of available effects is:
  • (0xy) Arpeggio
  • (1xx) Portamento Up
  • (2xx) Portamento Down
  • (3xx) Portamento To Note
  • (4xy) Vibrato
  • (5xy) Portamento To Note Plus Volume Slide
  • (6xy) Vibrato Plus Volume Slide
  • (Axy) Volume Slide

I did not get around to implementing Tremolo (7xy), but the night is young, so ... let's see ... :)

I've attached a copy of the algorithm I wrote describing my new music player, in case anybody out there is interested.  This is what I used as a guide when re-writing the player today.

It is written in a "C-ish" pseudo-code, so it may or may not be easy to follow.  I apologize in advance if my ugly pseudo-code burns anybody's eyes.

     -dZ.
Logged
P. Machinery:
   Another hope feeds another dream...
   Another truth installed by the machine.

   -- Propaganda

DZ-Jay

  • New User
  • Offline Offline
  • Posts: 42
  • I [heart] Intellivision.
    • View Profile
    • Carol Vs. Ghost
Re: Question about Volume Slide (Axy)
« Reply #13 on: March 06, 2024, 13:59:12 »

Progress update:  Ding! Dong! Tremolo (7xy) is done!!!

Effects available are now:
  • (0xy) Arpeggio
  • (1xx) Portamento Up
  • (2xx) Portamento Down
  • (3xx) Portamento To Note
  • (4xy) Vibrato
  • (5xy) Portamento To Note Plus Volume Slide
  • (6xy) Vibrato Plus Volume Slide
  • (Axy) Volume Slide

I aim to prepare a test track this week-end with just a couple of patterns to test the effects out.

... Stay tuned!

     -dZ.


P.S. What effect should I tackle next?  I'm thinking maybe Note Delay (EDx).  I'm keen to support some nice shuffles in my tracks.  Any suggestions on a popular or more useful effect?
Logged
P. Machinery:
   Another hope feeds another dream...
   Another truth installed by the machine.

   -- Propaganda

looper231

  • Newbie
  • Offline Offline
  • Posts: 57
  • Casual guy
    • View Profile
    • My site
Re: Question about Volume Slide (Axy)
« Reply #14 on: March 09, 2024, 02:55:15 »

You should most definitely port "Fxx" effect which is "Set speed (Ticks Per Row)" - an another essential effect command used in a majority of tracks
Logged
"Beyond the reach of human range. A bit of evil. A touch of strange" - Paradox

DZ-Jay

  • New User
  • Offline Offline
  • Posts: 42
  • I [heart] Intellivision.
    • View Profile
    • Carol Vs. Ghost
Re: Question about Volume Slide (Axy)
« Reply #15 on: March 09, 2024, 04:06:19 »

You should most definitely port "Fxx" effect which is "Set speed (Ticks Per Row)" - an another essential effect command used in a majority of tracks

Good choice!  I'll add that one.  Right now the tracker expects the song speed to be static as part of the song header (in ROM), but I always thought that it should support varying speed.

I also, went ahead and added the Fine Volume Slide (EAx, EBx) and Fine Portamento (E1x, E2x) effects, just because they are the same as the regular effects, but played on tick zero only.

     -dZ.
Logged
P. Machinery:
   Another hope feeds another dream...
   Another truth installed by the machine.

   -- Propaganda

looper231

  • Newbie
  • Offline Offline
  • Posts: 57
  • Casual guy
    • View Profile
    • My site
Re: Question about Volume Slide (Axy)
« Reply #16 on: March 09, 2024, 04:50:44 »

I also, went ahead and added the Fine Volume Slide (EAx, EBx) and Fine Portamento (E1x, E2x) effects, just because they are the same as the regular effects, but played on tick zero only.

I assume you understand that "Fine" commands do it more slowly and gradually?
Logged
"Beyond the reach of human range. A bit of evil. A touch of strange" - Paradox

DZ-Jay

  • New User
  • Offline Offline
  • Posts: 42
  • I [heart] Intellivision.
    • View Profile
    • Carol Vs. Ghost
Re: Question about Volume Slide (Axy)
« Reply #17 on: March 09, 2024, 14:23:34 »

I also, went ahead and added the Fine Volume Slide (EAx, EBx) and Fine Portamento (E1x, E2x) effects, just because they are the same as the regular effects, but played on tick zero only.

I assume you understand that "Fine" commands do it more slowly and gradually?

Yes.  From what I read in some documents, it appears that the only different between the normal and the "fine" commands is that the latter is applied on tick zero only -- i.e., once per row instead of once per tick.

For example, on E1x:
https://wiki.openmpt.org/Manual:_Effect_Reference#Effect_Column_2
Quote
Similar to 1xx, but only applies on the first tick of the row.

https://milkytracker.org/docs/MilkyTracker.html#fxE1x
Quote
Explanation:    
Works similarly to 1xx portamento up, only the slide is a lot finer because the effect is applied only once per row.

Also, the ported source code of FastTracker II shows that the functions that implements commands 1xx and E1x are identical -- with the only difference being when (how often) they are invoked.

Then again, my experience is exceedingly narrow, and limited mostly to what I read online.  Do you suppose that there may be a bit more nuance to it that I am missing?

    -dZ.
Logged
P. Machinery:
   Another hope feeds another dream...
   Another truth installed by the machine.

   -- Propaganda

looper231

  • Newbie
  • Offline Offline
  • Posts: 57
  • Casual guy
    • View Profile
    • My site
Re: Question about Volume Slide (Axy)
« Reply #18 on: March 09, 2024, 17:51:44 »

No. what you've presented here is how it really is. "Fine" commands only play their command on first ever tick of the row, for a more smooth ease
Logged
"Beyond the reach of human range. A bit of evil. A touch of strange" - Paradox
Pages: 1 [2]   Go Up