Hi!
At the time of 2nd PGD mini challenge I was fidling myself with Perlin Noise generation and I made my own algorithm similar to Perlin Noise.
The biggest problem is that code which is used for combining seperate octave textures into one tends to exeds its limits sometime (value for certain pixel can exceed 255 which results in parts of the texture to become negative).

I was also planning on adding support for further postprocessing of Perlin Noise result to get better results in the end.
For instance I use perlin noise for generating heightmap. Height of the map can be between 0 and 255.
I consider height range of 0-8 as seabed so I use postprocessing to smoth (almost level) it out.
I consider height range pf 9-10 as sand beaches so I try to make them smoth and nicely sloped.
....
I gues you got the point.
I was also thinking of controlling this terain smothening with another texture for creating biomes etc.
Unfortunately I haven't done anything on postprocessing so far as I was running out of time for 2nd PGD mini competition and later I havent returned to this.

I have ability to specify seed nuber when I'm starting but I'm not sure if it would alow me making infinite Perlin Noise textures.
Oh I was planning to use custom Random number algorithm implementation to gain the ability to have threadsafe random number generation which isn't posible using Delphi random number generator.

Now if you wan't I could go and try to continue my work where I left of. I hope I comented my code