Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

3DS Hello Dlang: Difference between revisions

From GameBrew
(Created page with "{{Infobox 3DS Homebrews}} {{Infobox 3DS Homebrews |title=3ds Hello Dlang |image=3dshellodlang2.png |description=A 3DS homebrew example written in D!. |author=TheGag96 |la...")
 
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews}}
{{Infobox 3DS Homebrews
{{Infobox 3DS Homebrews
|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=2021/09/18
|lastupdated=2023/09/24
|type=Demos
|type=Demos
|version=2021
|version=2023
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/3dshomebrews/3dshellodlang.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/3dshellodlang.7z
Line 14: 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 21: 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).
==Building==
Instructions on how to set this up are available in the [https://github.com/TheGag96/3ds-hello-dlang repository page].


==Known issues==
==Known issues==
Line 41: 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]
[[Category:3DS homebrew applications]]
[[Category:3DS homebrew demos]]

Latest revision as of 10:14, 7 July 2024

3DS Hello Dlang
3dshellodlang2.png
General
AuthorTheGag96
TypeDemos
Version2023
LicenseMixed
Last Updated2023/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

Advertising: