SkillAgentSearch skills...

Libgodc

Go runtime for Dreamcast using gccgo and KOS

Install / Use

/learn @drpaneas/Libgodc
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

libgodc - Go runtime for Sega Dreamcast

<p align="center"> <img src="logo.png" alt="libgodc" width="400"> </p> <p align="center"> <img src="examples/pong/pong.gif" alt="Pong" width="240"> <img src="examples/brkout/brkout.gif" alt="Breakout" width="240"> <img src="examples/platformer/platformer.gif" alt="Platformer" width="240"> </p>

Replaces the standard Go runtime with one designed for the Dreamcast's constraints: memory 16MB RAM, CPU single-core SH-4, no operating system. Provides garbage collection, goroutines, channels, and the core runtime functions.

Quick Start

Prerequisites: Go 1.25.3+, make, and git must be installed.

go install github.com/drpaneas/godc@latest
godc setup
godc doctor # to check (optional)

Note: The godc CLI tool is a separate project that handles toolchain setup and builds.

Create and run a project:

mkdir myproject && cd myproject
godc init
# write you main.go and other *.go files
godc build
godc run

See the Quick Start Guide for your first program.

Documentation

📚 Full Documentation

Performance

Measured on real hardware (SH-4 @ 200MHz):

| Operation | Time | |---------------------|----------| | Gosched yield | ~120 ns | | Allocation | ~186 ns | | Buffered channel | ~1.8 μs | | Context switch | ~6.4 μs | | Unbuffered channel | ~13 μs | | Goroutine spawn | ~31 μs | | GC pause | 72 μs - 6 ms |

Examples

The examples/ directory contains working programs:

  • hello — Minimal program (debug output)
  • hello_screen — Hello World on screen using BIOS font
  • blue_screen — Minimal graphics
  • input — Controller input
  • goroutines — Concurrent bouncing balls
  • channels — Producer/consumer pattern
  • timer — Frame-rate independent animation
  • bfont — BIOS font rendering
  • filesystem — Directory browser
  • vmu — VMU LCD and buzzer
  • brkout — Breakout clone (GPL v2, port of Jim Ursetto's original)
  • pong — Pong clone with 1P/2P mode, particle effects, and AI

License

BSD 3-Clause License. See LICENSE for details.

View on GitHub
GitHub Stars224
CategoryDevelopment
Updated3d ago
Forks6

Languages

C

Security Score

85/100

Audited on Apr 1, 2026

No findings