More actions
No edit summary |
No edit summary |
||
Line 2: | Line 2: | ||
|title=3DS Hello Dlang | |title=3DS Hello Dlang | ||
|image=3dshellodlang2.png | |image=3dshellodlang2.png | ||
|description=A 3DS homebrew example written in D | |description=A 3DS homebrew example written in D. | ||
|author=TheGag96 | |author=TheGag96 | ||
|lastupdated=2023/09/24 | |lastupdated=2023/09/24 |
Revision as of 10:13, 7 July 2024
3DS Hello Dlang | |
---|---|
General | |
Author | TheGag96 |
Type | Demos |
Version | 2023 |
License | Mixed |
Last Updated | 2023/09/24 |
Links | |
Download | |
Website | |
Source | |
This is a 3DS homebrew Hello World example coded in D, along with bindings for most of libctru and citro3d. It serves as an example of potentially write programs for the 3DS in D instead of C or C++.
Features
- Using a betterC-like subset of D.
- (Mostly complete) bindings for libctru.
- (Mostly complete) bindings for citro3d.
- (Mostly complete) bindings for citro2d.
- Some support for core.stdc (needs to be modified to support newlib's libc implementation).
Building
Instructions on how to set this up are available in the repository page.
Known issues
- Bindings referencing things like sockets or other stuff in the C standard library are incomplete
- Certain D standard library files have to be tweaked to compile properly, not sure if it can be made better or if that's just how it has to be in this environment.
- The bindings written so far have enums renamed to fit the D naming convention, but nothing else really is. Still not sure how to clean things like that up.
- Makefile edits currently copy the path of every D source file into the compile command, which makes it HUGE... Need to figure out how to use -I properly.
Credits
External links
- GitHub - https://github.com/TheGag96/3ds-hello-dlang
- Dlang Forum - https://forum.dlang.org/post/[email protected]