我在尝试用 C 编程一个极度受限的目标:一个虚拟的 4 MHz ARMv4,1 MB RAM,128 KB VRAM 和 16 色调色板。

从 C 的角度来看,最有趣的部分是:

- 没有标准库 — 所有东西都是裸机风格

- 只有固定点数学(没有 FPU)

- 为图形和音频使用内存映射 I/O

- 可以使用 GNU Arm GCC 编译,支持 C++20

这是一个基于浏览器的模拟器,所以测试的回归时间很快 — 写、编译、运行几秒钟。

有没有人在这里工作过类似的受限嵌入式目标?我很好奇你如何处理内存管理和优化。

来源:https://github.com/beep8/beep8-sdk