- created

- released 0.0.1

- simplified s, A, B

- released 0.0.2

- simplified nxt=

- released 0.0.3

- removed commented code
- code formatting

- released 0.0.4

- kk now unsigned char
- removed 64 bit ints

- released 0.0.5

- created decrypt_2ts

- released 0.0.6

- renamed files
- created decrypt_many_ts, removed others
- external interface has 2 functions only: set_cws() and decrypt_many_ts()
- reformatted code
- reimplemented s12,s34,s56,s7
- unsigned char become int for table optimization

- released 0.0.7

- optional icc compiler
- kk now 0..55
- decrypt_many_ts really works (no parallelism yet)
- added get_cws() to interface
- created stream.c
- created key_schedule_stream, using iA[] and iB[]

- released 0.0.8

- decrypt_many_ts() makes a group, sorts the packets, processes them
- preliminar stream_cypher_group() created
- parallel computing activated
- huge speed increase (+500%) thanks to stream_cypher_group()

- released 0.0.9

- block_cypher_group() created (no parallelism yet)

- released 0.0.10

- block_cypher_group() has 56 simple iterations
- block_cypher_group() doesn't shift registers anymore

- released 0.0.11

- some parallelization on block_cypher_group()

- released 0.0.12

- better parallelization of block_cypher_group()

- released 0.0.13

- block_cypher() was still called by error when N=23
- speed is now 109Mbit/s on AMD XP2000+ CPU

- released 0.0.14

- stream_cypher_group() has a init and normal variant
- A[0]-A[9] instead of A[1]-A[10], same for B
- implemented virtual shift of A and B
- speed is now 117Mbit/s on AMD XP2000+ CPU

- released 0.0.15

- better optimization of E and F in the stream cypher
- speed is now 119Mbit/s on AMD XP2000+ CPU

- released 0.0.16

- removed some debug overhead
- speed is now 120Mbit/s on AMD XP2000+ CPU

- released 0.0.17

- don't move packets with residue anymore
- speed is now 123Mbit/s on AMD XP2000+ CPU

- released 0.0.18

- solved alignment problems
- search groupable packets even beyond ungroupable ones
  (more speed in some real world cases)
- created decrypt_many_ts2(), useful with circular buffers

- released 0.0.19

- removed old code

- released 0.0.20

- partially converted code to size-independent group
- icc doesn't work with optimizations on

- released 0.1.1

- merge loops on block_decypher (speed++ gcc, speed-- icc)
- transposition are now functions (speed-- icc)
- icc works again (compiler bug work around?)

- released 0.1.2

- better use of COPY8 &co
- better flags for gcc
- removed old code

- released 0.1.3

- int and not char in block cypher (speed++++++ gcc, speed-- icc)

- released 0.1.4

- group abstraction finally implemented
- support for group width 64

- released 0.1.5

- group 64 mmx implemented (speed++ gcc)

- released 0.1.6

- more parallelism in block cypher (speed++ gcc)
- transposition before and after block (disabled because of no speed gain yet)

- released 0.1.7

- more parallelism in block cypher (speed++ gcc)
- transposition before and after block enabled (speed++ gcc)
- gcc options (unrolled 500) speed gcc++

- released 0.1.8

- reworked FFN_ALL_* constants (speed++++ gcc) 

- released 0.1.9

- transposition in block as inlined functions
- group abstraction working well

- released 0.1.10

- group 128 sse implemented, but batch is 64 mmx (not faster than group 64 mmx)

- released 0.1.11

- lot of code polishing and dead code elimination
- better and more debug output

- released 0.1.12

- name change: FFdecsa

- released 0.2.0

- separated test cases
- corrected all group_modes (now called parallel_modes)
- parallel 128 8 char implemented
- parallel 64 long implemented
- parallel 128 2 long implemented
- parallel 128 2 mmx implemented (incredibly slow, the compiler is very confused)
- parallel 128 16 charA implemented (very slow compilation)
- parallel 128 16 char implemented
- renamed softcsa* to FFdecsa*

- released 0.2.1

- new external interface (based on ranges)

- released 0.2.2

- can be compiled with g++ too
- using g++ the code is 3% faster!
- external interface: function name changing and new functions
- a group of ranges is now called a cluster
- renamed autogenerated files

- released 0.2.3

- written docs
- removed unneeded files
- added Copyright and license notes
- reworked "logic"

- released 0.3.0

- Makefile reworked
- misc fixes
- added vdr patch

- released 1.0.0 (public release)

