Difference between revisions of "Homebrew Libraries and Tools"

From 3dbrew
Jump to navigation Jump to search
(Maintenance, added uncart.)
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="20%" | Name
Line 36: Line 36:
 
| 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]
 
| [https://github.com/Parx-3DS Three-DS, computers]
 
| Canvas/GDI Parx-Pas tested in FreePascal, public stubs  
 
| Canvas/GDI Parx-Pas tested in FreePascal, public stubs  
| [https://twitter.com/Kenny_D_Lee Author & Pioneer]
+
| [https://twitter.com/Kenny_D_Lee Kenneth Dwayne Lee]
| [http://flying-dutchmen.github.io/3DS-Sails Begin]
+
| [http://flying-dutchmen.github.io/3DS-Sails Here]
 
| No
 
| No
 
|-
 
|-
Line 54: Line 54:
 
| 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
 
|-
 
|-
 
| [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
 
|}
 
|}
  
==PC Tools==
+
== PC Tools ==
 
{| class="wikitable" border="1" width="100%"
 
{| class="wikitable" border="1" width="100%"
 
!  width="20%" | Name
 
!  width="20%" | Name
Line 102: Line 102:
 
| Yes
 
| Yes
 
|-
 
|-
| [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/archive/master.zip Here]
| Yes
+
| [https://github.com/profi200/Project_CTR/tree/master/makerom Yes]
 
|-
 
|-
 
| [https://github.com/Steveice10/bannertool bannertool]
 
| [https://github.com/Steveice10/bannertool bannertool]
Line 121: Line 121:
 
|}
 
|}
  
==3DS Tools==
+
== 3DS Tools ==
 
{| class="wikitable" border="1" width="100%"
 
{| class="wikitable" border="1" width="100%"
 
!  width="20%" | Name
 
!  width="20%" | Name
Line 134: Line 134:
 
| [https://github.com/neobrain/braindump/releases Here]
 
| [https://github.com/neobrain/braindump/releases Here]
 
| Yes
 
| Yes
 +
|-
 +
| [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
 +
|-
 
|}
 
|}

Revision as of 20:43, 15 October 2016

This is a list of libraries and tools that can be used to develop 3DS Homebrew.

Libraries

Name Description Author Download Open-Source
ctrulib C library for writing user mode ARM11 code for the 3DS (CTR) smea et al. See here Yes
sf2dlib Simple and Fast 2D library for the Nintendo 3DS (using libctru and citro3d) xerpi Here Yes
citro3d Stateful PICA200 GPU wrapper library for the Nintendo 3DS fincs Here Yes
gl3ds OpenGL implementation for Nintendo 3DS using ctrulib Cruel et al. Here Yes
Caelina An OpenGL implementation for (N)3DS machinamentum Here Yes
Three-DS, computers Canvas/GDI Parx-Pas tested in FreePascal, public stubs Kenneth Dwayne Lee Here No
libkhax Library for modifying kernel memory on a certain handheld game console. Myria et al. Here Yes
cpp3ds Object-oriented C++ game library and port of SFML Cruel et al. Here Yes
SpriteTools Extension to SF2D, adding support for things like animations BtheDestroyer Here Yes

PC Tools

Name Description Author Download Open-Source
devkitARM GCC-based toolchain tuned for homebrew development for ARM-based consoles. WinterMute et al. See here Yes
aemstro Set of tools used to disassemble and assemble shader code for DMP's MAESTRO shader extension used in the 3DS's PICA200 GPU smea Here Yes
picasso Homebrew PICA200 shader assembler fincs Here Yes
nihstro 3DS shader assembler and disassembler neobrain Here Yes
3ds-cmake CMake files for devkitARM and 3DS homebrew development Lectem Here Yes
makerom Tool which can be used to create NCCH, CCI, and CIA files. 3dsguy, maintained by profi200 Here Yes
bannertool Tool to create NCCH banners Steveice10 Here Yes
amiitool Tool to decrypt, encrypt and sign amiibo dumps socram8888 Here Yes

3DS Tools

Name Description Author Download Open-Source
braindump Tool to dump ExeFS/RomFS data from games and other applications neobrain Here Yes
uncart Utility to dump game cartridges to the SD card neobrain et al. Build from repo Yes