I've been looking for that kind of generator. Thanks. It didn't give an even distribution, but I modified it and now it seems to do the trick.
Global GPrime as DOUBLE INTEGER = 1103515245
Global NPrime as DOUBLE INTEGER = 65536
Global RandomSeed as DOUBLE INTEGER
` If RandomSeed is seeded with a constant here instead of timer the random range will be the same every run.
`RandomSeed = timer()
RandomSeed = 34534354
do
cls
for z=0 to 10000
dot LCGRandom(100),LCGRandom(100)
next z
sync
wait key
loop
Function LCGRandom(RandomRange as INTEGER)
local RandomNumber as float
RandomSeed = RandomSeed * 1103515245 +12345
RandomNumber=(RandomSeed / (65536))
RandomNumber=abs(RandomNumber) mod (RandomRange*1000)
RandomNumber=RandomNumber/1000
EndFunction RandomNumber
The fastest code is the code never written.