Remix.run Logo
drpaneas 9 hours ago

I built a Go runtime that runs on the Sega Dreamcast, the 1999 console with 16MB RAM and a 200MHz SH4 CPU.

You can write games in Go with goroutines, channels, garbage collection, and all the language features you'd expect. It compiles using gccgo and runs on real hardware or emulators.

The project includes 3 game examples Pong, Breakout and Platformer, input handling, audio support, and integrates with KallistiOS (the Dreamcast homebrew SDK).

* Star Here: https://github.com/drpaneas/godc * Documentation: https://drpaneas.github.io/libgodc/ * Video Tutorial: https://youtu.be/ahMl0fUvzVA

Happy to answer any questions about the implementation!

danhau 8 hours ago | parent | next [-]

I just wanted to say how impressive your documentation is. I expected an average readme.md, but not only is your readme great (the performance table is wonderful), but the full documentation is awesome. It pretty much answers all questions I had. Nice job! I wish all projects were like this.

I also dig the documentation / book styling.

drpaneas 7 hours ago | parent [-]

thanks @danhau, much appreciated, indeed documenting the process felt like another project of its own, so I am very happy to hear that :D

clktmr 8 hours ago | parent | prev | next [-]

Hey panos! I only had a short look at this for now, and it looks impressive! I'll have to dust off my Dreamcast and get this running.

I looked at gccgo when porting the runtime to n64, but at the time it wasn't updated since go1.18. Can we use Go Generics on the Dreamcast? I see that gccgo is obviously needed to support SH4.

drpaneas 7 hours ago | parent [-]

Hey Timur, long time no see, I hope all is going well :) No, you cannot use generics, they are not yet supported by gccgo.

simonw 4 hours ago | parent | prev | next [-]

This is a beautiful thing to exist. Much respect for building this.

lagniappe 6 hours ago | parent | prev | next [-]

You've made my entire WEEK! Thank you!

drpaneas 5 hours ago | parent [-]

You've put a smile on my face reading your comment, thank you for your feedback, happy holidays :D

pjmlp 7 hours ago | parent | prev [-]

This is kind of cool, kudos for the effort.

drpaneas 7 hours ago | parent [-]

you're very welcome :D Thanks!