{"id":18354580,"url":"https://github.com/mrfearless/cd","last_synced_at":"2025-04-10T01:25:31.783Z","repository":{"id":202767536,"uuid":"707888399","full_name":"mrfearless/CD","owner":"mrfearless","description":"CD - Compress-Decompress Utility","archived":false,"fork":false,"pushed_at":"2023-10-30T16:38:41.000Z","size":569,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-15T16:49:55.730Z","etag":null,"topics":["assembler","compression","compressor","huffman","lzms","masm","mszip","radasm","win32","x86","xpress"],"latest_commit_sha":null,"homepage":"","language":"Assembly","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrfearless.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-20T22:38:51.000Z","updated_at":"2023-10-23T05:23:59.000Z","dependencies_parsed_at":"2025-02-15T16:55:23.884Z","dependency_job_id":null,"html_url":"https://github.com/mrfearless/CD","commit_stats":null,"previous_names":["mrfearless/cd"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrfearless%2FCD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrfearless%2FCD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrfearless%2FCD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrfearless%2FCD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrfearless","download_url":"https://codeload.github.com/mrfearless/CD/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248139218,"owners_count":21054053,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assembler","compression","compressor","huffman","lzms","masm","mszip","radasm","win32","x86","xpress"],"created_at":"2024-11-05T22:04:35.241Z","updated_at":"2025-04-10T01:25:31.753Z","avatar_url":"https://github.com/mrfearless.png","language":"Assembly","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ![](./assets/CDLogo.png) CD\r\n\r\n**CD** - Compress-Decompress Utility using the Microsoft Compression API\r\n\r\n![](./assets/CDScreenshot.png)\r\n\r\n**CD** uses the Microsoft Compression API to compress or decompress data using one of the four supported compression algorithms: **XPRESS**, **XPRESS with Huffman encoding**, **MSZIP** or **LZMS**.\r\n\r\nThe files compressed by **CD** using those compression algorithms also store a signature `DWORD` value as the header at the start of the file. This is so that the appropriate compression algorithm can be used for the decompression.\r\n\r\n**CD** also makes use of the Microsoft Compression API to store bitmap resources as **LZMS** compressed data. There are two ways in which **CD** uses that compressed bitmap data: \r\n\r\n- In the about box, by uncompressing the bitmap data before creating the bitmap in memory. The **LZMS** compressed bitmap data is stored as static hex bytes in the `CD128x128x4.bmp.asm` file.\r\n\r\n- Adding **LZMS** compressed bitmap files (`*.lzms`) as `RC_DATA` resources which are compiled into `CD.exe`. These resources are loaded into memory, and then uncompressed before creating the bitmaps in memory.\r\n\r\n**CD** also allows an optional output of compressed data bytes as a masm `.asm` file with '`db`' data defines, similar to the [masm32 sdk](https://masm32.com/) utility **bin2dbex**.\r\n\r\n\r\n\r\n**Note: the minimum version of windows to use for the Microsoft Compression API and thus to use the CD - Compress-Decompress Utility is [Windows 8](https://learn.microsoft.com/en-us/windows/win32/api/compressapi/nf-compressapi-compress#requirements)**\r\n\r\n# Download\r\n\r\nThe latest x86 and x64 release can be downloaded via the [releases](https://github.com/mrfearless/cd/releases) section of this Github repository.\r\n\r\n# Resources\r\n\r\nFor further information about the Microsoft Compression API, please refer to the following links:\r\n\r\n- [Microsoft Compression Portal](https://learn.microsoft.com/en-us/windows/win32/cmpapi/-compression-portal)\r\n- [Using The Microsoft Compression API](https://learn.microsoft.com/en-us/windows/win32/cmpapi/using-the-compression-api)\r\n- [Compress Function](https://learn.microsoft.com/en-us/windows/win32/api/compressapi/nf-compressapi-compress)\r\n- [Decompress Function](https://learn.microsoft.com/en-us/windows/win32/api/compressapi/nf-compressapi-decompress)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrfearless%2Fcd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrfearless%2Fcd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrfearless%2Fcd/lists"}