首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >精灵碰撞破解C64游戏

精灵碰撞破解C64游戏
EN

Stack Overflow用户
提问于 2019-08-08 14:26:55
回答 1查看 228关注 0票数 1

我在试着破解一个叫"Katz und“的老游戏。我已经意识到了无限的生命,重写了分数,我已经实现了水平跳跃的一半。我认为精灵碰撞将是完成水平跳跃的关键。

问题是我在代码中找不到任何可能导致sprite/字符冲突的部分。

我试着用动作回放模拟器找到它:没有结果。

在MC监视器中,我搜索了D01E和D01F,但由于操作码导致的所有匹配:

代码语言:javascript
复制
H 0000 FFFF 1E D0

H 0000 FFFF 1F D0

我还尝试查找LDA $D01E和LDA $D01F,但没有结果:

代码语言:javascript
复制
H 0000 FFFF AD 1E D0

H 0000 FFFF AD 1F D0

我还可以检查什么?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-08-08 17:57:19

如果我编写一个大量使用VIC2的游戏(我想所有的游戏都是这样),我会考虑将VIC2的基地址存储在某个地方,然后使用索引寻址访问其中的寄存器。因此,您可以查找在某个位置存储基地址(或VIC2范围内的任何地址)的任何代码。任何这样的代码都必须首先在某个时刻(或LDXLDY)执行LDA #$D0

另一件需要检查的事情是你的程序是否干扰了中断例程。可以对VIC2进行编程,使其在检测到子画面冲突时发出中断。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57406376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档