home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Komputer 1996 September
/
PCWK996.iso
/
polskie
/
orhmet
/
dfdisk
/
rlibc
/
sprzedaz.c
< prev
next >
Wrap
C/C++ Source or Header
|
1996-05-07
|
3KB
|
187 lines
#include "rlibc.h"
#include <string.h>
int DFStartTran ( void )
{
int wynik;
char * bufor=" ";
wynik=podaj_rozkaz("P1");
if (wynik!=I1)
return (wynik);
if (recvport(2, bufor)==-1)
return (R0);
return (mk_translate(bufor));
}
int DFSetInfo ( char *info )
{
int wynik;
char bufor[54+1];
if (strlen(info)!=54)
return (R4);
wynik=podaj_rozkaz("P5");
if (wynik!=I1)
return (wynik);
if (sendport(54, info)==-1)
return (R0);
if (recvport(2, bufor)==-1)
return (R0);
return (mk_translate(bufor));
}
int DFAdd ( char *nazwa, char *indeks, char *ilosc, char *cena, char *rabat )
{
int wynik;
char * bufor=" ";
char *bufor1=" ";
if (strlen(nazwa)!=18 || strlen(indeks)!=1 ||
strlen(ilosc)!=9 || strlen(cena)!=9 || strlen(rabat)!=3)
return (R4);
memcpy( bufor, nazwa, 18 );
bufor[18] = indeks[0];
memcpy( &bufor[19], cena, 9 );
memcpy( &bufor[28], ilosc, 9 );
memcpy( &bufor[37], rabat, 3 );
bufor[40] = 0;
wynik=podaj_rozkaz("P2");
if (wynik!=I1)
{
return (wynik);
}
if (sendport(40, bufor)==-1)
{
return (R0);
}
if (recvport(2, bufor1)==-1)
return (R0);
return (mk_translate(bufor1));
}
int DFCancel ( void )
{
int wynik;
char * bufor=" ";
wynik=podaj_rozkaz("P4");
if (wynik!=I1)
return (wynik);
if (recvport(2, bufor)==-1)
return (R0);
return (mk_translate(bufor));
}
int DFCancelTran ( void )
{
int wynik;
char * bufor=" ";
wynik=podaj_rozkaz("L4");
if (wynik!=I1)
return (wynik);
if (recvport(2, bufor)==-1)
return (R0);
return (mk_translate(bufor));
}
int DFCross ( char *nazwa )
{
int wynik;
char * bufor=" ";
if (strlen(nazwa)!=18)
return (R4);
wynik=podaj_rozkaz("P6");
if (wynik!=I1)
return (wynik);
if (sendport(18, nazwa)==-1)
return (R0);
if (recvport(2, bufor)==-1)
return (R0);
return (mk_translate(bufor));
}
int DFFinish ( char *suma )
{
int wynik;
char * bufor=" ";
wynik=podaj_rozkaz("PA");
if (wynik!=I1)
return (wynik);
if (recvport(2, bufor)==-1)
return (R0);
wynik=mk_translate(bufor);
if (wynik==D1)
{
if (recvport(10, suma)==-1)
wynik=R0;
suma[10]=0;
wynik=mk_translate(bufor);
}
return (wynik);
}
int DFPrParf ( char *forma, char *kwotag, char *kwotar )
{
int wynik;
char * bufor=" ";
char * bufor1=" ";
if ( strlen(forma)!=1 || strlen(kwotag)!=9 || strlen(kwotar)!=9 )
return (R4);
memcpy(bufor, forma, 1 );
memcpy(&bufor[1], kwotag, 9 );
memcpy(&bufor[10], kwotar, 9 );
wynik=podaj_rozkaz("P3");
if (wynik!=I1)
return (wynik);
if (sendport(19, bufor)==-1)
return (R0);
while (1)
if (recvport(2,bufor1)==-1)
{
if (mk_kbhit())
return (R1);
}
else
return (mk_translate(bufor1));
}
int DFPrPokw ( char *forma, char *kwota )
{
int wynik;
char * bufor=" ";
char * bufor1=" ";
if ( strlen(forma)!=1 || strlen(kwota)!=9 )
return (R4);
memcpy(bufor, forma, 1 );
memcpy(&bufor[1], kwota, 9 );
wynik=podaj_rozkaz("D1");
if (wynik!=I1)
return (wynik);
if (sendport(10, bufor)==-1)
return (R0);
while (1)
if (recvport(2,bufor1)==-1)
{
if (mk_kbhit())
return (R1);
}
else
return (mk_translate(bufor1));
}