how to know where did sharpmod stuck ?

Nov 13, 2011 at 1:21 PM
Edited Nov 13, 2011 at 5:59 PM

1.i play my S3M and it plays loop from 1 to 83. i tested it 2 times. on 2 time sharpmod stucks somewhere. it plays only last chunk of rows.


2. now i repeat expirement and sharpmod did:

1 cycle from 1 to 83

2 goes from 1 to 83 and start play 84 and on 85 sequence stucks in infinitive loop of last chunk rows in buffer.

nothing crashes it just plays and plays this chunk of rows.

want my S3M?

Nov 13, 2011 at 5:14 PM

Yes, you can give to me your module, i'll see where is the problem.

Nov 13, 2011 at 5:59 PM


Nov 13, 2011 at 9:27 PM

Yes, fine mod, i've found an issue :). I'll try to fix your problem as soon as possible, and the new issue with it.

Nov 19, 2011 at 3:19 PM

ok, i've reworked the jump pattern effect, it's seems to work fine. The fix is checked in.

Nov 19, 2011 at 6:08 PM

nice to see that

how about free jump ?

the sample i show has some logic of using.

it plays from 1 to 83 always

then at some moment i need to jump to next cycle from 84 to end.

after some moment i want jump back to 1 / 83 cycle.


Nov 19, 2011 at 7:02 PM

I've added a feature to modify "on the fly" the module. I've explained how to use it on the MSDN CREATE forum. here is my response :


Position Jump (MOD/XM/S3M/IT: Bxy)
This command will cause the player to jump to the pattern position xy (hex).
Ie: B00 will restart the song from the start. If used together with a pattern break, you can also specify the starting row (by default, it will play from the start of the pattern).
Note that most players disable backward jumps in the song if looping mode isn't enabled, so that it is not possible to loop a song forever (pretty annoying in a playlist).

You can add a 0xB effect where you want with this :

MyMod.Patterns[1].Tracks[1].Cells[63].Effect = 0xB;

MyMod.Patterns[1].Tracks[1].Cells[63].EffectData = 0;


So, you modify the pattern N°1, in the channel 1 the row 63 by adding a B00 effect.

My sample code will replay the two first patterns in loop with your song.

Don't forget to refresh from codeplex, the ValidateChanges was a method that I've removed... I don't remember why :)

You can modify all you want in the module with this method (notes, instrument used and effects)


I Hope that it can help you to do what you want.


So, you can go where you want in the module by using this line of code :

Player.PlayerInstance.mp_sngpos = 84;


It will jump directly to the 84th position.



Nov 19, 2011 at 7:40 PM

checking out...)

Nov 20, 2011 at 7:33 AM

mp_sngpos works not clear.

it seems to be some buffer data remains.