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

相关推荐
Chester_19995 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
虎王物联6 小时前
STM32 HAL库串口DMA空闲中断:高效接收不定长Modbus数据帧
stm32·单片机·嵌入式硬件·dma·modbus
SUNNYSPY0016 小时前
AO4402-ASEMI便携设备电源开关AO4402
单片机
会周易的程序员6 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
小灰灰搞电子7 小时前
完全驾驭 Qt 与数据库:C++ ORM 框架 QxOrm 原理与实践指南
数据库·c++·qt
QT界面美化性能优化7 小时前
QT+AI:使用AI技术为QT应用程序赋能
c++·人工智能·qt·opencv·qt教程·qt6.3
是隼人7 小时前
buuctf-pwn xdctf2015_pwn200题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
单片机仿真设计9 小时前
【proteus仿真】基于 STC89C52 单片机家用智能台灯设计(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·毕设
2601_950790689 小时前
深圳国产单片机厂商怎么选?技术能力与服务能力检查表
单片机·嵌入式硬件·国产mcu·芯片厂商·深圳单片机·单片机选型
学习星球9 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode