Hola Donchu,para utilizar estas funciones en C++ Builder se tienen que fabricar, no estan incluidas. Yo utilizo ports.c y ports.h que encontré en una de las múltiples páginas que hablan sobre la programación del puerto paralelo.
Aunque sean un poco largos te adjunto los ficheros
Saludos
Joan
/****** ports.c *******************/
#include "ports.h"
//-----------------------------------------------------------------------
// functions
// inport - inputs a word from a hardware port
// inportb - inputs a byte from a hardware port
// inp - inputs a byte from a hardware port
// inpw - inputs a word from a hardware port
//
// outport - outputs a word to a hardware port
// outportb - outputs a byte to a hardware port
// outp - outputs a byte to a hardware port
// outpw - outputs a word to a hardware port
//-----------------------------------------------------------------------
unsigned short inport(unsigned short port)
{
asm mov dx,port
asm in ax,dx
return _AX;
}
unsigned char inportb(unsigned short port)
{
asm mov dx,port
asm in al,dx
asm xor ah,ah
return _AX;
}
unsigned short inpw(unsigned short port)
{
asm mov dx,port
asm in ax,dx
return _AX;
}
short int inp(unsigned short port)
{
asm mov dx,port
asm in al,dx
asm xor ah,ah
return _AX;
}
void outport(unsigned short port, unsigned short val)
{
asm mov dx, port
asm mov ax, val
asm out dx, ax
}
void outportb(unsigned short port, unsigned char val)
{
asm mov dx, port
asm mov al, val
asm out dx, al
}
unsigned short outpw(unsigned short port, unsigned short val)
{
asm mov dx, port
asm mov ax, val
asm out dx, ax
return (_AX);
}
short int outp(unsigned short port, unsigned char val)
{
asm mov dx, port
asm mov al, val
asm out dx, al
asm xor ah, ah
return (_AX);
}
/********* ports.h ******************/
#ifndef _PORTS_
#define _PORTS_
#pragma message Warning: port I/O not allowed in Windows NT
#pragma link "ports.obj"
//#pragma link "outport.obj"
#ifdef __cplusplus
extern "C" {
#endif
unsigned char inportb( unsigned short __portid );
unsigned short inport ( unsigned short __portid );
short int inp( unsigned short __portid );
unsigned short inpw( unsigned short __portid );
void outportb( unsigned short __portid, unsigned char __value );
void outport ( unsigned short __portid, unsigned short __value );
short int outp( unsigned short __portid, unsigned char __value );
unsigned short outpw( unsigned short __portid, unsigned short __value );
#ifdef __cplusplus
}
#endif
#endif