More actions
No edit summary |
No edit summary |
||
(4 intermediate revisions by the same user not shown) | |||
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= | |lastupdated=2023/09/24 | ||
|type=Demos | |type=Demos | ||
|version= | |version=2023 | ||
|license=Mixed | |license=Mixed | ||
|download=https://dlhb.gamebrew.org/3dshomebrews/3dshellodlang.7z | |download=https://dlhb.gamebrew.org/3dshomebrews/3dshellodlang.7z | ||
Line 13: | Line 13: | ||
}} | }} | ||
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++. | 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++. | ||
Instructions on how to set this up are available on the [https://github.com/TheGag96/3ds-hello-dlang repository page]. | |||
==Features== | ==Features== | ||
Line 20: | Line 22: | ||
* (Mostly complete) bindings for citro2d. | * (Mostly complete) bindings for citro2d. | ||
* Some support for core.stdc (needs to be modified to support newlib's libc implementation). | * Some support for core.stdc (needs to be modified to support newlib's libc implementation). | ||
==Known issues== | ==Known issues== | ||
Line 40: | Line 39: | ||
* GitHub - https://github.com/TheGag96/3ds-hello-dlang | * GitHub - https://github.com/TheGag96/3ds-hello-dlang | ||
* Dlang Forum - https://forum.dlang.org/post/[email protected] | * Dlang Forum - https://forum.dlang.org/post/[email protected] | ||
Latest revision as of 10:14, 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++.
Instructions on how to set this up are available on the repository page.
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).
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]