> But my escaped blocks are variable, due to some clever carry and > multiply code. Anyhow, it's a far more sophisticated decompressor, > yet only written in 1 page of code (if you include the inlined > functions), and it's safe and fast. It can't be hacked to crash by > reading unallocated RAM, for example. So it's good for apps which > need security, we wouldn't want someone to "decompress" variables > off the stack now would we :). Of course ElfData must do everything > correctly so that's why I paid attention to details like this.
Mine's got RLE in the decompression format, also, without a separate RLE stage, it's in the main decompressor stage. It can repeat 16x with only 1 byte extra, and 256x with 2 bytes. With 4 bytes it can repeat 64K times.... Well it uses a cool "carry and multiply" encoder that carries 4 bits per byte, so I can repeat by any number of times, in a small amount of encoded space. Mostly I imagine we'll find short repeats, often just two, so 1 byte RLE is good. _______________________________________________ Unsubscribe or switch delivery mode: <http://www.realsoftware.com/support/listmanager/> Search the archives: <http://support.realsoftware.com/listarchives/lists.html>
