|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑
5 X1 R7 ^4 T8 @, @- V; E+ U* A4 g# M) p: ~ R
第二个问题,点击breakpoints,然后如图。
3 o3 t/ q7 \+ q: O, [/ G# [" D4 I6 q5 l. y: ?
设置断点,运行游戏(RUN)。
* o2 p4 z6 v/ J+ A找敌人挨打,结果中断到这里。C11115.
1 s; b) O* B9 ?! x9 l
3 L/ g( g4 h: C2 i* N( m# F1 y点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).
! c9 q) B: M, O分别设为C11105和C11125。
1 S% b. p1 r0 r, o1 F3 y确定OK,然后如下图。; P- A$ ]; J2 w, U/ c. z9 r
2 g. P2 \2 C6 B' h( w& l
观察C11115附近,发现前面有条减法指令:$ H& Q7 w0 x' ^7 P8 [) M6 N
$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
% i0 l h8 O. L4 v这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。
3 R5 e: B$ i( X# Y' I: d; _用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。
6 O; \6 N) S* `# W7 G' \) m) c0 Q% \$ F& _$ U4 `) L5 l2 Q+ \4 }
用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。( g/ I2 L& y6 W
将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|