如果您要问这个级别的问题,vga 文本模式距离您应该尝试的第一件事还有很长的路要走。尽管这当然取决于您的平台。如果这是一个树莓派,那么我仍然会从闪烁的 LED 开始,然后是 uart,然后如果你愿意,可以做视频,树莓派上的视频非常简单。文本模式,没有,你必须绘制像素,但是对基于光栅的字体有一点经验(在你的 x86 机器上做这个,制作位图或打印 xxes 和 00 的字符串或其他东西)你可以很容易地想出一个字体集然后为每个字符绘制像素。
语言与它无关,C 或 asm 工作正常,大多数人只在需要时使用 C 和 asm,这也是我会给出的建议。
我有很多裸机示例(github.com/dwelch67),其中一个为 gba 做了一些 8x8 字体的字体,你可以从我这里窃取我不在乎。我还没有真正做树莓派视频的东西,但是有很多例子,你通过一次旋转来获得手臂地址空间中的指针(并设置视频模式等)然后它只是一个问题将像素数据写入该内存范围,然后 gpu 将其回显到视频卡。
可以使用 beaglebone black 或 allwinner 卡之一(pcduino、apc.io)(由于缺乏文档,我会避免使用这些卡),它们具有与树莓派不同的视频接口,因此涉及更多工作。我还没有弄清楚裸机的 beaglebone black,并且有一些全赢的信息,但还没有在那里做过任何真正的裸机。所以除非你知道别人做过,否则不要买。实际上,如果视频真的是您所追求的,那么早期的 ipods,classi gen 1 - 至少 5,ipod nano gen 1,并不难做视频。gameboy Advance 非常简单,有大量示例,visualboyadvance 是一个很好的模拟器,所以你不需要硬件,你现在就可以开始编写 arm 代码来绘制像素。
hawkboard 和 pandaboard 也是你可能想看的东西,我想它们都有视频,我有几个 hawkboards,裸金属很容易,没有 pandaboard。我也用过open-rd board,不记得上面有什么了...
如果您想要类似 pcie 卡的 PC 体验,您必须设置根复合体、重置和训练端点、配置它们,然后您可以与它们交谈,并根据视频芯片/板确定多少即使是最简单的视频任务也涉及工作。(如果视频卡使用系统内存,那么您必须启动它,如果是 ddr,那么与启动 ddr 相比,pcie 非常微不足道)。
从游戏男孩高级模拟器开始。