Massachusetts Institute of Technology
Department of Electrical Engineering and Computer Science
6.111 - Introductory Digital Systems Laboratory

How to burn sound files onto a PROM



 From chiahao@MIT.EDU Mon Dec  4 23:19 EST 2000

 Hey guys,
 
 Unfortunately, I don't have a handy script that will do the conversion.
 However, I can tell you how I handled each file, in a step-by-step fashion.
 
 The file conversion process is as follows:
 
 wav -> raw -> dat -> ntl
 
 
 In order to convert a wave file called example.wav to an ntl file called
 example.ntl, follow these steps:
 

  1. Go to 
SoX Sound eXchange  and download SoX (Sound eXchange)


 2. Install SoX on your computer.  It might be useful to skim some of their
 documentation, since the program has a zillion options you can use,
 including filtering.


 3. At the command prompt, type:
 	sox example.wav -r 9600 example.ub
     
This will convert the wave file into an unsigned-byte raw file,
sampled at 9600 Hz.


 4. Upload the ub file to Athena


 5. Use the 6.111 software to perform the following command:
 	
       ascii2hex <example.ub >example.dat

    This will convert the ascii raw file into a sequence of hex numbers.


 6. Use emacs to edit the resulting dat file.  You need to add
 	
         # SET_ADDRESS = 0;
     
to the very beginning of the file so the PROM programmer knows where
to start burning.


 7. After saving the new dat file, type
 	dat2ntl example.dat example.ntl

     This will produce an ntl file that you can burn onto your PROM. =)
 

 I hope this helps!  If you have any more questions, don't hesitate to ask.
 It might be nice if someone could write a Perl script or something that
 could perform these steps in one fell swoop, but I personally don't have
 the time or energy to do so.
 
 Regards,
 Chia
       

Updated by Francis Doughty
Tuesday Dec. 5, 2000