home *** CD-ROM | disk | FTP | other *** search
/ Hot Shareware 32 / hot34.iso / ficheros / DTOOL / INTER57E.ZIP / PCICFG11.ZIP / BLANK.PCI < prev    next >
Text File  |  1997-09-27  |  4KB  |  100 lines

  1. %! Detailed register description file for PCICFG.EXE by Ralf Brown
  2. %!
  3. %! Filename VVVVDDDD.PCI = Vendor VVVVh, Device DDDDh 
  4. %! Last Edit 9/27/97 by Ralf Brown
  5. %!
  6.  
  7. Everything preceding a line beginning with the six characters "!begin" is
  8. a comment and will be ignored (with the proviso that the total file size
  9. not exceed 64K).  Everything from the !begin line to a line starting with
  10. the four characters "!end" forms part of the device description, in a
  11. format similar to that used for printf().
  12.  
  13. To create your own device description file for PCICFG, copy this file to
  14. a file in the same directory containing PCICFG.EXE called VVVVDDDD.PCI,
  15. where VVVV are the four hexadecimal digits of the PCI vendor ID reported
  16. by PCICFG, and DDDD are the four hexadecimal digits of the PCI device
  17. ID.  Then, place the appropriate formatting directives between the
  18. "!begin" and "!end" lines below.
  19.  
  20.  
  21.    format spec:
  22.       everything is literal except backslashed and conversion ops
  23.       introduced by a percent sign; the percent-sign is followed by
  24.       PCI field specifier, an optional print width, and the conversion
  25.       character
  26.     
  27.       conversion characters:
  28.      <newln>  ignore the newline and paste together the two lines
  29.      %      literal percent sign
  30.      !      rest of line is a comment and is skipped
  31.      b      print number in binary
  32.      o      print number in octal
  33.      d      print number in decimal
  34.      x      print number in hexadecimal
  35.      e      print boolean value as "disable" (false) or "enable" (true)
  36.      E      print boolean value as "enable" (false) or "disable" (true)
  37.      f      print boolean value as dash (false) or check mark (true)
  38.      n      print boolean value as Y (false) or N (true), i.e. inverted
  39.      y      print boolean value as N (false) or Y (true)
  40.      (name)      print enumerated value given by enum spec "name"
  41.      {xyz}      print Nth character in "xyz" (prints last if N > # chars)
  42.      /lit/      print literal string if boolean is true, dashes otherwise
  43.      |a1;a2;a3;a4|  select among 2-4 alternate values (index 0-3), prints
  44.              last alternative given if N > # alternatives
  45.  
  46.       backslash conversions supported:
  47.          \t    tab character
  48.      \\    literal backslash
  49.      \X    (any X not listed above:) literal X
  50.  
  51.       PCI field specifier:
  52.      '[' hex-address ']'        entire byte at offset 'hex-address'
  53.      '[' addr ':' bitnum ']'    bit 'bitnum' of byte at offset 'addr'
  54.      '[' addr ':' bit1 '-' bit2 ']'
  55.                     bits 'bit1' to 'bit2' of byte at 'addr'
  56.          '[' bitfield-spec '|' bitfield-spec ... ']'
  57.                     concatenate multiple bitfields (MS first)
  58.          any of the above may also add the following modifiers just prior to
  59.        the closing bracket or a separating vertical bar:
  60.            '<' shift        shift the field left 'shift' bits
  61.            '+' offset        add 'offset' to the field value
  62.            '<' shift '+' offset
  63.                     shift left and then add
  64.          bit numbers up to 31 are supported, and address the appropriate byte
  65.        beginning at the specified address; all fields are treated as 32-bit
  66.        values internally
  67.       Note: addresses are in hex, all other values are decimal (unsigned except
  68.          for 'offset', which may include a leading minus sign after the plus
  69.      sign introducing it)
  70.  
  71.       When printing, an explicit width greater than the item's actual width
  72.          causes the addition of padding on the left to ensure the desired
  73.      width; the padding uses blanks for all formats except binary (b),
  74.      octal (o), and hexadecimal (x) numbers, which use zeros.
  75.  
  76.  
  77. !begin
  78.  
  79.   %! insert device description here
  80.  
  81. !end
  82.  
  83. ; everything between the above !end line and a following !enum line is also
  84. ; a comment
  85.  
  86. ;!enum ToBeImplemented
  87. ;Value0
  88. ;Value1
  89. ;Value2
  90. ;...
  91. ;ValueN  (also used for any values > N)
  92. ;!end
  93.  
  94. ; enums are matched by name; first, an exact match is attempted, then the
  95. ;  first named enum starting with the string in the (enum) is selected
  96. ; name matches are case-sensitive!
  97.  
  98.  
  99. %! end of file
  100.