On 8/28/25 03:41, Louis Santillan wrote:
Additionally, jart from cosmopolitan libc/APE has a short C implementation (though somewhat awkwardly organized, IMO) of LZ4.

LZ4 is (slightly) more complex than MVCOMP, and not as efficient in the use case at hand. FreeDOS HELP (EN, AMB) size:

Uncompressed = 862 KiB

DEFLATE      = 380 KiB
MVCOMP       = 462 KiB
LZ4 -9       = 490 KiB

I did not bother with benchmarks, but I doubt LZ4's decompression speed to be noticeably better than MVCOMP. Both are of comparable complexity, with one or two extra steps for LZ4.

The LZ4 implementation shines when it comes to compression speed, though. My current MVCOMP compression implementation is *very* slow. I did not look to optimize it as I created MVCOMP primarily to compress assets that are embedded in executable (like NLS strings), the compressor performances does not matter in this use case.

My goal was to achieve a maximum compression ratio with a decoder as tiny and stupidly simple as reasonably possible.

Mateusz


_______________________________________________
Freedos-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to