--- cstream.1.orig
+++ cstream.1
@@ -46,9 +46,9 @@
 .Ar num
 bytes before writing. The default is the blocksize. It is an error to
 set this to anything below the blocksize. Useful when writing tapes
-and simlilar that prefer few large writes of many small.
+and similar that prefer few large writes of many small.
 .It Fl c Ar num
-Concurrent operation. Use a seperate process for outout. This is
+Concurrent operation. Use a separate process for output. This is
 especially useful in combination with the -B option.
 .Bl -tag -compact -width "  "
 .It 0 = use one process only (default)
@@ -56,13 +56,13 @@
 .It 2 = write process will buffer
 .It 3 = both processes will buffer. 
 In combination with a large buffer size this will often load your memory
-heavily, everytime the reader transfers the buffer it collected to the
+heavily, every time the reader transfers the buffer it collected to the
 writer. If you use -c 3 and have a buffer size of 128 Megabytes 256 MB of
 memory will be touched at once.
 .El 
 .It Fl i Ar num
 .It Fl o Ar num
-Set the file names to use for input or output, respectivly. If the
+Set the file names to use for input or output, respectively. If the
 output file name is "-", data will just be discarded. If the input
 file name is "-", data will be generated 'out of the void'. If these
 options aren't given, stdin/stout will be used. If you need to give
@@ -81,7 +81,7 @@
 has other network filters, anyone will be able to connect.
 .It Fl I Ar string
 .It Fl O Ar string
-Specify the type of input and output file, respectivly. 
+Specify the type of input and output file, respectively. 
 .Bl -tag -compact -width "  "
 .It If string
 includes 'f', a fifo will be created. 
@@ -109,7 +109,7 @@
 .It Fl p Ar filename
 Write the process id of cstream to 
 .Ar filename .
-If cstream uses a seperate writer process (option -c), this is the pid
+If cstream uses a separate writer process (option -c), this is the pid
 of the parent (reader) process.
 .It Fl t Ar num
 Limit the throughput of the data stream to
@@ -132,7 +132,7 @@
 and throughput will be displayed at the end of program run. A value of
 2 means the transfer rate since the end of the first read/write pair
 will also be reported (useful when there is an initial delay). A value
-of 3 means there will also be seperate measurements for read and
+of 3 means there will also be separate measurements for read and
 write. This option is resource-consuming and currently isn't
 implemented. A value of 4 means that notices about each single
 read/write will be displayed. High values include all message types of
@@ -144,13 +144,13 @@
 be used as input file if -i has not been used.
 .It Ic SIGUSR1
 .It Ic SIGINFO
-Sending SIGUSR1 (or SIGINFO, which is usually mappend to Control-T on
+Sending SIGUSR1 (or SIGINFO, which is usually mapped to Control-T on
 you keyboard) to cstream causes it to display throughput rates to
-stderr. The stream will continue as if nothing happend.
+stderr. The stream will continue as if nothing happened.
 .It Ic SIGUSR2
 Exit and report throughput rates, if requested.
 .It Ic SIGHUP
-I found myself sending SIGHUP accidentially too often. But ignoring or
+I found myself sending SIGHUP accidentally too often. But ignoring or
 misusing SIGHUP is not an option for me. Thus, when
 .Nm cstream
 received
@@ -191,19 +191,18 @@
 .It Ic "cstream -Oa -o /dev/dsp0 myhost.mydomain.com:17324"
 Connects port 3333 on host myhost.mydomain.com and whatever data it
 finds there will be sent to the soundcard, with appropriate settings
-for CD quality stero play.
+for CD quality stereo play.
 .It Ic "cstream -i myaudiofile.raw -o :17324"
 This will open a TCP server on port 17324 and waits until someone
 connects (for example, the commandline from the previous
 example). Then it will send the contents of myaudiofile.raw down the
-TCP stream (for the previous audio example, typically a CD audiotrack
+TCP stream (for the previous audio example, typically a CD audio track
 like you get from the tosha or cdparanoia utilities).
 .It Ic "cstream -OD -o myfile"
-
 Write to file myfile with O_DIRECT.  That usually means that the
 filesystem buffer cache will not try to cache this file.  You can use
 that to prevent copying operations from eating up physical memory.
-Note that when cstream encouters a write error it will switch the
+Note that when cstream encounters a write error it will switch the
 output file from O_DIRECT to a normal file and write all further
 blocks without O_DIRECT if writes without O_DIRECT succeed.  In
 practice that usually means that your last block, if not a multiple of
@@ -222,7 +221,7 @@
 you want to ensure that O_DIRECT stays in effect, you need a buffer
 between the TCP stream and the O_DIRECT stream.  Since cstream does
 not yet support different input and output block sizes, dd is
-suitable here.  Note that this is only neccessary if the OS requires
+suitable here.  Note that this is only necessary if the OS requires
 multiples of the filesystem block size for O_DIRECT.  At the time of
 this writing this construct is needed on Linux for using TCP
 streams with O_DIRECT, but it is not needed on FreeBSD.
@@ -234,6 +233,7 @@
 both Linux and FreeBSD is very slow (1/5th to 1/10th of normal write)
 and O_DIRECT is reasonably fast (1/4th to 1/2 of normal write).  You
 can combined O_SYNC and O_DIRECT. 
+.El
 .Sh ERRORS
 .Bl -tag -width "-l num  "
 .It Exit code 0 means success.
@@ -252,7 +252,7 @@
 blocksize to whatever the filesystem of the output file is in) and page
 alignment requirements (I/O will happen from a page-aligned buffer).
 However, the combination of concurrent read/writes (-c options) and
-O_DIRECT has not been tested bejond basic verification that it gets
+O_DIRECT has not been tested beyond basic verification that it gets
 some tests right.
 .Sh SEE ALSO
 .Xr dd 1 ,
