|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑 . k; |5 [" o1 |9 [; z
. ]6 _0 D+ m) y- n. I7 G
第二个问题,点击breakpoints,然后如图。
/ {' c% a0 M8 \
6 u; C+ S, m0 ~; m设置断点,运行游戏(RUN)。6 a- T# X$ f: ?; Y |, E7 t0 O
找敌人挨打,结果中断到这里。C11115.
) k; D% L3 {- c" |! g+ E6 _* Y) p5 K. E; `8 L" M% Z8 `0 ]: b
点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
0 e! O) z, M% j分别设为C11105和C11125。
/ m( u' |4 w& x. P确定OK,然后如下图。3 O) M1 O" U1 f, j* `% d9 N$ o
) l9 O2 h5 ]! ~观察C11115附近,发现前面有条减法指令:
+ X* Q$ z! h% `) C1 d$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
2 s+ \' e' q% S7 e7 I1 Y这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。5 i6 `0 T9 a+ z% b8 a1 ]
用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。7 f- H7 j. ]4 \/ y9 Z8 ~
/ i v; b4 S- C' e" j( {% U用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。4 u' x7 y: x; y+ V7 i, O1 A
将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|