anchor.diff:      PluginSettings:TRegistry;
       WinampSettings:TRegistry;
       WinampPlugin:string;
  -    CleanFiles:Boolean;
  +    CleanFiles,SimulateActions:Boolean;
       IndicateMP3Pro:Integer;
       MP3Extensions:TStringList;
   
  
positive.code: 
  procedure ProcessParameters;
  var
      FullPath,RecurseDirectory,SimulateRename:Boolean;
      ProcessedTypes:set of TMP3FileType;
  
      AnalyzeCount:array[TMP3FileType] of Integer;
      TagCount,InvalidPadCount,IllegalPadCount,WAVECount,JunkCount:array[1..4] of Integer;
      ProcessCount,RenameCount:array[1..4] of Integer;
  
      procedure RenameFilesByType(Path:string);
  
negative.code:     Result.HasIllegalPadding:=False;
      Result.HasWAVEHeader:=False;
      Result.HasJunkData:=False;
      Result.HasID3v1Tag:=False;
  
      Input:=TFileStream.Create(FileName,fmOpenRead or fmShareDenyWrite);
      if CleanFiles and (not SimulateActions) then begin
          Output:=TFileStream.Create(FileName+'.cleaned',fmCreate or fmShareExclusive);
      end;
  
      // Skip any ID3v2 tags.
      Tag2:=TID3v2Tag.Create;
      while Tag2.Read(Input) do begin
          Write('Found ID3v',Tag2.GetVersionString,' tag of ',SizeOf(TID3v2Header)+Tag2.GetDataSize,' bytes, ');
          if CleanFiles then begin
              Write('copying (first tag only).');
              if SimulateActions then begin
                  Write(' [SIMULATION]');
              end;
              WriteLn;
          end else begin
              WriteLn('skipping.');
          end;
  
          if Tag2.HasInvalidPadding then begin
              Write('The tag contains invalid (i.e. non-zero) padding, ');
              if CleanFiles then begin
                  Write('fixed.');
                  if SimulateActions then begin
                      Write(' [SIMULATION]');
                  end;
              end else begin
                  Write('ignored.');
              end;
              WriteLn;
              Result.HasInvalidPadding:=True;
          end;
  
          if Result.HasID3v2Tag=False then begin
              // Write out only the first tag that has been found.
              if CleanFiles and (not SimulateActions) then begin
                  // Be sure the tag is only written if CleanFiles is enabled.
                  if not Tag2.Write(Output) then begin
                      WriteLn('Error writing tag to cleaned output file.');
  