Hi Tom,

> On Jan 16, 2025, at 1:44 PM, tom ehlert via Freedos-devel 
> <freedos-devel@lists.sourceforge.net> wrote:
> 
> 
>> Recording in MONO instead of COLOR will roughly double the capacity. But, it 
>> won’t look as pretty when simply viewing the log. 
> 
> recording in COLOR, the color would be an good candidate for compression; 
> even trivial runlength encoding
> would probably provide excellent compression ratio as color rarely changes.
> 
> Tom

You are correct. I did consider implementing RLE for COLOR and probably TEXT 
data.

However, I decided not use it in the initial version for a couple reasons. 

As you are aware, RLE is very simple and easy to implement even in assembly for 
both encoding and decoding. But, it would add a little more complexity and a 
couple bytes of code to the program. Being lazy, I decided that for the initial 
version, it would only be as complex as required to accomplish what I wanted. 

This is also the reason that I did not add a couple other features I was 
considering. For example, hot-key support to turn on/off logging, perform 
screen captures and some other minor things. 

Although it does not use RLE at present, it does do a little work to reduce 
memory consumption. Based on the various methods being used to capture text and 
the contents of the lines being logged, a line can consume as little a 2-bytes. 
On average during testing when in 80x25 text mode, MONO uses about 1k per 
screen/page (COLOR about 2k). When  given a tiny 256K XMS memory buffer, it can 
store about 128 color pages of information before beginning to discard older 
lines.

The lack of RLE is one of the reasons that I decided not to enable support for 
storing the log data in the lower 640k. Once allocated, using that memory for 
the log is not any different than when stored in a UMB. The code for logging to 
LOW memory is in LOGGER. But, it is disabled for now in the binary.

Logger is also very fast. While I am sure that you could use a benchmark 
program to see a small reduction in overall command line text output 
performance, you will not notice it is running. Adding RLE would effect 
performance. However, the effect could be improved speed when logging to XMS. 
After all, RLE is very quick and would reduce the amount of data that would 
need sent to XMS. 

While I think LOGGER is awesome as-is, it can definitely be made even better. 

:-)

Jerome

> 
> 
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel



_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to