See: http://www.lvr.com/parport.htm for information on enhanced (bidirectional) parallel ports. I haven't read the materials there, but I think you cannot simply read 0x378 for input; if I'm not wrong, reading 0x378 returns the last byte written to that port. I think you'll have to configure some other register for EPP - ECP parallel ports, or perhaps to do some handshaking for input through the same. If I've time enough, I'll read this night through the documentation and post another mail with the conclusions (not much time though, a week with lots of lightning storms = burnt equipment at clients factories = trouble....) Albert A.Smulders InSAD - Encarnaci—n, Paraguay insad@itacom.com.py ---------- > De: Gerard Gerritsen > A: PICLIST@MITVMA.MIT.EDU > Asunto: Parallel port interfacing trouble > Fecha: Lunes 6 de Octubre de 1997 09:42 > > Hello everybody, > > I am trying to interface a 16C84 to a parallel port, and sending data > from the pc to the pic works fine. > > But when it comes from sending data from the pic to the pc things go > wrong horribly. I've written a small program that reads port 0x378 in > a loop and prints any data right on to the screen, but the parallel > does not recognize a high level signal ( 3.45 volt ) > > Any idea about what to do ? Am I forgetting something in the pic > > > bsf STATUS, RP0 ; select register bank 1 > > movlw 0x07 ; Port A als input, bit 4 als output ! > movwf TRISA > > bcf STATUS, RP0 ; select register bank 0 > > bsf PORTA, 3 ; Pull up ofzo ? > > Greetings, Gerard Gerritsen > > ESD Electronics > Zwaansprengweg 20 > 7300 AE Apeldoorn, The Netherlands > > email : gerritse@esd1.esd.nl > tel : ++31-55-5499499 > fax : ++31-55-5427288