Notes;

This is the most sound basic driver I have written.

It uses snooze_until to tell it when not write out the sound bytes to the papallel port.

Also I do not set the direction of the parallel port's data lines, if you get no sound I can add the needed code to the init_device() call.