.CSO


.CSO is a compression method for the ISO image format. It is used to compress dumped PlayStation Portable UMD games, and is an alternative to the.DAX compression method. It is also sometimes called "CISO".
It was the first compression method for ISO. It was created so that more memory space can be saved. Booster created the first code; it was later optimized for better compression. Other formats tried to replace it by fixing up certain issues such as lag in games, such as.DAX and.JSO. However at the time, the popular application homebrew "DevHook" used CSO..DAX needed another loader, and.JSO was basically unused.
CSO uses Deflate compression with nine levels of presets, usually with 2 KiB blocks handled individually. While the highest levels of compression can introduce slowdown and lengthy load-times in software which relies heavily on disc streaming, even the lower levels are capable of substantial compression. This is partially due to the data layout of a UMD, though more frequently due to the use of Dummy Files as both an anti-piracy tool and a means to more optimally lay the data out physically on the disc.
In addition to being used for compressing PlayStation Portable UMD games, the PSP port of PicoDrive supports compressed Sega Mega-CD disc images in the CSO format.

Other formats

CSO are known to have received later extensions in the form of CSO "v2" and ZSO, using LZ4 compression for faster decompression. CSO v2 is backwards compatible with CSO v1 when using Deflate, while ZSO only supports LZ4. Documentation on these formats can be found in maxcso.
DAX is a competing format with 8 KB blocks. It also allows uncompressed areas. JSO seems to be overall similar to CSO, with the difference of added option for LZO and a block size tweakable in the official compressor.