home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / tcp_ip / ka9q / kit_src / proc01.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-09-03  |  3.7 KB  |  166 lines

  1. /*    (C) Copyright 1991 Dave Fritsche (wb8zxu), All Rights Reserved.
  2.  * 
  3.  *    Redistribution and use in source and binary forms are permitted for
  4.  *    non-commercial use, provided that the above copyright notice and this
  5.  *    paragraph are duplicated in all such forms.  THIS SOFTWARE IS PROVIDED
  6.  *    ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
  7.  *    WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND
  8.  *    FITNESS FOR A PARTICULAR PURPOSE.
  9.  */
  10. #include <stdio.h>
  11. #include <ctype.h>
  12. #include "screen.h"
  13.  
  14. proc01()
  15. {
  16.     unsigned int m, n, k;
  17.     unsigned long ip1, ip2, ip3, ip4;
  18.  
  19.     com1 = com2 = com3 = com4 = drsi_0 = drsi_1 = pc100_0 = pc100_1 = 0;
  20.  
  21. /* STRIP NAME DOWN */
  22.     n = chktxt(ifd[0]); 
  23.     strcpy(name, ifd[0]);
  24.  
  25. /* STRIP STREET ADDRESS */
  26.     n = chktxt(ifd[1]);
  27.     strcpy(street, ifd[1]);
  28.  
  29. /* STRIP CITY */
  30.     n = chktxt(ifd[2]);
  31.     strcpy(city, ifd[2]);
  32.  
  33. /* STRIP STATE */
  34.     n = chktxt(ifd[3]);
  35.     ifd[3][0] = (unsigned char)toupper( (unsigned int)ifd[3][0] );
  36.     ifd[3][1] = (unsigned char)toupper( (unsigned int)ifd[3][1] );
  37.     strcpy(state, ifd[3]);
  38.  
  39. /* STRIP ZIP */
  40.     n = chktxt(ifd[4]);
  41.     strcpy(zip, ifd[4]);
  42.  
  43. /* STRIP PHONE */
  44.     n = chktxt(ifd[5]);
  45.     strcpy(phone, ifd[5]);
  46.  
  47. /* STRIP CALLSIGN */
  48.     n = chktxt(ifd[6]); 
  49.     for (m = 0; m <= strlen(ifd[6]); m++)
  50.         callsign[m] = (unsigned char)tolower( (unsigned int)ifd[6][m] );
  51.  
  52. /* CONVERT IP ADDRESS TO LONG INT */
  53.     buf[3] = NULL;
  54.     buf[0] = ifd[7][1];    buf[1] = ifd[7][2];    buf[2] = ifd[7][3];
  55.     sscanf(buf, "%ld", &ip1);
  56.     buf[0] = ifd[7][5];    buf[1] = ifd[7][6];    buf[2] = ifd[7][7];
  57.     sscanf(buf, "%ld", &ip2);
  58.     buf[0] = ifd[7][9];    buf[1] = ifd[7][10];    buf[2] = ifd[7][11];
  59.     sscanf(buf, "%ld", &ip3);
  60.     buf[0] = ifd[7][13];    buf[1] = ifd[7][14];    buf[2] = ifd[7][15];
  61.     sscanf(buf, "%ld", &ip4);
  62.     ip = (long)( (ip1 << 24) | (ip2 << 16) | (ip3 << 8) | ip4 );
  63.  
  64. /* GATEWAY REQUIRED */
  65.     if ( (ifd[9][0] == 'y') || (ifd[9][0] == 'Y') )
  66.         gate_rqd = 1;
  67.     else
  68.         gate_rqd = 0;
  69.  
  70. /* REMOTE PASSWORD REQUIRED */
  71.     if ( (ifd[8][0] == 'y') || (ifd[8][0] == 'Y') )
  72.         rmt_pass = 1;
  73.     else
  74.         rmt_pass = 0;
  75.  
  76. /* COM1 */
  77.     if ( (ifd[10][0] == 'y') || (ifd[10][0] == 'Y') )
  78.         com1 = 1;
  79.  
  80. /* COM2 */
  81.     if ( (ifd[11][0] == 'y') || (ifd[11][0] == 'Y') )
  82.         com2 = 1;
  83.  
  84. /* COM3 */
  85.     if ( (ifd[12][0] == 'y') || (ifd[12][0] == 'Y') )
  86.         com3 = 1;
  87.  
  88. /* COM4 */
  89.     if ( (ifd[13][0] == 'y') || (ifd[13][0] == 'Y') )
  90.         com4 = 1;
  91.  
  92. /* DRSI 0 */
  93.     if ( (ifd[14][0] == 'y') || (ifd[14][0] == 'Y') )
  94.         drsi_0 = 1;
  95.  
  96. /* DRSI 1 */
  97.     if ( (ifd[15][0] == 'y') || (ifd[15][0] == 'Y') )
  98.         drsi_1 = 1;
  99.  
  100. /* PC100 0 */
  101.     if ( (ifd[16][0] == 'y') || (ifd[16][0] == 'Y') )
  102.         pc100_0 = 1;
  103.  
  104. /* PC100 1 */
  105.     if ( (ifd[17][0] == 'y') || (ifd[17][0] == 'Y') )
  106.         pc100_1 = 1;
  107.  
  108. /* NETROM REQUIRED */
  109.     if ( (ifd[18][0] == 'y') || (ifd[18][0] == 'Y') )
  110.         nr_rqd = 1;
  111.     else
  112.         nr_rqd = 0;
  113.  
  114. /* COM PORT SPEED */
  115. /*    sscanf(ifd[7], "%ld", &m);
  116.  *    if ( (m != 19200)
  117.  *      && (m != 9600)
  118.  *      && (m != 4800)
  119.  *      && (m != 2400)
  120.  *      && (m != 1200)
  121.  *      && (m != 300) )
  122.  *        m = 1200;
  123.  *
  124.  *    switch(n)
  125.  *    {
  126.  *    case 1:
  127.  *        com1 = 1;
  128.  *        com1spd = m;
  129.  *        break;
  130.  *    case 2:
  131.  *        com2= 1;
  132.  *        com2spd = m;
  133.  *        break;
  134.  *    case 3:
  135.  *        com3 = 1;
  136.  *        com3spd = m;
  137.  *        break;
  138.  *    case 4:
  139.  *        com4 = 1;
  140.  *        com4spd = m;
  141.  *        break;
  142.  *    }
  143.  */
  144.  
  145. /* SOFTWARE PATH */
  146.     path[0] = ifd[19][0];    path[1] = ':';    path[2] = NULL;
  147.     if (path[0] == ' ')
  148.         path[0] = 'C';
  149.     n = chktxt(ifd[20]);
  150.     for (m = 0; m < n; m++)
  151.         if (isspace(ifd[20][m]) == 0)
  152.             break;
  153.     for (k = m; k < n; k++)
  154.         if (isspace(ifd[20][k]) != 0)
  155.             break;
  156.         else if (ifd[20][k] == '/')
  157.             path[k-m+2] =  '\\';
  158.         else if (ifd[20][k] == ':')
  159.             break;
  160.         else
  161.             path[k-m+2] = ifd[20][k];
  162.     path[k-m+2] = NULL;
  163.     if (path[k-m+1] == '\\')
  164.         path[k-m+1] = NULL;
  165. }
  166.