|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
$ G. Q; }7 ]8 U1 y1 G: f# [$ b4 b% }: I
第二个问题,点击breakpoints,然后如图。
5 G U7 G3 V* e0 |, t# t& |& ]4 X( e$ t
设置断点,运行游戏(RUN)。
3 m1 r) e: ^) y" K P8 z7 U找敌人挨打,结果中断到这里。C11115.
# M) C0 {# ~' L8 e u" E3 I
) I4 e5 j. W7 _' o2 J点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
* Y* J8 b p5 U分别设为C11105和C11125。
* y) B( {5 b2 k( }/ C+ k! b+ g n% W确定OK,然后如下图。
] q) p4 b, k5 \# M- `1 j: m# C, B* M+ K- o; c' }( L/ ]
观察C11115附近,发现前面有条减法指令:1 U: W: z' R5 J' l& f/ k
$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC 7 }3 {$ H0 q {% W- M c: {, F
这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。- _2 V3 H* X* b& }. @
用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。# y# |( @0 b# a: W! W/ Z
7 f1 k: P N# c! W/ t+ i
用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。$ I* ^" Z7 @3 i+ ?
将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|