Short:        AHIRNG - Random Number Generator via AHI
Author:       Rupert Hausberger <natmeg@gmx.net>
Uploader:     Rupert Hausberger <natmeg gmx net>
Type:         util/misc
Version:      1.2
Architecture: ppc-morphos

Description
===========
  AHIRNG (Audio Hardware Interface Random Number Generator) is a tool to
  generate REAL random number from a soundcard.

Requirements
============
  - MorphOS 1.x
  - NList classes
  - AHI 4.x

  - 44khz/16bit soundcard
  - Analoge noise source

Installation
============
  Installation is very simple.
  Just drag the AHIRNG-drawer where you like, it does not need assigns.

Usage
=====
  Connect your Pegasos-onboard/Soundcard line-in to a analoge radio/SAT receiver.
  Remove the areal from the receiver so you only hear the pink-noise. This is our
  source for the random numbers.

  Now start the tool and press 'Monitor'. Adjust the input-gain to about ~90%.
  Watch the gauges, they should be around ~(+-)25.000 to (+-)30.000.

  Now select the output file, press 'Record' and see the random bytes comming...
  If the needed amount of random-bytes has been recorded press 'Stop'. Now press
  "Analyse output file" to check the quality. Quality should be at least 'High' in
  all five tests for randomness...

  Technical
  ---------
  Sampling is done at 44khz in 16bit. This means we got a raw-stream of
  44000 * 2 * 2 bytes/s (44000hz * 2 bytes (16bits) * 2 channels) = 176.000 bytes/s
  Next step is to convert this stream into quality random numbers. This is done
  with the following function:

  for (i = 0; i < 44000; i++) //for every second
  {
     UWORD l = ((((ULONG *)rawdata)[i] >> 16) & 0xffff);  //extract left channel
     UWORD r =  (((ULONG *)rawdata)[43999 - i] & 0xffff); //extract right channel and invert

     rnddata[i] = (l - r) & 0xff; //substract the inverted left channel from the right
  }

  ToolTypes
  ---------
  TOOLPRI/K/N - Set to toolpri from -127 to 127, defaults to 0

Author
======
  ©2005-2012 Rupert Hausberger <natmeg@gmx.net>
  http://natmeg.mooo.com/

Copyrights
==========
NList : ©2001-2012 NList Open Source Team
        http://www.sourceforge.net/projects/nlist-classes/

License
=======
  GPL. Please refer to the file COPYING for details.

History
=======
  Please refer to the file ChangeLog for details.

