home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 13 / 13.iso / p / p078 / 3.img / NETFORMS.PLB / ALLEGRO.CF < prev    next >
Encoding:
Text File  |  1991-10-14  |  2.8 KB  |  160 lines

  1. /*
  2.     /L Do not append sheet number to labels
  3.  */
  4.  
  5. /*  VERSION="1.10   14-OCT-91"
  6.  *      - Added Version message
  7.  *
  8.  *  Capacities:
  9.  *      - Part Names are not checked for length
  10.  *      - Module Names are not checked for length
  11.  *      - Reference Strings are not checked for length
  12.  *      - Node Names are not checked for length
  13.  *      - Node Numbers are limited to 5 digits (plus the leading 'N')
  14.  *      - Pin Numbers are not checked for length
  15.  *
  16.  *  Characters:
  17.  *      - All ASCII keyboard characters are legal
  18.  */
  19.  
  20. int sw_L;
  21.  
  22. int net_items;
  23.  
  24. /*-----------------------*/
  25.  
  26. Initialize()
  27. {
  28.     WriteString(0, "Creating Netlist...");
  29.     WriteCrLf(0);
  30.  
  31.     AddSymbol("ModuleNameStr");
  32.     SetNumberWidth(5);
  33.  
  34.     sw_L = SwitchIsSet("L");
  35. }
  36.  
  37. /*-----------------------*/
  38.  
  39. WriteHeader()
  40. {
  41.     int len;
  42.  
  43.     WriteString(1, "$PACKAGES");
  44.     WriteCrLf(1);
  45.  
  46.     while (LoadInstance())
  47.     {
  48.         len = SymbolLength(ModuleName);
  49.         if (len > 0)
  50.         {
  51.             CopySymbol(ModuleName, ModuleNameStr);
  52.         }
  53.         else
  54.         {
  55.             CopySymbol(PartName, ModuleNameStr);
  56.         }
  57.         WriteSymbol(1, ModuleNameStr);
  58.         WriteString(1, "! ");
  59.  
  60.         WriteSymbol(1, PartName);
  61.         WriteString(1, "; ");
  62.  
  63.         WriteSymbol(1, ReferenceString);
  64.         WriteCrLf(1);
  65.     }
  66.  
  67.     WriteString(1, "$NETS");
  68.     WriteCrLf(1);
  69. }
  70.  
  71. /*-----------------------*/
  72.  
  73. HandleNodeName()
  74. {
  75.     int i;
  76.  
  77.     net_items = 0;
  78.  
  79.     i = GetStandardSymbol(TypeCode);
  80.     if (i == 'L')
  81.     {
  82.         if (sw_L == 0)
  83.         {
  84.             SetNumberWidth(1);
  85.             MakeLocalSignal("/");
  86.             SetNumberWidth(5);
  87.             WriteSymbol(1, LocalSignal);
  88.         }
  89.         else
  90.         {
  91.             WriteSymbol(1, SignalNameString);
  92.         }
  93.     }
  94.     if (i == 'P')
  95.     {
  96.         WriteSymbol(1, SignalNameString);
  97.     }
  98.     if (i == 'S')
  99.     {
  100.         WriteSymbol(1, SignalNameString);
  101.     }
  102.     if (i == 'N')
  103.     {
  104.         WriteString(1, "N");
  105.         WriteSymbol(1, NetNumber);
  106.     }
  107.     if (i == 'U')
  108.     {
  109.         WriteString(1, "N");
  110.         WriteSymbol(1, NetNumber);
  111.     }
  112.     WriteString(1, "; ");
  113. }
  114.  
  115. /*-----------------------*/
  116.  
  117. WriteNet()
  118. {
  119.     if (net_items == 4)
  120.     {
  121.         WriteString(1, ",");
  122.         WriteCrLf(1);
  123.         WriteString(1, "    ");
  124.  
  125.         net_items = 0;
  126.     }
  127.     WriteString(1, " ");
  128.  
  129.     WriteSymbol(1, ReferenceString);
  130.     WriteString(1, ".");
  131.     WriteSymbol(1, PinNumberString);
  132.  
  133.     net_items = net_items + 1;
  134. }
  135.  
  136. /*-----------------------*/
  137.  
  138. WriteNetEnding()
  139. {
  140.     WriteCrLf(1);
  141. }
  142.  
  143. /*-----------------------*/
  144.  
  145. ProcessFieldStrings()
  146. {
  147. }
  148.  
  149. /*-----------------------*/
  150.  
  151. WriteNetListEnd()
  152. {
  153.     WriteString(1, "$END");
  154.  
  155.     WriteString(0, "Done");
  156.     WriteCrLf(0);
  157. }
  158.  
  159.  
  160.