The compression of the brand new BCM was finished a long time ago. I just have no spare time completely and thinking about more robust command-line user interface and error handling.
The output can be separated into a few groups:
1. Banner
Code:
BCM v0.09 (c) 2009 Ilia Muraviev
Looks quite OK. Probably I may add the "(c) Copyright" or something.
2. Progress Info
Code:
Compressing 12.5 MB block...
23%
0.1 precision for MB is OK. No float representation of percentage completed is also OK I guess.
3. Done/Summary Message
Code:
1000000 -> 12340 in 4.123 sec
Summary, in one line. Input Size -> Output Size and execution time. 0.001 float precision is OK, but I'm not that sure. Probably, 0.01 or even 0.1 might be OK as well.
4. Error Messages
Code:
enwik8 already exists; Not overwritten
Data error: n=121234124
Data error: p=100
etc.
Never know how it should be. Probably "DATA ERROR: p=100" or "ERROR: xxx", or ...
5. Usage Screen
Code:
Usage: BCM [options] file [output]
Options:
-b# Set block size to # MB (Default: -b64)
-d Decompress
-f Force overwrite
Or "Usage: bcm [options] ..." (Lower case). Or something else.
Any suggestions and ideas are welcomed!