YangGangUEFI

Zed 编辑器主题分享

最近基本上都在使用 Zed 作为主力编辑器了,但是试用了几个浅色主题总感觉不那么称心。 因为有 https://zed-themes.com/ 这样一个很方便的在线设计网站,于是便着手“打造”了一个自用的主题。 长什么样 下面是截图: 也可以在这个链接在线看到预览(部分颜色可能不太准确,以及这里只是个初版)。 怎么安装 当前还无法直接在 Zed extension 中安装(已...

在 UEFI(EDK2) 中使用 Sixel

自认识终端以来,对于它的印象似乎总停留在黑色背景上一行行的字符,看起来很 hacker 的样子。 但是,终端能支持的功能其实比印象中要强大的多。例如,显示图像。这需要用到终端图形协议(图形格式), Sixel 是其中一种,利用它便可以在终端中显示图像。 本文将尝试在 UEFI 环境下使用 Sixel 来探索一些有趣的内容。 Sixel 是什么? Sixel, short for ...

Zed Debugger | 在 Zed 编辑器中调试 UEFI(Edk2)

对于 BIOSer 来说,日常 debug 最常用的手段可能就是串口了,加些日志打印,剩下的就是对着代码看了。 不过 Edk2 提供了 Emulator 和 OVMF 这样的虚拟平台, 开发人员可以在其上做一些平台无关的验证,对于它们,我们则有机会用上稍微“高级”一些的调试手段。 本文将分享一下如何在 Zed 编辑器中使用 Zed Debugger + LLDB 来调试 Edk2。 ...

Zed Debugger | 如何在 Zed 编辑器中调试 C/C++

前些天分享了一些关于 Zed 编辑器的配置,有评论提到 Zed 文档中 debug 相关配置的介绍有些简陋。虽然当时在评论中已经说的差不多了,但为了更便于检索,还是将其拎出来,独成一文,也希望能给尝试使用 Zed Debugger 的朋友一些帮助。 一些基本操作 在 Zed 编辑器中,按 F4,它会弹出一个弹框,如果是尚未配置 Debugger 的项目,弹框像下面这样: 然后,可以...

Zed 编辑器配置分享

随着 Zed 在 Windows 上的逐渐完善(现在已经正式发布 stable 版本),所以最近一直都在使用它作为日用编辑器。虽然还未迎来 non-UTF8 的支持,但是只是用来写/看代码似乎也够用了。重要的是内存占用低,并且键位与 VSCODE 类似(或者说一样),可以快速上手。 但是作为一个编辑器,它还是需要做一些配置,才能用起来更舒服,下面分享一下我的配置及简单的说明(部分): {...

UEFI Option ROM 解析工具 | Viber Coding

在 BIOS 的开发工作中,难免会遇到一些 PCIe 外插设备的问题,而其中一小部分可能会与它的 OptionROM/设备驱动相关。 一般情况下,这部分并不需要我们关注太多,多数情况可能只是包一下驱动。不过也总有一些时候,我们想要从它的 OpROM 中提取一下驱动(.efi 文件)。 如果你曾经做过这样的操作,那么你应该会有一个小工具来完成提取的工作。 最近我也做了一次这个操作,使用的是...

VS Code 插件 GitLens 与自建 GitLab 的集成配置

VS Code 中的 GitLens 插件提供了 Line Blame 信息, 这些信息可以在一定程度上帮助我们快速了解某些代码修改的原因。 但有时候想要了解某一点改动的细节,可能还会要跳转到如 GitHub 的 PR 页面去查看是否有更多信息。 此时只要点击在 Line Blame 上悬停鼠标时弹出的 Commit Hover 中的小地球图标,便会在浏览器打开对应的 Commit。 ...

NVMe 硬盘密码救命神器之 PSID

大多数 BIOS 厂商都会提供一个硬盘密码(HDD Password)功能, 但出于种种原因(大多是忘记密码后会很麻烦)你可能并没有使用过它。 最近在测试一个问题时,我非常“快速”地给一块 NVMe 设置了一个常用的密码。 但就在设置完再次启动 BIOS 时,输入密码解锁时却一直提示密码不正确。 于是赶紧再尝试了不同大小写的组合,结果还都是密码不正确。 眼看着一块硬盘就要这样折在我手上,...

UEFI BIOS 下的图形库 -- LVGL

提起 BIOS 多数人可能首先想到的就是经典的蓝白界面。 但是在如今 UEFI 的世界里,越来越多厂商开始提供看起来更炫酷、丰富的图形界面。一些人希望厂商能为 BIOS 提供更现代的 GUI 界面,另一些人则觉得经典的界面就挺方便,厂商别阉割功能就好了。 孰优孰劣也是见仁见智,全凭个人喜好了。 0x00 一个有趣的 UEFI GUI 实现 提到 UEFI GUI,这里想先分享一个之前无意...