home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d5xx / d523 / serlib.lha / SerLib / Examples / Aztec_3.6 / mini.c < prev    next >
C/C++ Source or Header  |  1991-08-05  |  1KB  |  44 lines

  1. #include "serlibbase.h"
  2. #include "serlib.h"
  3.  
  4. struct SerLibBase    *SerLibBase;
  5. struct SerStatus ss;
  6. struct SerLibData    *sld;
  7. void *OpenLibrary();
  8.  
  9. char buf[2048];
  10. ULONG len;
  11. main()
  12. {
  13.     SerLibBase=(void *)OpenLibrary((UBYTE *)"serlib.library",3L);
  14.     sld=(struct SerLibData *)OpenSerial((UBYTE *)"serial.device",0L,2400L,8L,1L,(ULONG)(SERF_RAD_BOOGIE|SERF_7WIRE|SERF_SHARED));
  15.     if (!sld) printf("Couldn't open...");
  16.     else {
  17.         ChangeData(sld,2400L,8L,1L,(ULONG)(SERF_RAD_BOOGIE|SERF_7WIRE|SERF_SHARED));
  18.         printf("`.' to exit...\n> ");
  19.         scanf("%s",buf);
  20.         while (buf[0]!='.') {
  21.             strcat(buf,"\r\n");
  22.             if (CheckCD(sld))
  23.                 printf("Got a carrier!\n");
  24.             printf("Current unread: %ld\n",SerBuffer(sld));
  25.             SendSer(sld,buf,(ULONG)strlen(buf));
  26.             WaitSer(sld,0L);
  27.             Delay(20L);
  28. loop:
  29.             len=SerBuffer(sld);
  30.             if (len>1040) len=1040;
  31.             RecvSer(sld,buf,(ULONG)len);
  32.             WaitSer(sld,0L);
  33.             buf[len]='\0';
  34.             printf("%s",buf);
  35.             GetStatus(sld,&ss);
  36.             if (ss.ss_unread>0) goto loop;
  37.             printf("> ");
  38.             scanf("%s",buf);
  39.         }
  40.         CloseSerial(sld);
  41.     }
  42.     CloseLibrary(SerLibBase);
  43. }
  44.