On 10 June 2013 19:58, Charles Mills <charl...@mcn.org> wrote: > Is anyone familiar with the "internals" of CSRCESRV run-length compression? > I am familiar with RLE schemes in general -- typically a run of n identical > characters is replaced with something like <escape><n><character>. Does > anyone know the specifics of z/OS's scheme? What is the escape character? > How is <n> specified? Is it <escape><n><character> or > <escape><character><n>. How do they handle occurrences of <escape> in the > original data? (A typical scheme is <escape>1<escape>.)
I don't know, but without looking I'd guess it's SNA Character String (SCS) format, or perhaps part of it. The first byte would be a String Control Byte (SCB), with the leftmost two bits indicating what follows, and the rightmost six containing the length of the run of data. Of course there might well be higher level header info. 00 cccccc No compressed characters follow 10 cccccc Repeat blanks 11 cccccc Repeat the following non-blank character 01 cccccc Compacted characters follow The above is from the NJE Formats & Protocols book, but it's documented in lots of places, including non-mainframe ones. It should be pretty easy to check my guess against your data - certainly if you have raw and compressed data to compare. Tony H. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN