Que tal chavo...? no se si aun te sirve pero te mando un programita que hice para mandar pulsos a determinados pines del paralelo... 
te cuento que solo me corrio en visual c++ 6
#include <iostream.h>
#include <stdio.h>
#include <dos.h>
#include <conio.h>
void main (){
   int vec[8];
   int i,j,valor=1,estado=1;
   _outp(888,0);
   for (i=0;i<=8;i++) vec =0;
   do{
      cout<<"Ingrese numero de luz ";
      cin>>j;
      j-=1;
      cout<<"Ingrese Estado ";
      cin>>vec[j];
      valor = ((vec[0]*1 ) + (vec[ 1]*2 ) + 
                                             (vec[2]*4 ) + (vec[ 3]*8 ) +
                   (vec[4]*16) + (vec[5]*32) +
                                             (vec[6]*64) + (vec[7]*128));
      _outp(888,valor);
      getch();
      cout<<"Cambia otra luz ";
      cin>> estado;
   } while (estado == 1);
}