Please use code tags when posting code and properly indent it.

Particles do not have a "my" pointer. Instead you have to create a function that takes a particle pointer as it's first parameter. Like in this sample:
Code:
function flame_1(PARTICLE* p)
{
    p->lifespan = 128;
    p->x += random(32) - 16;
    // and so forth...
}


There is also a detailed example in the manual: http://www.conitec.net/beta/apar-beam.htm

Please be careful with the second parameter in you effect instruction. 2 * time_step can easily become smaller than 1 and in this case no particle at all should be emitted.


Always learn from history, to be sure you make the same mistakes again...