 :
  BitEditor         
       -   .fdf,
        
     -    Atmel

    :
  tiny13, tiny2313, tiny26,
  tiny24, tiny44, tiny84,
  tiny25, tiny45, tiny85,
  mega8515, mega8535, mega162, mega169,
  mega8, mega16, mega32, mega64, mega128,
  mega8U2, mega16U4, mega16U4RC, mega32U4, mega32U4RC,
  mega1281, mega2561,
  mega48, mega88, mega168

:
  -   ,   
  -    /  
  - checkbox '  ' 
     listbox '-'/'-'
  -       -
     ';'     

  :
      3 
  1- :
    
        (      )
     ( )
         ,
         -, , 
        listbox '-'/'-'
        -   CheckBox-   #bytes (2- )
  2- :
    CheckBox-     #bytes
  3- :
       #edits
    (  1   ,
      2  -      CheckBox)


  :

 #bytes
    #bytes
      

#bytes ' ' _
  #byte ' ' (__0,__1,...) (__0,__1,...)

__0,__1 -   
__0,__1 -   - '0'  '1'
!       bytes     
  (0,1,2,3,4,5,6,7)


#edits
  #edit ' ':boolean (_) (true=0,false=1)
  #edit _ '_':list (__0,__1,...)
        ('__0' = _:_._,
         '__1' = _:_.ENABLE,
         '__2' = _:_.DISABLE,
         ...
         )
  #edit _ ' ':list (__0,__1,...)
        __0:
          ('  0' = _,
           '  1' = _,
           ...
          )
        __1:
          ('  0' = _,
           '  1' = _,
           ...
          )

#edit -     #edit
_ -         
_ -   
list  boolean -  
(__0,__1,...) -  ,    
                - 
__0,__1 - ,   - 
_ -  ,    0,1,X:
                   :list
         X ,          
          #edit 'xx':list (A,B,C) ( 'AAA'=10X,'BBB'=010 )
           'AAA'  A=1,B=0, C  
           'BBB'  A=0,B=1, C=0
_ - _,   
_ -  ,   
                          
:_._  
_.ENABLE -   
_.DISABLE -   
  boolean    CheckBox
  list     
!      
          
    %%,  %%   ,   
  ';' - 

 - 2  ,   boolean,    list,
            list,    list

#bytes 'lock bytes' _lb
  #byte 'lock byte' (LB1,LB2) (1,1)

#bytes 'fuse bytes' _fb
  #byte 'fuse hight byte' (BODLEVEL0,BODLEVEL1,BODLEVEL2,EESAVE,WDTON,SPIEN,DWEN,RSTDISBL) (1,1,1,1,1,0,1,1)
  #byte 'fuse low byte' (CKSEL0,CKSEL1,CKSEL2,CKSEL3,SUT0,SUT1,CKOUT,CKDIV8) (0,1,0,0,0,1,1,0)

#edits
  #edit 'Enable Serial Program':boolean (SPIEN) (true=0,false=1)
  #edit 'Brown-out Detector trigger level':list
        (BODLEVEL2,BODLEVEL1,BODLEVEL0)
        ( 'BOD Disabled' = 111,
           '1.8V' = 110,
           '2.7V' = 101,
           '4.3V' = 100 )
  #edit 'Select Clock source':list 
        ( CKSEL3,CKSEL2,CKSEL1,CKSEL0 )  
        (
        'Low Power Crystal Oscillator 0.4-0.9MHz' = 100X:SUT.LPFSCO,
        'Low Power Crystal Oscillator 0.9-3.0MHz' = 101X:SUT.LPFSCO,
        'Low Power Crystal Oscillator 3.0-8.0MHz' = 110X:SUT.LPFSCO,
        'Low Power Crystal Oscillator 8.0-16.0MHz'= 111X:SUT.LPFSCO,
        'Full Swing Crystal Oscillator 0.4-20MHz' = 011X:SUT.LPFSCO,
        'Low Frequency Crystal Oscillator'        = 010X:SUT.LFCO,
        'Internal 128 kHz RC Oscillator'          = 0011:SUT.RCO,
        'Calibrated Internal RC Oscillator 8MHz'  = 0010:SUT.RCO,
        'External Clock'                          = 0000:SUT.RCO
        )
  #edit SUT 'Start-up Times':list (CKSEL0,SUT1,SUT0)
        LPFSCO:(
          'Ceramic resonator, fast rising power    258 CK 14CK+4.1ms' = 000,
          'Ceramic resonator, slowly rising power  258 CK 14CK+65ms'  = 001,
          'Ceramic resonator, BOD enabled          1K CK 14CK'        = 010,
          'Ceramic resonator, fast rising power    1K CK 14CK+4.1ms'  = 011,
          'Ceramic resonator, slowly rising power  1K CK 14CK+65ms'   = 100,
          'Crystal Oscillator, BOD enabled         16K CK 14CK'       = 101,
          'Crystal Oscillator, fast rising power   16K CK 14CK+4.1ms' = 110,
          'Crystal Oscillator, slowly rising power 16K CK 14CK+65ms'  = 111
        )
        LFCO:(
          'BOD enabled         1K CK 14CK'       = 000,
          'Fast rising power   1K CK 14CK+4.1ms' = 001,
          'Slowly rising power 1K CK 14CK+65 ms' = 010,
          'BOD enabled         32K CK 14CK'      = 100,
          'Fast rising power   32K CK 14CK+4.1ms'= 101,
          'Slowly rising power 32K CK 14CK+65ms' = 110
        )
        RCO:(
          'BOD enabled         6 CK 14CK        = X00,
          'Fast rising power   6 CK 14CK+4.1 ms = X01,
          'Slowly rising power 6 CK 14CK+65 ms  = X10,
          'BOD enabled         6 CK 14CK        = X00,
          'Fast rising power   6 CK 14CK+4 ms   = X01,
          'Slowly rising power 6 CK 14CK+64 ms  = X10
        )






C :

 
'list' - ComboBox
'boolean' - CheckBox

<identifier> -  -   ,   
{<item>,...} -  - <item>  
{<item>' '...} -  - <item>  
{<item>...} -  - <item>  
<string> -    - 'str str'     %%,
            %%   ,   
'#byte' -  , 

<fuse_def_file> :- {<bytes_section>} <edits_section>
<bytes_section> :- '#bytes ' <section_name> ' ' <file_name> ' ' {<byte_def>' '...}
<edits_section> :- '#edits ' <section_name> ' ' {<editor_def>,...}
<byte_def> :- '#byte ' <byte_name> '(' {<bit_name>,...} ')' '(' {<default_bit>,...} ')'
<bit_name> :- <identifier>
<default_bits> :- '0'|'1'
<editor_def> :- '#edit ' <editor_name>:<editor_type> ' ('{<bit_name>,...}') '
                {<values_lists>' '...}
<values_lists> :- [<section_name>':']'('{<value>,...}')'
<editor_type> :- 'list'|'boolean'|'bits'
<value> :- <value_name> '=' <value_def> [<value_actions>]
<value_actions> :- (':'<value_action>...)
<value_action> :- <editor_name>'.ENABLE' | <editor_name>'.DISABLE' | <editor_name>'.'<section_name>
<value_def> :- {<value_bit>...} | 'true=0,false=1' | 'true=1,false=0'
<value_bit> :- 0|1|X
<byte_name> :- <string>
<editor_name> :- <string>
<section_name> :- <string>
<value_name> :- <string>
