anchor.diff:  {
     fpGUI  -  Free Pascal GUI Toolkit
   
  -  Copyright (C) 2006 - 2013 See the file AUTHORS.txt, included in this
  +  Copyright (C) 2001 - Aaron Lawrence (aaronl@consultant.com)
  +  Copyright (C) 2006 - 2015 See the file AUTHORS.txt, included in this
     distribution, for details of the copyright.
   
     See the file COPYING.modifiedLGPL, included in this distribution,
  
positive.code: //      this takes one of the INF bitmap blocks
  //      and decompresses it using LZW algorithms.
  
  procedure LZWDecompressBlock( pbInput: pByte;
                                number_bytes: LongWord;
                                pbOutput: PBYTE;
                                Var bytesOut: LongWord;
                                Var FinalCode: byte );
  var
    nextAvailableCode: LongWord;
    currentCode: LongWord;
  
negative.code:   begin
      if clear_flag then
      begin
        clear_flag := false;
        lastCode := currentCode;
        character := currentCode;
  
        pbOutput^ := currentCode;
        inc( pbOutput );
        FinalCode := currentCode;
        inc( BytesOut );
      end
      else if currentCode = CLEAR_TABLE then
      begin
        clear_flag := true;
        nextAvailableCode := FIRST_CODE;
        bitsPerCode := INIT_BITS;
        maxDictionaryCode := MaxValNBits( bitsPerCode );
      end
      else
      begin
        if currentCode >= nextAvailableCode then
        begin
           decode_stack[ 0 ]:= character;
           theString := decode_string( Addr( decode_stack[ 1 ] ),
                                      lastCode );
        end
        else
          theString := decode_string( Addr( decode_stack[ 0 ] ),
                                     currentCode );
  
        character := longword( theString^ );
        while theString >= Addr( decode_stack[ 0 ] ) do
        begin
          FinalCode := theString^;
  
          pbOutput^ := theString^;
          inc( pbOutput );
          dec( TheString );
  
  