This code is used to retrieve a character from the paralel port...the Read_Input function checks the parallel port by using inportb() to see if anything has been sent yet....the if statements check to see if the port has found anything...when it does...2 other functions are ran to get the bits bak into an array.........anyways the point is...sending a character over the parallel port, you have to split bits up into 2 sections because there are only 5 input pins.......but if I send them back to back (the sending side of the software), the receiving side won't have time to put each of them together before the next one hits...I was wondering if I could use a simple small delay on the sending side to where the receiving loop would get each one at a different time...but I need to know how fast a loop like above runs so I will know how much of a delay to put on the sending side..I thought about using just a second delay each....BUT that would cause the program 2 second just to send one character.....and that sucks balls............Can I use a much smaller delay (and how small) and still be assured that they will get there not running into each other? Or any other ideas...? Maybe I'm overlooking something...I don't know.......Code:while (receive[x]!='\0') { int Byte=Read_Input(); if ((Byte!=0) && (y==0) { restoreBits(Byte); restoreSend1(); y++; } if ((Byte!=0) && (y==1)) { restoreBits(Byte); restoreSend2(); y++; } if (y==2) { makeChar(); printf("%c",Total); } }