Programming language support: Difference between revisions

From dreamcast.wiki
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...")
 
Line 21: Line 21:
* mRuby (available in [[kos-ports]]
* mRuby (available in [[kos-ports]]
* AngelScript
* AngelScript
* QuickJS

Revision as of 18:27, 3 February 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.
    • The GNU Objective-C++ extension is available as well.
  • D, via the GCC D compiler. Early support, see Luna's X account.
  • Rust, via rustc_codegen_gcc and libgccjit, or via gccrs. When using rustc_codegen_gcc, the core and alloc libraries are available, with bindings to KallistiOS being developed. See Rust on Dreamcast for more information.
  • Ada, via GNAT. Initial work being done by Marc Poulhiès.
  • Fortran, via GFortran. Requires some work to create a cross-compiler, but does work.

Scripting/Interpreted languages