在PS2上运行Go代码:一次充满挑战的冒险
2025-03-28

作者尝试在PlayStation 2上运行Go代码,这并非易事。Go不支持PS2架构,作者利用TinyGo编译器和ps2dev SDK,克服了Go语言与PS2 Emotion Engine CPU(基于MIPS R5900)的兼容性问题,以及N32 ABI和64位指令集的差异。过程中作者遇到了DDIVU指令缺失的难题,最终通过修改TinyGo编译器绕过了该问题,成功运行了一个简单的Go程序,并在PS2模拟器PCSX2上验证了结果。未来计划完善浮点数支持、编写自定义LLVM MIPS CPU等。
开发
PS2开发