{SEED KEY ALGORITHM - PASCAL IMPLEMENTATION} function SeedToKey(ASeed: Word): Word; var I: Integer; begin Result:=0; I:=1; if Odd(ASeed shr 15) then Inc(I, 8); if Odd(ASeed shr 7) then Inc(I, 4); if Odd(ASeed shr 4) then Inc(I, 2); if Odd(ASeed) then Inc(I); for I:=I DownTo 1 do begin Result:=(((ASeed shr 1) and $FFFE) or Ord(not(Odd(ASeed shr 13) and Odd(ASeed shr 3)))) and $7FFF; if Odd(ASeed shr 9) xor Odd(ASeed shr 8) xor Odd(ASeed shr 2) xor Odd(ASeed shr 1) then Result:=Result or $8000; ASeed:=Result; end; end;