Hi Eric,
I am going to make progress with your great help ! Now I understand more about how my circuit should look like.
I think 12 outputs on parallel port could be enough. I am trying to use 4 control pins (1,14,16,17). It seems not very hard in theory. I can output data on D0-D7 with address: 0x378, so the address for control port is: 0x37A.
I use either following commands:
asm mov dx, 0x37A
asm mov ax, 15 //set 3 bits low, 1 high in control port
asm out dx, ax
or
outportb(CONTROL, inportb(CONTROL) & 0xDF); /* Reset Control Port - Make sure Forward Direction */
outportb(CONTROL, inportb(CONTROL) | 0x08); /* Set Select Printer (Register Select) */
outportb(CONTROL,inportb(CONTROL) | 0x01); // Set Strobe (Enable)
outportb(CONTROL,inportb(CONTROL) & 0xFE); // Reset Strobe (Enable)
but see no change in output voltage. Even the program get no error.
I am finding a free software which allow to control these control bits to make sure the software is all right but can only find Lalim software untill now. This software only effect on 8 data pins not 4 control pins.
Trying to get out from this stuck !!!