July 16th, 2024

Rust on Dreamcast

Rust, a popular systems programming language, is being adapted for Dreamcast's SuperH architecture. Developers can use rustc_codegen_gcc and gccrs to compile Rust programs with core and alloc support. Ongoing improvements aim for full std functionality.

Read original articleLink Icon
Rust on Dreamcast

Rust, a systems programming language known for its focus on memory safety and performance, is gaining popularity. While Rust is typically compiled with LLVM, which doesn't support Dreamcast's SuperH architecture, developers have found workarounds. Two solutions are available: rustc_codegen_gcc and gccrs. The former is more advanced, allowing for core and alloc support but lacking full std functionality. Developers can use rustc_codegen_gcc with the Rust-for-Dreamcast repository and kos-rs crate to compile Rust programs for Dreamcast. The project is still in active development, with ongoing improvements and changes. Key features like libcore, liballoc, and linking to KallistiOS are supported, while work on libc and libstd is in progress. Future goals include better KallistiOS bindings and official support for libc/libstd. Developers interested in using Rust for Dreamcast must set up a KallistiOS development environment, build a cross-compiling libgccjit.so, and configure rustc_codegen_gcc accordingly. The process involves applying patches, scripts, and wrappers provided by the Rust-for-Dreamcast repository to compile and build Rust programs for Dreamcast successfully.

Related

Homegrown Rendering with Rust

Homegrown Rendering with Rust

Embark Studios develops a creative platform for user-generated content, emphasizing gameplay over graphics. They leverage Rust for 3D rendering, introducing the experimental "kajiya" renderer for learning purposes. The team aims to simplify rendering for user-generated content, utilizing Vulkan API and Rust's versatility for GPU programming. They seek to enhance Rust's ecosystem for GPU programming.

Improving 64-bit RISC-V Linux support in Rust

Improving 64-bit RISC-V Linux support in Rust

Ferrous Systems and Codethink collaborate to boost 64-bit RISC-V Linux support in Rust to Tier 1 via the RISE Project. This effort aims to enhance Rust's functionality for diverse platforms, focusing on RISC-V's open instruction set architecture.

2024 FreeBSD Developer Summit: Integration with Rust

2024 FreeBSD Developer Summit: Integration with Rust

The 2024 FreeBSD Developer Summit discussed integrating Rust into FreeBSD for modernization and security. Challenges include Rust's update pace differing from FreeBSD's. Coordination with Rust community is vital for compatibility and stability.

Rust for Filesystems

Rust for Filesystems

At the 2024 Linux Summit, Wedson Almeida Filho and Kent Overstreet explored Rust for Linux filesystems. Rust's safety features offer benefits for kernel development, despite concerns about compatibility and adoption challenges.

I Hope Rust Does Not Oxidize Everything

I Hope Rust Does Not Oxidize Everything

The author expresses concerns about Rust's widespread adoption in programming, citing issues with syntax, async features, complexity, and long compile times. They advocate for language diversity to prevent monoculture, contrasting Rust with their language Yao.

Link Icon 4 comments
By @anderber - 3 months
The Dreamcast was such a great console that was the ultimate hackable piece of hardware for a kid. Super interesting why it didn't become bigger.
By @gregwtmtno - 3 months
I always love seeing modern technology on old hardware. The Dreamcast was an amazing machine in a beautiful form factor.