I have used the parallel port from QBASIC. I basically agree with what Ken wrote but will add a couple of comments Hex 378 is the usual address for a modern computer's LPT1 from QBasic you can use OUT with either hex or decimal arguments but hex arguments must be preceded by &h eg OUT(&h378,255) would write all ones to the data bits of (usually) LPT1 As far as I know you can do this with the all the non NT based versions of windows as they give direct access to their ports. I have used win95. When reading from the ports it can be necessary to write either zero or one to each bit (or is it to set each line high or low - see next note) first, I can't remember which. some of the bits are inverted on the output lines. A desktop Output will have enough current to drive LED but not enough to blow. A laptop will not supply enough to drive LED. You can get this sort of information through a google search. Alan -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body