/*************************************************************************************************************************************/
/* */
/* T E S T D E S F O N C T I O N S E L E M E N T A I R E S */
/* D U D I S Q U E V I D E O B E T A - P A L A 1200 B A U D S : */
/* */
/* */
/* Author of '$xtc/disk_vi_P.11$c' : */
/* */
/* Jean-Francois COLONNA (LACTAMME, AAAAMMJJhhmmss). */
/* */
/*************************************************************************************************************************************/
#include <stdio.h>
#include <fcntl.h>
#include <sys/signal.h>
#define SEND(caractere) \
{ \
char *pointeur=&bufferOUT[0]; \
bufferOUT[0] = caractere; \
/* Fonction demandee... */ \
write(desc,pointeur,1); \
READ; \
}
#define READ \
{ \
char *pointeur=&bufferIN[0]; \
read(desc,pointeur,1); \
}
main()
{
int n;
int desc,descOUT,descIN;
char bufferIN[100],bufferOUT[100];
printf("\n initialisation=%d",system("stty sane < /dev/ttyd2"));
printf("\n programmation =%d",system("stty 1200 -cstopb -parity raw -echo < /dev/ttyd2"));
desc = open("/dev/ttyd2",O_RDWR | O_NDELAY);
printf("\n desc =%d",desc);
READ;
printf("\n close =%d",close(desc));
desc = open("/dev/ttyd2",O_RDWR);
printf("\n desc =%d",desc);
SEND(0x43);
/* Demande "PAL_BETA_SEARCH". */
SEND('9');
SEND('0');
SEND('0');
SEND('0');
SEND('1');
SEND(0x40);
/* Demande "PAL_BETA_ENTER". */
sleep(6);
/* ATTENTION, il y a un probleme avec le 'LVR4000' car, en effet : */
/* */
/* 1-le programme rend la main plusieurs secondes avant le positionnement effectif */
/* a l'adresse demandee "90001"), */
/* 2-apres ce positionnement, si l'on passe la machine en local et qu'on demande */
/* un "search" au pupitre a l'adresse "123" (par exemple), la machine passe d'abord */
/* par l'adresse "8523", puis au bout de quelques secondes se place en "123"... */
/* */
printf("\n close =%d",close(desc));
}