摘要: 本文探讨了模拟器中的音画同步问题,分析了各个原因,并提供了相应的解决方案。对模拟器开发,或者游戏循环开发有兴趣的朋友可以一读。 阅读全文
posted @ 2024-01-12 23:22 1bite 阅读(38) 评论(0) 推荐(0) 编辑
摘要: NES 系统架构 本文以图文相结合的方式介绍了 NES(FC、红白机、小霸王)的系统架构,可以让读者对 NES 的工作原理有高层次的认知,如果想要开发 NES 模拟器,这也是很好的入门资料。 阅读全文
posted @ 2023-05-12 13:37 1bite 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 发布软件时通常都会写 Release Note,但每次从头手打也有点累,可以考虑从 Git 的提交历史中自动生成。本文将分享一些脚本,帮助处理 Git 提交历史并自动生成 Release Note 追加到 changelog.md 中。 阅读全文
posted @ 2023-03-31 18:24 1bite 阅读(121) 评论(0) 推荐(0) 编辑
摘要: JS 做一个简单的 Parser 本文使用简单易懂的代码,实现了一组可以构造解析器的函数。相信通过本文的演示,你应该对解析器的基本工作原理有了一个浅浅的了解。 阅读全文
posted @ 2023-03-26 17:58 1bite 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 本文介绍了 NES(FC、红白机、小霸王)中一些名词或者术语,主要与 PPU 有关。 Tile 8x8 像素图像。每像素 2 比特, 共 16 字节大小。每个像素可以使用 4 种颜色。 Sprite 表示屏幕上可以移动的图片。有两种大小:8x8(WxH)和 8x16(WxH)。 Pattern Ta 阅读全文
posted @ 2023-03-23 22:02 1bite 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 6502 共有 13 种寻址模式: A:寄存器寻址。指令形式为 OPC A;目标数据位于 A 寄存器中,属于隐含寻址;使用这种寻址模式的指令都是 1 个字节长度,需要 2 个时钟周期 abs:绝对地址寻址。指令形式为 OPC $LLHH;目标数据位于绝对地址 $HHLL 处 abs,X:X 变址绝对 阅读全文
posted @ 2023-03-23 22:00 1bite 阅读(115) 评论(0) 推荐(0) 编辑
摘要: # 前言 本文将向大家介绍如何使用 C++ 的标准库实现一个异步和并发编程中都非常重要的编程模式:消息循环(Event Loop)。尽管市面上存在不少库也提供了同样的功能,但有时候出于一些原因,我们并不想引入外部库,就想要一个小巧、只使用 C++ 标准库的实现。 # 话不多说,上代码 ```cpp 阅读全文
posted @ 2023-03-22 15:22 1bite 阅读(263) 评论(0) 推荐(0) 编辑
摘要: JS 绘制 Cardinal 样条曲线 Cardinal 曲线 根据定义,给定点集 ${ \mathbf {P}{k-1}, \mathbf {P}k, \mathbf {P}{k+1}, \mathbf {P}{k+2} }$ , 则 $\mathbf {P}k$ 到 $\mathbf {P}{k+1}$ 之间的 Cardinal 曲线 阅读全文
posted @ 2023-03-22 13:57 1bite 阅读(41) 评论(0) 推荐(0) 编辑
摘要: React 防抖(Debounce)Hook 防抖动 (debounce)是常见的需求,那么如何搭配 React Hooks 实现防抖动呢,下面演示两种方案。 方案一 副作用防抖 /** * * @param {React.EffectCallback} fn * @param {React.DependencyList} deps * @pa 阅读全文
posted @ 2023-03-22 10:27 1bite 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 发布软件时写 Release Note 算是常规操作,但每次从头手打也有点累,可以考虑从 Git 的提交历史中自动生成。 Git 提交信息一般是三段式结构,段落之间使用空行隔开: <subject> // 空行 <body> // 空行 <trailers> subject 和 body 自不必多说 阅读全文
posted @ 2023-03-21 22:36 1bite 阅读(167) 评论(0) 推荐(0) 编辑