|
|
发表于 2011-2-26 21:41:01
|
显示全部楼层
本帖最后由 克罗诺亚 于 2011-2-26 21:43 编辑 % x) ?# ]2 }9 Z' b! [
8 w# X. Y# |8 o) V; S: m2 s& D
第二个问题,点击breakpoints,然后如图。
& F! C: {! t6 d8 k$ n- [; {, P* q- Z" V1 {) I* ?6 q/ H1 C
设置断点,运行游戏(RUN)。
: r, |; i! m1 I/ H+ ^找敌人挨打,结果中断到这里。C11115.9 C9 r' v S4 F
7 b" t& Z7 i Q1 T0 Q) X点击反汇编(Disassembly),出现开始地址(Start Address)和结束地址(End Addres).1 ^! G9 H, B% w
分别设为C11105和C11125。
- ~) J! ~& n! }6 r确定OK,然后如下图。
% }: }: S0 M9 }
5 c( g/ J; u. T$ h$ z0 _观察C11115附近,发现前面有条减法指令:2 ~) j' x, k1 K; b5 n
$C1/110F F5 3B SBC $3B,x [$00:083B] A:0040 X:0800 Y:0700 P:envMxdizC
7 B; f* o0 s- Z这里要用到汇编语言,思考一下,将F5 3B 改为85 3B。5 T, \: h0 v6 _* e
用Lunar Address左边输入C1110F,右面会出现对应PC文件地址。# r: c g; h( V$ k0 \
/ c6 L' L" w# F) R用16进制编辑器打开Rom,到01:110F,找到F5,将其修改为85.修改完毕。
8 I2 Z' L: B' a$ U0 F6 X: P5 R将F5 3B改为EA EA(NOP),应该也没问题。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|