At 13:20 04.07.96 +0100, you wrote:
{Quote hidden}>Dear All,
>
>Initially this may not seem PIC oriented, but it is. I'm trying to get a
>PC running Windows 3.1 to talk to a PIC through the PC parallel port, but
>I've come across a problem:
>
>I'm using VB4.0 with hardware accesses through DLLs written in Turbo C.
>No problems with that part. Writing and reading to the parallel port is
>also simple and error-free. But I want to implement handshaking, so I
>need to strobe some of the other lines on the port. This involves
>accessing the status register(offset 01h) and the control register(offset
>02h). I'm using the STR line to indicate data_valid and the /ACK line to
>indicate busy from the PIC. Once I write and read the other registers, it
>is no longer possible to write to the data register, i.e. the data lines.
>This only happens in Windows (3.1/95) not in MS-DOS. Because of this, I
>suspect there is a conflict with a printer driver, and it is therefore
>not possible to directly access the parallel port while running Windows.
>
>Does anybody have any experience on this topic? Is there a solution?
>
>Thanks very much.
>
>J.W.
Hi J. W.
There is a very simple way to fake Windows 95 printer driver if that
is the problem:
add 0x8000 hex to the port address!
it will access the port in question but will completly bypass
_any_ virtual drivers!
its real simple and it does work in 3.11-95
Dont try it on NT!
The problem however may not lie there, if you have bi-directional
port you may set it to be input, and than you want see any data
written to the port.
cheers antti