Programming language support: Difference between revisions
Jump to navigation
Jump to search
(Created page with "The following languages can be used in Sega Dreamcast programming: =Assembly languages= * '''SH4 assembly''', as the native machine code for the Dreamcast's SuperH processor * '''ARM assembly''', as the native machine code for the Dreamcast's AICA ARM7DI sound processor =Compiled languages= * '''C''', the predominant language for Sega Dreamcast development, via the GCC C compiler. * '''C++''', commonly used and very well-supported, via the GCC C++ compiler. * '''Object...") |
|||
(8 intermediate revisions by 3 users not shown) | |||
Line 8: | Line 8: | ||
* '''C''', the predominant language for Sega Dreamcast development, via the GCC C compiler. | * '''C''', the predominant language for Sega Dreamcast development, via the GCC C compiler. | ||
* '''C++''', commonly used and very well-supported, via the GCC C++ compiler. | * '''C++''', commonly used and very well-supported, via the GCC C++ compiler. | ||
* '''Objective-C''', via the GCC Objective-C compiler. Preliminary support for Foundation framework via [https://gnustep.github.io/ GNUstep] is being developed. See [https://twitter.com/dinobj_c/status/1732399498977276154 Andrew Apperley's X account]. | * '''Objective-C''', via the GCC Objective-C compiler. Preliminary support for Foundation framework via [https://gnustep.github.io/ GNUstep] is being developed. See [https://twitter.com/dinobj_c/status/1732399498977276154 Andrew Apperley's X account]. See [[Objective-C on Dreamcast]] for more information. | ||
** The GNU '''Objective-C++''' extension is available as well. | ** The GNU '''Objective-C++''' extension is available as well. | ||
* '''Rust''', via rustc_codegen_gcc and libgccjit, or via gccrs. When using rustc_codegen_gcc, the standard library is available, with bindings to KallistiOS being developed. See [[Rust on Dreamcast]] for more information. | |||
* '''Rust''', via rustc_codegen_gcc and libgccjit, or via gccrs. When using rustc_codegen_gcc, the | * '''D''', via the GCC D compiler. Early support, see [https://dreamcast.wiki/D_on_Dreamcast D on Dreamcast] for more information. | ||
* '''Ada''', via GNAT. | * '''Ada''', via GNAT. [https://github.com/dkm/ada-dreamcast-helloworld Ada 3D cube demo] by [https://poulhies.fr/ Marc Poulhiès]. | ||
* '''Fortran''', via GFortran. Requires some work to create a cross-compiler, but does work. | * '''Fortran''', via GFortran. Requires some work to create a cross-compiler, but does work. | ||
Line 18: | Line 18: | ||
* Lua (available in [[kos-ports]]) | * Lua (available in [[kos-ports]]) | ||
* MicroPython (available in [[kos-ports]]) | * MicroPython (available in [[kos-ports]]) | ||
* Tcl (available in [[kos-ports]] | * Tcl (available in [[kos-ports]]) | ||
* mRuby (available in [[kos-ports]] | * mRuby (available in [[kos-ports]]) | ||
* AngelScript | * AngelScript | ||
* QuickJS |
Latest revision as of 03:59, 14 November 2024
The following languages can be used in Sega Dreamcast programming:
Assembly languages
- SH4 assembly, as the native machine code for the Dreamcast's SuperH processor
- ARM assembly, as the native machine code for the Dreamcast's AICA ARM7DI sound processor
Compiled languages
- C, the predominant language for Sega Dreamcast development, via the GCC C compiler.
- C++, commonly used and very well-supported, via the GCC C++ compiler.
- Objective-C, via the GCC Objective-C compiler. Preliminary support for Foundation framework via GNUstep is being developed. See Andrew Apperley's X account. See Objective-C on Dreamcast for more information.
- The GNU Objective-C++ extension is available as well.
- Rust, via rustc_codegen_gcc and libgccjit, or via gccrs. When using rustc_codegen_gcc, the standard library is available, with bindings to KallistiOS being developed. See Rust on Dreamcast for more information.
- D, via the GCC D compiler. Early support, see D on Dreamcast for more information.
- Ada, via GNAT. Ada 3D cube demo by Marc Poulhiès.
- Fortran, via GFortran. Requires some work to create a cross-compiler, but does work.