Write a C program for PC to PC communication.
Full duplex character transfer (chat application)
#include<stdio.h>
#include<conio.h>
#include<dos.h>
#include<process.h>
#include<string.h>
union REGS in,out;
void init();
void transmit(char str);
void recive();
void main()
{
int ch,i,n=0;
char string[10],c1;
clrscr();
init();
do
{
printf("\nMENU");
printf("\n1.Transmit");
printf("\n2.Recive");
printf("\nEnter your choice=");
scanf("%d",&ch);
switch(ch)
{
case 1:
printf("\nEnter data to transmit=");
scanf("%s",&string);
n=strlen(string);
for(i=0;i<n;i++)
{
transmit(string[i]);
}
transmit('\0');
break;
case 2:
printf("\nRecived data is =");
recive();
break;
}
printf("\nDo you want to continue(y/n)=");
flushall();
scanf("%c",&c1);
}while(c1=='y');
getch();
}
void init()
{
in.h.ah=0x0;
in.h.al=0xe3;
in.h.dh=0x0;
in.h.dl=0x0;
int86(0x14,&in,&out);
}
void transmit(char str)
{
in.h.ah=0x1;
in.h.al=str;
in.h.dh=0x0;
in.h.dl=0x0;
int86(0x14,&in,&out);
if(out.h.ah && 0x01==1)
printf("\nData trasnmitted successfully");
else
printf("\nError in data transmission");
}
void recive()
{
char c;
in.h.ah=0x2;
in.h.dh=0x0;
in.h.dl=0x0;
int86(0x14,&in,&out);
c=out.h.al;
if(c!='\0')
{
printf("%c",c);
recive();
}
}
COMPUTER 1
MENU
1.Transmit
2.Recive
Enter your choice=1
Enter data to transmit=mmcoe
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Do you want to continue(y/n)=y
MENU
1.Transmit
2.Recive
Enter your choice=2
Recived data is =prasad
Do you want to continue(y/n)=n
COMPUTR 2
****************OUTPUT*********************MENU
1.Transmit
2.Recive
Enter your choice=2
Recived data is=mmcoe
Do you want to continue(y/n)=y
MENU
1.Transmit
2.Recive
Enter your choice=1
Enter data to transmit=prasad
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Data trasnmitted successfully
Do you want to continue(y/n)=
0 comments:
Post a Comment