Line 1: |
Line 1: |
| This is a list of libraries and tools that can be used to develop 3DS Homebrew. | | This is a list of libraries and tools that can be used to develop 3DS Homebrew. |
| | | |
− | ==Libraries== | + | == Libraries == |
| {| class="wikitable" border="1" width="100%" | | {| class="wikitable" border="1" width="100%" |
− | ! width="20%" | Name | + | ! width="16%" | Name |
| ! width="50%" | Description | | ! width="50%" | Description |
| ! width="10%" | Author | | ! width="10%" | Author |
− | ! width="10%" | Download | + | ! width="8%" | Download |
− | ! width="10%" | Open-Source | + | ! width="8%" | Open-Source |
| + | ! width="8%" | Maintained |
| |- | | |- |
− | | [https://github.com/smealum/ctrulib ctrulib] | + | | [https://github.com/devkitPro/libctru libctru] |
| | C library for writing user mode ARM11 code for the 3DS (CTR) | | | C library for writing user mode ARM11 code for the 3DS (CTR) |
| | [https://twitter.com/smealum smea] et al. | | | [https://twitter.com/smealum smea] et al. |
| | [[Setting_up_Development_Environment|See here]] | | | [[Setting_up_Development_Environment|See here]] |
| + | | Yes |
| | Yes | | | Yes |
| |- | | |- |
− | | [https://github.com/xerpi/sf2dlib sf2dlib] | + | | [https://osdn.net/users/freepascal3ds/pf/FPC-N3DS/files/ N2DS .. N3DS Computers] |
− | | Simple and Fast 2D library for the Nintendo 3DS (using libctru and citro3d) | + | | 2DS .. 3DS development in the Pascal computer language |
− | | [https://github.com/xerpi xerpi] | + | | [mailto:ctru.pas@gmail.com Kenneth Dwayne Lee] |
− | | [https://github.com/xerpi/sf2dlib/archive/master.zip Here] | + | | [http://pascal.fpc-n3ds.ca here] |
| + | | No |
| | Yes | | | Yes |
| |- | | |- |
− | | [https://github.com/fincs/citro3d citro3d] | + | | [https://github.com/devkitPro/citro3d citro3d] |
| | Stateful PICA200 GPU wrapper library for the Nintendo 3DS | | | Stateful PICA200 GPU wrapper library for the Nintendo 3DS |
| | [https://github.com/fincs fincs] | | | [https://github.com/fincs fincs] |
− | | [https://github.com/fincs/citro3d/archive/master.zip Here] | + | | [[Setting_up_Development_Environment|See here]] |
| + | | Yes |
| + | | Yes |
| + | |- |
| + | | [https://github.com/devkitPro/citro2d citro2d] |
| + | | Library for drawing 2D graphics using the Nintendo 3DS's PICA200 GPU |
| + | | [https://github.com/fincs fincs] |
| + | | [[Setting_up_Development_Environment|See here]] |
| + | | Yes |
| | Yes | | | Yes |
| + | |- |
| + | | [https://github.com/xerpi/sf2dlib sf2dlib] |
| + | | Simple and Fast 2D library for the Nintendo 3DS (using libctru and citro3d) |
| + | | [https://github.com/xerpi xerpi] |
| + | | [https://github.com/xerpi/sf2dlib/ Here] |
| + | | Yes |
| + | | Deprecated |
| |- | | |- |
| | [https://github.com/cpp3ds/gl3ds gl3ds] | | | [https://github.com/cpp3ds/gl3ds gl3ds] |
− | | OpenGL implementation for Nintendo 3DS using ctrulib | + | | OpenGL implementation for Nintendo 3DS using libctru |
| | [https://github.com/Cruel Cruel] et al. | | | [https://github.com/Cruel Cruel] et al. |
− | | [https://github.com/cpp3ds/gl3ds/archive/master.zip Here] | + | | [https://github.com/cpp3ds/gl3ds/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
| | [https://github.com/machinamentum/Caelina Caelina] | | | [https://github.com/machinamentum/Caelina Caelina] |
| | An OpenGL implementation for (N)3DS | | | An OpenGL implementation for (N)3DS |
| | [https://github.com/machinamentum machinamentum] | | | [https://github.com/machinamentum machinamentum] |
− | | [https://github.com/machinamentum/Caelina/archive/master.zip Here] | + | | [https://github.com/machinamentum/Caelina/releases/ Here] |
| | Yes | | | Yes |
− | |-
| |
− | | [https://github.com/Parx-3DS Three-DS, computers]
| |
− | | Canvas/GDI Parx-Pas tested in FreePascal, public stubs
| |
− | | [https://twitter.com/Kenny_D_Lee Author & Pioneer]
| |
− | | [http://flying-dutchmen.github.io/3DS-Sails Begin]
| |
| | No | | | No |
| |- | | |- |
Line 48: |
Line 62: |
| | Library for modifying kernel memory on a certain handheld game console. | | | Library for modifying kernel memory on a certain handheld game console. |
| | [https://github.com/Myriachan Myria] et al. | | | [https://github.com/Myriachan Myria] et al. |
− | | [https://github.com/Myriachan/libkhax/archive/master.zip Here] | + | | [https://github.com/Myriachan/libkhax/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
| | [https://github.com/cpp3ds/cpp3ds cpp3ds] | | | [https://github.com/cpp3ds/cpp3ds cpp3ds] |
| | Object-oriented C++ game library and port of [http://www.sfml-dev.org/ SFML] | | | Object-oriented C++ game library and port of [http://www.sfml-dev.org/ SFML] |
| | [https://github.com/Cruel Cruel] et al. | | | [https://github.com/Cruel Cruel] et al. |
− | | [https://github.com/cpp3ds/cpp3ds/archive/master.zip Here] | + | | [https://github.com/cpp3ds/cpp3ds/releases/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
| | [https://github.com/BtheDestroyer/SpriteTools SpriteTools] | | | [https://github.com/BtheDestroyer/SpriteTools SpriteTools] |
− | | Extension to sf2d that adds things like animations | + | | Extension to SF2D, adding support for things like animations |
| | [https://github.com/BtheDestroyer BtheDestroyer] | | | [https://github.com/BtheDestroyer BtheDestroyer] |
− | | [https://github.com/BtheDestroyer/SpriteTools/Releases Here] | + | | [https://github.com/BtheDestroyer/SpriteTools/releases/ Here] |
| | Yes | | | Yes |
| + | | Deprecated |
| + | |- |
| |} | | |} |
| | | |
− | ==PC Tools== | + | == PC Tools == |
| {| class="wikitable" border="1" width="100%" | | {| class="wikitable" border="1" width="100%" |
− | ! width="20%" | Name | + | ! width="16%" | Name |
| ! width="50%" | Description | | ! width="50%" | Description |
| ! width="10%" | Author | | ! width="10%" | Author |
− | ! width="10%" | Download | + | ! width="8%" | Download |
− | ! width="10%" | Open-Source | + | ! width="8%" | Open-Source |
| + | ! width="8%" | Maintained |
| |- | | |- |
| | [http://devkitpro.org/ devkitARM] | | | [http://devkitpro.org/ devkitARM] |
Line 77: |
Line 96: |
| | [[Setting_up_Development_Environment|See here]] | | | [[Setting_up_Development_Environment|See here]] |
| | [https://github.com/devkitPro Yes] | | | [https://github.com/devkitPro Yes] |
| + | | Yes |
| |- | | |- |
| | [https://github.com/smealum/aemstro aemstro] | | | [https://github.com/smealum/aemstro aemstro] |
| | Set of tools used to disassemble and assemble shader code for DMP's MAESTRO shader extension used in the 3DS's PICA200 GPU | | | Set of tools used to disassemble and assemble shader code for DMP's MAESTRO shader extension used in the 3DS's PICA200 GPU |
| | [https://twitter.com/smealum smea] | | | [https://twitter.com/smealum smea] |
− | | [https://github.com/smealum/aemstro/archive/master.zip Here] | + | | [https://github.com/smealum/aemstro/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
− | | [https://github.com/fincs/picasso picasso] | + | | [https://github.com/devkitPro/picasso picasso] |
| | Homebrew PICA200 shader assembler | | | Homebrew PICA200 shader assembler |
| | [https://github.com/fincs fincs] | | | [https://github.com/fincs fincs] |
− | | [https://github.com/fincs/picasso/releases Here] | + | | [[Setting_up_Development_Environment|See here]] |
| + | | Yes |
| | Yes | | | Yes |
| |- | | |- |
Line 95: |
Line 117: |
| | [http://4dsdev.org/thread.php?id=14 Here] | | | [http://4dsdev.org/thread.php?id=14 Here] |
| | [https://github.com/neobrain/nihstro Yes] | | | [https://github.com/neobrain/nihstro Yes] |
| + | | No |
| |- | | |- |
| | [https://github.com/Lectem/3ds-cmake 3ds-cmake] | | | [https://github.com/Lectem/3ds-cmake 3ds-cmake] |
| | CMake files for devkitARM and 3DS homebrew development | | | CMake files for devkitARM and 3DS homebrew development |
| | [https://github.com/Lectem Lectem] | | | [https://github.com/Lectem Lectem] |
− | | [https://github.com/Lectem/3ds-cmake/archive/master.zip Here] | + | | [https://github.com/Lectem/3ds-cmake/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
− | | [https://github.com/profi200/Project_CTR/archive/master.zip makerom] | + | | [[Makerom|makerom]] |
− | | Tool which can be used to create NCCH, CCI, and CIA files. | + | | Tool which can be used to create NCCH, CCI, and CIA files. |
− | | [http://3dbrew.org/wiki/User:3dsguy 3dsguy] maintained by [https://github.com/profi200 profi200] | + | | [[User:3dsguy|3dsguy]], maintained by [https://github.com/profi200 profi200] |
− | | [https://github.com/profi200/Project_CTR/archive/master.zip Here] | + | | [https://github.com/profi200/Project_CTR/releases/ Here] |
| + | | [https://github.com/profi200/Project_CTR/tree/master/makerom Yes] |
| | Yes | | | Yes |
| |- | | |- |
Line 111: |
Line 136: |
| | Tool to create NCCH banners | | | Tool to create NCCH banners |
| | [https://github.com/Steveice10 Steveice10] | | | [https://github.com/Steveice10 Steveice10] |
− | | [https://github.com/Steveice10/bannertool/archive/master.zip Here] | + | | [https://github.com/Steveice10/bannertool/releases/ Here] |
| | Yes | | | Yes |
| + | | No |
| |- | | |- |
| | [https://github.com/socram8888/amiitool amiitool] | | | [https://github.com/socram8888/amiitool amiitool] |
| | Tool to decrypt, encrypt and sign amiibo dumps | | | Tool to decrypt, encrypt and sign amiibo dumps |
| | [https://github.com/socram8888 socram8888] | | | [https://github.com/socram8888 socram8888] |
− | | [https://github.com/socram8888/amiitool/archive/master.zip Here] | + | | [https://github.com/socram8888/amiitool/releases/ Here] |
| | Yes | | | Yes |
| + | | No |
| |} | | |} |
| | | |
− | ==3DS Tools== | + | == 3DS Tools == |
| {| class="wikitable" border="1" width="100%" | | {| class="wikitable" border="1" width="100%" |
− | ! width="20%" | Name | + | ! width="16%" | Name |
| ! width="50%" | Description | | ! width="50%" | Description |
| ! width="10%" | Author | | ! width="10%" | Author |
− | ! width="10%" | Download | + | ! width="8%" | Download |
− | ! width="10%" | Open-Source | + | ! width="8%" | Open-Source |
| + | ! width="8%" | Maintained |
| |- | | |- |
| | [https://github.com/neobrain/braindump braindump] | | | [https://github.com/neobrain/braindump braindump] |
| | Tool to dump ExeFS/RomFS data from games and other applications | | | Tool to dump ExeFS/RomFS data from games and other applications |
| | [https://github.com/neobrain neobrain] | | | [https://github.com/neobrain neobrain] |
− | | [https://github.com/neobrain/braindump/releases Here] | + | | [https://github.com/neobrain/braindump/releases/ Here] |
| + | | Yes |
| + | | No |
| + | |- |
| + | | [https://github.com/citra-emu/uncart uncart] |
| + | | Utility to dump game cartridges to the SD card |
| + | | [https://github.com/neobrain neobrain] et al. |
| + | | Build from [https://github.com/citra-emu/uncart repo] |
| | Yes | | | Yes |
| + | | No |
| + | |- |
| |} | | |} |