flamewing / mdcomp

Assorted compression formats for the Sega Mega Drive

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Badges

ASM License: 0BSD Non-ASM License: LGPL v3

CodeFactor Grade LGTM Alerts LGTM Grade

CI Mac OS Catalina 10.15 CI Ubuntu 20.04 CI Windows Server 2019

Coverity Scan Analysis Coverity Scan

Windows snapshot build Latest Windows snapshot

mdcomp

Assorted compression formats for the Sega Mega Drive.

License

The src/asm directory is licensed under a bsd 0-Clause License (0BSD). The tl;dr version is here.

Basically, you can use it however you want, and you don't have to add credits, licenses, or anything to your hack.

I only ask for the courtesy of giving some credit if you use it, but you are not forced to do it.

The remainder is licensed under the GNU Lesser General Public License v3 (LGPL-3.0). The tl;dr version is here.

Create and install the package

You need a C++ development toolchain, including cmake at least 3.19 and Boost at least 1.54. With the dependencies installed, you run the following commands:

   cmake -S . -B build -G <generator>
   cmake --build build -j2
   cmake --install build

Here, <generator> is one appropriate for your platform/IDE. It can be any of the following:

  • MSYS Makefiles
  • Ninja
  • Unix Makefiles
  • Visual Studio 16 2019
  • Xcode

Some IDEs support cmake by default, and you can just ask for the IDE to configure/build/install without needing to use the terminal.

TODO

  • Detail compression formats
  • Use Boost::Program Options
  • Make universal compressor/decompressor
  • Finish this readme