单片机手搓掌上游戏机(二十一)—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一下,作品就好了。

相关推荐
Bin二叉14 小时前
南京大学cpp复习(c10——多态、操作符重载)
开发语言·c++·笔记·学习
Moshow郑锴14 小时前
什么是 ACPI Bridge Device
stm32·单片机·嵌入式硬件
Sheep Shaun14 小时前
STL:string和vector
开发语言·数据结构·c++·算法·leetcode
k***921615 小时前
list 迭代器:C++ 容器封装的 “行为统一” 艺术
java·开发语言·数据结构·c++·算法·list
雨雨雨雨雨别下啦15 小时前
嵌入式stm32复习资料
stm32·单片机·嵌入式硬件
SunkingYang15 小时前
MFC进程间消息传递:SendMessage、PostMessage与SendNotifyMessage分别如何实现,进程间通讯需要注意哪些问题
c++·mfc·通讯·postmessage·sendmessage·sendnotify·进程间
双河子思15 小时前
JsonCpp
c++
superman超哥15 小时前
仓颉语言导入语句使用深度解析
c语言·开发语言·c++·python·仓颉
xu_yule15 小时前
算法基础-多源最短路
c++·算法·多源最短路
晚晶15 小时前
[C++/流媒体/tcp/rtsp]构建一个简单的流媒体转发服务器,用于将rtsp推流转发出去
服务器·c++·tcp/ip·流媒体·转发·rtsp