022d69dc8e5e4a5499126f3ef2af18e1ef6a6cbe
Supported Formats: A4, A8, L4, L8, RGB565, RGB888 RGBA8888 (for now) Add a .clang-format Move ctrff into a subdirectory Replace the BCLIM creation part with Pica encoder Fix non const RGB565ToRGBA issue
ctrff
Tool/Library to work with Nintendo 3ds File formats
Note
CTRFF Requires Palladium Headers from branch devel040 (as this is the branch the lib was latest tested with)
Building
- Desktop OS
# Note that -DCTRFF_DESKTOP is not required to build the lib for desktop
cmake -B build . -DCTRFF_DESKTOP=ON -DCMAKE_BUILD_TYPE=Release
cd build
make
- Nintendo 3ds
# Probably should go for Debug (to debug crashes)
# You could also do --toolchain path/to/debkitpro/cmake/3DS.cmake
# instead of -DCTRFF_3DS=ON
cmake -B build . -DCTRFF_3DS=ON -DCMAKE_BUILD_TYPE=Release
cd build
make
File Formats
Not all Planned formates are listed here yet
| Format | State | Notes |
|---|---|---|
| 3dsx | Basic Loading and Viewing of Meta Data Smdh | |
| bcstm | Loading of almost every Data | Fully done and playable by BCSTM-Player |
| bcwav | Basic Loading (not tested yet) | Not finished yet |
| bclim | Creating A8,RGBA32,RGB565 done | WIP |
| lz11 | Encoder done, Decoder missing | WIP |
| romfs | Nothing Done yet (Started creating header) | |
| smdh | Almost done | missing safetey checks |
| cbmd | Nothing done yet | |
| cgfx | Nothing Done yet | |
| darc | Nothing done yet |
Languages
C++
97.6%
CMake
2.4%