First commit 10/04/1996

This commit is contained in:
2021-09-08 21:34:51 +02:00
commit 43a19f54da
11 changed files with 869 additions and 0 deletions

179
PRN_CNT.H Normal file
View File

@ -0,0 +1,179 @@
/**************************************************************************\
| |
| CABECERA A INCLUIR EN TUS PROGRAMAS: #include "PRN_CNT.h" |
| |
| |
>>> Rutinas para la comunicaci<63>n USUARIO <---> PRN_CNT <<<
| |
\**************************************************************************/
#define LEER 0
#define ESCRIBIR 1
#define OK 1
#define FALLO_DESCONOCIDO -1
#define NO_ARCHIVO -2
#define ARCHIVO_INCORRECTO -3
#define ON 1
#define OFF 0
#define ERROR_EN_ATEXIT -9
#define FUNCION_YA_REGISTRADA 5
typedef struct
{
char Salida0; char Salida1; char Salida2; char Salida3;
char Salida4; char Salida5; char Salida6; char Salida7;
} ESTADOS;
extern char Lpt_usado;
/**************************************************************************\
| |
| Esta rutina debe ser llamada al iniciar el programa que use las librerias. |
| |
| Es la encargada de poner a cero todas la salidas, al principio y al salir. |
| |
| |
| Parametros de Entrada: ( ninguno ) |
| Parametros de Salida: |
| OK Todo ha ido bien. |
| ERROR_EN_ATEXIT Error registrando funci<63>n |
| FUNCION_YA_REGISTRADA No es la 1<> vez |
| |
\**************************************************************************/
int Init_all(void);
/**************************************************************************\
| |
| WARNING: |
| El uso de la siguiente funci<63>n esta indicada solo para usuarios |
| experimentados, se debe usar en lugar de la funci<63>n anterior. |
| |
| Parametros de Entrada: |
| ( LEER/ESCRIBIR ) // L/E los registros del fich|
| ( %s ) // _ero %s |
| |
| Parametros de Salida: |
| 1 Ok! OK |
| -1 Fallo desconocido FALLO_DESCONOCIDO |
| -2 Archivo no existe NO_ARCHIVO |
| -3 Error archivo no valido ARCHIVO_INCORRECTO |
| |
\**************************************************************************/
int Register( char leer_escribir, char *file );
/**************************************************************************\
| |
| Resetea todas las salidas y las pone a cero. |
| |
\**************************************************************************/
void Reset_all(void);
/**************************************************************************\
| |
| Obtiene el estado de las salidas ( On/Off ), de la ampliacion AMPL. |
| |
| Parametros de Entrada: |
| ampl Ampliaci<63>n donde debemos mirar |
| estados Puntero a estructura con los estados |
| |
| Parametros de Salida: |
| char 1Byte con los estados |
| |
| NOTA: si &estados es NULL, solo se devolvera el char de salida. |
\**************************************************************************/
unsigned char Lee_Salidas( char ampl, ESTADOS *estados );
/**************************************************************************\
| |
| Obtiene el estado de una salida ( On/Off ), cualquiera. |
| |
| Parametros de Entrada: |
| salida ( Si 1 ampl. 0 a 7 ) |
| ( Si 10 ampl. 0 a 80 ) |
| |
| Parametros de Salida: |
| char 1Byte con el estado |
| |
\**************************************************************************/
unsigned char Lee_Salida( char salida );
/**************************************************************************\
| |
| Escribe la variable 'estados' ( On/Off ), en la ampliacion AMPL. |
| |
| Parametros de Entrada: |
| ampl Ampliaci<63>n donde debemos mirar |
| estados Puntero a estructura con los estados |
| estadosb Byte con los estados |
| |
| Parametros de Salida: |
| char 1Byte con los estados |
| |
| NOTA: si &estados es NULL, se utilizar<61> el char con los estados. |
\**************************************************************************/
unsigned char Escribe_Salidas( char ampl, ESTADOS *estados, char estadosb );
/**************************************************************************\
| |
| Parametros de Entrada: |
| salida ( Si 1 ampl. 0 a 3 ) |
| ( Si 10 ampl. 0 a 80 ) |
| estado ( ON / OFF ) |
| |
| Parametros de Salida: |
| char 1Byte con el estado |
| |
\**************************************************************************/
unsigned char Escribe_Salida( char salida, char estado );
/**************************************************************************\
| |
| Lee las entradas y la almacena en la variable estados. |
| |
| Parametros de Entrada: |
| ampl Ampliaci<63>n donde debemos mirar |
| estados Puntero a estructura con los estados |
| |
| Parametros de Salida: |
| char 1Byte con los estados |
| |
| NOTA: si &estados es NULL, solo se devolvera el char de salida. |
\**************************************************************************/
unsigned char Lee_Entradas( char ampl, ESTADOS *estados );
/**************************************************************************\
| |
| Lee una entrada cualquiera. |
| |
| Parametros de Entrada: |
| entrada ( Si 1 ampl. 0 a 7 ) |
| ( Si 10 ampl. 0 a 80 ) |
| |
| Parametros de Salida: |
| char 1Byte con el estado |
| |
\**************************************************************************/
unsigned char Lee_Entrada( char entrada );
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F<EFBFBD>I<EFBFBD>N<EFBFBD><4E><EFBFBD>D<EFBFBD>E<EFBFBD><45><EFBFBD>L<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD>C<EFBFBD>A<EFBFBD>B<EFBFBD>E<EFBFBD>C<EFBFBD>E<EFBFBD>R<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/