jj2007's response wasYou know what, jj2007, in view of the fact that PCG32II knocks spots off anything that I have and there is a lot more to it than meets the eye perhaps I should write a Help file for it. Anyone visiting the 'main' PCG thread for the first time will find it heavy going; not heavy technically but it really is a long read and new ideas keep popping up throughout.
<Laugh.>Indeed, that would be a good idea. In the meantime, .....
Anyway, here it is. It took me a while - quite frankly I'd rather go to the dentist than write a Help file. I have tried to avoid any 'howlers' inviting you to mention them so that I don't have to open my help authoring software again. <smile.
Attached is a zipped folder which includes PCG32II.chm and the latest version of PCG32II.bas for including in your BASIC source code.
PCG32II.bas has had some additions.
RandD returns a Double which has a granularity of 53-bit got by using two 32-bit outputs. This complements the existing RandSE which has a granularity of 32-bit.
GetState has been added to GetSeed and GetSequnce. GetState simply returns the last 64-bit state value.
GetSnapShot and SetSnapShot get and set the state vector; state and sequence.
The Get64Bit function used by MyRandomize has a Windows version, conditionally compiled, to provide a 'stronger' random 64 bit value.
PCG32II.zip