Audio Frequency White Noise generation using Arduino Mini Pro For DIY, how to program Arduino Mini Pro to act as an Audio Frequency White Noise generator?

Presumably, 

a) using one Digital Output pin 

b) feed to a simple passive RC low pass filter to reduce out of band signal 

c) feed to a simple class-D IC chip audio amplifier and speaker 

d) since it is DIY and noise, lo-fi (not hi-fi) is good enough. 

Specific questions,

a) How to program?  

b) Wonder if it is better to use to chip act a Pulse Width Modulated 'digital to analogue converter'?

c) How to calculate value for RC filter (assume amplifier has high input impedance)?

Many years ago, I have programmed a hardware sound generator chip as part of a game machine. It has two registers for amplitude and 'frequency' control (band of 'white' noise). It worked very well. I once looked at the output using oscilloscope and it was square wave. I believe that it works, basically, using the above principles. Since I do not have the chip now, I cannot verify it. Now, I would like to duplicate its function using Arduino in software.
I don't know that you need all that - just an Arduino and a piezo speaker and a pot if you want to play with the volume.
void generateNoise() {
    unsigned long int newr;
    unsigned char lobit;
    unsigned char b31, b29, b25, b24;
    b31 = (reg &amp; (1L &lt;&lt; 31)) &gt;&gt; 31;
    b29 = (reg &amp; (1L &lt;&lt; 29)) &gt;&gt; 29;
    b25 = (reg &amp; (1L &lt;&lt; 25)) &gt;&gt; 25;
    b24 = (reg &amp; (1L &lt;&lt; 24)) &gt;&gt; 24;
    lobit = b31 ^ b29 ^ b25 ^ b24;
    newr = (reg &lt;&lt; 1) | lobit;
    reg = newr;
    digitalWrite (speakerPin, reg &amp; 1);
    delayMicroseconds (50);  // Changing this value changes the frequency.
}