单片机手搓掌上游戏机(二十一)—pico运行doom之修改编译

这个pico-doom的作品本来是输出到vga显示器上的,但是作者是在linux下弄出来的,我把它下载到windows下有些奇奇怪怪的错误,始终无法纠正。

把lcd版本覆盖过来后,对编译include和link的文件进行了简化,才能用,只能用pico-sdk-1.5.1,不能用最新版的,这种开源的软件就这个样了。esp32的也好不到哪里去,5.0以后的编译早期的文件大概率出错。

首先是修改各个Cmakelists.txt文件,这是生成makefile文件的流程,虽然cmake号称linux和windows通吃,还是有千奇百怪的问题。

首先是根目录下Cmakelists.txt,添加以下三行

路径改成上一节记下的pico-sdk和pico-extras的路径,记住把\都改成/。

酱紫:

set(PICO_SDK_PATH "D:/Program Files/Raspberry Pi/Pico SDK v1.5.1/pico-sdk")

set(PICO_EXTRAS_PATH "D:/Program Files/Raspberry Pi/Pico SDK v1.5.1/pico-examples/pico-extras")

set(CMAKE_BUILD_TYPE MinSizeRel)

修改src文件夹下的Cmakelists.txt

红框内的全删除,只留下doom_tiny这一个目标。

修改src下pico文件夹下的 Cmakelists.txt

这里lcd,把st7789注释,换成ili9341 ,没错,用st7789就要改成ili9341。

这里加一句,链接到pico_audio_i2s,作者不知道怎么回事,用了i2s却没有include进来,导致无法编译,我找了好久原因,就没想到高手留下这么一个简单的错误。

然后就是ctrl+shift+p cmake configure

ctrl+shift+p cmake build

修改到位的话就是

可以编译出doom_tiny.uf2文件了

但是颜色仍然不正常,纠正需要找到src/pico/magc.h文件

注释45行把上图50行复制到46行

全部保存,艰难的修改就搞成了。

再build一下,作品就好了。

相关推荐
松涛和鸣1 小时前
23、链式栈(LinkStack)的实现与多场景应用
linux·c语言·c++·嵌入式硬件·ubuntu
意法半导体STM321 小时前
STM32N6 如何配置EMMC启动 LAT1581
stm32·单片机·嵌入式硬件·mcu·嵌入式ai·stm32n6·stm32开发
liu****1 小时前
11.字符函数和字符串函数(一)
linux·运维·c语言·开发语言·数据结构·算法
CC.GG1 小时前
【C++】面向对象三大特性之一——继承
java·数据库·c++
逆小舟1 小时前
【STM32】IIC→OLED显示
stm32·单片机·嵌入式硬件
Geek__19921 小时前
STM32F103 ADC DMA采样与均值滤波处理实战指南
c语言·stm32
Tandy12356_1 小时前
手写TCP/IP协议栈——数据包结构定义
c语言·网络·c++·计算机网络
沉在嵌入式的鱼1 小时前
STM32--HX711称重传感器
stm32·单片机·嵌入式硬件·hx711·称重传感器
繁华似锦respect1 小时前
HTTPS 中 TLS 协议详细过程 + 数字证书/签名深度解析
开发语言·c++·网络协议·http·单例模式·设计模式·https